VITO Challenge
Computer Vision Recycling
Recap: Stones vs Glass
Glass
Stones
Challenges
Train a model
Confusion Matrix
Unseen Image
> 64 mm
2
Possible Approaches
BGsub for labels
Blob detection based
Baseline Feature Classifier
Small CNN Classifier
Semantic Segmentation (SW!)
Instance Segmentation
DOWNSIDE: Overlap!
Sliding Window
Data Augmentation
Background Subtraction
-> Thresholding
Magic number :( But does not need to be perfect
Blob detection
-> Find contours + size filtering***
*** This is not accurate!
Feature Extraction
OpenCV built-in features
Surface Area
Aspect Ratio
Min, Max, Mean X-ray value
Ideally expert knowledge!
...
35 features
Feature Classifiers
Lot of choices
SVC
Random Forest
XGBoost
Needs extensive experimentation!
...
Random Forest
Final Result!
Data Augmentation!
Create new, mixed, labeled samples
Can create labeled overlaps!
Ready for instance segmentation
....
Next Steps
Spend more time polishing the classifiers
KFold Cross Validation
Feature Imporance Analysis
Better Metrics (AUC, P, R, F1)
Improve Augmentation + Manually Label Subset
Also clone noise pattern
Smaller sliding windows so larger particles (SAHI)
Add Expert Knowledge
Re-evaluate background subtraction
Learnings
Aimed too high for given time
OpenCV is a bottomless pit of knowledge
FiftyOne is nice for label conversion!
Polished classical > non finished deep learning
Aimed too high for given time
Thank you!
Backup slides for when I'm allowed to share my 8+ hours progress
Backup slides for when I'm allowed to share my 8+ hours progress
deck
By Victor Sonck
deck
- 45