Advanced AI Plant Identification & Medicinal Uses
Budget: ₹12,500 – ₹37,500 INR
Precision Agriculture Project: Medicinal Plant Classification using CNN with Part-Based Recognition
Updated Project Objective
Train a Convolutional Neural Network (CNN) model capable of identifying medicinal plants from images of different parts such as leaves, roots, stems, or flowers. The system should be able to:
Predict the name of the plant
Identify which plant part is shown in the image
Return the medicinal use of that specific plant part
Step-by-Step Requirements for the Freelancer
1. Dataset Collection and Labeling
The dataset must be organized by plant species and further subdivided by plant parts.
Each folder should contain multiple labeled images for every plant part.
Folder Structure:
markdown
Copy
Edit
dataset/
Neem/
leaf/
img1.jpg, img2.jpg
root/
img1.jpg, img2.jpg
stem/
img1.jpg
Tulsi/
leaf/
img1.jpg, img2.jpg
root/
img1.jpg
Each image must be labeled with:
Plant name (e.g., "Neem")
Plant part (e.g., "leaf")
Create a CSV or JSON file mapping image paths to their labels, if needed for training.
Classes should be created by combining plant name and part name, for example:
Neem_leaf
Neem_root
Tulsi_leaf
2. Model Building Using CNN
Objective:
Recognize both the plant and the plant part from an input image.
Two Modeling Approaches:
Approach A: Multi-Label Classification
CNN has two output heads:
One for plant name (softmax)
One for plant part (softmax)
Approach B: Single Combined Classification
CNN outputs combined classes such as Neem_leaf, Tulsi_root, etc.
Recommendation:
Start with Approach B for simplicity and expand to Approach A later for better flexibility and modularization.
Requirements:
Use TensorFlow/Keras or PyTorch for model implementation.
Apply image augmentation techniques for generalization.
Split dataset into training, validation, and test sets (e.g., 70/20/10).
Save the trained model in a deployable format (.h5, .pt, or TFLite).
3. Medicinal Knowledge Base Mapping
Create a structured JSON or SQLite database that maps:
Plant name
Part
Medicinal use of that specific part
Example:
json
Copy
Edit
{
"Neem": {
"leaf": "Used for skin disorders and detoxification.",
"root": "Has antibacterial properties.",
"stem": "Used in dental hygiene as neem sticks."
},
"Tulsi": {
"leaf": "Treats fever, cough, and cold.",
"root": "Used for reducing inflammation."
}
}
The system must fetch the correct medicinal description based on the predicted plant and part.
4. User Interface (Web or Mobile Application)
Design a minimal and clean interface allowing users to:
Upload or capture an image
View the predicted plant and part
Read the medicinal use of the part
Display Format:
Plant Name: Neem
Detected Part: Leaf
Medicinal Use: Used for skin disorders and detoxification
Confidence Score: 94.2%
Optional Features:
A feedback button: "Is this correct?"
Option to report misclassification
5. Model Integration and Backend Development
Use Flask, Django, or FastAPI for the backend.
Backend responsibilities:
Load the trained model
Receive images via API
Run prediction
Fetch medicinal data from the database
Return structured JSON response
The frontend should interact with the backend using API endpoints.
6. Deployment
Deploy the application on any of the following platforms:
Render
Heroku
AWS
Google Cloud
For mobile: Use React Native or Flutter; convert model to TensorFlow Lite
Ensure the deployed system can:
Accept real-time or uploaded images
Predict and display accurate results
Be accessed via browser or mobile app
7. Bonus Features
Allow users to submit new images to improve the dataset
Text-to-speech integration to read medicinal use aloud
Multilingual support (English, Hindi, etc.)
Admin panel for updating the medicinal database
Final Deliverables
Fully labeled image dataset (with train/val/test split)
Trained CNN model capable of predicting plant and part
Medicinal database in JSON or SQLite format
Full-stack application with:
Image input
Model prediction
Medicinal use display
API documentation for integration
Deployment on a web server or mobile platform
Source code repository (preferably GitHub or GitLab)
Installation and usage manual
Walkthrough video (optional but recommended)
A detailed 10-page project report (see structure below)
Project Report Structure (10 Pages)
This report must be written manually without plagiarism or AI involvement. The structure should include:
Introduction
Importance of medicinal plants
Role of AI and image recognition in precision agriculture
Problem Statement
Challenge of identifying plants in rural or tribal settings
Need for part-wise recognition
Difficulty in manual classification
Objectives
Build a system to classify plants based on parts
Link plant parts to their medicinal uses
Provide an accessible, easy-to-use interface
Literature Survey
Overview of similar works (cite 3–5 research papers)
Limitations in current methods
Contribution of this project
System Architecture
Data flow diagram
Module-wise description (Frontend, Backend, CNN Model, Database)
Dataset Description
Number of plants and parts
Image count per class
Sources of data
Image augmentation techniques
Model Architecture
Layers of the CNN
Loss functions
Training details
Accuracy and validation metrics
Implementation Tools
Python, TensorFlow, Flask, React Native, etc.
Justification of tool choices
Results and Observations
Accuracy achieved
Sample predictions with screenshots
Discussion of false positives/negatives
Conclusion and Future Scope
Summary of the solution
Future improvements (e.g., real-time detection, more plant species, offline mode)
Updated Project Objective
Train a Convolutional Neural Network (CNN) model capable of identifying medicinal plants from images of different parts such as leaves, roots, stems, or flowers. The system should be able to:
Predict the name of the plant
Identify which plant part is shown in the image
Return the medicinal use of that specific plant part
Step-by-Step Requirements for the Freelancer
1. Dataset Collection and Labeling
The dataset must be organized by plant species and further subdivided by plant parts.
Each folder should contain multiple labeled images for every plant part.
Folder Structure:
markdown
Copy
Edit
dataset/
Neem/
leaf/
img1.jpg, img2.jpg
root/
img1.jpg, img2.jpg
stem/
img1.jpg
Tulsi/
leaf/
img1.jpg, img2.jpg
root/
img1.jpg
Each image must be labeled with:
Plant name (e.g., "Neem")
Plant part (e.g., "leaf")
Create a CSV or JSON file mapping image paths to their labels, if needed for training.
Classes should be created by combining plant name and part name, for example:
Neem_leaf
Neem_root
Tulsi_leaf
2. Model Building Using CNN
Objective:
Recognize both the plant and the plant part from an input image.
Two Modeling Approaches:
Approach A: Multi-Label Classification
CNN has two output heads:
One for plant name (softmax)
One for plant part (softmax)
Approach B: Single Combined Classification
CNN outputs combined classes such as Neem_leaf, Tulsi_root, etc.
Recommendation:
Start with Approach B for simplicity and expand to Approach A later for better flexibility and modularization.
Requirements:
Use TensorFlow/Keras or PyTorch for model implementation.
Apply image augmentation techniques for generalization.
Split dataset into training, validation, and test sets (e.g., 70/20/10).
Save the trained model in a deployable format (.h5, .pt, or TFLite).
3. Medicinal Knowledge Base Mapping
Create a structured JSON or SQLite database that maps:
Plant name
Part
Medicinal use of that specific part
Example:
json
Copy
Edit
{
"Neem": {
"leaf": "Used for skin disorders and detoxification.",
"root": "Has antibacterial properties.",
"stem": "Used in dental hygiene as neem sticks."
},
"Tulsi": {
"leaf": "Treats fever, cough, and cold.",
"root": "Used for reducing inflammation."
}
}
The system must fetch the correct medicinal description based on the predicted plant and part.
4. User Interface (Web or Mobile Application)
Design a minimal and clean interface allowing users to:
Upload or capture an image
View the predicted plant and part
Read the medicinal use of the part
Display Format:
Plant Name: Neem
Detected Part: Leaf
Medicinal Use: Used for skin disorders and detoxification
Confidence Score: 94.2%
Optional Features:
A feedback button: "Is this correct?"
Option to report misclassification
5. Model Integration and Backend Development
Use Flask, Django, or FastAPI for the backend.
Backend responsibilities:
Load the trained model
Receive images via API
Run prediction
Fetch medicinal data from the database
Return structured JSON response
The frontend should interact with the backend using API endpoints.
6. Deployment
Deploy the application on any of the following platforms:
Render
Heroku
AWS
Google Cloud
For mobile: Use React Native or Flutter; convert model to TensorFlow Lite
Ensure the deployed system can:
Accept real-time or uploaded images
Predict and display accurate results
Be accessed via browser or mobile app
7. Bonus Features
Allow users to submit new images to improve the dataset
Text-to-speech integration to read medicinal use aloud
Multilingual support (English, Hindi, etc.)
Admin panel for updating the medicinal database
Final Deliverables
Fully labeled image dataset (with train/val/test split)
Trained CNN model capable of predicting plant and part
Medicinal database in JSON or SQLite format
Full-stack application with:
Image input
Model prediction
Medicinal use display
API documentation for integration
Deployment on a web server or mobile platform
Source code repository (preferably GitHub or GitLab)
Installation and usage manual
Walkthrough video (optional but recommended)
A detailed 10-page project report (see structure below)
Project Report Structure (10 Pages)
This report must be written manually without plagiarism or AI involvement. The structure should include:
Introduction
Importance of medicinal plants
Role of AI and image recognition in precision agriculture
Problem Statement
Challenge of identifying plants in rural or tribal settings
Need for part-wise recognition
Difficulty in manual classification
Objectives
Build a system to classify plants based on parts
Link plant parts to their medicinal uses
Provide an accessible, easy-to-use interface
Literature Survey
Overview of similar works (cite 3–5 research papers)
Limitations in current methods
Contribution of this project
System Architecture
Data flow diagram
Module-wise description (Frontend, Backend, CNN Model, Database)
Dataset Description
Number of plants and parts
Image count per class
Sources of data
Image augmentation techniques
Model Architecture
Layers of the CNN
Loss functions
Training details
Accuracy and validation metrics
Implementation Tools
Python, TensorFlow, Flask, React Native, etc.
Justification of tool choices
Results and Observations
Accuracy achieved
Sample predictions with screenshots
Discussion of false positives/negatives
Conclusion and Future Scope
Summary of the solution
Future improvements (e.g., real-time detection, more plant species, offline mode)
Related categories:
Machine Learning (ML)
Web Development
Computer Vision
Deep Learning
Deep Neural Network