AVoID Project (Agro View Disease)
Our goal is create an embedded system able to capture image, process and detect possible plant diseases in a farm. An additional application of our project (not implemented) is the IoT capaibility to monitor in real time a farm.
The biggest advantage of the AVoID system is that you do not need a specifc kind of object to monitor the farm. If you have a quadricycle or a drone, you can simply attach the AVoID plataform to your object and monitor ther farm.
Basically the AVoID is composed by the Dranboard 410c and a webcam.
In the next few steps we basically explain how to build the main block of the AVoID system.
Feel free to contact us about the AVoID system and its implementation:
Caio Ferreira ( firstname.lastname@example.org )
Eronides Neto ( email@example.com )
Maria Luiza ( firstname.lastname@example.org )
Step 1: Set Up the Hardware and Software!
The first step of our project is set up the needeed hardware do implement the AVoID system.
Basically you will need
- 01x Dragonboard 410c (with Debian image, click here to see how install Debian on Dragonboard);
- 01x Webcam compatible with the Dragonboard (see here compatibility);
>> Install OpenCV on Dragonboard, Scikit Learn and Scikit image packages for the Debian Linux distribution.
- Installing OpenCV (see this link , use the first part related to the OpenCV installation);
- Install Scikit Learn and Image through the Terminal!
pip install -U scikit-learn
Step 2: Webcam Basic Tests
Our second step is verify that everything that we set up it's ok!
1) Run the webcam demo code to see some images/videos
Run the code foto.py on the terminal.
>> python foto.py
2) Run some OpenCV example
Other option in order to verify that openCV is correctly installed is to run a opencv example.
Step 3: Training/testing a Data Set to Implement AVoID Goal
Part A: image processing techniques
Probably this will be the most complex step in our project. Now we need to stabilish some parameters and metrics to decide if a plant (an image from a plant) has some disease.
Our main reference for this step is this article that shows how to detect diseases in leaves using image processing techniques. Basically, our objective in this step is to replicate these imaging processing techniques in the Dragonboard 410c board.
1) Define the image data set and the kind of plant that you want to detect diseases
This is a important part of your specifcation. What kind of plant do you want to indeitify diseases. From the article reference, we develop based on a Strwaberry leaf.
This code, loads a strawberry leaf and does the image processing part.
Part B: machine learning
After the image processing part, we need to organize the data in some way. From machine learning theory, we need to cluster the data in groups. If the plan has a disease, one of this group would indicate it.
The classification algorithm that we use to group these information is the K-means algorithm.
Step 4: Results and Future Work
So, we can see some results to detect some diseases from the images and image clusters.
Other improvement in our project is the IoT dashboard that could be implemented.