Detection of Tomato Plant Diseases Using Deep Convolutional Neural Network

- The disease in tomato leaves affects the quality and quantity of the crops. To overcome this problem an early diagnosis of diseases will benefit the farmers. This work uses PlantVillage dataset of 9 tomato leaves and fed to AlexNet and VGG16. It focuses on accuracy of the model by using hyperparameters like batch size, learning rate and optimizer.


Introduction
Evolution of deep learning has made quite simple in processing images in recent decayed. Images captured for plant disease from digital technologies is a significant challenge. AlexNet developed by [1] won image classification challenge in ILSVR-2010 by classifying 1000 categories with 1.2 million of parameters. AlexNet is a stack of convolution layers, ReLu activation function, and maxpooling layers. AlexNet out performs the traditional shallow models [2]. [3] uses pre-trained AlexNet for disease classification, it provides accuracy of 99.35% for 26 plant leaf disease with 14 crops for 54,306 images for training. [4] classifies 8 tomato diseases using GoogLeNet and AlexNet and obtained higher accuracy. [5] uses VGG, DenseNet, Inception V4 and ResNet to predict 14 diseases and test accuracy was 99.75%.

Dataset
Dataset is obtained from PlantVillage for tomato diseases classification with RGB images. PlantVillage dataset has Bacterial spot, Early blight, healthy, Late blight, Leaf Mold, Mosaic virus, Septoria leaf, Target spot, Spider mites two spotted spider mite and Yellow leaf curl virus. Figure 1 shows represent the sample images of tomato dataset. 15,200 images are chosen for data processing which includes healthy and disease leafs with the dimension of 256 x 256. These images are augmented to 227 x 227 and 224 x 224 for AlexNet and VGG16 net respectively [6].

Models
AlexNet AlexNet model is shown in Figure 2 has 5 convolutional layers and 3 fully connected layers. The augmented image has a dimension of 227 x 227 x 3 is fed as an input to the first convolution layer and the dimension of filter is 11 x 11 x 3. Dot product is performed when filter is applied to the input image. Rectified Linear Unit (ReLU) is applied instead of tanh activation function, so that speed is increased by 6 times with same accuracy. In layer 2, 5 x 5x 48 filters are used, 3 x 3 x 256 filters are used in layer 3, layer 4 and 5 uses 3 x 3 x 192 filter dimensions. AlexNet uses ReLu, maxpooling and normalization layers. ReLu is a nonlinear activation function used in last two layers. Maxpooling is used to reduce the dimension of the input image by considering the maximum value of the pixels. Dropouts are used instead of regularization to avoid overfitting of the model, but training time is increased by 0.5.

VGG16
VGG16 model has 13 convolution layers with ReLu activation function, 2 fully connected layers and final layer is softmax layer. The input image is of the dimension of 244 x 244. It uses 3 x 3 filters with stride 1 in all layers and uses 2 x 2 filter of stride 2 in maxpool layer [7]. Figure 3 shows the architecture of VGG16 model.

Result and discussion
Input images to both the models are augmented. Dataset consists of 9 types of tomato diseases and healthy images. Learning rate of AlexNet and VGG16 is set to 0.0001 to fine tune the layers [8]. For exponential weighted average stochastic gradient decent is used with batch size of 32 and epochs to 100. The classification accuracy obtained for AlexNet is 97.23% and 97.49% for VGG16 with 15,200 images. Figure 4 and Figure 5 represent accuracy of the models with respect to number of epochs. Table 1 provides the parameters used in the models.

Conclusion
Deep learning in recent era effectively solves image processing problems to detect plant leaf diseases. Data augmentation help the model to better understand the data that is been processed by increasing the data size. In this work, we have used tomato plant leaf from PlantVillage to identify 9 types of diseases. We used two popular models namely AlexNet and VGG16 to train classifier on our input dataset. The accuracy of AlexNet was 94.63% and 97.47% for VGG16. The batch size, dropout and training epochs have improved the model performance.