Lane deviation detection includes the functions of lane detection and stability determination. The algorithms contain two main parts, the edge detection and Hough Transform & Hough peak detection. For each frame in the video, first set the area in the image for further image processing.
Our team typically selected the lower area of each picture frame in order to get less noise from the background part of image. The edge detection algorithm then applies to the region selected. Using the Hough transform, the angles of lanes can be found in each frame and lanes can be successfully detected.
For stability determination feature, we match the lane markers found in the current video frame with the lane markers detected in the previous video frames. The algorithm will warn the driver if the vehicle moves across the lane marker.
The algorithm is pretty robust against multiple road conditions. For the parameter setting of the algorithm, the number of row in the image being process starts from row 800 since the size of the image is 1080 x 1920. The maximum allowable change of lane distance metric between two frames is 50 pixels.
The minimum number of frame a lane must be detected to define a valid lane is 10 while the maximum number of frame can be missed without marking it invalid is 10. By setting those parameters, the algorithms can have good performance against different driving circumstances. Our work is based on MATLAB Computer Vision System Toolbox. Below is the result when testing on the real-time driving video.