Final
Final
LEARNING
A PROJECT REPORT
Submitted by
JEYAPRIYA S (510120205006)
RAMYA A (510120205011)
of
BACHELOR OF ENGINEERING
in
INFORMATION TECHNOLOGY
MAY 2024
ANNA UNIVERSITY::CHENNAI 600 025
BONAFIDE CERTIFICATE
SIGNATURE SIGNATURE
Mrs.S.SHARMILA.,MCA.,M.E.,(Ph.D) Mrs.S. SHARMILA.,MCA.,M.E.,(Ph.D)
HEAD OF THE DEPARTMENT SUPERVISOR
We are thankful to all teaching and non-teaching staff of our department for their
constant cooperation and encouragement in pursuing our project work.
iv
ABSTRACT
Food production in India is largely dependent on cereal crops including rice, wheat
and various pulses. Rice is one of the staple foods of the world. But the production of
rice is hampered by various kinds of rice diseases. One of the main diseases of rice is
remote areas to identify rice leaf diseases due to unavailability of experts. Though
experts are available in some areas, disease detection is performed by naked eye
diagnosis three common rice leaf diseases (Brown spot, Leaf blast, and Bacterial
blight) and pesticides and/or fertilizers are advised according to the severity of the
diseases. Deep Learning has a Conventional Neural Network that is used to find
features from the leaf of plant. Visual contents (colour, texture, and shape) are used as
features for classification of these diseases. The type of rice leaf diseases is
predictive remedy is suggested that can help agriculture related people and
v
TABLE OF CONTENTS
TABLE OF CONTENTS V
LIST OF FIGURES vii
LIST OF SYMBOLS viii
LIST OF ABBREVATIONS X
1 INTRODUCTION 1
1.1 AIM AND OBJECTIVE 1
1.2 PURPOSE AND SCOPE
2 LITERATURE SURVEY 4
3 EXISTING SYSTEM 7
3.1 EXISTING METHOD 7
3.2 DISADVANTAGES 7
4 PROPOSED SYSTEM 8
4.1 PROPOSED METHOD 8
4.2 ADVANTAGES 8
5 SYSTEM ANALYSIS 9
5.1 HARDWARE REQUIREMENTS 9
5.2 SOFTWARE REQUIREMENTS 9
5.3 DATABASE REQUIREMENTS 10
5.4 SOFTWARE SPECIFICATION 10
5.4.1 PYTHON 11
5.5 TOOLS AND LIBRARIES 14
5.5.1 PANDAS 14
vi
5.5.2 PIL 15
5.5.3 PYTORCH 16
5.5.4 FLASK 17
5.5.5 NUMPY 18
5.5.6 CLICK 19
5.5.7 TORCH VISION 20
6 SYSTEM DESIGN 21
6.1 GENERAL 18
6.2 SYSTEM ARCHITECTURE 19
6.3 USE CASE DIAGRAM 20
6.4 CLASS DIAGRAM 21
6.5 SEQUENCE DIAGRAM 22
6.6 DATA FLOW DIAGRA 25
6.7 ACTIVITY DIAGRAM
6.8 FLOWCHART
7 MODULES 26
7.1 LIST OF MODULES 26
7.2 MODULES DESCRIPTION 26
7.2.1 DATA COLLECTION & PRE- 26
PROCESSING 27
7.2.2 MODEL CREATION 28
7.2.3 TRAINING AND EVALUATION
7.2.4 DEPLOYMENT
8 SYSTEM TESTING 29
8.1 GENERAL 29
8.2 TYPES OF TESTING
9 IMPLEMENTATION
10 CONCLUSION AND FUTURE ENHANCEMENT
vii
9.1 CONCLUSION
9.2 FUTURE ENHANCEMENT
viii
LIST OF FIGURES
ix
LIST OF SYMBOLS
S.NO NAME NOTATION DESCRIPTION
Class Name
Represents a
+ public
collection of similar
1 Class -attribute
-private entities grouped
-attribute together.
Association
represent static
relationships
between classes.
Association Class Class Roles represent
2
B the way the two
classes see each
Class Class other.
Extends relationship
is used when one use
Relation case is similar to
4 extends
(extends) another use case but
does a bit more.
Communication
5 between various use
Communication
x
cases
xi
Interaction between
6 Usecase the system and
external environment.
A circle in DFD
represents a state or
7 Data Process/
process which has
State
been triggered due to
some event or action.
Represents external
entities such as
8 External keyboard, sensors,
entity etc.
Represents the
vertical dimensions
9 Object Lifeline that the object
communications.
Represents the
10 Message Message message exchanged.
LIST OF ABBREVATIONS
1
SVM - Support Vector Machine
AI - Artificial Intelligence
NN - Neural Network
CHAPTER 1
2
INTRODUCTION
The agricultural industries started looking for new ways to enhance food
production as a result of the expanding population, climatic changes, and poor
governance. Researchers are working to create new, capable, and distinctive
technologies for producing outcomes with great efficiency. A huge harvest can
be produced using a variety of approaches in the agricultural sector. Precision
agriculture is the most recent and beneficial of them all. Based on the data
gathered, farmers can use the precision agriculture technology to gain insights
for increasing agricultural yield. Precision agriculture can be utilised for a
variety of purposes, including the identification of plant pests, the detection of
weeds, the production of yield, the detection of plant diseases, etc. The
categorization of agricultural products is done to stop losses in yield and
quantity. If the proper evaluation isn't made of this technique or class, it has
major effects on plants and affects the quality or productivity of the
corresponding product. Several problems, including low productivity and
financial losses to ranchers and farmers, are being caused by illnesses in
harvests.
3
Leaf disease identification is a crucial aspect of plant health management
and agricultural sustainability. It involves the identification and classification of
various diseases that affect the leaves of plants, such as fungi, bacteria, viruses,
and nutrient deficiencies. Early detection and accurate diagnosis of these
diseases are essential for timely intervention and effective control measures.
Various methods, including visual inspection, symptomatology, and advanced
diagnostic tools like molecular techniques and machine learning algorithms, are
employed to identify leaf diseases. Proper identification allows farmers and
gardeners to implement appropriate treatment strategies, including chemical
treatments, cultural practices, and biological control methods, to mitigate the
spread of disease and ensure the health and productivity of plants.
• Image pre-processing
• Segmentation
4
• Feature Extraction
• Classification.
Different methods have been used for segmentation, feature extraction and for
classification various classifiers are available
The major goal of this study is to develop a model that can distinguish
between healthy and diseased harvest leaves and, in the event that the crop has a
disease, to identify which disease it is. This study used 54,306 photos, including
pictures of ill and healthy plant leaves, to train a convolution neural network
model to identify 14 crop species, 26 diseases, and 38 classes. In a held-out test
set, this trained model has an accuracy of 99.35%. In this process, the collected
leaves are analysed using a number of resnet18 models. These resnet18 models
are trained using the transfer learning approach. The first layer can be used to
identify different leaf kinds, while the supporting layer can be used to screen for
potential plant illnesses. Deep learning produces results with higher accuracy,
which may be used to diagnose crop diseases and analyse down to the smallest
pixel-level component of an image. It is impossible to study this level of detail
with the human eye.
5
and association. Several fields, including computing, biology, marketing,
medical diagnosis, game playing, etc., can benefit from machine learning. Many
methods, including naive bayes, k-means clustering, support vector machines,
artificial neural networks, decision trees, and random forests, among others, are
supported by machine learning. Data collection, dataset organisation, feature
extraction, pre-processing, feature selection, selecting and implementing
machine learning algorithms, and execution evaluation are some of the
fundamental phases in machine learning.
Beyond the arts, image processing has more utilitarian applications. It now
serves the following specialised functions in agricultural applications:
• To identify sick leaves, stems, and fruits;
6
CHAPTER 2
LITERATURE SURVEY
7
CHAPTER 3
SYSTEM ANALYSIS
Using the public dataset, which contains 54,306 photos of the diseases and
healthy plant leaves that are taken under controlled conditions, they have
trained a model in the current system to recognise some unique harvests and 26
diseases.
The Res Nets algorithm was used in the existing system paper. The Res Net
algorithm produced highly accurate findings and was able to identify more
diseases from different harvests. The Res Nets approaches utilized several of
the parameters, including weight decay, gradient clipping, and scheduling
learning rate. The experiment made use of a kaggle data collection. The 87k
RGB photos of healthy and sick harvest leaves in this collection are arranged
into 38 different classes. For the training task on this dataset, an 80% ratio is
used, and a 20% ratio is used for the testing task. 33 test photos with an
additional index that was made subsequently for predictive purposes.
3.2 DISADVANTAGES OF EXISTING SYSTEM:
8
CHAPTER 4
PROPOSED SYSTEM
9
4.2 ADVANTAGES OF PROPOSED SYSTEM
10
CHAPTER 5
SYSTEM ANALYSIS
The hardware necessities might function the premise for a contract for the
implementation of the system and will thus be an entire and consistent
specification of the total system. They’re utilized by software system engineers
because the start line for the system style. It shows what the system will and not
however it ought to be enforced.
Intel i3 or equivalent.
4GB RAM (8GB preferred)
256GB SSD – 10GB available hard disk space.
Proper internet connection.
11
5.4 SOFTWARE SPECIFICATION
5.4.1 PYTHON
In terms of data types and control structures, Python offers a flexible and
powerful set of features. It supports a variety of data types, including integers,
floating-point numbers, complex numbers, strings, lists, tuples, and dictionaries.
These data types allow developers to handle different kinds of data effectively,
12
whether it's numerical data, text, or structured collections of items. Functions play
a pivotal role in Python programming, allowing developers to encapsulate
reusable blocks of code. By defining functions, developers can write modular
and /maintainable code, promoting code efficiency and readability. Python is a
general-purpose, interpreted programming language. It is collected and
dynamically typed. Although compilation is a step, Python is an interpreted
language rather than a compiled one. Before being placed in a.pyc or.pyo file,
byte code created from Python code written in.py files are first compiled. Python
source code was converted to byte code rather than machine code, like C++. A
low-level collection of instructions known as byte code can be carried out.
Free and Open Source: Python language is freely available at the official
website and you can download it from the given download link below
click on the Download Python keyword. Download Python Since it is
open-source, this means that source code is also available to the public. So
you can download it, use it as well as share it.
Easy to code: Python is a high-level programming language. Python is
very easy to learn the language as compared to other languages like C, C#,
Javascript, Java, etc. It is very easy to code in the Python language and
anybody can learn Python basics in a few hours or days. It is also a
developer-friendly language.
Object-Oriented Language: One of the key features of Python is Object-
Oriented programming. Python supports object-oriented language and
concepts of classes, object encapsulation, etc.
GUI Programming Support : Graphical User interfaces can be made
using a module such as PyQt5, PyQt4, wxPython, or Tk in Python. PyQt5
is the most popular option for creating graphical apps with Python.
13
High-Level Language: Python is a high-level language. When we write
programs in Python, we do not need to remember the system architecture,
nor do we need to manage the memory.
Large Community Support: Python has gained popularity over the
years. Our questions are constantly answered by the enormous
StackOverflow community. These websites have already provided answers
to many questions about Python, so Python users can consult them as
needed.
Easy to Debug: Excellent information for mistake tracing. You will be
able to quickly identify and correct the majority of your program’s issues
once you understand how to interpret Python’s error traces. Simply by
glancing at the code, you can determine what it is designed to perform.
Python is a Portable language: Python language is also a portable
language. For example, if we have Python code for Windows and if we
want to run this code on other platforms such as Linux, Unix, and Mac
then we do not need to change it, we can run this code on any platform.
Python is an Integrated Language: Python is also an integrated language
because we can easily integrate Python with other languages like C, C++,
etc.
Interpreted Language: Python is an Interpreted Language because
Python code is executed line by line at a time. like other languages C, C+
+, Java, etc. there is no need to compile Python code this makes it easier to
debug our code. The source code of Python is converted into an immediate
form called bytecode.
Large Standard Library: Python has a large standard library that
provides a rich set of modules and functions so you do not have to write
your own code for every single thing. There are many libraries present in
Python such as regular expressions, unit-testing, web browsers, etc.
14
Dynamically Typed Language: Python is a dynamically-typed language.
That means the type (for example- int, double, long, etc.) for a variable is
decided at run time not in advance because of this feature we don’t need to
specify the type of variable.
15
spreadsheet-like data enabling fast loading, aligning, manipulating, and merging,
in addition to other key functions. Pandas is prized for providing highly optimized
performance when back-end source code is written in C or Python.
FEATURES OF PANDAS
5.5.2 PIL
The Python Imaging Library (PIL) is a free, open-source library that allows
users to open, manipulate, and save images in various formats. PIL is not part of
Python's standard library, but it provides a wide range of capabilities for image
processing tasks, including: Opening and saving image files, manipulating image
data, applying image filters and transformations, Resizing, and Cropping. PIL
supports many different image file formats, including popular formats such as
JPEG. It has been built and tested with Python 2.0 and newer, on Windows, Mac
OS X, and major Unix platforms. To install PIL, you can use the Python package
manager called pip. Open your command prompt or terminal and run the
16
command: `pip install pillow`. It provides a wide range of features for image
processing tasks such as resizing, cropping, applying filters, and more. It’s a
powerful library in python that allows users to open, manipulate, and save various
image formats. Pillow was announced as a replacement for PIL for future usage.
Pillow supports a large number of image file formats including BMP, PNG,
JPEG, and TIFF. The library encourages adding support for newer formats in the
library by creating new file.
FEATURES OF PILL
Development server and debugger.
Integrated support for unit testing.
RESTful request dispatching.
Uses Jinja templating.
Support for secure cookies (client-side sessions).
Unicode-based.
Complete documentation.
5.5.3 PYTORCH
17
interleave construction and valuation of the graph. PyTorch is also known for its
speed. It uses the Torch library's GPU support to accelerate training and inference.
FEATURES OF PYTORCH
5.5.4 FLASK
FEATURES OF FLASK
Flask is a lightweight backend framework with minimal dependencies.
Flask is easy to learn because it’s simple and intuitive API makes it easy
to learn and use for beginners.
18
Flask is a flexible Framework because it allows you to customize and
extend the framework to suit your needs easily.
Flask can be used with any database like SQL and NoSQL and with any
Frontend Technology such as React or Angular.
5.5.5 NUMPY
NumPy is a Python library used for working with arrays. It's perfect for
scientific or mathematical calculations because it's fast and efficient. In addition,
NumPy includes support for signal processing and linear algebra operations.
NumPy arrays are stored at one continuous place in memory unlike lists, so
processes can access and manipulate them very efficiently. This behavior is called
locality of reference in computer science. This is the main reason why NumPy is
faster than lists. Also it is optimized to work with latest CPU architectures.
NumPy is a Python library and is written partially in Python, but most of the parts
that require fast computation are written in C or C++. NumPy arrays provide an
efficient way of storing and manipulating data. NumPy also includes a number of
functions that make it easy to perform mathematical operations on arrays. This
can be really useful for scientific or engineering applications. And if you’re
working with data from a Python script, using NumPy can make your life a lot
easier. The syntax of NumPy functions generally involves calling the function and
passing one or more parameters, such as the shape of the array, the range of values
to generate, or the type of data to use.
FEATURES OF NUMPY
19
NumPy functions well with other Python scientific computing libraries like
SciPy, Matplotlib, and Pandas.
5.5.6 CLICK
FEATURES OF CLICK
This can save you a lot of time and effort, and it ensures that your help
pages are always up-to-date.
Click supports nested commands, which allows you to create complex
CLIs with a hierarchical structure
Click allows you to pass context objects between commands.
This can help you to prevent errors and make your CLI more user-friendly.
20
Click provides a variety of options that you can use to customize your
CLI.
This includes options for specifying input and output files, setting
verbosity levels, and enabling or disabling features
5.5.7 TORCH VISION
The torch vision library is an essential component of the PyTorch ecosystem,
designed to facilitate computer vision tasks with ease and efficiency. Torch
vision offers a rich set of image transformations, such as resizing, cropping,
normalization, and data augmentation. These transformations are crucial for
preprocessing and augmenting image datasets, enhancing the model's
performance and generalization capability. Another significant aspect of torch
vision is its collection of pre-trained models, including renowned architectures
like ResNet, VGG, and AlexNet. These pre-trained models can be effortlessly
loaded and fine-tuned for specific tasks, eliminating the need to train models
from scratch and accelerating the development process. The library also provides
utilities for loading and processing images, simplifying the preparation of image
data for training and evaluation in PyTorch. These implementations streamline
the development of complex computer vision applications, enabling developers
to focus on designing innovative solutions rather than grappling with the
intricacies of model implementation. Offers the necessary tools and resources to
build, evaluate, and deploy robust computer vision models efficiently.
Includes pre-trained models such as ResNet, VGG, and AlexNet that can be
loaded and fine-tuned for specific tasks, accelerating model development.
Offers utilities for loading and processing images, simplifying the integra-
tion of image data into PyTorch workflows.
Supports GPU acceleration for faster training and inference, enhancing per-
formance and scalability.
21
CHAPTER 6
SYSTEM DESIGN
6.1 GENERAL
22
6.3 USECASE DIAGRAM
Sign up
Login
Import Input
Data
Make prediction
Export
output
Logout
User Administrator
23
6.4 CLASS DIAGRAM
A class diagram in the is a type of static structure diagram that describes the
structure of a system by showing the system's classes, their attributes, operations
or methods, and the relationships among objects. The class diagram is the main
building block of object-oriented modelling. It is used for general conceptual
modelling of the structure of the application, and for detailed modelling
translating the models into programming code. Class diagrams can also be used
for data modelling.
Input Output
Dataset Acquisition Features extraction
Input image Dataset Classification
24
6.5 SEQUENCE DIAGRAM
Pre-processing
25
6.6 DATA FLOW DIAGRAM
Input Dataset
Pre processing
Training dataset
Model:Regression technique
:
Predicted
26
6.7 ACTIVITY DIAGRAM
Activity diagrams are graphical representations of workflows of
stepwise activities and actions with support for choice, iteration and
concurrency. In the Unified Modeling Language, activity diagrams can be used
to describe the business and operational step-by-step workflows of components
in a system. An activity diagram shows the overall flow of control.
Input Dataset
Preprocessing
Training
Model: InceptionV3
27
6.8 FLOWCHART
Once satisfied with the model's performance, deploy it for practical use.
Integrate the model into an application or system where it can be used to predict
student performance. Continuously monitor the model's performance in real-world
applications. Collect feedback and update the model periodically to ensure its
accuracy and relevance over time.
Pre- Model
Plant processing InceptionV3 Predicted
Loss
Image and Feature Architecture. Results:Plant
&
Dataset Selection Disease
Model
classification
Accurac
y
28
Fig 6.6 Flow chart
CHAPTER 7
MODULES
7.1 LIST OF MODULES
Data Collection and Pre-Processing Module
Model Creation Module
Training and Evaluation Module
Deployment Module
7.2 MODULES DESCRIPTION
7.2.1 Data Collection and Pre-Processing Module
The data collection and preprocessing module in leaf disease identification
involves gathering a diverse dataset of plant leaf images this undergo
preprocessing to enhance quality, feature extraction for relevant information. The
data collection process involves gathering high-quality images of both diseased
and healthy leaves, which can be sourced from field surveys, online databases, or
experimental setups. It's essential to use high-resolution cameras or specialized
imaging devices to ensure the quality of the captured images. Consistent lighting
conditions and backgrounds should be maintained to minimize variability across
the dataset. Once the images are collected, they need to be annotated to indicate
whether they represent diseased or healthy leaves. This annotated dataset serves as
the foundation for training and validating the machine learning models used in the
identification system.
7.2.2 Model Creation Module
30
disease detection. This module comprises several essential components aimed at
ensuring seamless integration, efficient operation, and optimal performance of the
model in practical settings. The trained machine learning model is integrated into
the Flask application. This involves loading the model along with any
preprocessing or postprocessing code necessary for making predictions on
incoming leaf images. The trained machine learning model is integrated into the
Flask application. This involves loading the model along with any preprocessing
or postprocessing code necessary for making predictions on incoming leaf images.
31
CHAPTER 8
SYSTEM TESTING
8.1 GENERAL
The purpose of testing is to discover errors. Testing is the process of trying
to discover every conceivable fault or weakness in a work product. It provides a
way to check the functionality of components, sub-assemblies, assemblies and/or
a finished product It is the process of exercising software with the intent of
ensuring that the Software system meets its requirements and user expectations
and does not fail in an unacceptable manner. There are various types of test. Each
test type addresses a specific testing requirement.
32
Valid Input : identified classes of valid input must be accepted.
INTEGRATION TESTING
Integration tests are designed to test integrated software components to
determine if they actually run as one program. Testing is event driven and is more
concerned with the basic outcome of screens or fields. Integration tests
demonstrate that although the components were individually satisfaction, as
shown by successfully unit testing, the combination of components is correct and
consistent. Integration testing is specifically aimed at exposing the problems that
arise from the combination of components.
PERFORMANCE TESTING
The Performance test ensures that the output be produced within the time
limits, and the time taken by the system for compiling, giving response to the
users and request being send to the system for to retrieve the results.
SYSTEM TESTING
System testing ensures that the entire integrated software system meets
requirements. It tests a configuration to ensure known and predictable results. An
example of system testing is the configuration-oriented system integration test.
System testing is based on process descriptions and flows, emphasizing pre-driven
process links and integration points.
33
VALIDATION TESTING
The final step involves Validation testing, which determines whether the
software function as the user expected. The end-user rather than the system
developer conduct this test most software developers as a process called Alpha
and Beta Testing‖ to uncover that only the end user seems able to find. The
compilation of the entire project is based on the full satisfaction of the end users.
In the project, validation testing is made in various forms. In question entry form,
the correct answer only will be accepted in the answer box. The answers other
than the four given choices will not be accepted.
ACCEPTANCE TESTING
Normally this type of testing is done to verify if system meets the customer
specified requirements. User or customer does this testing to determine whether to
accept application. User Acceptance Testing is a critical phase of any project and
requires significant participation by the end user. It also ensures that the system
meets the functional requirements.
USABILITY TESTING
34
WHITEBOX TESTING
White Box Testing is a testing in which in which the software tester has
knowledge of the inner workings, structure and language of the software, or at
least its purpose. It is purpose. It is used to test areas that cannot be reached from
a black box level.
BLACKBOX TESTING
Black Box Testing is testing the software without any knowledge of the inner
workings, structure or language of the module being tested. Black box tests, as
most other kinds of tests, must be written from a definitive source document, such
as specification or requirements document, such as specification or requirements
document. It is a testing in which the software under test is treated, as a black box
you cannot “see” into it. The test provides inputs and responds to outputs without
considering how the software works.
35
CHAPTER 9
IMPLEMENTATION
Implementing a leaf disease identification system using machine learning is
a comprehensive process that requires meticulous planning and execution. The
journey begins with data collection, where you must assemble a diverse and
comprehensive dataset. This dataset should include images of both healthy and
diseased leaves from various plant species. Each image should be meticulously
labeled to indicate the type of disease it represents or labeled as a healthy leaf.
This labeling process is crucial as it forms the foundation upon which the machine
learning model will be trained to recognize and differentiate between healthy and
diseased leaves.
After assembling the dataset, the next phase is data preprocessing, which is
pivotal for ensuring the quality and relevance of the data. During this phase, you'll
need to resize the images to a uniform dimension to maintain consistency across
the dataset. Data augmentation techniques can also be applied to artificially
increase the dataset's size and diversity. Techniques such as rotation, flipping, and
zooming can be employed to introduce variations in the dataset, which helps the
model generalize better to unseen data. Additionally, normalizing the pixel values
of the images to a standardized range, typically between 0 and 1, can significantly
improve the model's training efficiency and convergence.
Once the data is preprocessed and ready, the subsequent step involves feature
extraction. In this phase, the goal is to identify and extract meaningful patterns or
features from the images that can be used for classification. Various techniques
can be employed for feature extraction, ranging from traditional methods like
Histogram of Oriented Gradients (HOG) and color histograms to more advanced
approaches using deep learning features. The choice of feature extraction method
largely depends on the nature of the dataset and the complexity of the diseases
you're trying to identify.
36
With the extracted features in hand, the focus shifts to model selection and
training. Convolutional Neural Networks (CNNs) have emerged as a popular
choice for image classification tasks due to their ability to automatically learn
hierarchical features from the data. However, other machine learning algorithms
like Support Vector Machines (SVMs) or Random Forests can also be effective
depending on the dataset's characteristics. Once the model is selected, it needs to
be trained using the preprocessed data. The dataset is typically divided into
training, validation, and test sets to facilitate model training, evaluation, and
performance tuning. During training, the model's hyperparameters can be
optimized using techniques like grid search or random search to enhance its
performance.
After the model has been trained and fine-tuned, the next step is to evaluate
its performance rigorously. This involves testing the model on the validation and
test datasets using various performance metrics such as accuracy, precision, recall,
and F1-score. These metrics provide valuable insights into the model's strengths
and weaknesses, helping you assess its ability to generalize to new, unseen data
accurately.
Once the model's performance meets the desired criteria, it can be deployed
into a production environment. This deployment phase involves integrating the
trained model into a user-friendly interface, such as a web application or mobile
app. Users can then upload images of leaves to the interface, and the model will
provide predictions regarding the presence of diseases in the leaves. Post-
deployment, it's crucial to establish a robust monitoring system to continuously
track the model's performance and make necessary updates or improvements as
new data becomes available or as the model encounters new challenges.
37
CHAPTER 10
CONCLUSION AND FUTURE ENHANCEMENT
9.1 CONCLUSION
In this study, a paradigm for evaluating bacterial curse, impact, sheath
deterioration, and black collared spot diseases was developed. To set up the
grouping calculation, image handling techniques like division, feature extraction,
and two classifiers were used. Color and area-aware shape features have been
extracted from the element extraction process and used as a contribution to the
classifier. Although the aforementioned analysis has shown the general nature of
the anticipated communications. CNN outperforms all currently used machine
learning techniques as well as conventional methods for detecting plant ailments.
We have also developed an CNN-based web server for impact expectation, a first
of its type globally, to support the plant scientific network and agriculturalists
with their fundamental leadership processes. It is discovered that the new method
is superior in terms of time unpredictability, precision, and the number of diseases
secured. By leveraging advanced algorithms and computer vision techniques,
machine learning models enable early detection of leaf diseases, facilitating timely
interventions and reducing crop losses. The high accuracy, reliability, and
adaptability of these models empower farmers with actionable insights, enabling
informed decision-making and optimizing resource allocation. Furthermore, the
integration of machine learning with Internet of Things (IoT) and edge computing
technologies enables real-time monitoring and management of plant health,
fostering sustainable agricultural practices and enhancing crop yield and quality.
As research and innovation continue to advance in this area, machine learning
holds the promise to further enhance the resilience, productivity, and sustainability
of agriculture, contributing to global food security and environmental
conservation.
38
9.2 FUTURE WORK
The extraction of color and form features has been done in this work.
Moreover, texture features can be added and their effects on an algorithm's
performance can be evaluated. More illnesses exist in addition to the four
covered in this work. The focus of future effort may be on more disorders.
Other crops can use the same methods with only minor adjustments. The job
was completed for one person, but it will be applied to all crops going forward
using the same methodology and will undoubtedly provide positive outcomes.
While considering other crops, look just at the disease signs. Furthermore, the
incorporation of explainable AI techniques could foster trust and adoption
among users by enhancing model interpretability. Developing transparent and
interpretable machine learning models that provide insights into the decision-
making process can enable users to understand and validate the model's
predictions effectively, fostering confidence in its capabilities. Optimizing
model scalability and deployment, particularly on edge devices with limited
computational resources, is another area ripe for exploration. Efforts to develop
lightweight models and efficient algorithms tailored for edge computing
environments could facilitate broader adoption and implementation of machine
learning-based leaf disease identification systems in diverse agricultural
settings. By addressing these areas of focus through interdisciplinary
collaboration, research, and innovation, we can unlock new opportunities to
improve crop health, productivity, and resilience, ultimately contributing to
global food security, environmental sustainability, and economic prosperity.
39
APPENDIX-1
SOURCE CODE
40