Đồ án tốt nghiệp công nghệ kỹ thuật điện tử viễn thông phân loại trái cây bằng mô hình phát hiện vật thể yolo

Đồ án kỹ thuật nghiên cứu tốt nghiệp công nghệ kỹ thuật điện tử viễn thông phân loại trái cây bằng mô hình phát hiện vật thể, thiết kế chi tiết, tính toán kỹ thuật theo tiêu

Người đăng

Ẩn danh

Thể loại

đồ án tốt nghiệp

2024

102
37
1

Phí lưu trữ

35 Point

Mục lục chi tiết

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. Mục tiêu đề tài

1.3. Giới hạn đề tài

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

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

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

1.7. Bố cục đề tài

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

2.1. Tổng quan về YOLO

2.2. Các kỹ thuật chính được sử dụng trong YOLO

2.2.1. Kỹ thuật Grid Cell

2.2.2. Mạng nơ-ron tích chập (CNN)

2.2.3. Thuật toán K-means clustering

2.2.4. Mạng dữ liệu COCO

2.2.5. Huấn luyện YOLO

3. CHƯƠNG 3: THIẾT KẾ HỆ THỐNG

3.1. Yêu cầu của hệ thống

3.2. Sơ đồ đặc tả của hệ thống

3.3. Sơ đồ khối của hệ thống

3.4. Thiết kế chi tiết khối

3.4.1. Khối cảm biến tiệm cận

3.4.2. Khối băng chuyền

3.4.3. Khối điều khiển

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

3.5.1. Sử dụng ngôn ngữ lập trình Python cùng với OpenCV và model YOLOV8

3.5.2. Lập trình vi điều khiển ESP32

4. CHƯƠNG 4: KẾT QUẢ

4.1. Kết quả mạch in

4.2. Hệ thống sau khi thi công

4.3. Kết quả vận hành

4.4. Đánh giá và nhận xét

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

5.1. Kết luận

5.2. Hạn chế của đề tài

5.3. Hướng phát triển của đề tài

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Phân loại trái cây

Phân loại trái cây là một nhiệm vụ quan trọng trong ngành nông nghiệp và chế biến thực phẩm. Việc phân loại không chỉ giúp nâng cao giá trị sản phẩm mà còn đảm bảo an toàn thực phẩm. Trong bối cảnh hiện đại, việc áp dụng công nghệ vào quy trình phân loại trở nên cần thiết. Mô hình YOLO (You Only Look Once) đã được phát triển để giải quyết vấn đề này. Mô hình này cho phép phân loại trái cây một cách nhanh chóng và chính xác, giúp giảm thiểu chi phí nhân công và thời gian. Việc sử dụng công nghệ thông tin trong phân loại trái cây không chỉ mang lại hiệu quả cao mà còn mở ra nhiều cơ hội mới cho ngành nông nghiệp. Theo nghiên cứu, việc áp dụng học máytrí tuệ nhân tạo trong phân loại trái cây có thể cải thiện đáng kể độ chính xác và tốc độ của quy trình này.

1.1. Tầm quan trọng của phân loại trái cây

Phân loại trái cây đóng vai trò quan trọng trong việc đảm bảo chất lượng sản phẩm. Trái cây không đạt tiêu chuẩn có thể chứa các chất độc hại hoặc không đảm bảo về mặt dinh dưỡng. Việc phân loại giúp người tiêu dùng dễ dàng lựa chọn sản phẩm an toàn và chất lượng. Hơn nữa, việc phân loại chính xác còn giúp các nhà sản xuất tối ưu hóa quy trình sản xuất và phân phối. Theo một nghiên cứu, việc áp dụng công nghệ vào phân loại trái cây có thể giảm thiểu tỷ lệ hư hỏng và nâng cao giá trị thương mại của sản phẩm. Điều này không chỉ có lợi cho người tiêu dùng mà còn cho các nhà sản xuất và thương nhân trong ngành nông nghiệp.

II. Mô hình YOLO

Mô hình YOLO là một trong những phương pháp tiên tiến nhất trong lĩnh vực nhận diện đối tượng. Được giới thiệu lần đầu vào năm 2015, YOLO đã nhanh chóng trở thành một công cụ phổ biến trong xử lý ảnhnhận diện đối tượng. Mô hình này hoạt động bằng cách chia hình ảnh thành lưới và dự đoán các bounding box cho từng đối tượng trong mỗi ô lưới. Điều này cho phép YOLO thực hiện phát hiện đối tượng trong thời gian thực, một yếu tố quan trọng trong nhiều ứng dụng. Sự kết hợp giữa mạng nơ-ron tích chập (CNN) và các thuật toán học máy đã giúp YOLO đạt được độ chính xác cao trong việc phân loại và nhận diện đối tượng. Việc sử dụng YOLO trong phân loại trái cây không chỉ giúp tăng tốc độ xử lý mà còn cải thiện độ chính xác của kết quả phân loại.

2.1. Nguyên lý hoạt động của YOLO

YOLO hoạt động dựa trên nguyên lý chia hình ảnh thành các ô lưới và dự đoán các bounding box cho từng đối tượng trong mỗi ô. Mỗi ô lưới sẽ dự đoán một số lượng nhất định các bounding box và xác suất cho mỗi bounding box đó. Điều này giúp YOLO có thể phát hiện nhiều đối tượng trong một hình ảnh cùng lúc. Một trong những ưu điểm lớn nhất của YOLO là khả năng xử lý nhanh chóng, cho phép ứng dụng trong các hệ thống yêu cầu thời gian thực. Tuy nhiên, YOLO cũng có một số hạn chế, như độ chính xác không cao bằng một số mô hình khác như R-CNN. Dù vậy, với sự phát triển không ngừng của công nghệ, các phiên bản mới của YOLO đã cải thiện đáng kể về độ chính xác và hiệu suất.

III. Ứng dụng trong đồ án tốt nghiệp

Đồ án tốt nghiệp này tập trung vào việc áp dụng mô hình YOLO để phân loại trái cây. Hệ thống được thiết kế để nhận diện và phân loại các loại trái cây phổ biến như táo, cam và chuối. Quá trình thực hiện bao gồm việc thu thập dữ liệu, huấn luyện mô hình và xây dựng hệ thống phần cứng. Việc áp dụng YOLO trong đồ án không chỉ giúp sinh viên hiểu rõ hơn về công nghệ mà còn tạo ra một sản phẩm thực tiễn có giá trị. Hệ thống phân loại trái cây này có thể được ứng dụng trong các nông trại và cơ sở chế biến thực phẩm, giúp nâng cao hiệu quả sản xuất và đảm bảo chất lượng sản phẩm.

3.1. Kết quả đạt được

Sau khi hoàn thành đồ án, nhóm sinh viên đã đạt được nhiều kết quả tích cực. Hệ thống phân loại trái cây hoạt động ổn định và có khả năng phân loại chính xác các loại trái cây. Đặc biệt, hệ thống có thể đánh giá được mức độ hư hại của trái cây, từ đó giúp người tiêu dùng và nhà sản xuất có những quyết định đúng đắn. Kết quả này không chỉ chứng minh khả năng ứng dụng của YOLO trong thực tế mà còn mở ra hướng phát triển mới cho các nghiên cứu tiếp theo trong lĩnh vực này. Việc áp dụng công nghệ vào phân loại trái cây không chỉ mang lại lợi ích kinh tế mà còn góp phần nâng cao chất lượng sản phẩm và bảo vệ sức khỏe người tiêu dùng.

21/02/2025

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

Chương 1: Tổng quan Trong chương này trình bày lý do chọn đề tài, các mục tiêu, giới hạn, đối tượng nghiên cứu, phạm vi nghiên cứu và phương pháp nghiên cứu của đề tài.  Chương 2: Cơ sở lý thuyết Giới thiệu về YOLO, trình bày các kỹ thuật quan trọng được sử dụng trong YOLO, mô tả chi tiết phiên bản YOLOv8 và các kỹ thuật khác.  Chương 3: Thiết kế hệ thống Xây dựng hệ thống, các thiết bị phù hợp, xây dựng sơ đồ khối và sơ đồ nguyên lí của hệ thống.  Chương 4: Kết quả Trình bày và đánh giá các kết quả sau khi hoàn thiện.

 Chương 5: Kết luận và hướng phát triển Đưa ra kết luận, hạn chế và định hướng phát triển cho đề tài. 4 CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 2.1 Tổng quan về YOLO You Only Look Once (YOLO) là một thuật toán nhận diện đối tượng tiên tiến, thời gian thực được giới thiệu vào năm 2015 bởi Joseph Redmon, Santosh Divvala, Ross Girshick và Ali Farhadi trong nghiên cứu nổi tiếng của họ "You Only Look Once: Unified, Real-Time Object Detection" [3]. Cảm hứng của YOLO bắt nguồn từ sự cần thiết trong lĩnh vực thị giác máy tính và trí tuệ nhân tạo, nơi mà việc phát hiện đối tượng đòi hỏi sự kết hợp giữa độ chính xác và tốc độ cao. Trước YOLO, các phương pháp truyền thống thường phải thực hiện nhiều bước phức tạp, từ trích xuất đặc trưng đến dự đoán lớp đối tượng, dẫn đến tốn kém thời gian và tài nguyên tính toán.

Con người có thể dễ dàng nhận biết và chọn lọc các đối tượng trong môi trường mà không cần quá chú ý đến tình hình cụ thể, bất kể đối tượng đó ở vị trí nào, hoặc liệu chúng có bị lộn ngược, khác về màu sắc hoặc kết cấu, bị che khuất một phần, và những yếu tố khác. Tuy nhiên, để trích xuất thông tin về các đối tượng và hình dạng trong một bức ảnh, việc nhận diện và nhận biết các đối tượng trên máy tính đòi hỏi một lượng xử lý lớn [4]. Việc nhận diện một đối tượng trong một hình ảnh hoặc video được gọi là nhận diện đối tượng trong thị giác máy tính. Các bước chính trong nhận diện đối tượng bao gồm trích xuất đặc điểm, điều này quan trọng cho việc giám sát, nhận diện xe cộ và nhận diện đối tượng dưới nước, trong các ứng dụng khác nhau.

Các phương pháp khác nhau đã được sử dụng để nhận diện đúng và chính xác đối tượng cho các ứng dụng chuyên biệt. Tuy nhiên, các giải pháp đề xuất vẫn gặp vấn đề về độ chính xác và hiệu suất. Các phương pháp học máy và mạng nơ-ron sâu đã thành công hơn trong việc giải quyết những vấn đề này trong nhận diện đối tượng [5]. Mục tiêu của việc nhận diện đối tượng là tìm ra tất cả các trường hợp của các đối tượng từ một lớp đã biết, như con người, xe hơi hoặc khuôn mặt, trong một bức ảnh.

Thường thì chỉ có một số ít trường hợp của đối tượng xuất hiện trong bức ảnh, nhưng có một số lượng rất lớn các vị trí và tỉ lệ mà chúng có thể xuất hiện và cần phải được 5 xem xét. Mỗi trường hợp của việc nhận diện đều được mô tả bằng thông tin về đặc trưng của dữ liệu. Thông tin này có thể đơn giản như vị trí của đối tượng, một vùng và tỉ lệ, hoặc diện tích của đối tượng được mô tả bằng hộp giới hạn. Trong một số trường hợp, thông tin về đặc trưng còn cụ thể hơn, bao gồm các thông số của một biến đổi tuyến tính hoặc phi tuyến tính.

Ví dụ, một công cụ nhận diện khuôn mặt có thể xác định các vị trí của mắt, mũi và miệng, cùng với hộp giới hạn trên khuôn mặt. YOLO được phát triển với mục tiêu giải quyết các thách thức bằng một phương pháp phát hiện đối tượng đơn giản hóa và hiệu quả. Bằng cách thực hiện phát hiện trong một lần chạy mô hình, YOLO loại bỏ các bước trung gian phức tạp và tối ưu hóa quy trình phát hiện đối tượng. Đồng thời, YOLO tập trung vào việc tối ưu hóa tốc độ xử lý mà vẫn đảm bảo độ chính xác của kết quả.

Sự tiện lợi trong triển khai cũng là một yếu tố quan trọng của YOLO. Khả năng dễ dàng triển khai trên nhiều nền tảng, từ các thiết bị nhúng đến máy tính cá nhân, đã tạo điều kiện thuận lợi cho việc ứng dụng YOLO vào các ứng dụng thực tế. Trí tuệ nhân tạo đã được áp dụng phổ biến trong vài năm trở lại đây, và Deep learning đóng một vai trò quan trọng trong quá trình này. Deep learning sử dụng các thuật toán được ảnh hưởng bởi cấu trúc và chức năng.

Làm việc với các thuật toán như vậy có lợi thế là hiệu suất thường cải thiện theo tỉ lệ với sự tăng dữ liệu, so với các thuật toán học thông thường mà hiệu suất ổn định dù có tăng lượng dữ liệu. Một số chủ đề nghiên cứu phổ biến nhất trong ứng dụng thị giác máy tính đã đặt việc giám sát đối tượng thời gian thực lên hàng đầu. Mặc dù có tiến bộ ấn tượng đã được đạt được trong nhiều năm gần đây, nhưng vẫn còn khó khăn trong việc theo dõi các đối tượng một cách chính xác và hiệu quả trong thời gian thực ở mức độ đáng kể. Các tính năng của hình ảnh và video cho các ứng dụng giám sát và an ninh được trích xuất trong quá trình xác định thuật toán nhận diện và giám sát.

Một số trong những thuật toán phổ biến bao gồm You Only Look Once (YOLO), mạng nơ-ron tích chập dựa trên cấu trúc đầy đủ (CNN), và các phiên bản nhanh hơn của thuật toán nhận diện đối tượng phổ biến (Faster R-CNN). RCNN thường chính xác 6 hơn so với các thuật toán khác, nhưng YOLO lại nổi bật hơn khi tốc độ được ưu tiên hơn so với độ chính xác [6]. YOLO là một phương pháp phổ biến trong lĩnh vực thị giác máy tính và xử lý ảnh, nhằm mục đích phát hiện và định vị đối tượng trong hình ảnh và video. Sử dụng mạng nơ-ron tích chập (CNN) để trích xuất đặc trưng từ hình ảnh, YOLO có khả năng dự đoán vị trí và lớp của các đối tượng một cách hiệu quả và nhanh chóng [6].1: Lịch sử phát triển của YOLO [6].

Một trong những đặc điểm nổi bật của YOLO là việc chia hình ảnh thành một lưới các ô vuông có kích thước cố định. Mỗi ô vuông trong lưới dự đoán một số lượng cố định các hộp giới hạn và xác suất tương ứng cho các đối tượng. Từ các dự đoán này, YOLO có thể phát hiện đồng thời nhiều đối tượng trong một lần chạy mô hình. Các dự đoán của YOLO bao gồm các thông tin như tọa độ của hộp giới hạn, xác suất của đối tượng trong hộp đó, và các điểm đặc trưng của đối tượng, như lớp và các thuộc tính khác.

Quá trình huấn luyện của YOLO được thực hiện thông qua việc điều chỉnh các trọng số của mạng nơ-ron để giảm thiểu sai số giữa dự đoán và nhãn thực tế trên tập dữ liệu huấn luyện. So sánh YOLO với các thuật toán phát hiện đối tượng phổ biến khác khác như R-CNN và SSD. Mặc dù YOLO không phải là thuật toán chính xác nhất, nhưng YOLO là thuật toán phát hiện đối tượng nhanh nhất. Theo kết quả của nhóm nghiên cứu ở trường đại học Southern Medical, Quảng Châu, Trung quốc (2021, 6) [7], ba phương pháp Faster R-CNN, YOLOv3 và SSD được đào tạo bằng cơ sở dữ liệu thuốc để nhận dạng và phân phối, kết quả cho thấy mô hình Faster R-CNN có MAP 7 cao (87.69%) nhưng tốc độ phát hiện thấp (FPS: 7) không đủ nhanh cho thời gian thực.

SSD có hiệu suất trung bình với MAP (82. Mặc dù YOLOv3 có MAP khiêm tốn nhất (80.17%) nhưng lại có tốc độ (FPS: 51) cao nhất. Vì vậy, trong các bệnh viện, YOLOv3 là lựa chọn phù hợp nhất trong ba phương pháp trên, Xác định thuốc, giảm xác suất phân phối thuốc sai và có thể giúp đỡ cải thiện sự an toàn của bệnh nhân.1: So sánh các thuật toán phát hiện đối tượng phổ biến dựa trên kết quả nghiên cứu [7] nêu trên. Thuật toán Độ chính xác Tốc độ Ứng dụng chính Phát hiện đối tượng chính xác Faster R-CNN Cao Thấp cao, ứng dụng nghiên cứu Phát hiện đối tượng thời gian YOLOv3 Trung bình Cao thực, ứng dụng di động Cân bằng giữa tốc độ và độ SSD Trung bình Trung bình chính xác Với khả năng kết hợp giữa độ chính xác và tốc độ, YOLO đã trở thành một công cụ quan trọng trong nhiều lĩnh vực ứng dụng như xe tự lái, giám sát an ninh, nhận diện khuôn mặt, phân loại đối tượng và nhiều ứng dụng khác trong thị giác máy tính và trí tuệ nhân tạo.2 Các kỹ thuật chính được sử dụng trong YOLO 2.1 Kỹ thuật Grid Cell Kỹ thuật Grid Cell (Ô Lưới) là một thành phần cốt lõi của thuật toán phát hiện vật thể YOLO, giúp tăng tốc và đơn giản hóa quá trình phát hiện vật thể trong ảnh.

Kỹ thuật này hoạt động bằng cách chia nhỏ ảnh dữ liệu đầu vào thành một lưới các ô vuông có kích thước S x S, trong đó S là một số nguyên dương. Mỗi ô lưới đại diện cho một khu vực cụ thể trong ảnh [8].2: Dữ liệu ảnh được áp dụng Grid Cell [3]. Tiếp theo thực hiện việc gán công việc cho mỗi ô lưới, Mỗi ô lưới được giao nhiệm vụ dự đoán các vật thể có thể xuất hiện trong khu vực của ô lưới đó. YOLO sử dụng các "Anchor box" để hỗ trợ dự đoán vị trí và kích thước của vật thể.

Anchor box là các hộp cố định có kích thước khác nhau, đại diện cho các loại vật thể phổ biến. Mỗi ô lưới được gán một số Anchor box phù hợp [6]. Sau đó YOLO sử dụng mạng nơ-ron tích chập (CNN) để trích xuất các đặc trưng từ mỗi ô lưới. Các đặc trưng này mô tả nội dung của ô lưới, bao gồm các đối tượng có thể có mặt và vị trí của chúng.

Dựa trên các đặc trưng trích xuất, YOLO thực hiện dự đoán cho mỗi ô lưới, bao gồm [9]: + Có vật thể hay không: YOLO dự đoán khả năng xuất hiện của vật thể trong ô lưới. + Loại vật thể: Nếu có vật thể, YOLO xác định loại vật thể (ví dụ: người đi bộ, xe máy, xe hơi,. + Vị trí: YOLO dự đoán vị trí (Bounding box) của vật thể trong ô lưới. YOLO sử dụng các kỹ thuật như Regression để điều chỉnh Anchor box và dự đoán vị trí và kích thước chính xác của vật thể.

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

Phân loại trái cây bằng mô hình YOLO trong đồ án tốt nghiệp điện tử viễn thông là một nghiên cứu ứng dụng công nghệ học sâu vào việc nhận dạng và phân loại trái cây tự động. Mô hình YOLO (You Only Look Once) được sử dụng để tăng tốc độ xử lý và độ chính xác trong việc phát hiện đối tượng, mang lại hiệu quả cao trong các bài toán thực tế. Đồ án này không chỉ giúp sinh viên nắm vững kiến thức về học máy mà còn mở ra hướng ứng dụng công nghệ AI vào nông nghiệp và công nghiệp thực phẩm.

Để mở rộng kiến thức về các ứng dụng học máy, bạn có thể tham khảo Luận văn thạc sĩ nhận dạng biển báo giao thông dùng máy học, nghiên cứu về cách áp dụng học máy vào nhận dạng hình ảnh. Ngoài ra, Luận văn thạc sĩ nghiên cứu và ứng dụng kỹ thuật học máy vào bài toán phát hiện mã độc cung cấp góc nhìn sâu hơn về ứng dụng học máy trong bảo mật. Cuối cùng, Luận văn thạc sĩ một số quy trình huấn luyện mạng nơron và ứng dụng xấp xỉ hàm số sẽ giúp bạn hiểu rõ hơn về quy trình huấn luyện mô hình học sâu.

Hãy khám phá các tài liệu này để có cái nhìn toàn diện hơn về tiềm năng của học máy trong nhiều lĩnh vực khác nhau!