Many accidents happen as a result of problematic field of view in a junction with no traffic lights.
Many accidents happen as a result of problematic field of view in a junction with no traffic lights. The aim of this project was to develop an application that calculates the velocity of vehicles entering a junction and to warn the crossing vehicles if they may be in danger.
In an extension to this project we developed a program that calculates the velocity of vehicles on a freeway for law enforcement applications.
Given a video camera and a PC installed in a junction, our aim was to recognize moving vehicles approaching the junction, calculate their approximate velocity and produce a warning signal. In the extension project we focused on calculating the exact velocity of moving vehicles in a freeway.
The basic approach
1. Smart Junction:
Our basic approach was inserting “virtual” lines on the road. Whenever a vehicle crosses such a line, an interruption is being noticed. In our application, we used 3 lines on the road. When a vehicle crosses the first line (A), we first notice it and allocate a place for it in an array that holds the video frame number (time of event) in which the vehicle crosses the line. The second line is a check point line, it is used to confirm that the interruption noticed before was not an arbitrary interruption caused by noise or illumination changes. Once a vehicle crosses the last line (B), we calculate it’s velocity according to the time difference from line A to line B and according to the known distance between the lines. In this part we used only part of the frame rate (15 frames/sec) from the video.
Detailed explanations on how we solved some problems that we faced in the implementation of the algorithm can be found in the project report.
In this part we enlarged the distance between the check lines and used full video frame rate of 25 frames per second. Check lines were defined according to the direction of the lane. The calculations were similar to the Smart Junction project.
In the Smart Junction project we managed to recognize approaching vehicles and calculate their velocity in almost real-time in MATLAB environment.The resolution of the velocities identified was not ideal but it answered our need to produce a warning signal. In the extension project we managed to calculate the velocity of vehicles on a freeway in much better accuracy.
Our code was developed in Matlab. As input data we used video that was recorded by Dr. Yotam Abramson (as part of his Smart Junction Research Project) and video of vehicles on a freeway that we collected ourselves using cameras from the VISL lab.
We are grateful to our project supervisor Johanan Erez for his help and guidance throughout this work and to Ina Krinsky for her patience and help.
We are also grateful to the Ministry of Transport and the Ollendorf Minerva Center for supporting this project.