본문 바로가기

카테고리 없음

무인자동차를 위한 도로면 차선 인식

최근에는 자동차의 자율주행에 대한 관심이 높습니다. DARPA의 Urban Challenge를 통해 자동차의 자율주행 기술이 전세계적으로 관심을 받았으며, 여기서 나온 연구결과를 바탕으로 구글에서는 실제 도로에서 운행하는 로봇 자동차를 만들고 있습니다. 국내에서도 현대자동차의 무인자동차 경진대회가 개최되는 등 관심도가 높아지고 있습니다. 제 생각에는 10년 이내에 이러한 자동차의 무인화 기술이 적용된 차들이 선보일 것으로 기대하고 있습니다. 몇년전 스마트폰과 태블릿으로 전세계의 IT 판을 뒤집은 애플이 있었고, 가까운 미래에는 구글이 무인+전기 자동차 기술을 앞세워 세계 자동차 생태계를 휘저을 것으로 생각합니다.

 

로봇 자동차가 도로에서 위치인식과 자율주행을 할 때, 우선적으로 주변 도로환경으로부터 정보를 얻게 되는데, 여기서 가장 기본적이면서 중요한 정보가 차선 정보입니다. 차의 전면에 장착된 카메라를 통행 인식한 차선 정보와 지도에 저장되어 있는 차선 데이터를 비교함으로 로봇의 위치를 파악하게 되는데, 이러한 위치인식 기술은 자율주행의 아주 기본적인 기술중 하나입니다. 그리고 차선을 기반으로 도로면의 기호들과 문자를 읽을 수 있으며 차량의 상대적인 흐름을 읽어낼 수 있게 됩니다. 여기서는 도로면의 차선을 직선으로 추출하여 다른 과정(위치 인식, 노면 기호 인식 등등…)에 필요한 기본적인 데이터를 제공하는데 목적이 있습니다.

 

차선 인식에 대하여 다음 문서를 참고하시기 바랍니다. 

Lane Detection.pdf
0.43MB

 

상기 문서를 구현한 코드를 참조하시기 바랍니다.

LaneDetection.zip
0.15MB

 

프로그램의 실행결과 동영상입니다.

동영상의 상단에 보이는 연두색 동그라미는 RANSAC 알고리즘으로 찾은 차선의 소실 점입니다. 도로면의 파란색 점들은 차선 후보가 되는 점들이고 이 후보점들로부터 HoughTransform으로 선분을 찾게 됩니다. 선분들 중 빨간색은 RANSAC알고리즘에서 outlier로 걸러진(차선이 아닌) 선분들이고 초록색 선분들은 차선일 가능성이 높은 선분들입니다.

 

원본 동영상: