그룹화 방법을 이용한 차선 검출기의 성능 개선 방법
초록
최근 자동차 산업은 인공지능 기술과 결합하여 자율주행 자동차에 대한 연구가 활발히 이루어지고 있다. 자율주행 자동차는 차량 주변의 위험을 스스로 감지하고 회피할 수 있어야 한다. 특히 노면의 차선 정보를 감지하기 위해 영상 센서가 주로 이용되고 있는데, 영상 센서는 데이터의 양이 매우 큰 특징을 가지기 때문에 1초에 30미터 이상 움직일 수 있는 자동차에서는 빠른 처리를 위해 고성능 연산기가 사용되어야 한다. 본 연구는 1차 설계하여 사용 중인 차선 검출 알고리듬의 연산 부하율을 개선하기 위해 그룹화 방법을 제안한다. 1개 프레임의 영상 데이터로부터 많은 직선을 검출하고, 직선의 위치와 기울기 값의 유사성을 활용하여 그룹으로 묶어 차선을 결정하는 방법이다. 동일한 영상데이터로 실험하여 기존 차선 검출기 대비 정확성 2.83%, 동작 속도 3.96% 개선됨을 확인했다.
Abstract
Recently, automobile industry has been actively researching autonomous vehicles in combination with artificial intelligence technology. An autonomous vehicle must be able to detect and avoid the danger around the car itself. In particular, image sensors are mainly used to detect lane information on the road surface. Since the image sensor has a very large amount of data, a high-performance computer must be used for fast processing in a vehicle capable of moving more than 30 meters per second. In this study, we propose a method to improve the computational load factor of the lane detection algorithm in use. It is a method of detecting many straight line components from image data of one frame and determining the lane by grouping them by utilizing the similarity of the position of the straight line and the slope value. Experimentation with the same image data confirmed that the accuracy was 2.83% and the operation speed was 3.96% better than the previous lane detector.
Keywords:
lane detection, grouping method, average position, embedded systemsⅠ. 서론
자동차 산업은 기계에서 전자로 기술의 중심이 이동되고 있고, 인공지능 기술과 다양한 형태로 융합을 이루고 있다. 최근에는 목적지만 입력하면 자동차가 목적지까지 스스로 찾아가는 자율주행 기술에 대한 연구가 활발히 이루어지고 있고, 미국과 유럽 여러 국가에서는 이미 상용화를 위해 도로 주행 시험을 진행하고 있다. 국내에서도 여러 미래 자동차 연구 기관에서 자율주행 기술을 활발히 개발하고 있고, 몇몇 운전자 보조 시스템(ADAS, Advanced Driver Assist System)들은 상용화되고 있다[1][2]. 특히 LDWS(Lane Departure Warning System), LKAS (Lane Keeping Assistance System)의 기능은 차선 인지기술을 기반으로 동작하는 시스템이며, 운전자 보조 시스템의 핵심 기술로 분류된다[3][4]
차선을 검출하기 위해 주로 사용되는 영상 센서는 사람의 시신경과 매우 유사하며, 데이터의 양이 매우 큰 특징을 가진다. HD급 화질의 영상데이터 크기를 계산해 보면, 1장의 영상은 1280×720개의 화소를 가지며, 1개의 화소는 R, G, B 3개의 색상정보를 지닌다. 일반적인 영상 센서는 1초 동안 30장의 영상데이터를 전송하므로, 1초 동안 프로세서가 처리해야 하는 총 데이터의 크기는 82,944,000 bytes이다. 영상처리에 자주 쓰이는 가우시안 피라미드를 임베디드로 구현하고 성능을 측정한 과거 연구에 따르면 ARM920T 300Mhz 시스템에서 320× 240영상 1장(Frame)을 처리하는데 38초가 소요된다[5]. 최근 상용화된 고속의 임베디드 프로세서를 사용하더라도 연산처리에 어느 정도 시간이 필요함을 예상할 수 있다.
대량의 데이터를 실시간 처리하기 위해 전통적으로 전체 데이터를 최적화된 사이즈로 축소하거나 관심영역을 지정하는 방법을 사용했다. 100km/h로 주행하는 자동차는 1초에 28미터가량 이동한다. 이처럼 빠르게 움직이고 있는 자동차가 위험을 회피하려면 위험을 신속하게 감지해야 한다. 그래서 영상을 관심영역(Region of Interest)으로 작게 잘라내어 처리를 가속화한 연구에서는 영상 처리속도의 전반적인 향상 방법을 제공했다[6].
본 논문에서는 차선 검출기의 성능 개선을 위해 그룹화 방법을 제안한다. 그룹화 방법은, 1개 프레임의 영상 데이터로부터 많은 직선 성분을 검출하고, 직선의 위치와 기울기 값의 유사성을 활용하여 그룹으로 묶어 차선을 검출하는 방법이다. 제안한 방법의 우수성을 평가하기 위하여 동일한 영상데이터를 이용하여 이전 차선 검출 방법과 비교 실험을 하였다.
Ⅱ. 제안한 그룹화 방법을 이용한 차선검출
2.1 차선 검출 시스템의 구성
차선 검출 시스템은 영상 센서부와 연산부, 제어부로 구성되며 소형화하여 그림 1과 같이 차량의 윈드실드 안쪽에 장착한다. 영상 센서의 경우 렌즈 손상을 막기 위해 차량 내부에 설치하며, 윈드실드와 렌즈 사이의 빛의 산란을 최소화할 수 있는 구조가 포함되어야 한다. 외부 광원에 의해 산란 된 빛의 형상이 영상 센서면에 맺히면서 검출을 방해 할 수 있다.
렌즈는 수평에서 지면 방향으로 5~10° 정도 아래로 향하게 설치하여 외부 광원으로부터 영향을 적게 받게 한다. 영상 센서의 화각을 그림 1에 도식화한다. 이때 센서로부터 취득한 이미지는 그림 2의 (b)와 같이 지평선이 영상 중앙보다 조금 위쪽에 위치하게 된다.
2.2 기존의 차선 검출방법
그림 3은 기존의 차선 검출방법과 제안한 방법을 비교한 것이다. 그림 3(a)는 기존 차선검출기의 차선 검출과정을 설명한다[7]. 영상 센서를 통해 입력받은 영상을 가로, 세로 각각 1/2 크기로 축소하고, 차선과 관계없는 하늘 부분을 제외한 나머지 영역을 관심 영역으로 지정한다. 이후 관심영역의 영상 크기는 640×240이며, 이진화를 수행한 다음 영상 내에서 수평방향으로 그림 2(a)와 같은 패턴형태의 밝기 값을 가지는 두께필터를 이용하여 후보 차선을 찾아낸다. 찾아낸 후보 차선 정보로 허프 변환을 이용하여 직선을 검출한다[8]. 찾아낸 직선은 도로 환경에 따라 일관된 검출 성능을 보장할 수 없으므로 칼만 필터를 통해 안정화 한다[9]. 그러나 기존의 방법에서는 칼만 필터와 연산부의 CPU 부하율을 낮춰야 실시간 동작이 가능하다. 즉, 위와 같은 기존 방법의 문제점을 해결하기 위해 그림 3(b)와 같이 수정한 차선검출 방법을 제안한다.
2.3 그룹화를 이용한 차선 검출방법
그림 3(b)에서 음영 처리된 블록은 기존의 방법대비 변경한 부분을 표시한다. 기존 검출기의 단순 필터와 이진화 기능은 블러 필터와 엣지 추출기로 대체한다. 이는 이전 연구의 전처리 필터의 형상이 차선의 두께에 민감하게 동작하므로 발생하는 노후화된 차선에 대해 검출률 감소 문제를 보완한다. 칼만필터로 구성된 차선 추적기는 영상 프레임 중 차선 정보가 갑자기 사라지지 않도록 현재 값을 유지하는 기능으로 대체하여 연산 부하를 낮추었다. 이는 실제 차량의 이동 특성에 따라 전방 카메라의 이미지에서 주행 차로가 갑자기 사라지거나 끊어지지 않기 때문이며, 3 프레임 동안 차선이 검출되지 않더라도 마지막에 검출된 차선 정보를 현재 차선정보로 대입시켜주는 기능을 한다.
그룹화 방식 차선 검출기의 작동 절차는, 입력받은 영상을 가로 세로 1/2 크기로 축소하고, 밝기 정보만 추출하여 그림 4의 데이터로 변환한다. 그리고 관심영역을 지정한 후, 관심영역을 제외한 데이터를 삭제하고 가우시안 블러필터를 적용해 노이즈를 제거한다. 이때 결과영상은 그림 5와 같다.
이후 캐니 에지 검출(Canny Edge Detection)으로 그림 6의 데이터를 만들어 낸다[10]. 케니 에지 검출기는 openCV에서 제공하는 함수를 사용했고, 이중 임계값(Double Threshold)을 적용해 경계면 경사도 100이상, 200이하의 데이터에 대해서만 추출했다.
이후 허프 변환(Hough Transform)을 이용하여 연속된 점들을 직선으로 연결하여 그림 7의 직선들을 찾아낸다. 직선들을 위치와 각도를 유사도에 따라 그룹화하여 평균 위치를 구하면 그림 8의 굵게 표시된 선이 되며, 이들은 영상에 있는 실제 차선과 매우 근접함을 확인할 수 있다.
Ⅲ. 실험 및 평가
3.1 시험 방법
차선 검출기는 외부 환경에 민감하게 동작하므로 차량에서 녹화한 영상을 이용하여 동일한 입력으로 시험한다. 고속도로에서 취득한 2000 프레임의 영상 3종류에 대해 참 근거표(Ground-Truth Table)를 제작하고 각 검출기의 정확도와 검출 연산 시간을 측정하여 비교했다.
샘플영상은 각각 고속도로, 노후화된 고속도로, 터널 환경에서 취득했다. 그림 9의 파란선 내에 검출된 차선이 위치할 경우 검출 성공으로 분류한다. 연산 시간을 측정하기 위해 동일한 컴퓨터를 사용했고, 시험 컴퓨터의 사양은 Intel I7 7700HQ, DDR3 16Gbyte이다.
Ⅳ. 결론 및 향후 과제
본 논문에서는 기존에 사용하던 차선 검출기보다 성능이 개선된 그룹화 방법을 이용한 차선 검출기를 구현하고 실험을 통해서 정확도와 연산 시간을 수치화하여 기존의 방법에 비해 정확도 및 연산속도가 개선되었음을 보였다. 즉, 기존의 방법에 비해서 정확도에서 2.83% 향상되었음을 보였으며, 3.96% 연산속도가 빨라짐을 알 수 있었다.
전체적인 정확도는 향상되었지만, 그룹화를 이용한 차선 검출 방식은 그림 10과 같이 주변 차량의 그림자와 같은 차선의 진행 방향과 비슷한 방향의 직선 성분에 의한 간섭에 영향을 받음을 확인할 수 있었다. 광원의 세기와 각도, 바닥면의 상태 등 다양한 외부 환경에 대해 검증이 이루어진다면 실제적용이 가능할 것으로 기대한다. 이후 곡선 및 2 중 차선 등 다양한 종류의 차선에 대해 강건한 차선 검출기 설계에 대한 연구가 필요하다.
References
- J. S. Want, and R. R. Knipling, "Single-vehicle roadway departure crashes: problem size assessment and statistical description", National Highway Traffic Safety Administration Technical Report, DTNH-22-91-C-03121, Jan.), (1994.
- E. Dagan, O. Mano, G. P. Stein, and A. Shashua, "Forward collision warning with a single camera", IEEE Intelligent Vehicles Symposium, p37-42, Jun.), (2004. [https://doi.org/10.1109/IVS.2004.1336352]
- M. Chen, T. Jochem, and D. Pomerleau, "AURORA: a vision based roadway departure warning system", IEEE Conference on Intelligent Robots and Systems, p1-4, Aug), (1995.
- Korea Electronics Technology Institute, Automobile Safe Driving System Industry Trend, (2010).
- Bongkyu Lee, "A SoC based on the Gaussian Pyramid (GP) for Embedded image Applications", Trans. KIEE, Vol. 59(No. 3), p664-668, Mar.), (2010.
- Sanghyun Son, and Taewook Kim, "Smart Camera Technology to Support High Speed Video Processing in Vehicular Network", The Journal of Korean Institute of Communications and Information Sciences, Vol. 40(No. 01), p152-164, Jan.), (2015. [https://doi.org/10.7840/kics.2015.40.1.152]
- Deok-Kwon Lee, and Ju-Seok Shin, "Real-Time Lane Detection and Tracking System Using Simple Filter and Kalman Filter", 2017 Ninth International Conference on Ubiquitous and Future Networks, p275-277, Jul.), (2017. [https://doi.org/10.1109/ICUFN.2017.7993792]
- D. H. Ballard, "Generalizing the hough transform to detect arbitrary shapes", Pattern Recognition, Vol. 13(No. 2), p111-122, Sep.), (1981. [https://doi.org/10.1016/0031-3203(81)90009-1]
- J. Son, H. Yoo, S. Kim, and K. Sohn, "Real-time illumination invariant lane detection for lane departure warning system", Expert Systems with Applications, Vol. 42(No. 4), p1816-1824, Mar.), (2015. [https://doi.org/10.1016/j.eswa.2014.10.024]
- John Canny, "A Computational Approach to Edge Detection", IEEE Transaction on Pattern Analysis and Machine Intelligence, Vol. PAMI-8(No. 6), p679-698, Nov.), (1986. [https://doi.org/10.1109/TPAMI.1986.4767851]
2006년 2월 : 영남대학교 전자공학과(공학사)
2018년 7월 현재 : 경북대학교 산업대학원 전자공학부 석사 과정 재학
2007년 6월 ~ 2011년 8월 : ㈜비앤디, 선임연구원
2011년 10월 ~ 2014년 10월 : 아진산업(주), 선임연구원
2014년 11월 ~ 2017년 11월 : 이인텔리전스, 과장
2017년 12월 ~ 현재 : 현대로템(주) 과장
관심분야 : 영상처리, Embedded HW, SW, 지능형 장치
1986년 : 경북대학교 전자공학과 (공학사)
1989년 : 동대학원 졸업(공학석사)
1997년 : 동대학원 졸업(공학박사)
2005년 8월 ~ 2007년 1월 : 샌디에고 주립대학교 Research scholar
1997년 ~ 2008년 2월 : 상주대학교 전자전기공학부 교수
2008년 3월 ~ 2014년 10월 : 경북대학교 산업전자공학과 교수
2014년 11월 ~ 현재 : 경북대학교 IT대학 전자공학부 교수
관심분야 : 시스템 고장진단 및 고장허용제어, 지능제어 및 응용, 지능형센서시스템, electrical tomography