A CNN model to classify 12 categories of seedlings through their image
The Aarhus University Signal Processing group, in collaboration with University of Southern Denmark, released a dataset containing images of approximately 960 unique plants belonging to 12 species at several growth stages.
['Loose Silky-bent',
'Common Chickweed',
'Black-grass',
'Charlock',
'Small-flowered Cranesbill',
'Sugar beet',
'Maize',
'Fat Hen',
'Cleavers',
'Common wheat',
'Scentless Mayweed',
'Shepherds Purse']
Kaggle has the complete dataset used for a competition here:
https://www.kaggle.com/c/plant-seedlings-classification/data
This project was created as a learning experience after 2 years of competition on tensorflow. It achieved an accuracy of 96% on the competition, here is a link to the notebook:
https://www.kaggle.com/niteshksingh/plant-seedling-cnn-acc-0-96
A saved Model that can be easily used with tensorflow has been included in the "Model" directory.
example: model = tf.keras.models.load_model("saved_model")
I am also including a py script you can directly use to classify images as "run.py".
Use this syntax in the project directory:
python3 run.py <True path to image1> <True path to image2> <True path to image3> ...
Note: You will need cv2 and tensorflow 2+ installed in a python environment to run the script.
Thank you for your time.