Derin öğrenme ağları kullanılarak doğal ortamda hastalıklı domateslerin belirlenmesi
Detection of diseased tomatoes using deep learning networks in natural field
Yazar: KÖKSAL KAPUCUOĞLU
Danışman: DOÇ. DR. MÜRVET KIRCI
İstanbul Teknik Üniversitesi / Lisansüstü Eğitim Enstitüsü / Elektronik ve Haberleşme Mühendisliği Ana Bilim Dalı / Elektronik Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2022
Konu: Elektrik ve Elektronik Mühendisliği = Electrical and Electronics Engineering
Dizin: Akıllı tarım = Smart agriculture ; Derin öğrenme = Deep learning ; Doğruluk analizi = Accuracy analysis ; Görüntü sınıflandırma = Image classification ; Makine öğrenmesi yöntemleri = Machine learning methods

Özet:
Birleşmiş Milletler ile Gıda ve Tarım Örgütünün yayımlandığı raporlara göre, 2050 yılında dünya nüfusunun 7 milyardan 10 milyara çıkması beklenmektedir. Bu kurumların yayımladığı diğer bir raporda, 2050 yılında beklenen nüfusu beslemek için önümüzdeki yıllarda dünya genelindeki gıda üretiminin %70 oranında artması beklenmektedir. 
Kentleşmeden dolayı tarımdaki iş gücünün azalmasından ve geçmişten günümüze kadar gelen geleneksel yöntemlerle gıda üretimin bu kadar arttırılması mümkün olmayacağından tarımda teknolojiden faydalanmak gerekmektedir. Bu anlamda tarım, teknolojik gelişmelerden pozitif anlamda etkilenen en önemli sektördür. Tarımda teknolojik anlamda son dönüşümünü temsil eden tarım 4.0 ile birlikte akıllı tarım ve dijital tarım konuları popüler hale gelmiştir. 
Akıllı tarımla birlikte gelen otomasyon sistemlerinin en çok uygulandığı alanlardan biri de hasat otomasyonudur. Yetiştirme ve hasat dönemi arasındaki süreyi en verimli şekilde geçirmek, üretilen ürünün kalitesine ve hasat miktarına direkt etki etmektedir. Bu sebeple, yetiştirme ve hasat dönemi arasındaki sürede, hasta bitkilerin tespit edilmesi ve ilaçlanmasının en doğru şekilde yapılması gerekmektedir.
Nüfusla birlikte gerekli olan gıda ihtiyacının sürekli arttığı bu ekosistemde, dünyada üretim-tüketim miktarı ve geniş kullanım alanları baz alındığında, domates, en önemli sebzelerin başında gelmektedir. Domates yetiştiriciliği sırasında, yüksek doğruluğa sahip bir hasat otomasyon sisteminden yararlanmak bir gereksinim haline gelmiştir. Geleneksek yöntemlerle domates yetiştiriciliğinde; verilecek gübre miktarı, ilaçlama zamanı ve hasta olan domateslerin tespiti, insana bağımlılığı açısından hataya ve verimsiz bir süreç yönetimine açıktır. Bu yüzden son yıllarda hasat otomasyon sistemlerinde, insan bağımlılığını en aza indiren ve karmaşık sistemlerde bile yüksek doğrulukta ve hızda sınıflandırma yapan derin öğrenme teknolojisinden yararlanılmaktadır.
Bu alanda yapılan çalışmaların çoğunda, hazır ortamlarda çekilen domates görüntülerinden oluşan veri kümeleri kullanılmıştır. Bu yüzden yapılan çalışmalar sonucunda sunulan derin öğrenme ağlarından çoğu, saha ortamında çalışmaya uygun değildir.
Bahsedilen bu sorunlara karşı bu çalışmada, doğal saha koşullarında da yüksek hızda ve doğrulukla sınıflandırma yapabilen bir sistem önerilmiştir. Son yıllarda yaygın bir şekilde kullanılan derin öğrenme ağları incelenerek performans metrikleri belirlenmiştir. Daha sonra farklı davranıştaki veri kümeleri ile eğitilerek, eğitilen modellerin performansları incelenmiştir.
Bu çalışmada; AlexNet, SqueezeNet, MobileNet v1, MobileNet v2, ResNet-50, GoogleNet, Inception v3 ve Inception ResNet v2 ile birlikte toplam 8 farklı derin öğrenme ağı incelenmiştir. Veri kümesi olarak; sınıflandırma çalışmalarında yaygın bir şekilde kullanılan Plantvillage ve Tiny-imagenet veri kümesi ile birlikte bu çalışmada kullanılmak için oluşturulmuş olan Çanakkale domates tarlası veri kümesi kullanılmıştır. 
Plantvillage veri kümesinde, 9 hastalıklı domates yaprağı sınıfı ve 1 sağlıklı domates yaprağı sınıfı olmak üzere toplam 10 sınıf vardır. Tiny-imagenet veri kümesinde 200 farklı nesne sınıfı bulunmaktadır. Bu çalışmada kullanılması için, Çanakkale-Erenköy'de bir domates tarlasında doğal saha şartlarında çekilen domates görüntülerinden oluşan Çanakkale domates tarlası veri kümesi oluşturulmuştur. Çanakkale domates tarlası veri kümesi oluşturulurken, dahil edilen doğal etkenlere göre bu veri kümesi iki şekilde temsil edilmiştir; temel Çanakkale domates tarlası veri kümesi ve karmaşık Çanakkale domates tarlası veri kümesi. Temel Çanakkale domates tarlası veri kümesindeki her bir görüntü, çekim tekniklerinden ve doğal şartlardan kaynaklanan ışık farklılıkları, görüntü yakınlığı, blur çekim, görüntü çerçevesinde yaprakların olması gibi etkenler içermektedir. Karmaşık Çanakkale domates tarlası veri kümesindeki her bir görüntü ise, temel veri kümesindeki etkenlerin dışında dal, başka bir domates, yaprak gibi ekstra etkenler içermektedir.
Bu çalışmada yapılan denemeler sonucunda, Tiny-imagenet veri kümesi ile derin öğrenme ağlarının eğitiminde en iyi sonuca, %42.62 doğrulama doğruluğu ile Inception v3 ağı ile ulaşılmıştır. Plantvillage veri kümesi ile derin öğrenme ağlarının eğitiminde en iyi sonuca, %99.1 ile MobileNet v1 ağı ile ulaşılmıştır. Temel Çanakkale domates tarlası veri kümesi ile derin öğrenme ağlarının eğitiminde en iyi sonuca, %99.78 doğrulama doğruluğu ile Inception ResNet v2 ağı ile ulaşılmıştır. Karmaşık Çanakkale domates tarlası veri kümesi ile derin öğrenme ağlarının eğitiminde en iyi sonuca, %92.92 ile GoogleNet ağı ile ulaşılmıştır. 
Ayrıca yapılan denemeler sonucunda derin öğrenme ağlarının performans metrikleri incelenmiştir. Bu incelemeye göre; AlexNet, ResNet-50, Inception v3 ve Inception ResNet v2 gibi derin öğrenme ağlarının eğitim maliyeti olarak yüksek eğitim süresine ve model boyutuna sahip olduğunu tespit edilmiştir. Özellikle veri boyutu büyüdükçe, eğitim süresinin de bire bir oranda arttığı belirlenmiştir. Yüksek eğitim maliyetine sahip derin öğrenme ağları arasından en iyi sonuç veren Inception v3 ağının eğitimi; Tiny-imagenet veri kümesi üzerinde 7.5 saat, Plantvillage veri kümesi üzerinde yaklaşık 4 saat, temel Çanakkale veri kümesi üzerinde 5 dakika ve karmaşık Çanakkale veri kümesinde ise 20 dakika sürmüştür. Eğitilen Inception v3 modelinin ortalama model boyutu ise yaklaşık 260 MB'dır.
Diğer taraftan SqueezeNet, MobileNet v1, MobileNet v2 ve GoogleNet gibi derin öğrenme ağlarının ise eğitim maliyeti olarak düşük eğitim süresine ve model boyutuna sahip olduğunu tespit edilmiştir. Benzer şekilde veri boyutu büyüdükçe, eğitim süresinin de bire bir oranda arttığı belirlenmiştir. Düşük eğitim maliyetine sahip derin öğrenme ağları arasından en iyi sonuç veren MobileNet v1 ağının eğitimi; Tiny-imagenet veri kümesi üzerinde 75 dakika, Plantvillage veri kümesi üzerinde yaklaşık 2.5 saat, temel Çanakkale veri kümesi üzerinde yaklaşık 3 dakika ve karmaşık Çanakkale veri kümesinde ise yaklaşık 12 dakika sürmüştür. Eğitilen MobileNet v1modelinin ortalama model boyutu ise yaklaşık 27 MB'tır.

Abstract:
According to the reports published by the United Nations and the Food and Agriculture Organization, the world population is expected to increase from 7 billion to 10 billion in 2050. In another report published by these institutions, global food production is expected to increase by 70% in the coming years to feed the expected population in 2050.
It is necessary to benefit from technology in agriculture, since it will not be possible to increase the food production with traditional methods from the past to the present and the decrease in the workforce in agriculture due to urbanization. In this sense, agriculture is the most important sector that is positively affected by technological developments. With agriculture 4.0, which represents the latest technological transformation in agriculture, smart agriculture and digital agriculture have become popular.
One of the most applied areas of automation systems that come with smart agriculture is harvest automation. Spending the time between the growing and harvesting period in the most efficient way has a direct impact on the quality of the produced product and the amount of harvest. For this reason, in the period between the growing and harvesting period, it is necessary to detect and spray the sick plants in the most accurate way.
In this ecosystem, where the need for food is constantly increasing with the population, tomato is one of the most important vegetables, based on the amount of production-consumption and wide usage areas in the world. During tomato cultivation, it has become a requirement to utilize a high accuracy harvest automation system. In tomato cultivation with traditional methods; The amount of fertilizer to be given, the time of spraying and the detection of sick tomatoes are open to error and inefficient process management in terms of human dependence. Therefore, in recent years, deep learning technology has been used in harvest automation systems, which minimizes human dependence and makes classification with high accuracy and speed even in complex systems.
In most of the studies in this area, datasets consisting of tomato images taken in ready-made environments were used. Therefore, most of the deep learning networks presented as a result of the studies are not suitable for working in the field environment.
Against these problems, in this study, a system that can classify with high speed and accuracy in natural field conditions is proposed. Performance metrics have been determined by examining deep learning networks, which have been widely used in recent years. Then, the performances of the trained models were examined by training them with different behavioral data sets.
In this study; A total of 8 different deep learning networks were examined, including AlexNet, SqueezeNet, MobileNet v1, MobileNet v2, ResNet-50, GoogleNet, Inception v3 and Inception ResNet v2. As a data set; In addition to the Plantvillage and Tiny-imagenet dataset, which are widely used in classification studies, the Çanakkale tomato field dataset, which was created for use in this study, was used.
The Plantvillage dataset 18345 tomato leaves for training and 4585 tomato leaves for validation. This dataset contains 10 classes, 9 diseased tomato leaf classes and 1 healthy tomato leaf class. There are approximately 1800 images of tomato leaves for each class. Each image in this dataset is 256 x 256 in size and in the RGB color model.
The tiny-imagenet dataset is a sub-dataset sampled from the ImageNet dataset. There are 200 different object classes in this dataset. The training index of this dataset has approximately 500 for each class, a total of 100000 images. There are 10000 images in the validation directory.
The Çanakkale tomato field dataset was created using 1100 source images with a resolution of 3024 x 4032, taken from a tomato field in Erenköy village of Çanakkale, under natural field conditions and taken with a mobile phone. First, the areas with a single tomato in a square were determined from the source images. A utility program called Colabeler was used for this process. Tomato images selected and labeled with the Collabeler program were recorded in PASCAL VOC format. Then, tomato images tagged from the source image were extracted one by one with an open source script. Each image obtained has a resolution of 150 x 150 to 1500 x 1500 and is in RGB color model.
While creating the Çanakkale tomato field dataset, tomatoes under the branch or leaf in the first stage were not included in the dataset. The dataset obtained in this way is named as the basic Çanakkale tomato field dataset. This dataset contains 443 tomato images, 46 diseased, 397 healthy.
The dataset, which was created by including the tomatoes, some of which remained under the leaves or branches, during the creation of the dataset, was named as the complex Çanakkale tomato field dataset. This dataset includes 1974 tomato images, 152 patients and 1642 healthy ones. The images in both datasets created include factors such as diseased differences caused by shooting techniques and natural conditions, image proximity, blur shooting, and the presence of leaves in the image frame.
In order to train the 8 learning networks examined in this thesis on the Plantvillage dataset, the images are included in the system according to the input of the network to be trained in the data preprocessing step. In addition, classification layers are redesing to make classification for 10 classes. At the beginning of the trainings, 128 was chosen as the batch size. ReLU was used as the activation function in the training. As the improvement algorithm, SGD with learning rate set to 0.001 and momentum 0.9 at the beginning, and Adam with learning rate set to 0.001 were used. 25 was used as the number of revolutions. With these training hyperparameters, 98.86% training accuracy and 92.25% validation accuracy rate were achieved in the use of Adam optimizer. Then, the training hyperparameters (learning rate, initiator, dilution, regulation, cycle rate, data expansion) were improved, increasing the validation accuracy from 92.55% to 97.78%. The last training parameters used are as follows; 0.0001 L2 regulation, 0.001 learning rate Adam optimizer, 100 epoch, He-uniform initializer and data augmentation. Along with the improvements made in other deep learning networks, the model that achieved the best results with the Plantvillage dataset, according to the trials in this study, was MobileNet v1 with a validation accuracy of 99.10%.
Each image in the Tiny-ImageNet dataset consists of 64 x 64 RGB images. For this reason, when creating deep learning networks, the input dimensions of the network are set to 64 x 64. According to the trials in this study, the model that achieved the best results with the Tiny-ImageNet dataset was Inception v3 with a 42.62% validation accuracy.
The model that achieved the best results with the basic Çanakkale tomato field dataset was Inception ResNet v2, with a validation accuracy of 96.87%. When the performance of the ResNet v2 network was examined on the error matrix, it was seen that all healthy tomatoes were predicted correctly. However, when the diseased tomato class was examined, it was seen that 5 of them were predicted correctly, but 4 of them were incorrectly predicted. Data Augmentation method was used to make the data set, which had an unbalanced distribution at the beginning, balanced. At each expansion step, the image; rotation, width shift, height shift, shear and zoom methods are applied. In training the ResNet v2 network on the expanded basic Çanakkale tomato field dataset, the best validation accuracy was achieved when the learning rate was 0.001, with a rate of 99.78%. When the performance of the ResNet v2 network is examined on the error matrix, it is seen that the data expansion has a positive effect on the result. It was seen that all healthy tomatoes were predicted correctly according to the error matrix. It was seen that 226 images were predicted correctly from diseased tomatoes, but 1 image was predicted incorrectly. According to these results, the verification accuracy increased from 96.87% to 99.78%.
The model that achieved the best results with the complex Çanakkale tomato field dataset was GoogleNet with a validation accuracy of 92.92%. When the results were examined over the error matrix, it was seen that the trained model classified all the sick tomatoes as healthy. Using the data expansion method, the diseased tomato class was expanded 32 times, and the healthy tomato class was expanded 3 times to create a balanced dataset. With this method, the number of images from 1974 was increased to 9790 tomato images, 4859 of which were diseased and 4924 were healthy. In training the GoogleNet network on the expanded basic Çanakkale tomato field dataset, the best validation accuracy was achieved with a learning rate of 0.001, with a rate of 55.68%. According to these results, the verification accuracy decreased from 92.92% to 55.68%. According to the error matrix, the prediction accuracy of healthy tomatoes decreased from 100% to 53%. It was observed that the prediction accuracy of diseased tomatoes increased from 0% to 17%.
When all these results are examined in general, it is seen that the size of the data set is important, but the increase in the number of classes affects the results negatively, and the balancedness of the data set directly affects the classification. It has been observed that as the class and complexity of the images increase, deep meshes give better results and hyperparameter tuning improves the results.
The method followed while creating the data set in the data obtained from the natural field directly affects the detection of the disease. Our tests show that Inception ResNet v2 is more successful with a 99.78% disease detection rate in the basic Çanakkale tomato field dataset. Inception architectures are more costly when model size and training times are considered. Similar results can be achieved with less costly deep learning networks. This shows that deep learning networks are generally successful in disease detection.