2020년 3월 11일(수) - 구글 AI 리서치 블로그
물체 감지는 광범위하게 연구된 컴퓨터 비전 문제이지만 대부분의 연구는 2D 물체 예측에 중점을 두고 있습니다. 2D 예측은 2D 경계 상자만 제공하지만 예측을 3D로 확장하면 물체의 크기, 위치 및 방향을 캡처하여 로봇 공학, 자율 주행 차량, 이미지 검색 및 증강 현실의 다양한 응용 분야를 이끌어 낼 수 있습니다. 2D 물체 감지는 비교적 성숙하고 업계에서 널리 사용되지만 2D 이미지에서 3D 물체 감지는 데이터가 부족하고 범주 내에서 물체의 모양과 모양의 다양성으로 인해 까다로운 문제입니다.
오늘 우리는 일상적인 물체를 위한 모바일 실시간 3D물체 감지 파이프라인인 MediaPipe Objectron의 출시를 발표합니다. 이 파이프라인은 2D 이미지에서 객체를 감지하고 새로 생성된 3D 데이터셋에 대해 학습된 머신러닝(ML, machine learning) 모델을 통해 포즈와 크기를 추정합니다. 다른 양식의 지각 데이터를 처리하기 위해 파이프라인을 구축하기 위한 오픈소스 크로스 플랫폼 프레임워크인 MediaPipe에 구현된 Objectron은 모바일 장치에서 실시간으로 물체 중심의 3D 경계 상자를 계산합니다.
[그림 1] 단일 이미지에서 3D 물체 감지. MediaPipe Objectron은 모바일 장치에서 일상적인 물체의 위치, 방향 및 크기를 실시간으로 결정합니다.
실세계에서 3D 훈련 데이터 얻기
거리 장면에는 충분한 양의 3D 데이터가 있지만 LIDAR와 같은 3D 캡처 센서를 사용하는 자율 주행 자동차에 대한 연구의 인기로 인해 보다 세부적인 일상 물체에 대한 사실적인 3D 주석(annotation)이 있는 데이터셋은 극히 제한적입니다. 이 문제를 극복하기 위해 모바일 증강 현실(AR) 세션 데이터를 사용하여 새로운 데이터 파이프라인을 개발했습니다. ARCore 및 ARKit이 출시되면서 수억 대의 스마트폰에 AR 기능이 있으며 AR 세션 중에 카메라 포즈, 스파스 3D 포인트 클라우드, 추정 조명 및 평면 표면을 비롯한 추가 정보를 캡처할 수 있습니다.
실제 데이터에 레이블을 지정하기 위해 AR 세션 데이터와 함께 사용할 수 있는 새로운 주석 도구를 구축했습니다. 이를 통해 어노테이터(annotator)는 물체에 대한 3D 경계 상자에 빠르게 레이블을 지정할 수 있습니다. 이 도구는 분할 화면 보기를 사용하여 왼쪽에 3D 경계 상자가 중첩된 2D 비디오 프레임을 표시하고 오른쪽에 3D 점 구름, 카메라 위치 및 감지된 평면을 표시하는 보기를 표시합니다. 어노테이터는 3D 보기에서 3D 경계 상자를 그리고 2D 비디오 프레임의 투영을 검토하여 위치를 확인합니다. 정적 물체의 경우 AR 세션 데이터의 실제(ground-truth) 카메라 포즈 정보를 사용하여 단일 프레임에 물체에 주석을 달고 위치를 모든 프레임에 전파하면 절차가 매우 효율적입니다.
[그림 2] 상세 설명 - 3D 물체 감지를 위한 실제 데이터 주석. 오른쪽 : 3D 경계 상자에는 3D 세계에서 표면 및 포인트 클라우드가 감지되어 주석이 달립니다. 왼쪽 : 주석이 달린 3D 경계 상자의 투영이 비디오 프레임 위에 겹쳐서 주석을 쉽게 확인할 수 있습니다.
AR 합성 데이터 생성
일반적인 접근 방식은 예측 정확도를 높이기 위해 실제 데이터를 합성 데이터로 보완하는 것입니다. 그러나 그렇게 하기 위해서는 종종 비현실적인 열악한 데이터가 나오거나 사실적인 렌더링의 경우 상당한 노력과 계산이 필요합니다. AR 합성 데이터 생성(Synthetic Data Generation)이라는 새로운 접근 방식은 AR 세션 데이터가 있는 장면에 가상 물체를 배치하여 카메라 포즈, 감지된 평면의 표면 및 추정된 조명을 활용하여 물리적으로 가능한 장면과 장면에 맞는 조명을 배치할 수 있습니다. 이 접근 방식은 장면 형상을 존중하고 실제 배경에 매끄럽게 맞는 렌더링된 물체로 고품질 합성 데이터를 생성합니다. 실제 데이터와 AR 합성 데이터를 결합하여 정확도를 약 10% 향상시킬 수 있습니다.
3D 물체 감지를 위한 ML 파이프라인
우리는 단일 RGB 이미지에서 물체의 포즈와 물리적 크기를 예측하기 위해 단일 단계(single-stage) 모델을 만들었습니다. 모델 백본에는 MobileNetv2를 기반으로 하는 인코더/디코더 아키텍처가 있습니다. 우리는 감지 및 회귀와 함께 물체의 모양을 공동으로 예측하는 다중 작업 학습 접근 방식을 사용합니다. 형상 작업은 사용 가능한 실제(ground-truth) 주석에 따라 물체의 형상 신호를 예측합니다. 예를 들어, 분할(segmentation). 훈련 데이터에 모양 주석이 없는 경우 선택 사항입니다. 감지 작업을 위해 주석이 달린 경계 상자를 사용하고 상자 중심에 중심이 있고 상자 크기에 비례하는 표준 편차를 사용하여 가우스를 상자에 맞춥니다. 그런 다음 탐지의 목표는 물체의 중심 위치를 나타내는 피크로이 분포를 예측하는 것입니다. 회귀 작업은 8개의 경계 상자 정점의 2D 투영을 추정합니다. 경계 상자에 대한 최종 3D 좌표를 얻기 위해, 우리는 잘 설정된 포즈 추정 알고리즘(EPnP)을 활용합니다. 물체 치수에 대한 사전 지식 없이 물체의 3D 경계 상자를 복구할 수 있습니다. 3D 경계 상자가 주어지면 객체의 포즈와 크기를 쉽게 계산할 수 있습니다. 아래 다이어그램은 네트워크 아키텍처 및 포스트-프로세싱을 보여줍니다. 이 모델은 모바일 장치에서 실시간으로 실행될 수 있을 정도로 가볍습니다 (Adreno 650 모바일 GPU에서 26FPS로).
MediaPipe에서 감지 및 추적
모바일 장치에서 캡처한 모든 프레임에 모델을 적용하면 각 프레임에서 추정된 3D 경계 상자의 모호성으로 인해 지터가 발생할 수 있습니다. 이를 완화하기 위해 최근 2D 물체 감지 및 추적 솔루션에서 출시된 감지 + 추적 프레임워크를 채택했습니다. 이 프레임워크는 모든 프레임에서 네트워크를 실행해야 할 필요성을 완화하여 더 무겁고 정확한 모델을 사용하는 동시에 모바일 장치에서 파이프라인을 실시간으로 유지합니다. 또한 프레임 간에 물체 식별을 유지하고 예측이 시간적으로 일관성을 유지하여 지터(jittter)를 줄입니다.
모바일 파이프 라인의 효율성을 높이기 위해 몇 프레임마다 한 번 씩만 모델 유추를 실행합니다. 다음으로, 인스턴트 모션 트래킹 및 모션 스틸에 대한 이전 블로그에 설명된 접근 방식을 사용하여 예측을 수행하고 시간에 따라 추적합니다. 새로운 예측이 이루어질 때, 우리는 중첩 영역에 기초한 검출 결과와 검출 결과를 통합합니다.
연구원과 개발자가 파이프라인을 기반으로 실험하고 프로토타입을 제작할 수 있도록 엔드-투- 엔드 데모 모바일 애플리케이션과 신발 및 의자의 두 가지 범주에 대한 훈련된 모델을 포함하여 MediaPipe에서 온-디바이스 ML 파이프라인을 출시합니다. 광범위한 연구 개발 커뮤니티와 솔루션을 공유하면 새로운 사용 사례, 새로운 응용 프로그램 및 새로운 연구 노력이 촉진되기를 바랍니다. 향후에는 더 많은 카테고리로 모델을 확장하고 기기 내 성능을 더욱 향상시킬 계획입니다.
감사의 말
이 게시물에 설명된 연구는 Adel Ahmadyan, Tingbo Hou, Jianing Wei, Matthias Grundmann, Liangkai Zhang, Jiuqiang Tang, Chris McClanahan, Tyler Mullen, Buck Bourdon, Esha Uboweja, Mogan Shieh, Siarhei Kazakou, Ming Guang Yong, Chuo가 수행했습니다. 링 창과 제임스 브루스 Aliaksandr Shyrokau와 주석 팀이 고품질 주석에 대해 부지런한 의견을 보내 주셔서 감사합니다.
원본 제목: 모바일 장치에서 MediaPipe로 실시간 3D 물체 감지(Real-Time 3D Object Detection on Mobile Devices with MediaPipe)
게시자 : Adel Ahmadyan 및 Tingbo Hou, Google Research 소프트웨어 엔지니어
원본 링크: https://ai.googleblog.com/2020/03/real-time-3d-object-detection-on-mobile.html
Google's MediaPipe 오픈소스: https://github.com/google/mediapipe/
MobilePose: Real-Time Pose Estimation for Unseen Objects with Weak Shape Supervision 논문 : https://arxiv.org/abs/2003.03522
EPnP: Efficient Perspective알고리즘 오픈 소스: https://www.epfl.ch/labs/cvlab/software/multi-view-stereo/epnp/
MediaPipe Objectron (GPU) 데모 애플리케이션 : https://github.com/google/mediapipe/blob/master/mediapipe/docs/objectron_mobile_gpu.md
이 블로그는 2020년 3월 11일(수), Google AI Research Blog 기사를 영한 번역한 것입니다. 또한 이 번역 글은 정보 공유 목적으로만 작성했으므로 어떠한 상업용으로 사용할 수 없으며, 원본 저작물 모두 구글에게 저작권이 있음을 알려 드립니다. (First Draft Version)