Inspiration

Every year, up to 40 percent of global crop production is lost due to plant diseases, costing the global economy $220 billion. As the global population grows, so does the demand for food, with an expected 50% increase in food requirements by 2050. To address these issues, we created AgriVision to combat global sustainability challenges of water waste, soil health, and crop diseases. With agriculture consuming over 70% of global freshwater, smart irrigation is needed now more than ever to tackle crop loss, natural resource depletion and rising greenhouse gas emissions. With a focus on fostering sustainable food production in alignment with the UN Sustainability Goals, our vision is to help farmers detect plant diseases in seconds, preventing crop loss and ensuring healthier harvests.

Product Summary

AgriVision uses AI to optimize irrigation and detect plant diseases, helping farmers in three key ways: reducing water waste, improving soil health, and crop disease detection.

  • Plant Disease Identification The Plant Disease Classifier integrates YOLOv8 for image-based disease identification and a GPT-powered chatbot for interactive guidance. It also integrates a chatbot using LangChain and OpenAI. A Flask API unifies these components, enabling real-time detection and expert insights to support farmers and researchers in agriculture.
  • Smart Soil Moisture Sensing It uses an Arduino-based soil moisture sensor and relay module to monitor soil conditions. To allow smooth water flow, we incorporated a Mini Water Pump, as well as a Relay Module and ESP32 Wi-Fi module. When the soil moisture level drops below the optimal threshold, the water system automatically operates and provides water to the soil and plant.
  • AI-Powered Soil and Irrigation Recommendations This last component analyzes the user’s input (e.g., crop type) and uses a Gemini API to fetch information about the best soil and irrigation system a crop should have. This boosts soil fertility, reduces dependence on chemical fertilizers, and improves long-term yield.

How we built it

  • Hardware: ESP32-S Camera Module, Arduino, Soil Moisture Sensor, 1 Channel Relay Module
  • Backend: Flask (Python Web Framework), YOLOv8 (Ultralytics), OpenCV, NumPy, Pillow (PIL), Flask-CORS, Flask-RESTful, Node.js
  • Frontend: React.js, Axios, React Hooks, Tailwind CSS, FileReader API
  • Communication & Data Handling: REST API, JSON, FormData API
  • Languages: Python, C++, JavaScript, HTML & CSS

Challenges we ran into

We initially aimed to collect sensor data and transmit it to the Flask backend server over Wi-Fi for AI-based predictions. However, we encountered a challenge when we didn’t have access to public network credentials. As a result, we had to pivot and use a Wi-Fi access point instead, which caused some delays in our progress. Unfortunately, due to time constraints, we were unable to complete this feature as planned.

Accomplishments that we're proud of

As a beginner team, we have gained valuable experience by working with a variety of technologies in a fast-paced, dynamic environment. One of our proudest achievements has been successfully integrating YOLOv8 object detection with a large language model (LLM), which significantly improved the accuracy of our detection results. This integration allowed us to combine real-time object detection with the advanced capabilities of an LLM, enabling us to provide more meaningful and actionable insights. Developing this feature has been our most comprehensive computer vision project to date, and it has the potential to help farmers around the world make better-informed decisions.

What we learned

Throughout this project, we gained hands-on experience in both frontend and backend development, refining our skills across various technological frameworks. Since it was our first time working with certain tools—such as training a machine learning model on Google Colab—we faced challenges but also made significant progress in mastering these technologies.

What's next for AgriVision

We are working to enhance the functionality of the Plant Disease Classification Chatbot to help farmers accurately identify plant diseases and learn how to treat them. Additionally, we're improving the smart irrigation system by integrating Arduino soil moisture sensors with Python through serial communication to collect and transmit data. Our goal is to display the soil moisture levels on a dashboard within the React JS web app. We are also developing a regression model that will predict crop yield based on factors like temperature, rainfall, soil health, and crop management practices. Furthermore, we plan to launch a digital agriculture and sustainability newsletter that will provide valuable information and updates related to this sector.

Resources

GitHub Repo

https://github.com/selvxhini-10/AI-Sustainability-App.git

Built With

  • arduino
  • axios
  • c++
  • css
  • filereader-api-communication-&-data-handling:-rest-api
  • flask
  • flask-cors
  • flask-restful
  • formdata-api-languages:-python
  • html
  • javascript
  • json
  • node.js-frontend:-react.js
  • numpy
  • opencv
  • pillow-(pil)
  • react-hooks
  • tailwind-css
  • yolov8-(ultralytics)
Share this project:

Updates