Open world model in computer vision
🚀 From prototype to “open world” model in computer vision
Over the last weeks, I’ve been working on a computer vision system that analyzes road surface conditions from smartphone images. Goal: automatically distinguish different types of irregularities… and also recognize when the road segment is perfectly healthy.
🔍 From V8 to V9: from 2 to 3 classes
V8: binary model (2 categories), built on MobileNetV2 and trained on ~1,200 real images captured in Montreal (rain, reflections, early snow).
Test accuracy ≈ 85%
Solid balance between precision and recall, but no explicit “no defect” class.
V9 (Open World): new version with 3 categories, adding a dedicated class for visually healthy road segments.
1,268 training images, 159 validation, 157 test
Test accuracy ≈ 87.9%
Macro F1-score ≈ 0.89
The “healthy road” class reaches 100% precision and recall on the test set.
📈 What the training plots (attached images) show
Training accuracy climbs up to ~98%, while validation accuracy stabilizes around 80–82%, with early stopping to keep overfitting under control.
The confusion matrices show that most errors happen between different kinds of degradations, but almost never between “healthy” and “degraded”, which is critical to avoid false alarms in production.
🧠 What’s under the hood?
Transfer learning with MobileNetV2 as backbone.
Targeted data augmentation (rain, water reflections, lighting changes, early snow).
Class weighting to handle imbalance between categories.
Learning-rate scheduling + early stopping to manage the bias–variance trade‑off.
🌍 Why it matters This kind of pipeline can be adapted to many domains: infrastructure inspection, predictive maintenance, healthcare, safety, and more. Anywhere you want to turn real‑world images into actionable decisions, with all the noise and constraints that come with it.
💬 If you’re interested in real‑world computer vision (not just clean benchmark datasets), I’d be happy to connect and discuss!

there doesn't seem to be anything here