Skip to content

High Performance Lane Detection using Computer Vision and CUDA.

License

Notifications You must be signed in to change notification settings

kky-fury/Lane_Detection

Repository files navigation

Lane_Detection

The aim of this project is to develop and implement a Computer Vision based algorithm such that:
1. All visible lane boundaries are detected for urban/highway roads under close to idle weather conditions

Dependencies:
1. c++ Boost >= 1.7
2. CUDA Toolkit >= 7.0
3. OpenCV >= 2.4.6

Relevant Code Files:
1. GenerateBEV.cu - CUDA Acceralated Code to get Perspective-IPM and IPM-Perspective view of an input image.
2. Pre_Processing.cu - CUDA Acceralated Code to pre_process the input image.
3. rgb2gray.cu - CUDA Acceralated Code to convert rgb image to grayscale.
4. Hough_Transform.cu - Fast Hough Transform using CUDA.
5. Line.cpp - Group identical lanes and eliminates outliers.
6. line_fitting.cpp - Using Ransac algorithm to fit a line to the detected lane. Bresenham's algorithm to plot the line pixels.
7. fit_poly.cpp - Least Squares 2nd degree polynomial fitting for curved lanes.

Process Pipeline:

Original Image Input IPM Image Filtered IPM Image Thresholded Image Binary Image After Selecting ROI Initial Guess for Ransac Lane Detected Image After Ransac and Eliminating False Lanes
img_24 img_25 img_19 img_20 img_21 img_22 img_23

Lane Detection for Test Images:

Orginal Image Input IPM Image (KITTI) IPM Image After Lane Detection Perspective View from IPM
img_1 img_2 img_3 img_4
img_5 img_6 img_7 img_8
img_9 img_10 img_11 img_12
img_13 img_14 img_15 img_16
img_17 img_18 img_19 img_20
img_21 img_22 img_23 img_24
img_25 img_26 img_27 img_28
img_29 img_30 img_31 img_32
img_33 img_34 img_35 img_36
img_37 img_38 img_39 img_40
img_41 img_42 img_43 img_44
img_45 img_46 img_47 img_48

About

High Performance Lane Detection using Computer Vision and CUDA.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published