Tải bản đầy đủ (.pdf) (7 trang)

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ạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (742.46 KB, 7 trang )

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 q 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 số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 tố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 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 tồ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ự đố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

Loại 1

12

1

0

Loại 2

1

10

0

Loại 3

0

1

15

Dự đoán

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 ngồ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. 395405.
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 MaskRCNN. 2019. 163: p. 104846.
7. Chiu, Y.-C., et al., Study of an autonomous fruit picking robot system in greenhouses. 2013. 6(3): p. 9298.
8. Kelly, A., COCO Synth provides tools for creating synthetic COCO datasets. [cited 2021 29 July]; Available
from: 2021.

301



×