Deep Learning applicato alla coltura dei pomodori
Creators: name: Gattinoni, Federico
Publisher: name: Scuola Universitaria della Svizzera Italiana (SUPSI)
Year: 2018

description: Con il seguente progetto si vuole sviluppare un applicativo in grado di riconoscere lo stato di salute delle piante di pomodoro presenti all’interno di una serra, acquisendone le immagini. Il software deve essere in grado di riconoscere alcune malattie che possono colpire le piante. L’agronomo utilizzando l’applicativo ha la possibilità di sapere quali sono le piante malate e agire di conseguenza cercando di ridurre le malattie della pianta o addirittura cercando di prevenirle. Le immagini sono state acquisite in prima persona utilizzando due smartphone con risoluzione di 13 megapixel, posizionandosi ad una distanza costante di circa 25/30 cm dalla pianta. In un passo successivo le immagini dovranno essere acquisite in maniera automatica utilizzando una telecamera che verrà posizionata su un carrello mobile, il quale percorre su un binario all'interno dei filari di pomodori: le immagini saranno in numero ben maggiore rispetto a quelle da noi acquisite manualmente, e avranno inquadrature più ripetibili. Per la classificazione delle immagini è stata utilizzata la tecnologia del “Deep Learning” basata sulle reti neurali convoluzionali. Si tratta di un particolare tipo di classificatore che rispetto a quelli tradizionali è in grado di imparare meglio ciò che gli viene sottoposto. Sono state utilizzate delle reti di due diverse piattaforme (Matlab e Halcon), le quali sono già pre-allenate (pre-trained). In Halcon attraverso la tecnica del transfer learning (metodo di apprendimento automatico in cui un modello sviluppato per un'attività viene riutilizzato come punto di partenza per un modello in una seconda attività) vengono fornite reti pre-allenate, che rappresentano classificatori che sono stati addestrati su enormi quantità di immagini. Questi classificatori sono stati addestrati e testati per funzionare bene nelle attività di classificazione delle immagini industriali. Queste reti possono essere riallenate per compiti specifici fornendo un numero elevato di immagini. In Halcon il numero suggerito di immagini per fare in modo che il classificatore lavori bene sono è di almeno 500 immagini per classe. Per poter ottenere una classificazione il più possibile accurata sono stati sviluppati diversi software che ci hanno permesso di ottenere immagini adeguate e sufficienti da sottoporre al classificatore. Il software finale permette di identificare 7 classi differenti: due sono delle malattie e sono chiamate “Peronospora” e “Ragnetto”, mentre “Magnesio” rappresenta una carenza di acqua e liquidi nella pianta. La classe “Sana” raffigura delle foglie che non hanno alcun difetto particolare, mentre “Morta” indica una foglia o parte di essa già morta, la classe “Sovresposizione” rappresenta foglie con presenza di luce solare molto intensa (bianca) mentre l’ultima classe è “Sfondo” che contiene tutte le parti delle immagini che sono sfondo. Il software permette di evidenziare queste classi nelle immagini con differenti colori in base al tipo di malattia o difetto individuato. Le accuratezze ottenute nella fase di training della rete dai classificatori utilizzati sono molto buone, considerando anche le immagini utilizzate. Anche ad occhio nudo per alcune immagini è difficile individuare e distinguere le malattie incontrate. L’accuratezza è di circa il 98%, si tratta di un valore riscontrabile con i risultati ottenuti durante la fase di inference (fase in cui viene applicato il classificatore alle immagini in nostro possesso). È doveroso notare che il numero di immagini con cui abbiamo lavorato nel progetto è molto inferiore rispetto alle immagini che verranno successivamente utilizzate per ottenere un prodotto industriale. Considerando le dimensioni e il numero delle immagini acquisite (scattate nei punti interessanti della serra) si è ottenuta una stima dello spazio in m² coperto da queste ultime, facendo l’ipotesi di porle tutte adiacenti una all’altra: lo spazio è di circa 3 m². Si tratta di una dimensione molto inferiore rispetto alla grandezza in m² dell’intera serra (circa 26 km²). Il numero di errori di classificazione delle immagini in nostro possesso risulta molto piccolo, ma considerando che le dimensioni dell’intera serra sono molto maggiori rispetto allo spazio occupato dalle immagini acquisite, è facile intuire che il numero di errori riportato sull’intera serra dovrebbe crescere notevolmente. Deep Learning applicato alla coltura dei pomodori --- The aim of this project was to develop an application able to recognize the state of health of tomato plants present in a greenhouse. The application must recognize the different diseases that can affect the plants, except from the state of the fruit, that is the tomato. The agronomist will be able to know which plants are sick and act to reduce the disease or prevent it. The images were acquired using two smartphones with a camera resolution of 13 megapixels, trying to set it at a constant distance of about 25/30 cm from the plants. In a subsequent step, the images will have to be acquired automatically by using a camera that will be placed on a mobile cart that moves on the entire track a row, producing a greater number of images than those we have acquired manually, and they will have more repeatable shots. For the classification of images, we used Deep Learning technology which is based on convolutional neural networks. These nets are a classifier that can better learn what is submitted to it. We have used networks of two different platforms (Matlab and Halcon), which are already pre-trained. Halcon through the technique of transfer learning (method where a model developed for a task is reused as the starting point for a model on a second specific task) provide pretrained networks, representing classifiers which have been trained on huge amounts of classified image data. These classifiers have been trained and tested to perform well on industrial image classification tasks. These classifiers can be retrained for your specific task to classify your data into your classes. To obtain at a classification as accurate as possible and several softwares were developed, to have enough images to submit to the classifier. The final software allowed to identify seven different classes: two deal with disease and are called “Peronospora” and “Ragnetto”, “Magnesio” is a class that represents a lack of water or liquids in the plants, Sana contains images of healthy leaf. “Morta” indicates a leaf or part of it already dead, “Overexposure” represents leaves with the presence of sunlight (white) on them while the last class is “Background” that contains all the parts of the images that are background. The software allows you to highlight these classes in images with different colors based on the type of disease or defect identified. The accuracy obtained in the network training phase from the classifiers used is very good, considering also the images used. In some images it is difficult to identify and distinguish the diseases detected. The accuracy is of about 98%, and this is a value that can be elaborating with the results obtained during the inference phase (phase where the trained classifier is applied at own images). It should be noted that the number of images with which we have worked in the project is much lower than the images that will be subsequently used to obtain an industrial product. By analyzing the dimensions and the number of images obtained (taken at interesting points of the greenhouse), we can estimate a surface, making the hypothesis of placing all images adjacent to each other, of is about 3 m². This is a dimension much smaller than the real size in m² of the entire greenhouse. The error of image classification is very small for the number of images we used, but it grows considerably considering the size of the entire greenhouse.