YOMEDIA
ADSENSE
Hệ thống phân loại độ chín quả cà chua dựa trên kỹ thuật thị giác máy tính
20
lượt xem 5
download
lượt xem 5
download
Download
Vui lòng tải xuống để xem tài liệu đầy đủ
Trong nghiên cứu này, một hệ thống phân loại độ chín quả cà chua được phát triển dựa trên kỹ thuật thị giác máy tính. Các hình ảnh quả cà chua với độ chín khác nhau được lấy bằng máy ảnh màu. Mô hình Mask RCNN được phát triển được dùng để phân loại từng mức độ chín quả cà chua.
AMBIENT/
Chủ đề:
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Hệ thống phân loại độ chín quả cà chua dựa trên kỹ thuật thị giác máy tính
- HỆ THỐNG PHÂN LOẠI ĐỘ CHÍN QUẢ CÀ CHUA DỰA TRÊN KỸ THUẬT THỊ GIÁC MÁY TÍNH Bùi Công Thịnh* Viện Kỹ thuật HUTECH, Trường Đại học Công nghệ TP.Hồ Chí Minh (HUTECH) GVHD: TS. Phạm Quốc Thiện TÓM TẮT Trong nghiên cứu này, một hệ thống phân loại độ chín quả cà chua được phát triển dựa trên kỹ thuật thị giác máy tính. Các hình ảnh quả cà chua với độ chin khác nhau được lấy bằng máy ảnh màu. Mô hình Mask RCNN được phát triển được dùng để phân loại từng mức độ chin quả cà chua. Chương trình LabVIEW được phát triển với mô hình Mask RCNN được tích hợp bằng việc sử dụng thư viện Python Node để thực hiện phân loại trực tuyến. Tổng số 40 ảnh thử nghiệm với độ chính xác của các giai đoạn chin 1, 2 và 3 lần lượt là 95%, 92.5% và 97.5%. Hệ thống và mô hình Mask RCNN có thể được sử dụng để phân loại các loại trái cây có kích thước tương tự. Từ khóa: Mask RCNN, cà chua, thị giác máy tính, độ chín 1. GIỚI THIỆU Cà chua (Solanum lycopersicum) là cây rau quan trọng thứ hai trên thế giới sau khoai tây. Sản lượng hiện tại trên toàn thế giới là khoảng 170,75 triệu tấn quả tươi được sản xuất trên 5,02 triệu ha ở hơn 150 quốc gia [1]. Cà chua với nhiều chất dinh dưỡng và các chất chuyển hóa thứ cấp quan trọng đối với sức khỏe con người: chất khoáng, vitamin B, C, E, và axit hữu cơ. Cà chua là loại quả hô hấp đột biến, có thể thu hoạch ở các giai đoạn chín khác nhau và tiếp tục chín trong quá trình vận chuyển, xử lý, bảo quản, tiêu thụ. Do vậy, độ chín thu hoạch có mối liên quan chặt chẽ với chất lượng quả khi chín. Việc phân loại độ chín cà chua là rất qua trọng trong quá trình xử lý sau thu hoạch để cung cấp cà chua chất lượng tốt và đồng đều cho tiêu dùng. Việc thu hoạch bằng thủ công khiến người lao động dễ mệt mỏi thị giác và thần kinh trong thời gian dài, dễ dẫn đến sai sót. Hệ thống phân loại tự động có thể khắc phục những hạn chế của người lao động đó là hoạt động liên tục, đảm bảo năng suất, chất lượng công việc. Trong thập kỷ qua, các nhà nghiên cứu đã cố gắng phát triển các hệ thống tự động dựa trên thị giác máy tính để giải quyết việc phân loại hoa quả thủ công tốn nhiều thời gian. Nhìn chung, một hệ thống thị giác máy tính để phân loại trái cây bao gồm các thành phần như bộ phận vận chuyển, nguồn sáng tích hợp, máy ảnh và máy tính. Hệ thống phân loại tự động và kiểm tra chất lượng táo, được phát triển bởi Sofu và các cộng sự [2] đã sử dụng hai máy ảnh để thu thập hình ảnh. Hệ thống được đề xuất có thể phân loại trực tuyến 15 quả táo mỗi giây 295
- với độ chính xác 73-96%. Abdul Wajid và các cộng sự [3] đã trích xuất không gian màu RGB và các giá trị xám dựa trên Border/Interior pixel Classification (BIC) để phân biệt tình trạng cam (chín, chưa chín và đóng vảy hoặc thối) với kết quả đạt được về độ chính xác là 93,13%. Phương pháp phát hiện và phân loại là vô cùng quan trọng trong hệ thống phân loại cà chua tự động. Với sự phát triển của công nghệ máy học gần đây, thị giác máy tính trở nên mạnh mẽ hơn và hữu ích hơn cho việc kiểm soát chất lượng trái cây. Region-based Convolutional Neural Network (RCNNs) là một tập hợp con chuyên biệt trong máy học đã trở thành kỹ thuật phổ biến trong việc phát hiện và phân đoạn hình ảnh trái cây trong những năm gần đây. Sapan Naik và Bankim Patel đã xây dựng một mô hình phân loại trái xoài [4], Hamid và cộng sự phát triển một mô hình phân loại trái cây với CNN [5]. RCNN và các phiên bản cải tiến (Fast R-CNN, Faster R-CNN, Mask R-CNN) trích xuất nhiều đề xuất từ hình ảnh đầu vào, sau đó CNN được sử dụng để dự đoán lớp và hộp giới hạn của vùng đề xuất. Faster R-CNN tạo ra kết quả với nhãn lớp và một hộp giới hạn với tốc độ nhanh hơn Fast R-CNN nhờ tích hợp thuật toán đề xuất các region. Mask R-CNN là phiên bản mở rộng của Faster R-CNN, có thêm một nhánh để dự đoán mask của đối tượng. Yang Yu và cộng sự đã xây dựng mô hình phát hiện dâu tây cho robot thu hoạch dựa trên mô hình Mask R-CNN với tỉ lệ phát hiện trung bình 95.78% [6]. LabVIEW (Laboratory Virtual Instrumentation Engineering Workbench) là một môi trường lập trình đồ họa có thể dễ dàng phát triển các giao diện người dùng cho các ứng dụng kỹ thuật. Thị giác máy tính kết hợp với LabVIEW đã được sử dụng rộng rãi trong việc kiểm tra chất lượng của trái cây. Yi Chiu và Suming Chen đã nghiên cứu hệ thống hái trái cây tự động trong nhà kính bằng việc sử dụng LabVIEW và module NI Vision Development để phát triển hệ thống điều khiển và xử lý hình ảnh [7]. Mục tiêu của nghiên cứu là phát triển một hệ thống phân loại độ chín dựa trên thị giác máy tính. Một giao diện người dùng được thực hiện trong môi trường Labview để vận hành hệ thống phân loại này. Mô hình Mask RCNN được phát triển trong môi trường Python để phát hiện độ chín của quả cà chua cho hệ thống phân loại. 2. MẪU VÀ PHƯƠNG PHÁP 2.1 Mẫu cà chua Các mẫu cà chua được lấy hai lần tại Uông Bí, tỉnh Quảng Ninh vào tháng 1 năm 2022 và Thủ Đức, tp. HCM vào tháng 2 năm 2022. Cà chua được thu hoạch, sơ chế và lấy mẫu ngay trong ngày ở nhiệt độ 25oC. Trong giai đoạn cà chua còn non đến khi trưởng thành được thể hiện rõ với sự thay đổi màu sắc và có thể được chia làm ba giai đoạn độ chín 1, 2, 3 lần lượt tương ứng với quả xanh, quả chín vừa, quả chín (Hình 1). 296
- Hình 1. Các giai đoạn độ chín khác nhau dùng trong nghiên cứu này. 2.2 Hệ thống thực nghiệm Hệ thống phân loại gồm ba phần: phần băng tải, phần xử lý và phần phân loại. Phần băng tải gồm động cơ giảm tốc dc và dây băng tải, phần xử lý gồm camera và máy tính, phần phân loại gồm rc servo và board Arduino Uno. Quy trình phân loại độ chín cà chua như sau: (1) Cà chua được đưa từ nguồn cấp tới vị trí đặt camera trong phần phân loại. (2) Camera chuyển hình ảnh của trái cà chua về máy tính. Chương trình phân loại xử lý hình ảnh, đưa ra kết quả phân loại ra giao diện người dung và đồng thời gửi nó tới phần phân loại bằng giao tiếp serial. (3) Phần phân loại với Arduino Uno sẽ điều chỉnh góc quay rc servo theo kết quả phân loại được gửi từ chương trình xử lý. Hình 2. Hệ thống phân loại cà chua. 2.3 Mask RCNN Để xây dựng, huấn luyện và đánh giá mô hình Mask R-CNN, 300 hình ảnh trái cà chua đã được sử dụng. Hình ảnh được dán nhãn loại 1, 2 và 3 theo cách thủ công. Với 222 hình ảnh cà chua cho huấn luyện và 38 hình ảnh cho xác nhận, được chọn ngẫu nhiên từ bộ dữ liệu để huấn luyện mô hình. 40 hình ảnh còn lại được xử dụng để thử nghiệm để đánh giá hiệu suất của mô hình được đào tạo. Hình ảnh của các mẫu được chú thích thủ công bằng phần mềm GIMP (GNU Image Manipulation Program). Để tạo tập dữ liệu đối tượng chung trong ngữ 297
- cảnh (COCO), các tệp mask_definitions.json và dataset_info.json đã được tạo. Hai tệp này chứa thông tin mỗi hình ảnh trong tập huấn luyện và tập xác nhận. Sau đó, một chương trình python (coco_json_utils.py) được sử dụng, chương trình này có thể được tìm thấy trong kho lưu trữ Cocosynth [8]. Mask R-CNN là mô hình hiện đại để giải quyết việc phân đoạn phiên bản trong thị giác máy tính. Nó có thể phát hiện và phân loại đối tượng mục tiêu một cách đáng tin cậy. Framework Mask R-CNN đã được áp dụng cho đơn vị xử lý của hệ thống phân loại. Trong nghiên cứu này, kiến trúc mạng ResNet50 (Residual Network 50) được sử dụng làm xương sống để tạo ra một bản đồ đặc trưng của toàn bộ hình ảnh đầu vào. Mạng RPN (Region Proposal Network) được sử dụng để trích rút các vùng RoI (Region of Interest) có khả năng chứa đối tượng từ feature map của ảnh. Faster R-CNN được sử dụng với mục đích giúp mô hình dự đoán gián tiếp qua các anchors (pre-defined boxes). Lớp cà chua trong RoI và mask là kết quả của việc sử dụng Faster R-CNN và nhánh mặt nạ cùng nhau. Để triển khai Matterport, mô hình đề xuất đầu tiên được khởi tạo với trọng số được đào tạo trên MS COCO thay vì đào tạo mạng từ đầu. Sau đó, các weight đã được huấn luyện được sử dụng để chạy các suy luận trên một tập thử nghiệm. Một số tham số như NUM_CLASSES, IMAGE_MIN_DIM, IMAGE_MAX_DIM đã được sửa đổi để phù hợp với nghiên cứu này và các tham số còn lại giống với các thông số của mã gốc. Mô hình được đào tạo trong 20 eporch dưới Python 3.6. Hiệu suất của mô hình đề xuất được đánh giá dựa trên bốn chỉ số: accuracy, precision, recall và điểm F1. Hình 3. Khung tổng thể của mô hình Mask R-CNN. 3. KẾT QUẢ VÀ THẢO LUẬN Giao diện đồ họa người dùng (GUI) được thiết kế trên phần mềm LabVIEW, được sử dụng để vận hành hệ thống phân loại trái cà chua (hình 4). Các thư viện chính được sử dụng để phát triển là NI-IMAQdx và Python Node. NI-IMAQdx hỗ trợ thiết lập các thông số và thu thập hình ảnh của máy ảnh. Python Node cho phép LabVIEW gọi các hàm Python, các mô hình ML được đào tạo trong môi trường Python có thể tích hợp vào một chương trình LabVIEW. GUI có cửa sổ để hiển thị hình ảnh đã được suy luận, loại cà chua và các ô hiển thị nguồn ảnh, đường dẫn mô hình ML. 298
- Hình 4. Giao diện người dùng của hệ thống. Thực tế Loại 1 Loại 2 Loại 3 Dự đoán Loại 1 12 1 0 Loại 2 1 10 0 Loại 3 0 1 15 Bảng 1. Confusion matrix của mô hình Mask R-CNN Tổng cộng 40 hình ảnh cà chua của tập dữ liệu (13 trái loại 1, 12 trái loại 2, 15 trái loại 3) được sử dụng để kiểm tra độ chính xác của mô hình, được thể hiện trong bảng 1. Kết quả thực nghiệm với quả loại 1, accuracy, precision, recall và F1 score lần lượt là 95%, 92.3%, 92.3%, 92.3%. Với quả loại 2, accuracy, precision, recall và F1 score lần lượt là 92.5%, 90%, 83.3%, 86.5%. Với quả loại 3, accuracy, precision, recall và F1 score lần lượt là 97.5%, 93.7%, 100%, 96.7%. Từ kết quả thực nghiệm, có một tỉ lệ nhầm lẫn giữa loại 1 với loại 2 và loại 2 với loại 3. Nguyên nhân xuất phát từ số lượng mẫu sử dụng trong huấn luyện còn ít và chưa đa dạng. Màu sắc của loại 2 có sự phân bố giữa loại 1 và loại 3 có thể dẫn đến sự nhầm lẫn này. Sự nhầm lẫn này có thể được cải thiện qua việc bổ sung thêm dữ liệu hình ảnh về các trạng thái chín của trái cà chua và chia nhỏ độ chin thành nhiều giai đoạn hơn. Nhìn chung, mô hình Mask R-CNN có thể đạt kết quả tốt về phân loại quả và có thể áp dụng cho một hệ thống phân loại tự động, như kết quả hình 6. 299
- Hình 5. Kết quả phân loại. Mô hình phân loại Mask RCNN đóng vai trò quan trọng trong hệ thống phân loại. Phương pháp này có thể phát hiện và phân loại tương đối chính xác loại trái cà chua, tuy nhiên chương trình LabVIEW còn chậm. Chương trình LabVIEW chậm có thể là quá trình gọi hàm Python bằng Python Node. Việc cải thiện thời gian xử lý của mô hình hiện tại bằng việc sử dụng bộ công cụ học sâu (Deep Learning Toolkit for LabVIEW) có thể tiết kiệm được thời gian để Python Node gọi các hàm bên ngoài môi trường LabVIEW và trả kết quả trở lại LabVIEW. 4. KẾT LUẬN Bài báo này trình bày ứng dụng của mô hình Mask R-CNN để phân loại độ chín quả cà chua. Mô hình được đào tạo trong môi trường Python và được tích hợp vào LabVIEW bằng cách sử dụng thư viện Python Node. Kết quả phân loại 40 ảnh thử nghiệm cho kết quả: quả loại 1 với accuracy, precision, recall và F1 score lần lượt là 95%, 92.3%, 92.3%, 92.3%; quả loại 2: accuracy, precision, recall và F1 score lần lượt là 92.5%, 90%, 83.3%, 86.5%; quả loại 3: accuracy, precision, recall và F1 score lần lượt là 97.5%, 93.7%, 100%, 96.7%. Hệ thống và mô hình Mask RCNN có thể được sửa đổi và sử dụng để phân loại các loại trái cây có kích thước tương tự. TÀI LIỆU THAM KHẢO 1. Khan, I.A., Foreword, in Sustainable Management of Arthropod Pests of Tomato, W. Wakil, G.E. Brust, and T.M. Perring, Editors. 2017, Academic Press: San Diego. p. xv. 2. Sofu, M.M., et al., Design of an automatic apple sorting system using machine vision. 2016. 127: p. 395- 405. 3. Wajid, A., et al. Recognition of ripe, unripe and scaled condition of orange citrus based on decision tree classification. in 2018 International Conference on Computing, Mathematics and Engineering Technologies (iCoMET). 2018. IEEE. 300
- 4. Naik, S. and B.J.I.J.o.C.A. Patel, Machine vision based fruit classification and grading-a review. 2017. 170(9): p. 22-34. 5. Hamid, N., et al., Comparing bags of features, conventional convolutional neural network and AlexNet for fruit recognition. 2019. 14(1): p. 333-339. 6. Yu, Y., et al., Fruit detection for strawberry harvesting robot in non-structural environment based on Mask- RCNN. 2019. 163: p. 104846. 7. Chiu, Y.-C., et al., Study of an autonomous fruit picking robot system in greenhouses. 2013. 6(3): p. 92- 98. 8. Kelly, A., COCO Synth provides tools for creating synthetic COCO datasets. [cited 2021 29 July]; Available from: https://github.com/akTwelve/cocosynth. 2021. 301
ADSENSE
CÓ THỂ BẠN MUỐN DOWNLOAD
Thêm tài liệu vào bộ sưu tập có sẵn:
Báo xấu
LAVA
AANETWORK
TRỢ GIÚP
HỖ TRỢ KHÁCH HÀNG
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn