Tomato Plant Diseases Classification Using Deep Learning Based Classifier From Leaves Images
Tomato Plant Diseases Classification Using Deep Learning Based Classifier From Leaves Images
Abstract In most agricultural countries, farmers face a An automatic machine based on computer vision and
great loss every year due to diseases in crops. So, early image processing techniques which can detect unhealthy
detection of tomato plant diseases has achieved a great concern plants and classify the tomato diseases will be a great help to
of the researchers. In this paper a deep convolutional neural this extent. Visual examination of plants may lead to
network model is used to recognize unhealthy plants from the inaccurate prediction of diseases due to the lack of prior
healthy plants and to classify the tomato plant diseases. We knowledge. This misleads to apply inappropriate preventive
have used VGG16 deep cnn classifier to recognize unhealthy measures also. So if a machine can identify the unhealthy
plants and their diseases from the images of tomato plants. We tomato plants and detect which category of disease is that,
have used Plant Village dataset which contains ten different this paves the way to successfully nurture the remaining
classes of tomato leaf images including healthy plants. Using
crops with necessary measures to reduce the amount of loss.
transfer learning method in a pre-trained VGG16 model, this
dataset shows a satisfying classification performance which Recent researchers focus on texture features of defected
about 95.5%. Top 2 accuracy of this model reaches to 99% to tomato leaves. Since attack of diseases causes change to
recognize tomato plant diseases. Without using any color, shape, smoothness of the leaves, identifying unhealthy
segmentation or preprocessing of leaves images our trained tomato plants will be more successful using leaves. Vetal [1]
model shows a performance of approximately 100% to et al. proposed a multi class Support Vector Machine (SVM)
differentiate unhealthy plants from healthy plants. to recognize tomato plant diseases. They classified four
different tomato plant diseases where each class contained
Keywords Deep Convolutional Neural Network, Transfer
80 images to extract features and trained in multi class SVM
Learning, Tomato Disease.
classifier. They applied various pre-processing steps to
I. INTRODUCTION achieve better classification performance. Images were
converted from grayscale to HSI form to extract texture
In Bangladesh most of the people depends on farming, features well. They applied median filters to reduce noise
agricultural products for livelihood. Due to atmospheric and kurtosis filter to smoothen the images. Segmentation of
condition in this area tomato has become an important crop the defected parts of leaf images were done on the basis of
and part of our economy. Early detection of these diseases color. All these pre-processing steps prepared the dataset to
may help them to take preventive measures and reduce their extract features to be trained in SVM. They compared their
loss. Tomato crop is important for its high market demand classification performance with Artificial Neural Network,
and nutritious value. Tomato has gained concern because of K Nearest Neighbor and Probabilistic Neural Network etc.
its taste and nutritious values. Tomato is rich in Vitamin E, and achieved classification accuracy of 93% to recognize
Vitamin C and Beta Carotene. These antioxidants are very four different tomato plant diseases.
essential
susceptible to pests and insects which causes different Budihal [2] et al. proposed two different techniques to detect
diseases in tomato plants. Manual identification of tomato spot disease and fungus detection in tomato plants. To detect
plant diseases requires prior knowledge about that diseases. spots in binary images, leaf veins degraded the performance.
The limitation behind this identification is that all symptoms For this reason they transformed RGB images into HSI images
of tomato plant diseases may not be known to all. Every which minimized the noise due to the existence of leaf veins.
year farmers have to struggle with much difficulties to They applied otsu threshold to detect spots effectively from
produce healthy crops. Due to attack of pests and insects, the damaged area of leaves. They focused on I value (intensity of
production line falls below their determination which causes light amplitude) of HSI form to apply threshold value. To
a great threat to our economy and especially to our farmers. detect fungus attack in tomato leaves, some parameters were
Though farmers use many insecticides and pesticides to measured to check the intensity of the fungus attack. Total area
prevent tomato plant diseases, most often they become fail
to protect because of their ignorance about the disease and diseased area of leaf were measured. Fungus position was also
preventive measures. Again excessive use of insecticides detected using segmentation approach. The main limitation to
and pesticides is harmful to our life and existence. this work was this technique could determine only spot or
Misinterpretation of diseases and applying over dosages or fungus attack. This technique classified other leaves beyond
under dosages of insecticides also is also liable for crop spot and fungus attack as healthy leaves whether they had any
damage. So it is very important and mandatory to recognize other diseases or not.
Prajwala [3] et al. proposed to use a deep convolutional neural
But farmers lack in experts who will monitor the plants,
network as a classifier to recognize tomato plant diseases. They
recognize diseases and take preventive measures like putting
used LeNet model consisted of simple convolution layers,
a specific dosages of insecticides etc. Rather monitoring the
pooling layers and fully connected layers. In pre-processing
plants frequently and manual identification of tomato
step, they resized the training images for next training process.
diseases is very time consuming and tiring task. Again
iques on train and
sometimes farmers find it hard to go to experts in distant
test dataset. They showed 94% classification accuracy in
places and taking measures against uncommon diseases.
classifying tomato plant diseases.
82
Authorized licensed use limited to: Charles Darwin University. Downloaded on October 05,2023 at 12:25:39 UTC from IEEE Xplore. Restrictions apply.
Alvaro [4] et al. proposed a three unit tomato disease B. VGG16 Architecture
recognition process for false positive samples and class VGG16 is a deep learning algorithm based classifier
unbalanced data. They mentioned a Refinement Filter Bank which has 16 convolutional layers in its network. Simonyan
Framework where Faster RCNN was used to detect affected [5] et al. proposed this deep CNN model which made the
area with bounding box prediction. Each bounding box improvement over AlexNet model. The improvement was
contained a prediction about the location of infected area and done on the basis of changing type of convolution filters.
confidence score to which class the disease belonged to. The Instead of using kernel size convolution filters like 11×11 or
second unit was CNN filter bank which was used to verify the 5×5, VGG16 uses multiple numbers smaller convolution
classification task where the samples were truly classified or
filter like 3×3. Using smaller kernel stack filters increases
not. And finally the last integration unit separated the false
the capability to learn complex feature from training data.
positive samples. This algorithm achieved a good classification
VGG16 receives fixed size 224×224 images for training the
performance but the complexity of CNN Filter Bank slowed
down the recognition process. network. The model performs convolution using multiple 3×3
filters which is followed by a convolution of 1×1 filters to
We have proposed to use a deep CNN pre-trained model make the input feature linear. The model fixes the stride value
to classify tomato plant diseases where no noise reduction to 1 and add spatial padding to the intermediate output to keep
technique or noise filtering process is required and the the spatial resolution same as input data. Max pooling layers
classification performance is almost 100% to detect work with a stride of 2. All these output features are mapped to
unhealthy plants. fully connected layers. Since we have proposed to follow a
II. METHODOLGY transfer learning approach, our tomato disease recognition task
relevant data are used to train a pre-trained VGG16 model. As
A. Deep Convolutional Neural Network we want to classify 10 different classes, the output of the fully
Deep Convolutional Neural Network (DCNN) is a connected layers are mapped to these 10 different classes. This
classifier based on deep learning. A deep CNN takes images as is called fine tuning the model. The lower layers in a deep CNN
input and fixes weights and biases depending on various objects model learns low level features which are not specific and
so that the model can recognize those classes. This classifier problem dependent. Rather we train the deeper layers with our
shows difference on that point that it quires very less pre- work dataset as higher layers learns more specific and problem
processing of images than other classifiers. A deep CNN dependent features. We freeze the initial layers so that these
usually has the ability to learn and train features in the model. layers initializes weights from the previous pre-trained
A convolutional neural network extracts both spatial and knowledge. Freezing the initial layers also reduces the chance
temporal details of images. CNN performs linear calculation to of overfitting the model. Initializing improper weights during
multiply the input image values with bias and weights. A CNN training time leads the model to perform poor or lacks in
applies a number of filters on the input images and the filtered showing a generalized model on unseen data. Using a pre-
values are passed into an activation function. After applying trained model, this problem can be solved by initializing
multiple convolution filters at a fixed number of epochs during weights from the pre-trained model. Finally the augmented data
training the model, all results create a map of activation. This is is prepared to train the tuned model and the trained model will
called feature map which actually differentiate among various recognize different tomato plant diseases.
classes to be recognized. All these extracted features are passed
through a nonlinear activation function Relu in the fully
connected layer. A fully connected layer converts the output in
a one dimensional vector which is mapped to the number of
classes to be classified. Another part of convolutional neural
network is a pooling layer. Pooling layer reduces the size of
convolved features which minimizes the computational costs.
Since convolution into deeper layers produces more parameters
to be trained, a reduction in learnable features helps the network
to extract dominant features from the feature map. A CNN C. Dataset
83
Authorized licensed use limited to: Charles Darwin University. Downloaded on October 05,2023 at 12:25:39 UTC from IEEE Xplore. Restrictions apply.
(h) Septoria Leaf spot (i) Spider Mites (j) Healthy Leaf
Fig. 1. Different types of Tomate diseased leaf and healthy leaf
Fig. 2. Training VS Validation Accuracy of VGG16 Fig. 4. Confusion Matrix for Classification Task
84
Authorized licensed use limited to: Charles Darwin University. Downloaded on October 05,2023 at 12:25:39 UTC from IEEE Xplore. Restrictions apply.
model can successfully distinguish between healthy and
unhealthy plants with an accuracy 100% (approximately).
85
Authorized licensed use limited to: Charles Darwin University. Downloaded on October 05,2023 at 12:25:39 UTC from IEEE Xplore. Restrictions apply.
REFERENCES
S.
Processing
Communication Engineering, Vol. 6, Issue 6, June 2017.
S. Budihal, Sandhya, S. D Hajawagol, S. R.
Recognition, 2016.
inception
Vision and Pattern Recognition (CVPR), 2016.
-v4, Inception-
ResNet and the
Computer Vision and Pattern Recognition (CVPR),
2016.
86
Authorized licensed use limited to: Charles Darwin University. Downloaded on October 05,2023 at 12:25:39 UTC from IEEE Xplore. Restrictions apply.