Skip to content

Web application enabling farmers and agricultural specialists to quickly identify plant diseases.

Notifications You must be signed in to change notification settings

Chaimaaorg/PlantScan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PlantScan Web Application :

The PlantScan Web Application is an easy-to-use interface that allows farmers, agricultural specialists, and plant enthusiasts to identify plant diseases quickly and accurately. Built on top of the deep learning model developed in the accompanying notebook, this web application integrates the powerful MobileNet-based model for plant disease detection with a simple frontend for image uploads.

With the PlantScan app, users can upload images of their plants directly from their devices, and the system will classify potential diseases based on the uploaded image. This provides instant feedback to users, helping them take timely action to protect their crops and plants. Whether you're an individual gardener or part of a larger agricultural operation, PlantScan aims to provide accessible and efficient plant disease identification at your fingertips.

The web app features a responsive and intuitive interface built with ReactJS, ensuring smooth interactions for users across various devices. On the backend, FastAPI is used to serve the trained model, handling requests and delivering predictions with minimal latency.

This guide provides setup instructions to get both the backend API and frontend React app running locally or on a server, allowing users to start leveraging the power of AI for plant disease detection.

Setup for Python:

  1. Install Python (Setup instructions)

  2. Install Python packages

pip3 install -r training/requirements.txt
pip3 install -r api/requirements.txt
  1. Install Tensorflow Serving (Setup instructions)

Setup for ReactJS

  1. Install Nodejs (Setup instructions)
  2. Install NPM (Setup instructions)
  3. Install dependencies
cd frontend
npm install --from-lock-json
npm audit fix
  1. Copy .env.example as .env.

  2. Change API url in .env.

Training the Model

  1. Download the data from kaggle.
  2. Only keep folders related to Plants.
  3. Run Jupyter Notebook in Browser.
jupyter notebook
  1. Open notebook/plantscan-plant-disease-detection-using-mobilenet.ipynb in Jupyter Notebook.
  2. In cell #2, update the path to dataset.
  3. Run all the Cells one by one.
  4. Copy the model generated and save it with the version number in the models folder.

Running the Backend API

  1. Get inside api folder
cd api
  1. Run the FastAPI Server using uvicorn
uvicorn main:app --reload --host 0.0.0.0
  1. Your API is now running at 0.0.0.0:8000

Running the Frontend

  1. Get inside api folder
cd frontend
  1. Copy the .env.example as .env and update REACT_APP_API_URL to API URL if needed.
  2. Run the frontend
npm run start

About

Web application enabling farmers and agricultural specialists to quickly identify plant diseases.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages