Ứng Dụng Xử Lý Ảnh và YOLO Trong Hệ Thống Máy Thanh Toán Tự Động

Tài liệu nghiên cứu Ứng dụng xử lý ảnh và yolo trong hệ thống máy thanh toán tự động, tổng hợp lý thuyết và thực hành, cung cấp kiến thức chuyên sâu về toán học.

Người đăng

Ẩn danh

Thể loại

Đồ Án Tốt Nghiệp

2024

101
7
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI CAM ĐOAN

LỜI CẢM ƠN

TÓM TẮT

1. CHƯƠNG 1: TỔNG QUAN

1.1. Lý do chọn đề tài

1.2. Tính cấp thiết của đề tài

1.3. Mục tiêu nghiên cứu

1.4. Nhiệm vụ nghiên cứu

1.5. Đối tượng và phạm vi nghiên cứu

1.5.1. Đối tượng nghiên cứu

1.5.2. Phạm vi nghiên cứu

1.6. Phương pháp nghiên cứu

1.7. Bố cục đồ án

2. CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

2.1. Các công nghệ liên quan

2.2. Nhận dạng hình ảnh

2.3. Đánh giá hiệu suất

2.4. Kiến trúc YOLO

2.5. Các linh kiện sử dụng cho phần cứng

2.6. Giới thiệu về IoTs và các ứng dụng

2.7. Nền tảng về Django Rest Framework

2.7.1. Tổng quan về Django Rest Framework

2.7.2. Ứng dụng Django vào việc xử lý khi người dùng yêu cầu truy cập bên trong ứng dụng

2.7.3. Giao tiếp giữa máy chủ với cơ sở dữ liệu

3. CHƯƠNG 3: YOLOV8, THƯ VIỆN OPENCV VÀ PYZBAR

3.1. Giới thiệu về YOLOv8

3.2. Lịch sử phát triển

3.3. Ưu điểm và nhược điểm

3.4. Kiến trúc mạng

3.5. Ứng dụng của YOLOv8

3.6. Cấu trúc của YOLOv8

3.7. Quá trình huấn luyện YOLOv8

3.7.1. Chuẩn Bị Dữ Liệu Huấn Luyện

3.7.2. Chuẩn bị dữ liệu (Tạo Dataset)

3.7.3. Quá trình huấn luyện

3.7.4. Đánh giá hiệu quả của mô hình YOLOv8

3.7.4.1. Các chỉ số đánh giá
3.7.4.2. Kết quả đánh giá

3.8. Thư viện Opencv

3.9. Thư viện Pyzbar

3.10. YOLOv8 trong máy thanh toán tự động

3.10.1. Phương pháp nhận diện vật thể và mã vạch dựa vào yolov8 kết hợp opencv và pyzbar

3.10.2. Quá trình nhận diện vật thể

3.10.3. Quá trình nhận diện mã vạch

4. CHƯƠNG 4: THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG

4.1. Yêu cầu hệ thống

4.2. Sơ đồ khối hệ thống và chức năng từng khối

4.2.1. Sơ đồ khối hệ thống

4.2.2. Chức năng từng khối

4.3. Hoạt động của hệ thống

4.4. Thiết kế phần cứng

4.4.1. Khối cảm biến khối lượng

4.4.2. Khối hiển thị

4.4.3. Camera Pi Module

4.4.4. Khối cảm biến khoảng cách

4.4.5. Khối LED và BUZZER báo trạng thái

4.4.6. Khối xử lí trung tâm 1

4.4.7. Khối xử lí trung tâm 2

4.5. Sơ đồ nguyên lý toàn hệ thống

4.6. Thiết kế phần mềm

4.6.1. Lưu đồ giải thuật chương trình chính

4.6.2. Lưu đồ giải thuật chương trình con gửi địa chỉ API

4.6.3. Lưu đồ giải thuật chương trình ESP32

4.6.4. Lưu đồ giải thuật chương trình con từ địa chỉ API gửi tới server

4.6.5. Lưu đồ giải thuật hoạt động của giao diện Web

5. CHƯƠNG 5: KẾT QUẢ THỰC HIỆN HỆ THỐNG

5.1. Mô hình hệ thống

5.2. Kết quả nhận diện trái cây

5.3. Kết quả nhận diện mã vạch

5.4. Kết quả hoạt động của hệ thống

5.5. Giao diện người dùng

5.5.1. Giao diện cho ADMIN

5.6. Terminal địa chỉ IP gửi server

5.7. Nhận xét, đánh giá hệ thống

6. CHƯƠNG 6: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

6.1. Hạn chế và hướng phát triển

6.2. Hướng phát triển

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng quan về ứng dụng xử lý ảnh và YOLO trong thanh toán tự động

Trong bối cảnh công nghệ phát triển nhanh chóng, việc ứng dụng xử lý ảnhYOLO (You Only Look Once) trong hệ thống thanh toán tự động đang trở thành xu hướng mới. Hệ thống này không chỉ giúp tiết kiệm thời gian mà còn nâng cao trải nghiệm của khách hàng khi mua sắm. Việc áp dụng công nghệ này giúp tự động hóa quy trình thanh toán, giảm thiểu sai sót và gian lận trong giao dịch.

1.1. Lợi ích của việc sử dụng công nghệ AI trong thanh toán

Công nghệ AI trong thanh toán tự động mang lại nhiều lợi ích như giảm thời gian chờ đợi, tăng độ chính xác trong quản lý hàng hóa và giảm chi phí nhân sự. Hệ thống này cho phép khách hàng tự thanh toán nhanh chóng mà không cần sự can thiệp của nhân viên.

1.2. Tình hình hiện tại của hệ thống thanh toán tự động

Hiện nay, nhiều siêu thị và cửa hàng tiện lợi đã bắt đầu áp dụng hệ thống thanh toán tự động. Tuy nhiên, vẫn còn nhiều thách thức cần giải quyết như độ chính xác trong nhận diện sản phẩm và khả năng xử lý nhanh chóng trong giờ cao điểm.

II. Thách thức trong việc triển khai hệ thống thanh toán tự động

Mặc dù có nhiều lợi ích, việc triển khai hệ thống thanh toán tự động cũng gặp phải một số thách thức. Các vấn đề như độ chính xác của nhận diện đối tượng, khả năng xử lý trong thời gian thực và sự chấp nhận của người tiêu dùng là những yếu tố cần được xem xét kỹ lưỡng.

2.1. Độ chính xác trong nhận diện sản phẩm

Độ chính xác của hệ thống nhận diện sản phẩm là yếu tố quan trọng. Việc sử dụng YOLO giúp cải thiện độ chính xác, nhưng vẫn cần phải kiểm tra và điều chỉnh thường xuyên để đảm bảo hiệu suất tối ưu.

2.2. Khả năng xử lý trong thời gian thực

Hệ thống cần có khả năng xử lý nhanh chóng để đáp ứng nhu cầu của khách hàng trong giờ cao điểm. Việc tối ưu hóa thuật toán và phần cứng là cần thiết để đảm bảo hiệu suất hoạt động.

III. Phương pháp triển khai hệ thống thanh toán tự động hiệu quả

Để triển khai hệ thống thanh toán tự động hiệu quả, cần áp dụng các phương pháp hiện đại trong xử lý ảnhMachine Learning. Việc kết hợp giữa YOLO và các công nghệ khác sẽ giúp nâng cao hiệu suất và độ chính xác của hệ thống.

3.1. Sử dụng YOLO trong nhận diện sản phẩm

YOLO là một trong những thuật toán nhận diện hình ảnh tiên tiến nhất hiện nay. Việc áp dụng YOLO giúp hệ thống nhận diện sản phẩm nhanh chóng và chính xác hơn, từ đó cải thiện trải nghiệm của khách hàng.

3.2. Tích hợp công nghệ IoT trong hệ thống

Công nghệ IoT giúp kết nối các thiết bị trong hệ thống thanh toán tự động, từ đó tạo ra một mạng lưới thông minh. Việc tích hợp này không chỉ giúp quản lý hàng hóa hiệu quả mà còn nâng cao khả năng tương tác với khách hàng.

IV. Ứng dụng thực tiễn của hệ thống thanh toán tự động

Hệ thống thanh toán tự động đã được triển khai tại nhiều siêu thị và cửa hàng tiện lợi, mang lại nhiều lợi ích cho cả khách hàng và doanh nghiệp. Việc sử dụng công nghệ AI trong thanh toán không chỉ giúp tiết kiệm thời gian mà còn nâng cao trải nghiệm mua sắm.

4.1. Kết quả nghiên cứu và triển khai

Nghiên cứu cho thấy hệ thống thanh toán tự động giúp giảm thời gian chờ đợi của khách hàng và tăng cường độ chính xác trong quản lý hàng hóa. Các siêu thị đã ghi nhận sự hài lòng cao từ khách hàng khi sử dụng hệ thống này.

4.2. Phản hồi từ người tiêu dùng

Người tiêu dùng đã có những phản hồi tích cực về hệ thống thanh toán tự động. Họ đánh giá cao sự tiện lợi và nhanh chóng của hệ thống, đồng thời cảm thấy thoải mái hơn khi không phải chờ đợi lâu để thanh toán.

V. Kết luận và hướng phát triển tương lai của hệ thống

Hệ thống thanh toán tự động với ứng dụng xử lý ảnhYOLO đang mở ra nhiều cơ hội mới cho ngành bán lẻ. Tương lai của hệ thống này hứa hẹn sẽ có nhiều cải tiến hơn nữa, đáp ứng tốt hơn nhu cầu của người tiêu dùng.

5.1. Hướng phát triển công nghệ trong thanh toán

Công nghệ trong thanh toán tự động sẽ tiếp tục phát triển với sự xuất hiện của các thuật toán mới và cải tiến trong Machine Learning. Điều này sẽ giúp nâng cao hiệu suất và độ chính xác của hệ thống.

5.2. Tương lai của hệ thống thanh toán tự động

Hệ thống thanh toán tự động sẽ ngày càng trở nên phổ biến và được áp dụng rộng rãi hơn. Các doanh nghiệp cần chú trọng đầu tư vào công nghệ để đáp ứng nhu cầu ngày càng cao của khách hàng.

10/07/2025
Ứng dụng xử lý ảnh và yolo trong hệ thống máy thanh toán tự động

Trích đoạn nội dung tài liệu

Chương 1: Tổng quan: Đưa ra tình hình hiện tại và nêu bật tầm quan trọng và sự cấp thiết của đề tài. Giải thích nguyên do chọn đề tài và đề tài này được ứng dụng như thế nào trong thực tiễn. Chương 2: Cơ sở lý thuyết: Trình bày giới thiệu các khái niệm và lý thuyết cơ bản được áp dụng trong đề tài. Chương 3: Yolov8 và thư viện OpenCV, Pyzbar: Trình bày tổng quan về khái niệm, đặc điểm, tính năng và cách vận hành của Yolov8, cũng như giới thiệu chung về thư viện OpenCV và Pyzbar và cách kết hợp với nhau.

16 Chương 4: Thiết kế hệ thống: Phác thảo sơ đồ khối của hệ thống, chi tiết thiết kế từng khối, lựa chọn linh kiện, tính toán cần thiết, xây dựng lưu đồ giải thuật và đề xuất phương pháp vận hành hệ thống từ những tìm hiểu lý thuyết trước đó. Chương 5: Kết quả: Trình bày kết quả thu được, triển khai phần cứng thực tế, đánh giá tính ổn định của hệ thống và chỉ ra những hạn chế còn tồn tại. Chương 6: Kết luận và hướng phát triển: Trình bày các kết quả thu được và đưa ra dự kiến phát triển đề tài thời gian tới. 17 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.

Các công nghệ liên quan 2. Nhận dạng hình ảnh Nhận dạng hình ảnh là một lĩnh vực của trí tuệ nhân tạo (AI) cho phép máy tính "nhìn" và hiểu được nội dung của hình ảnh. Các thuật toán nhận dạng hình ảnh có thể phân tích hình ảnh và xác định các đối tượng, cảnh vật, khuôn mặt, v. trong hình ảnh.

Khái niệm Xử lý ảnh là việc áp dụng các kỹ thuật và phương pháp để phân tích, chuyển đổi và cải thiện chất lượng hình ảnh. Quá trình này thường nhằm trích xuất thông tin quan trọng từ hình ảnh hoặc nâng cao hình ảnh để đáp ứng các mục đích cụ thể.[1] Lĩnh vực xử lý ảnh bao gồm nhiều khía cạnh khác nhau, nhưng có thể được chia thành bốn lĩnh vực chính như hình 2.1: tạo lập ảnh, biểu diễn, phân tích và quản lý. Các lĩnh vực nghiên cứu chính trong xử lý ảnh số 18 - Tạo lập ảnh: bao gồm quá trình từ thu nhận hình ảnh đến tạo ra một biểu diễn số của ảnh dưới dạng ma trận. - Hiển thị: đòi hỏi các phương pháp xử lý trên ma trận sao cho hiệu suất là tối ưu.

- Phân tích: sử dụng các kỹ thuật và công cụ để trích xuất thông tin từ hình ảnh. Quá trình này bao gồm nhận diện các đặc điểm, đối tượng, hoặc mẫu trong ảnh và hiểu nội dung của chúng. - Quản lý: bao gồm các kỹ thuật lưu trữ, truyền thông, phục hồi và truy nhập dữ liệu hiệu quả. Trong lĩnh vực y học, việc lấy thông tin hình ảnh từ xa cũng được coi là một phần của quản lý hình ảnh.

Các vấn đề trong xử lý ảnh Điểm ảnh: Đơn vị cơ bản nhất của ảnh số là pixel, mỗi pixel chứa thông tin về màu sắc và độ sáng tại một vị trí cụ thể trên ảnh, được xác định bằng tọa độ (x, y). Độ phân giải của ảnh tăng khi có nhiều pixel hơn, từ đó chứa nhiều thông tin hơn.[1] Ảnh số: tập hợp từ vô số điểm ảnh, còn gọi là pixel, mỗi pixel biểu diễn một màu sắc hoặc độ sáng tại một vị trí cụ thể trên ảnh. Các pixel có thể được xem như các chấm nhỏ trên một tấm ảnh màu. Ảnh số được biểu diễn dưới dạng ma trận hai chiều, trong đó giá trị của mỗi pixel đại diện cho độ sáng (trong ảnh đen trắng) hoặc màu sắc (trong ảnh màu).

Phân loại ảnh: có hai dạng chính của ảnh số: ảnh màu và ảnh đen trắng (hay ảnh xám). Trong ảnh màu, mỗi pixel có thể mang các giá trị màu sắc khác nhau, trong khi ảnh đen trắng được tạo thành từ các pixel có giá trị mức xám khác nhau. Biểu diễn ảnh: là cách thức mà một hình ảnh được lưu trữ và xử lý trong máy tính. Có nhiều cách khác nhau để biểu diễn ảnh, mỗi cách có ưu nhược điểm riêng.

Dưới đây là một số cách biểu diễn ảnh phổ biến: - Biểu diễn ảnh pixel: Đây là cách biểu diễn ảnh đơn giản nhất. Mỗi pixel trong ảnh được biểu diễn bằng một giá trị số, thường là từ 0 đến 255. Giá trị này thể hiện độ sáng của pixel, với 0 là màu đen và 255 là màu trắng. - Biểu diễn ảnh vector: Biểu diễn ảnh vector sử dụng các đường thẳng và đường cong để biểu diễn các đối tượng trong ảnh.

Mỗi đường được xác định bởi một tập hợp các điểm và một màu sắc. 19 - Biểu diễn ảnh bitmap: Biểu diễn ảnh bitmap là sự kết hợp giữa biểu diễn ảnh pixel và biểu diễn ảnh vector. Mỗi pixel trong ảnh được biểu diễn bằng một giá trị số, nhưng giá trị này có thể tham chiếu đến một bảng màu để xác định màu sắc của pixel. Phân vùng ảnh: là một phần quan trọng trong quá trình xử lý ảnh, nó chia ảnh đầu vào thành các vùng có đặc tính tương tự dựa trên biên hoặc các vùng liên thông.

Quá trình này hỗ trợ việc biểu diễn, phân tích và nhận dạng các đối tượng trong ảnh. Khái niệm YOLO là một thuật toán nhận dạng đối tượng được phát triển bởi Joseph Redmon, Santosh Divvala, Ross Girshick và Ali Farhadi vào năm 2015. YOLO là một thuật toán nhận dạng đối tượng một giai đoạn, có nghĩa là nó chỉ cần một lần quét qua hình ảnh để dự đoán các đối tượng và vị trí của chúng. Điều này khiến YOLO trở thành một thuật toán nhận dạng đối tượng nhanh và hiệu quả.[5] Kiến trúc của YOLO bao gồm một mạng nơ-ron tích chập (CNN) được chia thành hai phần: - Phần trích xuất đặc trưng: Phần này sử dụng mạng nơ-ron VGG-16 để trích xuất các đặc trưng từ hình ảnh.

- Phần dự đoán: Phần này sử dụng các lớp fully-connected để dự đoán các đối tượng và vị trí của chúng. Đặc điểm - Độ chính xác cao và tốc độ nhanh: YOLO có khả năng đưa ra các dự đoán đồng thời về các đối tượng trong hình ảnh chỉ trong một lần chạy mô hình. Điều này giúp YOLO vượt trội về tốc độ so với các phương pháp truyền thống. - Sử dụng mạng nơ-ron tích chập (CNNs): YOLO sử dụng mạng nơ-ron tích chập để học và trích xuất đặc trưng từ hình ảnh, giúp cho việc phát hiện đối tượng trở nên hiệu quả và chính xác hơn.

- Phân cấp dự đoán: YOLO chia hình ảnh thành một lưới các ô (grid), và mỗi ô sẽ dự 20 đoán các bounding box và xác suất của các đối tượng trong ô đó. Quá trình này giúp giảm thiểu số lượng dự đoán sai lệch. - Học từ dữ liệu lớn: Mô hình YOLO được huấn luyện trên các bộ dữ liệu lớn, từ đó học được nhiều đặc điểm của các đối tượng và có khả năng tổng quát hóa tốt trên các tình huống thực tế. - Hỗ trợ đa lớp: YOLO có thể phát hiện nhiều lớp đối tượng khác nhau trong cùng một hình ảnh, từ người đi bộ đến các phương tiện giao thông và vật dụng.

Đánh giá hiệu suất a. Union (IoU) IoU là một chỉ số phổ biến được sử dụng để đánh giá hiệu suất của các thuật toán phát hiện đối tượng. Nó đo đạc mức độ trùng lắp giữa hộp giới hạn dự đoán (P) và hộp giới hạn thực tế (G). Giá trị IoU được tính bằng tỉ lệ diện tích của phần giao giữa P và G chia cho diện tích của phần hợp của chúng.

IoU có giá trị dao động từ 0 đến 1, trong đó 0 biểu thị không có sự trùng lắp nào và 1 biểu thị sự khớp hoàn hảo giữa hai hộp giới hạn. Giá trị IoU càng cao, cho thấy khả năng phát hiện đối tượng càng chính xác. Tính toán IoU. Độ chính xác trung bình (AP) Độ chính xác trung bình (AP) là một chỉ số quan trọng trong đánh giá các thuật toán phát hiện đối tượng, được tính bằng cách tổng hợp đường cong Precision-Recall tại các ngưỡng phát hiện khác nhau.

Precision đo lường tỷ lệ dự đoán đúng so với tổng số dự đoán dương tính, trong khi Recall đo tỷ lệ đối tượng thực tế được dự đoán đúng so với 21 tổng số đối tượng thực tế có trong hình ảnh. AP tính trung bình các giá trị precision trên các mức recall từ 0 đến 1. Điểm AP dao động từ 0 đến 1, với giá trị càng cao cho thấy hiệu suất càng tốt. Trên thực tế, độ chính xác trung bình trung bình mAP thường được tính bằng cách lấy trung bình của các giá trị AP của các lớp đối tượng khác nhau.

Hiểu rõ các chỉ số này giúp phân tích hiệu suất của các mô hình như YOLO và đưa ra những quyết định thông minh về việc áp dụng chúng trong các bối cảnh thực tế. YOLO đã đổi mới trong lĩnh vực phát hiện đối tượng bằng cách thực hiện cả hai nhiệm vụ phát hiện và phân loại trong một lần duy nhất, mang lại tốc độ và hiệu quả ấn tượng so với các phương pháp truyền thống. Kiến trúc YOLO Hình 2. Lớp tích chập Hình 2.

Cấu trúc YOLO 22 Thuật toán YOLO sử dụng một mạng nơ-ron tích chập duy nhất để chia hình ảnh thành một lưới. Mỗi ô trong lưới dự đoán một số hộp giới hạn. Đồng thời với mỗi hộp giới hạn, YOLO cũng dự đoán xác suất của lớp đối tượng, biểu thị khả năng có sự hiện diện của một đối tượng cụ thể trong hộp đó. Quy trình nhận dạng hộp giới hạn Quá trình nhận dạng khung giới hạn trong YOLO gồm các bước sau: - Tạo lưới: Hình ảnh được chia thành lưới kích thước SxS.

Mỗi ô trong lưới có nhiệm vụ dự đoán một đối tượng được nằm trong tâm ô đó. - Dự đoán hộp bao: Mỗi ô trong lưới tạo ra B hộp bao và một giá trị tin cậy cho từng hộp. Giá trị tin cậy này biểu thị mức độ tin tưởng của mô hình rằng hộp bao chứa một đối tượng và độ chính xác của dự đoán cho hộp đó. - Dự đoán xác suất lớp: Ngoài ra, mỗi ô lưới cũng dự đoán xác suất của các lớp đối tượng có điều kiện C (mỗi lớp một xác suất cho các đối tượng có thể).

Các xác suất này phụ thuộc vào việc có một đối tượng nằm trong hộp.3 Sự phát triển của YOLO Hình 2. Dòng thời gian phát triển YOLO 23 YOLOv1: Thuật toán phát hiện đối tượng thời gian thực đầu tiên Mô hình YOLO ban đầu áp dụng phương pháp hồi quy để giải quyết vấn đề phát hiện đối tượng, điều này đánh dấu sự khác biệt lớn so với phương pháp phân loại truyền thống.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu có tiêu đề "Ứng Dụng Xử Lý Ảnh và YOLO Trong Hệ Thống Thanh Toán Tự Động" khám phá cách mà công nghệ xử lý ảnh, đặc biệt là mô hình YOLO (You Only Look Once), có thể được áp dụng trong các hệ thống thanh toán tự động. Bài viết nêu bật những lợi ích của việc sử dụng công nghệ này, bao gồm khả năng nhận diện nhanh chóng và chính xác các sản phẩm, từ đó cải thiện trải nghiệm người dùng và tối ưu hóa quy trình thanh toán. Độc giả sẽ tìm thấy thông tin hữu ích về cách mà các công nghệ hiện đại có thể được tích hợp vào các hệ thống thương mại điện tử và tự động hóa.

Để mở rộng kiến thức của bạn về lĩnh vực này, bạn có thể tham khảo thêm tài liệu Đồ án hcmute ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm, nơi trình bày ứng dụng của xử lý ảnh trong phân loại sản phẩm. Ngoài ra, tài liệu Luận văn thạc sĩ khoa học máy tính hệ thống nhận dạng sản phẩm dựa trên hình ảnh sẽ cung cấp cái nhìn sâu sắc hơn về hệ thống nhận dạng sản phẩm. Cuối cùng, bạn cũng có thể tìm hiểu về Đồ án tốt nghiệp hệ thống phân loại sản phẩm sử dụng robot delta kết hợp xử lý ảnh, một nghiên cứu thú vị về việc kết hợp robot và xử lý ảnh trong phân loại sản phẩm. Những tài liệu này sẽ giúp bạn có cái nhìn toàn diện hơn về ứng dụng của công nghệ xử lý ảnh trong các lĩnh vực khác nhau.