Published on Jun 28, 2012
Video based vehicle radar built entirely from scratch in the C# programming language.
1. A database consisting of 2000 car/non-car images were trained using a genetic algorithm that was wrapped inside the ADABoost meta algorithm. 150 pictures were manually created from photos (still video frames), whereas the rest were automatically generated from previous attempts and classified into positive/negative by inspecting them with a human eye.
2. 60 features each consisting of one of 8 simple rectangle types were constructed during approximately one hour of CPU time on a Core i7 based computer.
3. A Gopro Hero 2 camera filmed the Swedish highway (E4) in 1280x720 (720p) resolution
4. Each pixel within a certain region of the each picture frame scanned about 10 sub-windows of different sizes (viewport distance dependent). The 60 features formed a linear combination "vote" and marked a rectangle if a car was identified.
5. Identified rectangles were post-processed to form clusters of different observed vehicles.
6. The identified clusters were recursively intersecting other "spanning clusters" within 8 previous video frames, if the cluster search reported more than a certain amount of "cluster activity" going on the identification finally was over and a vehicle was detected.
7. The radar lines just above the cars bonnet show distance to vehicles obeserved. Blue lines to the right is meant to be used for tracking of distance (following at a set distance "adaptive cruise control". left white lines are for informational purpose only. System looks at the own cars viewport to determine whether a vehicle should be classified as "white" or "blue".
Implementation time about 200 hours, spent approx 150h for the machine learning part and about 50h for striding and post-processing the video.
So, one might ask why do you make your own vehicle radar in your spare time?
BECAUSE I CAN!