3D 인공지능 데이터 Point Cloud (2)

개요

학계에서 Point Cloud 데이터를 다루는 3D 인공지능은 최근 몇 년 사이 눈부신 발전을 이루었다. 덕분에 현재 3D 인공지능은 자율주행, HD 맵 제작, 로봇 주행, 3D 스캐닝, 3D 컨텐츠 개발 등 다양한 산업에서 유용하게 사용되고 있다. 앞으로는 각 산업의 시장성과 기술 발전 및 문제 해결에 3D 인공지능이 큰 기여를 할 것으로 기대된다.

하지만, 3D 인공지능을 다루는 각 산업의 발전 속도는 기대에 비해 여전히 더딘 상황이다. 3D 데이터에 대한 진입 장벽이 다른 데이터에 비해 매우 높기 때문이다. 상당히 고가인 수집 장비, 3D 데이터 포멧 및 표준화 문제, 다루기 어려운 응용 소프트웨어 문제 등이 여전히 남아 있다. 이는 인공지능 학습을 위한 데이터셋 구축 역시 마찬가지이다. 앞서 언급한 문제들에 더해 유용하지 못한 데이터셋 가공 도구 문제, 데이터 가공 난이도 문제, 인공지능 모델의 높은 학습 난이도 문제 등이 추가로 존재한다. 이로 인해 3D 데이터셋 구축 속도 및 이를 활용한 인공지능 모델의 개발 속도 역시 더딘 상황이다.

그래서 현재의 3D Point Cloud 데이터는 적절한 표준화와 가이드 제공을 통해 높은 진입장벽 문제를 해소하고, 3D 데이터 가공 및 인공지능 모델 학습에 있어 기업과 대중들이 이해하기 쉽게 정보를 제공할 필요가 있다.

이를 위해 테스트웍스는 3D 데이터 포멧 중 하나인 Point Cloud 데이터를 가공하기 위한 도구를 개발 중에 있다. 이러한 노력을 통해 사람들이 3D 데이터셋을 구축할 수 있도록 도와주고자 한다.

Point Cloud 데이터 수집

현재 Point Cloud 데이터의 수집 및 가공 형태와 인공지능 모델은 아직 그 표준이 잘 다듬어지지 않아서 데이터의 파일 저장 형식 및 응용 소프트웨어들이 통일성 없고 호환되지 않는 모습들을 보여준다. 그렇기 때문에 Point Cloud 데이터 및 이들과 함께 수집하는 정보들을 잘 파악하고 이들이 어떻게 사용되는지 파악하는 노력이 어느 정도 필요하다.

점 속성 정보

[그림 1] Point Cloud 데이터 속 정보

수집한 Point Cloud 데이터의 각 점은 공간 상의 위치 정보(x, y, z)와 속성 정보를 담고 있다. 이때 수집하는 속성 정보는 센서마다 상이한데, 대표적으로 RGB-D 카메라에서 수집하는 점의 색상 정보(R, G, B) 라이다를 통해 수집하는 반사 강도(Reflectance Intensity) 등이 있다. 3D 데이터를 학습하는 딥러닝 모델들은 대부분 이 속성 정보를 같이 학습하므로 모두 수집해 주어야 한다.

Visualization

[그림 2] 시각화를 지원하는 Point Cloud 데이터 가공 작업

수집한 Point Cloud 데이터를 3차원 공간에 시각적으로 표현하는 것이 가능하지만, 그것만으로는 데이터 내의 Point들이 가진 객체 속성을 직관적으로 알아내는 것이 어렵다. 인공지능 학습을 위해서는 가공자의 라벨링(Labeling) 작업이 반드시 필요한데, 점들만 보고는 그것이 무엇인지 알기 어렵다. 그렇기 때문에 Point Cloud 데이터를 수집할 때는 카메라를 동원해서 이미지를 같이 수집해 객체 속성을 시각적으로 확인할 수 있어야 한다.

센서 동기화

[그림 3] 센서 간의 Calibration 작업

Point Cloud 데이터 기반 인공지능 모델 학습을 위해서는 앞서 설명한 시각화 문제로 인해 수집 장비가 최소 2개 이상이 필요하다. 그렇기 때문에 수집하는 장비들 간에 동기화 작업이 반드시 필요하다. 동기화는 센서들의 수집 시간을 일치시켜주는 시간 동기화 작업과 다른 하나는 센서들의 서로 다른 좌표를 일치시켜주는 공간 동기화 작업이 있다. 시간 동기화의 경우 센서들의 시간이 동기화가 된 상태에서 데이터를 수집해주어야 한다. 공간 동기화의 경우 공간 동기화가 진행된 데이터를 수집하거나 수집 장비 간의 공간 동기화 작업을 위한 좌표 변환 정보를 같이 저장해 준다.

Point Cloud 데이터 가공

인공지능 데이터셋 구축 전문 기업인 테스트웍스에서 가장 고민하고 있는 부분이 Point Cloud 데이터에 대한 가공 방법이다. 테스트웍스는 Point Cloud 데이터 특성 파악과 Point Cloud 데이터를 활용한 인공지능 모델에 대한 분석이 완료된 상황에서 학습 데이터셋 구축과 가공을 어떻게 수행할지에 대한 전략을 수립하고 있다. 현재 Point Cloud 데이터셋 가공 도구와 관련해서 고려중인 가공 작업은 다음과 같다.

Point Cloud Segmentation

[그림 4] Point Cloud Segmentation
(출처 : Jens Behley, et al. “SemanticKITTI: A Dataset for Semantic Scene Understanding of LiDAR Sequences” 논문에서 발췌)

Point Cloud Segmentation 모델은 Point Cloud 데이터 내에 있는 모든 점들에 대한 레이블 정보를 각각 정의한다. Segmentation 학습을 위한 데이터 가공 시 점들의 수가 상당히 많기 때문에 데이터의 시각화가 반드시 필요하고, 도구 활용을 통해 효과적인 방법으로 각 점들에게 레이블 속성을 부여할 수 있어야 한다.

3D Object Detection

[그림 5] 3D Cuboid 데이터 가공

3D Object Detection 모델은 객체의 속성을 직육면체 형태의 3D Bounding Box를 통해 정의한다. 이 3D Bounding Box를 Cuboid라고도 한다. Cuboid 정보는 일반적으로 Cuboid의 위치(Position), 크기(Scale), 회전 정보(Rotation)만을 통해 표현하는 ‘PSR(Position Scale Rotation)’ 방식으로 정의한다. 따라서 3D Object Detection 모델의 학습을 위한 데이터셋 가공 역시 PSR 방식으로 레이블 데이터를 생성하는 것이 효과적이다.

Point Cloud 데이터 가공 자동화

[그림 6] 인공지능을 활용한 가공 자동화 모델의 개념도

2D 이미지 데이터 가공 작업에서는 이미 수행되고 있지만, 3D 데이터 가공 역시 가공 자동화의 도움을 받는 것이 작업 속도를 높이는데 많은 도움이 된다. 테스트웍스는 Point Cloud 데이터 기반 인공지능 모델을 최대한 활용해 가공자들의 작업을 돕기 위한 인공지능 모델 학습을 수행 중에 있다.

[그림 7] 테스트웍스에서 수행한 가공 자동화 결과

정리

3D 데이터를 활용한 인공지능은 고가의 데이터 수집 장비, 데이터셋 가공 도구를 포함한 응용 소프트웨어, 표준화 이슈 등의 진입장벽으로 인해 개발에 어려움을 겪고 있다. 이에 2019년 테슬라 CEO 일론 머스크는 라이다에 대해 혹평을 쏟아내기도 했다. 하지만 최근 Point Cloud 데이터의 한계를 극복하는 인공지능 모델이 개발되면서, 자율주행, HD 맵 제작, 로봇 주행, 3D 스캐닝, 3D 콘텐츠 개발 등 다양한 산업에서 3D 데이터를 활용한 인공지능 개발에 대한 시도가 꾸준히 늘고 있다. 테스트웍스는 인공지능 데이터 구축 전문기업으로서, 3D 데이터 가공 도구와 자동화 모델을 지속적으로 고도화해 나갈 예정이다. 이를 통해, Point Cloud 데이터의 표준화를 앞당기고, 응용 소프트웨어 개발을 도와 2D를 넘어 3D를 활용한 인공지능이 개발되기를 기대한다.

박예성

연구원, AI 연구 개발팀

홍익대학교 기계시스템디자인공학 학사

한양대학교대학원 지능형로봇학과 공학 석사

한양대학교 지능로봇연구소에서 인공지능 기술을 활용한 로봇 연구를 수행하였다. 이후 컴퓨터 비전 및 딥러닝에 대해 관심을 갖고 현재 테스트웍스 AI 연구 개발팀에서 근무 중이다. GAN, 3D AI 부분을 연구하고 있다.