Tomato ripeness detection using deep learning

Tomatoes are fruits with high nutrition and high in fibre; packed with vitamin C, vitamin K1, vitamin B9 and minerals. The global tomato processing market has reached 43.4 million tons in 2021. It is important to determine maturity level of the crops before harvesting to optimize yield. However, man...

Full description

Saved in:
Bibliographic Details
Main Author: Yap, Yoon Heng
Format: Thesis
Language:English
Published: 2022
Subjects:
Online Access:http://eprints.utm.my/id/eprint/99588/1/YapYoonHengMSKE2022.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Tomatoes are fruits with high nutrition and high in fibre; packed with vitamin C, vitamin K1, vitamin B9 and minerals. The global tomato processing market has reached 43.4 million tons in 2021. It is important to determine maturity level of the crops before harvesting to optimize yield. However, manual inspection of ripe tomatoes required huge labour resources and is time consuming. The amount of labour force for fruit harvesting has increased over the years due to increasing demand. Recently, some studies have attempted to evaluate the feasibility of smart agriculture involving machine learning for harvest ripeness detection. However, these works typically used smaller data size, simple dataset with no background or leaves or explored limited machine learning model. Hence, this thesis aimed to identify tomato ripeness detection using two machine learning networks such as Mask RCNN and YOLOv5. Both models were compared based on minimum average precision. The results of these algorithms were benchmarked with previous works in terms of precision and recall. The dataset for this work consisted of 1000 high resolution images (3024 x 4032) with a total of 9063 tomatoes consisting of unripe, half ripe and ripe tomatoes with leafy background to emulate actual environment in a tomato field. The images were annotated with bounding box in VGG image annotator prior to training and testing with the Mask R-CNN, YOLOv5 networks. After that, these images were divided to training, validation and testing set with 80:10:10 ratio and trained using TensorFlow. Parameters such as epochs, step per epochs, learning rate, batch size were tuned to improve training accuracy and reduce training loss. Minimum average precision achieved for Mask R-CNN was 0.903 and YOLOv5 was 0.927. Precision and recall for Mask RCNN was 89.94% and 87.14% respectively. YOLOv5 achieved better precision and recall of 92.72% and 90.87% respectively, which were better compared to Mask RCNN.