프로젝트 & 과제/3학년

[센서] Lane detection

qqlzzb 2022. 1. 22. 17:27

개요

프로그래밍 언어 : 매트랩

과제 수행 날짜 : 2020.06.24

과제 개요 : Canny Edge Detection으로 달리는 차 안에서 찍은 도로 동영상의 차선을 감지하는 프로젝트

 

과제 설명

파라미터 변화에 따른 결과

1) Filter Size & sigma

Canny Edge Detection의 첫 번째 단계인 가우시안 필터를 적용한다. 가우시안 필터를 적용하면 이미지를 smoothing 할 수 있다. 이때 Filter size와 sigma를 결정하는데, sigma가 크면 edge가 명확히 검출되지 않고, filter size가 크면 속도가 느려지기 때문에 적절한 값으로 필터를 설정하는 것이 필요하다.

 

1) Filter size = 10, sigma = 5 2) Filter size = 5, sigma = 5 3) Filter size = 5, sigma = 2
4) Filter size = 10, sigma = 2 5) Filter size = 5, sigma = 1

-> 시간이 가장 오래 걸린 것은 4번이고, 시간이 가장 조금 걸린 것은 5번이다. 같은 장면에서 edge를 가장 잘 검출한 것은 4번이다. 하지만 시간의 차이는 그렇게 크지 않았으므로, 해당 프로젝트에서 실시한 필터들 중 가장 적합한 필터는 Filter size = 10, sigma = 2인 필터이다.

 

2) T_max , T_min

Thresholding을 위해 정해주는 값으로, minVal(=minimum threshold)을 넘기지 못하는 edge는 weak edge로, edge로 취급하지 않고, maxVal(=maximum threshold)을 초과하면 strong edge이므로 edge로 취급한다. strong edge와 인접한 edge는 weak edge로, 이 경우에는 edge로 판단하여 남겨둔다.

 

1) T_max = 0.2, T_min = 0.1 2) T_max = 0.3, T_min = 0.1

3) T_max = 0.2, T_min = 0.4 4) T_max = 0.5, T_min = 0.4

-> T_max나 T_min의 값을 0.1 정도 올리게 되면, 그렇지 않았을 때에 비해 감지되는 lane이 적어진다. T_max와 T_min의 값을 0.1보다 더 많이 올리게 되면, 조금 올렸을 때보다도 더 감지되는 lane이 적어지는 것을 확인할 수 있다. 따라서 T_max나 T_min의 값을 많이 증가시키는 것은 감지되는 lane의 수가 적어지기 때문에 앞의 결과 중 1번 결과가 가장 정확하다.

 

3) Fillgap

 

Fillgap = 10 으로 지정하면 라인과 라인이 끊어졌을 때, 10 픽셀 안에 들어가면 이어준다. 

1) Fillgap = 10 2) Fillgap = 50

-> Fillgap의 값을 50으로 증가시키니, lane을 감지하는 길이가 길어져서 차선이 아닌 뒷 풍경까지 lane이 이어진 것을 볼 수 있다. 따라서 Fillgap의 값을 너무 크지 않게 설정해야 한다.

 

4) Minlength

Minlength = 8으로 지정하면, 8개의 픽셀 이상으로 이루어져야 라인으로 인정하겠다는 의미이다.


1) Minlength = 20 2) Minlength = 10

-> Minlength의 값을 증가시켰더니, 그렇지 않을 때보다 감지되는 lane은 적지만, 반드시 감지해야 하는 차선은 잘 감지됨을 볼 수 있다. 하지만 Minlength의 값을 증가시키면 일부가 지워지거나 짧은 차선은 감지하지 못할 수 있으므로 너무 크지 않게 설정해야 한다.

 

5) 차선의 범위

 

차선이 존재하는 범위를 넘어선 곳에서 불필요한 edge를 그릴 수 있기 때문에 범위를 적절히 지정해서 그 범위를 넘어가면 edge를 그리지 않는다.

1) 차선의 범위 -65 ~ 65 2) 차선의 범위 -75 ~ 65

-> 차선의 범위가 -75 ~ 65일 때는 도로의 우측부분에 내 차선이 아님에도 감지되었는데, 차선의 범위를 -65 ~ 65로 지정하면 필요 없는 부분이 감지되지 않았다.

 

결과

위의 파라미터를 조절해가면서 얻은 결과에 따라

가우시안 Filter size = 5, sigma = 5, T_max = 0.2, T_min = 0.1, Fillgap = 10, Minlength = 8, 차선의 범위는 -65 ~ 72로 설정하여 프로젝트를 진행했다.