The AI project to assess the vegetables health.
- Bean;
- Potato;
- Tomato;
- Rice.
We are using models from Kaggle.
You can get a Gemini API key in this link.
Create a .env
file in the root folder with content:
CLOUD_STORAGE_URL_PREFIX=https://URL_TO_YOUR_STORAGE_DOMAIN/
FLASK_PORT=5001
GEMINI_API_KEY=YOUR_API_KEY_HERE
FLASK_ENV=production
Download the best_tomato_leaf_inceptionV3_256.h5 and best_rice_leaf.h5, put their in constants/weights directory.
Use pip install -U -r requirements.txt
to install dependencies.
Use ./download_models.sh
to download the trained models
If in development use self-signed certificates, in production follow the steps of your SSL authorizer
Run ./generate_certificates.sh
Run python3 app.py
to start project.
The https://API_URL:PORT/predict
should be used for the POST API calls
Following an example of the API body request
{
"model_type": "tomato_leaf",
"content_url": "https://techwarriors-objectstorage-test.s3.us-south.cloud-object-storage.appdomain.cloud/0034a551-9512-44e5-ba6c-827f85ecc688___RS_Erly.B%209432.png"
}
Run the directory tests, if in PyCharm .it will execute all files with application running.
- Unit tests;
- Create a REST API to use this code;
- Kaggle explains;
- Tests describe how to execute;
- Deploy project in VPS;
- Validation URL from back-end with prefix in DNS of cloud (Jorge);
- ChatGPT return with data structured;
- Create all tests with different models;
- Search new tomato models in Kaggle;
- Integrated responses with ChatGPT;
- Upload vegetable images in cloud (Jorge);
- Configure CORS.