-
-
The entry point of the app
-
This is farmer dashboard where he can upload the image of crop disease
-
The Ai gives predictions
-
Agronomist logs in to see the Ai prediction to validate it , for farmers in his region.
-
The agronomist then review predictions and validates them and give advice to the farmer on how to protect from this crop disease.
-
Full diagram representing my project(Project overview)
Inspiration
Agriculture is the backbone of many African economies, yet many farmers still struggle to identify crop diseases early enough to prevent serious yield losses. In many rural areas, access to agronomists is limited, which means farmers often rely on guesswork when treating plant diseases. This frequently leads to ineffective treatments, wasted resources, and reduced harvests.
Our inspiration was to explore how artificial intelligence could bridge this gap. With the growing availability of smartphones, farmers now have a simple tool capable of capturing crop images. We asked ourselves: What if farmers could instantly detect crop diseases and connect with experts using just their phones?
This idea led us to build a system that combines AI-powered crop disease detection with expert validation and regional monitoring.
What it does
Our project is an AI-powered agricultural intelligence platform that helps farmers detect crop diseases and allows cooperatives and institutions to monitor outbreaks across regions.
The system works at three levels:
- Farmers upload crop images and receive AI-based disease predictions.
- Agronomists validate these predictions and provide treatment advice.
- Cooperatives and institutions monitor disease trends through dashboards to detect potential outbreaks.
By combining AI predictions with expert validation, the system becomes both reliable and continuously improving.
How we built it
The platform is designed as a scalable system that integrates machine learning with modern web technologies.
The frontend dashboards were developed using React to create responsive interfaces for cooperatives and institutions. To optimize application performance and avoid unnecessary server requests, we implemented Zustand for state management. This allows different components of the application to share state efficiently and prevents multiple parts of the interface from triggering duplicate backend requests.
For the backend, we used FastAPI, a high-performance Python framework well suited for machine learning inference. FastAPI allows fast communication between the web interface and the AI model while supporting scalable API endpoints.
The disease detection model was built using PyTorch with a convolutional neural network (CNN). To improve performance with limited agricultural data, we used *transfer learning and data augmentation from ImageNet-pretrained models. This approach allows the model to leverage previously learned visual features and adapt them to crop disease classification.
Mathematically, the CNN learns to approximate a function:
[ f(x) = y ]
where:
- (x) represents an input crop image
- (y) represents the predicted disease class.
To make the system more sustainable, agronomists validate predictions made by the model. These validated images are then stored as new training data, allowing the dataset to grow over time:
[ D_{t+1} = D_t + V_t ]
where (V_t) represents newly validated images. This means the system continuously improves as more farmers use it.
Challenges we ran into
One of the biggest challenges was data availability and validation. While many plant disease datasets exist for research purposes, they are not always suitable for production deployment due to licensing or regional differences.
To address this, we designed the system to collect new validated data during real-world use. Agronomists reviewing farmer submissions help verify disease labels, enabling the creation of a locally relevant dataset over time.
Another challenge involved system performance and scalability. Since multiple dashboard components can request the same data simultaneously, we implemented state management strategies using Zustand to prevent redundant backend calls and reduce server load.
Finally, integrating AI inference with real-time web dashboards required careful system architecture to ensure predictions remain fast and responsive.
What we learned
Building this project taught us that solving real-world problems requires more than just a good model. A successful AI system must integrate:
- reliable datasets
- scalable system architecture
- expert validation
- and user-friendly interfaces.
We also learned the importance of designing systems that improve over time rather than remaining static.
Future vision
Our long-term vision is to expand this system into a full agricultural disease monitoring network.
Future improvements include:
- A mobile application that allows farmers to upload crop images directly from their phones.
- Regional disease monitoring dashboards for agricultural institutions.
- Early outbreak detection systems to alert cooperatives when disease cases exceed safe thresholds.
- Building a large, region-specific crop disease dataset through agronomist validation.
By connecting farmers, agronomists, cooperatives, and institutions, we aim to build a smarter agricultural ecosystem that helps farmers protect their crops and improve food security.
Built With
- fastapi
- pytorch
- react
- typescript
Log in or sign up for Devpost to join the conversation.