딥러닝 기술을 통한 항공 영상의 도로 레이아웃 정보 추출

자율주행 차량을 위한 HD맵을 제작하는 여러 방식이 있습니다. 그 중 네이버랩스에서는 항공 촬영 영상과 MMS 차량으로 수집한 데이터를 동시에 활용합니다. 하이브리드 HD 매핑이라는 독창적인 방식입니다. 항공 영상을 활용하면, MMS 차량 만으로 식별하기 어려운 노면 기호와 차선 등 도로의 레이아웃 정보를 추출하는 데 아주 유리합니다. 다만, 항공 영상에서 정보를 추출하는 과정에서 인력과 시간이 소모됩니다. 우리는 딥러닝 기반 컴퓨터 비전 기술로 이 문제를 해결하고자 했습니다. 항공 영상에서 필요한 정보를 자동으로 추출하는 기술을 적용해 비용과 시간을 절감하는 것을 목표로 했으며, 현재 노면 기호와 차선 추출 작업에 자동화 기술을 적용하고 있습니다. 이에 대해 간단히 소개하고자 합니다.

데이터셋 개요

먼저, 딥러닝 모델을 학습하기 위해 수작업으로 주석(annotation)된 판교 지역 영상을 학습셋으로 사용했습니다. 그림 1에서 보듯, 도로 레이아웃 정보는 차선과 노면 기호로 구성되어 있습니다. 사용된 항공 영상의 해상도(GSD, ground sampling distance)는 1픽셀 당 8cm이며, 차선과 노면 기호를 추출하기 위한 주석 작업은 왕복 4차선 이상 도로를 대상으로 진행했습니다.

<그림 1>

항공 영상은 복잡한 후처리 과정을 거쳐 커다란 한 장의 영상으로 제공됩니다. 촬영된 영상의 차량과 가로수 등의 장애물은 딥러닝 모델 학습을 어렵게 하는 요인이 되기 때문에 서로 인접한 영상들을 병합할 때 지면의 높이 정보(DEM: Digital Elevation Map)를 활용해 장애물을 도로 면에서 최대한 제거한 영상을 사용합니다. 이렇게 훈련된 모델을 통해 서울 지역 항공 영상의 주석 작업을 부분 자동화할 수 있었습니다.

노면 기호 인식

노면 기호를 자동으로 추출하는 기술은 분류기(classifier)와 검출기(detector) 개발 두 단계로 나누어 진행되었습니다. 노면 기호의 종류는 아래 그림과 같습니다. 이 중 횡단보도, 자전거 도로, 텍스트처럼 크기와 생김새가 일정치 않거나, 등장하는 빈도가 낮아 학습 샘플 숫자가 적은 노면 기호들은 상대적으로 인식 정확도가 떨어지는 경향을 보입니다.

먼저, 노면 기호 분류기 개발은 노면 기호 주석 작업의 부분 자동화를 목표로 합니다. 기존에는 작업자가 노면 기호를 박스(bounding box) 형태로 표시한 뒤, 해당 노면 기호의 종류를 선택하는 순서로 주석 작업이 진행됩니다. 하지만 개발된 노면 기호 분류기를 이용하면, 작업자는 영상 내의 노면 기호들을 박스로 표시하기만 하면 됩니다. 해당 노면 기호의 종류는 분류기가 박스로 표시된 노면 기호들을 일괄 처리해 자동으로 분류하여 작업 시간을 단축할 수 있습니다. 노면 기호 분류기 적용 전/후 주석 작업의 차이는 아래 영상에서 확인할 수 있습니다.

주석 작업이 기 진행된 노면 기호들을 학습셋으로 활용하여 딥러닝 모델을 훈련시킨 결과, 98.32%의 분류 정확도를 획득하였습니다. 주석 작업은 GPU가 장착되어 있지 않은 일반 PC에서 진행되기 때문에, 저사양 환경에서도 실시간으로 구동될 수 있는 가벼운 신경망 구조를 사용합니다. 이렇게 개발된 노면 기호 분류기를 실제 주석 작업 과정에 적용한 결과, 분류 작업에 걸리는 시간을 49.27%, 총 작업 시간 기준으로는 6.15% 단축되는 효과를 얻을 수 있었습니다.

두번째로, 노면 기호 검출기는 주석 작업의 전체 자동화를 궁극적인 목표로 합니다. 검출기를 적용하면 노면 기호를 박스 형태로 찾고 그 종류를 구분하는 주석 작업의 모든 단계가 자동으로 수행됩니다. 검출기를 부분 자동화 목적으로 활용할 경우에는 이렇게 얻어진 자동 인식 결과를 작업자가 최종 검수하는 단계를 추가적으로 거치게 됩니다. 노면 기호 검출기는 기존의 일반적인 객체 검출(object detection)과 달리 박스의 각도도 추정해야 하는데, 이를 위해 최근에 발표된 연구성과를 비교 평가 후 가장 성능이 좋은 모델을 사용하여[1] mAP(mean Average Precision) 0.70, 각도 mean absolute error 3.08(degree)의 성능을 획득하였습니다. 아래 그림에서 자동으로 검출된 노면 기호들의 예시를 볼 수 있습니다. 개발된 노면 기호 검출기는 추후 진행되는 주석 작업에 적용될 예정입니다.

<그림 2>

차선 인식

항공 영상에서 차선을 인식하는 데는 몇 가지 특유의 기술적인 난관이 존재합니다. 항공 영상의 해상도가 1픽셀 당 8cm이므로 차선의 두께는 1~2 픽셀에 불과한데, 이를 오차없이 정확하게 인식하려면 일반적인 시맨틱 분할(semantic segmentation)에서 요구되는 것보다 훨씬 높은 정확도가 필요합니다. 또한 현재 차선의 주석 방식에서는 끊어진 부분까지도 하나의 선으로 이어져 표시되어 있기 때문에, 픽셀 단위로 인식된 차선을 벡터 형태의 선으로 변환해야 합니다. 그리고 중앙선과 주정차 금지선처럼 차선의 생김새가 같아도 그 위치에 따라 종류가 달라지는 경우도 존재합니다.

이처럼 다양한 난제를 안고 있는 차선 인식 문제를 풀기 위해, 노면 기호와 마찬가지로 단계적인 접근을 시도하였습니다. 주석 작업의 부분 자동화와 전체 자동화 두 가지 시나리오에 모두 대응할 수 있도록 그림 3과 같이 차선의 시맨틱 분할과 분류(classification)를 동시에 학습하는 모델을 구성했습니다. 부분 자동화 시나리오에서는 작업자가 차선을 선의 형태로 표시하면 해당 차선을 분류기가 자동으로 분류해 주며, 전체 자동화 시나리오에서는 시맨틱 분할 결과를 통해 차선의 위치를 자동으로 찾고 종류를 구분하게 됩니다.

<그림 3>

시맨틱 분할의 정확도를 향상시키기 위해 GFF(Gated Fully Fusion, [2]) 구조를 활용하였고, 이렇게 학습된 딥러닝 모델로 차선 분류 정확도 91.5%, 분할 정확도 0.84의 성능을 획득하였습니다. 그림 4에서 차선 인식 결과의 예시를 볼 수 있습니다.

<그림 4>

전체 자동화 시나리오의 경우, 최종적으로 픽셀 단위의 차선 인식 결과를 벡터 형태의 선으로 묶어주기 위해 그림 5와 같은 후처리 단계를 거칩니다. 먼저, 인식 결과로 얻어진 픽셀 단위의 시맨틱 지도(semantic map)를 차선 종류별 이진 영상(binary map)으로 바꿉니다. 그리고 노이즈를 제거하기 위해 양방향 필터(bilateral filter)와 골격화(skeletonization) 알고리즘을 적용합니다. 남은 픽셀들은 KD tree 기반으로 군집화(clustering)한 뒤 각각의 군집을 Douglas-Peucker 알고리즘을 통해 단순화된 선분의 연속으로 표현하게 됩니다. 이렇게 개발된 차선 인식 기술 역시 추후 진행되는 주석 작업에 적용될 예정입니다.

<그림 5>

노면 기호 인식 및 차선 인식 모듈 통합

도로 레이아웃 정보는 노면 기호 인식과 차선 인식 두 모듈의 결과를 통합 및 상호 보완하여 출력합니다. 단순히 노면 기호 인식 모듈이 검출한 노면 기호 박스를 취하고, 차선 인식 모듈이 추출한 차선 벡터를 취하는 것만으로는 에러나 중복이 발생할 수 있어 도로 레이아웃을 잘 표현하기 어렵기 때문입니다.

차선 인식 모듈은 시맨틱 분할 기술을 통해 차선 뿐 아니라 노면 기호의 영역도 분할하고 있습니다. 두 모듈이 잘 동작한다면 노면 기호 인식 모듈에서 검출된 노면 기호 박스의 위치를 차선 인식 모듈에서도 노면 기호의 영역으로 분할할 것입니다. 이를 통해 두 모듈 간의 에러 및 중복을 보완하고자 하였습니다. 두 모듈에서 얻은 정보가 일치하지 않을 수 있기 때문에, 노면 기호 인식 모듈에서의 박스를 차선 인식 모듈에서의 결과 영상에 투사하여 박스 안의 확률 벡터의 합산 결과를 기준으로 최종 결과를 출력합니다. 예를 들어 한 노면 기호가 노면 기호 모듈에서만 검출되고 차선 인식 모듈에서는 검출되지 않을 경우에는 새로 합산한 결과에서 해당 픽셀에 가장 높은 확률로 "노면 기호"가 분류될 때에만 노면 기호를 반영하고, 그렇지 않다면 이를 노면 기호 인식 모듈의 에러로 간주하고 노면 기호를 삭제하는 것입니다. 또한 노면 기호와 차선이 같은 위치에 겹쳐 인식되는 경우에는 두 모듈 중 더 신뢰도가 높은 객체를 남기게 됩니다.

지금까지 항공 영상에서 노면 기호와 차선을 자동으로 추출하기 위해 개발한 딥러닝 기반 컴퓨터 비전 기술을 소개하였습니다. 항공 영상은 노면 기호와 차선 외에도 도로 구조에 관한 다양한 정보를 담고 있습니다. 고정밀 지도 제작에 유용한 데이터로서 관심과 수요가 더욱 많아질 것으로 예상되는 만큼, 네이버랩스는 항공 영상에서 유의미한 정보를 추출하는 자동화 기술을 지속적으로 연구 개발하여 자율주행용 지도 제작을 위한 요소 기술 축적에 매진할 계획입니다.

 

References
[1] Yang et al., SCRDet: Towards More Robust Detection for Small, Cluttered and Rotated Objects, ICCV 2019
[2] Li et al., GFF: Gated Fully Fusion for Semantic Segmentation, arXiv:1904.01803, 2019

Related Articles

VIDEOS