Sometimes we design solutions because we have to use the existing environment. They may be feasible simpler / better solutions. We need to plan computer vision from hardware/software / better solutions not over overengineered solutions
Use Case #1 - Fisheye camera for dwell time computation for curbside pickup
Implementation Challenges
- Fisheye has different sizes for far/near objects
- Side view at the entrance
- Top view at the exit
- One model for entrance / one model for exit
- Occlusion problems
- Detecting vehicles types / Detecting attributes
- Compare and match and count
Ideal way
- Edge Device near entry/exit capture license plate
Lesson learned - This needs a custom model for every type of camera. Not the best way to implement, I did call out but it was beyond my influence to change the aspects. I was partially happy with the approach although we could do it much better and simpler.
Use Case #2 - Vehicle counting in a four-lane junction
Environment challenges
- Service roads
- No clear division of vehicles
- Vehicle flow in all directions
- Limited space between vehicles
- Occlusion
- All kinds of vehicles/colors/models
Ideal way
- Number plate license number recognition
- Having vehicle counting camera set on individual roads than at junction to have a clear line of crossing for people counting
Lesson learned - Indian roads are very different. We have to design solutions from hardware, model implementation, challenges. It's best to design considering all constraints and real-world scenarios. Vision is not going to solve everything unless you are not smart enough on how to use vision and get results in a quick time.
Object Tracking - Tracking is memory intensive, In many ways, I try to avoid tracking because it needs exhaustive computation and frame-by-frame operations. Demo projects work great with frame-by-frame tracking but we cannot do the same on terabytes of videos.
Keep Thinking!!!
No comments:
Post a Comment