Skip to content

An attempt made at classifying leaf images using deep learning. Feature extraction has been carried out on the augmented dataset using ConvNets. Also built a UI that helps the user identify the plant species.

Notifications You must be signed in to change notification settings

varshatumburu/Plant-Leaf-Recognition

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Plant Leaf Recognition

Plant recognition has been a challenging study since the early last century. With the development of image processing and pattern recognition, plant recognition has become possible. Automatic plant species recognition with image processing has applications in weeds identification, species discovery, plant taxonomy, disease detection and even natural reserve park management.

Task Description

This project aims to classify leaves using traditional handcrafted features and features extracted from pre-trained deep convolutional neural networks (ConvNets). The input to our system is raw images from a dataset and the output is the label for each species. By the end of the project, we should be able to predict a plant species by taking in a leaf image from the user.

Approach

Feature extraction plays the most important role in determining the accuracy and precision of a machine learning mechanism. This is stemmed from the fact that the architecture for machine learning essentially depends on the predetermined feature that is prompted into the network. There is no single feature extraction technique that can be considered as the best method since different problems require different approaches and different mechanisms.

I have used the Swedish Leaf Dataset for my project due to the larger training images/ class factor and a constraint on resources. It provides images with only one leaf and a clean background, making it more distant from the real world scenario. However, I have introduced a mask which filters noisy images, thereby making the set of feasible inputs more expansive. Unlike other classifiers, the Convolutional Neural Network(CNN) extracts and identifies the features concurrently; hence it is a faster recognition process. However, this classifier requires users to train numerous sets of data before it is considered to be competent enough for application. Therefore, a CNN that incorporates deep learning as its mechanism seems to be remarkably accurate in plant recognition.

Deployment

Make sure to have python installed before going with these commands. To install all the required dependencies after cloning this repo:

python -m pip install -r requirements.txt

Run the below command to run the application on your localhost: streamlit run app.py

You can find some working model images and a video demo in this presentation. To gain more insight, feel free to go through my project report.

About

An attempt made at classifying leaf images using deep learning. Feature extraction has been carried out on the augmented dataset using ConvNets. Also built a UI that helps the user identify the plant species.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published