본문 바로가기

인공지능 공부

SOMA: Solving Optical Marker-Based MoCap Automatically 읽어보기

https://arxiv.org/abs/2110.04431

 

SOMA: Solving Optical Marker-Based MoCap Automatically

Marker-based optical motion capture (mocap) is the "gold standard" method for acquiring accurate 3D human motion in computer vision, medicine, and graphics. The raw output of these systems are noisy and incomplete 3D points or short tracklets of points. To

arxiv.org

ICCV 2021에 발표된 논문을 한번 읽어보자.

 

우선 피규어부터..

SOMA는 검은 점으로 표현된 모션캡쳐 포인트클라우드를 레이블된 마커(색이 있는 점)으로 변환한다. 노란 큐브는 탐지된 'ghost' 포인트로 노이즈나, 몸이 아닌 마커 혹은 식별되지 않은 점이다. 레이블된 마커와 MoSh알고리즘을 이용하여 SMPL-X 바디를 생성했다.

 

Abstract

 

마커 기반의 옵티컬 모션 캡쳐는 정확한 3D 휴먼 모션을 취득하기 위한 gold standard 기법이었다. 이 시스템이 최초로 생성하는 데이터들은 노이즈가 있으며, 3D 포인트들이 완벽하지 않거나 포인트의 tracklet이 짧다. 실제 사용성을 높이기 위해서는 캡쳐되는 객체상의 마커에 이 포인트 들을 매칭시킬 필요가 있다. 예를 들면 라벨링 같은 방식과 같이 말이다. 주어진 라벨들은 3D 스켈레톤이나 신체 표면 메시를 '풀어낼' 수 있다ㅡ. 상용의 자동 라벨링 툴은 캡쳐 시에 특정한 캘리브레이션 단계를 요구하는데, 이는 기존 취득 데이터에는 사용이 불가하다. 이점에서 우리는, SOMA 라는 특별한 뉴럴 네트워크를 학습하는 방식을 취해봤다. SOMA는 raw mocap point clouds를 레이블링한다. 이 과정에서 어떤 캘리브레이션 데이터도 없는 상태에서 또 어떤 캡쳐기술을 썼거나에 관계없이 사람의 감시가 최소한만 들어갈 수 있도록 고려하였다. 우리의 주요 인사이트는 포인트 클라우드를 라벨링하는건 매우 모호하지만 3D 바디는 학습 기반 기법으로 표현되는 강력한 constraint를 부여한다는 점이다. 학습을 가능하게 하기 위해 우리는 AMASS의 3D body로부터 GT와 노이즈가 포함된  모캡 마커를 시뮬레이션하여 대량의 학습데이터를 생성했다. SOMA는 stacked self-attention element 아키텍쳐를 이용하여 '3D 바디의 공간적 구조'와 '아웃라이어를 배제하면서 라벨링 문제를 수행하는 최적 transport layer'를 학습한다. 우리는 SOMA를 다양한 관점에서 평가해보았다. 그 결과 SOMA는 기존의 SOTA  기법보다 정확하고 강건했으며, 상용 시스템에 적용불가능한 부분에 까지 적용이 가능했다. 우리는 8시간동안 촬영된, 그리고 4개의 다른 데이터셋을 가지는 기존의 모캡데이터를 자동으로 라벨링 했고, SMPL-X 바디 모델로 산출해냈다. 

 

1. Introduction

 

마커 기반의 광학 모션 캡쳐 시스템은 3D infrared image of light reflected를 기록한다. 결과적으로 모캡 시스템은 마커의 정확한 위치를 복원해낸다. 실제 데이터는 sparse 하거나 포인트가 정렬되어있지 않거나, 짧게만 추적되기 때문이다. 수년간의 발전에 따라서 상용 모캠 시스템들은 높은 정확도로 복원과정을 수행해냈다. 풍부하게 확보된 모캡 데이터는 행동 인식, 모션 합성, 모션 모델링 및 모션 추정등의 다양한 분야에 사용되어왔다. 그럼에도 불구하고 기존에 존재하는 가장 큰 모캡 데이터 셋인 AMASS는 현재 필드에서 사용하는 비디오 데이터셋보다 훨씬 적은 약 45시간의 모캡데이터만을 가지고 있다.

 

모캡데이터는 캡처과정과 프로세싱하는 과정이 비싸다는 단점이 있다. 매우 유용함에도 불구하고 수많은 기존의 모캡데이터들이 레이블되지 않은 상태로 존재한다. 문제는 3D body와 관련된 문제를 풀 때 raw mocap point cloud는 반드시 labled 되어야 한다는 점이다. 다시말해 point들은 반드시 물체상에 존재하는 물리적 마커의 위치에 할당되어있어야 한다. 기존의 커머셜 툴들은 부분적인 자동화를 제공하지만 다음과 같이 다양한 부분에 대해 자동화된 솔루션을 제공하진 않는다.

 - 마커의 숫자, 신체의 부착 위치, 몸의 형상과 성별, 캡쳐 기술(액티브, 혹은 패시브), 모캡 시스템의 브랜드 등

이 같은 요인들은 기존 데이터의 효율적인 라벨링을 어렵게 하고 수동의 클린업 과정을 요구하여 새로운 캡쳐의 비용을 높인다. 

 

자동화된 모캡 라벨링 문제는 여러 리서치 커뮤니티에서 연구되었다. 기존의 기법들은 디노이징을 통해 미리 라벨링 된 데이터 안의 실수를 고치는 과정에 초점을 맞췄다. 최근에는 라벨링 문제를 매칭 프레임워크로 모델링해서 직접적으로 특정 셋업 상태에서의 고정된 숫자의 마커를 위한 assignment matrix를 예측하는 방법으로 풀어냈다. 짧게발해 기존의 기법은 모션의 범위를 제한하고, 하나의 몸형상에만 적용되며, 특정한 캡쳐 시나리오와 마커 레이아웃 혹은 특별한 캘리브레이션 과정을 요구한다는 단점이 있다. 다른 기법들은 학습을 위해서 높은 품질의 모캡데이터를 요구하기도 한다. 

 

이런 담점들을 해결하기 위해 우리는 데이터 기반의 접근법과 셀프 어탠션 컴포넌트와 최적 transport 레이어를 가지는 end-to-end 뉴럴 네트워크를 학습하는 방식을 취했다. 이 방법을 통해 모캡 포인트와 라벨 사이의 부정확한 매칭을 프레임마다 예측할 수 있게 했다. 충분한 실제 데이터를 확보하는 것은 어렵기 때문에 우리는 합성 데이터를 도입했다. 주어진 마커 레이아웃에 맞춰서 우리는 모캡 포인트 클라우드를 노이즈를 포함하도록 시뮬레이션을 통해서 생성했고, 다양한 환경에 적용할 수 있는 layout-specific 네트워크를 트레이닝 했다. 기존의 기법 역시 합성 데이터를 이용하긴 했지만, 그 기법들은 다양한 바디 셰입, 모션, 마커 레이아웃, 노이즈 소스를 고려하지 못했었다.

 

MPC의 거대한 합성 데이터를 가지고 있더라도 sparse 3D 포인트 클라우드를 라벨링하는 것은, 아웃라이어나 놓친 데이터 들이 있기 때문에 매우 어려운 작업이다. 해결을 위한 키는 포인트들이 구조화 되어있다는 점이다. 특히 모인트들은 사람의 의 형상과 모션에 크게 구속받는다. 주어진 충분한 학습데이터로 부터 우리의 어텐셔널 프레임워크는 다양한 scales의 local context를 표현하는 방법을 학습한다. 추가로 만약 노이즈가 없다면, 라벨과 포인트의 매핑은 1:1이 된다. 우리는 이 컨셉을 통합된 학습 목표로 하여 end-to-end 모델링을 학습시켰다. 특히 우리의 구성은 실페어텐션을 이용하여 로컬과 글로벌한 contextual information을 캡쳐하는 트랜스포머 아키텍쳐를 이용한다. 합성된 모캡 데이터를 이용하여 SOMA는 암묵적으로 변형되는 신체의 운동학적 제약을 학습한다. 3D 포인트와 마커의 1:1 매칭은 특별한 정규화 테크닉을 이용하여 수행된다. 일반적인 아웃풋 프레임워크를 만들어내기 위해 우리는 MoSh를 SMPL-X를 위한 피팅작업에 사용했다. 이는 또한 떨어지거나 가려진 마커로 인한 문제를 해결하는데 도움을 준다. 피규어 3은 SOMA 시스템의 개요를 보여준다. 

 

학습데이터를 만들기 위해 SOMA는 얼추의 마커 레이아웃을 필요로 한다. 이를 위해 버추얼 마커를 SMPL-X 바디에 붙여두고, AMASS의 애니메이션을 적용했다. 실제 모션 캡쳐와 같은 오클루젼이나 고스트포인트를 만들기 위해 마커의 위치를 바꾸거나 실제 마커 데이터의 노이즈를 카피했다...SOMA는 각 모캡 데이터 셋에 대해 한번씩 트레이닝을 했고 이 과정에서 하나의 레이아웃 프레임만을 사용하진 않게 되었다. 또 레이블된 실제 데이터를 이용하지 도 않았다. 트레이닝 후에 생성된 노이즈가 낀 MPS 프레임을 입력으로해서 SOMA는 각 포인트들의 label 분포를 예측해냈다. 

 

우리는 SOMA를 다양한 데이터셋 상에서 평가했고, 그 결과 기존 기법 대비 더 범용적이고 정확함을 확인했다. 추가로 우리는 새로운 MPC 데이터를 Vicon mocap system으로 생성했고, 이를 손으로 만들어낸 GT 데이터인 Sho-gun과 SOMA를 비교해봤다. SOMA는 기존의 시스템과 유사한 성능을 냈다. 마지막으로 우리는 다양한 기존의 모캡 데이터셋에 적용을 해봤다. Mixamo, DanceDB, CMU 모션 데이터들이 그것이다. 

 

요약하자면 우리의 주요 기여는 

 (1) sparse deformable 포인트 클라우드 데이터를 처리하는 셀프 어텐션 기반의 뉴럴 네트워크 아키텍쳐

 (2) mocap point cloud를 입력으로 해서 마커 레이블링 분포를 출력하는 시스템

 (3) 실제 모캡 데이터셋을 활용할 수 있는 모캡 합성 파이프 라인

 (4) 기존의 다양한 모션 캡쳐 기술로 취득된 품질이 좋지 않고, 다양한 형상과 모션을 포함하는 데이터를 다룰 수 있는 강건한 성능

 (5) 연구 목적의 코드와 모델 공개

이다. 

 

 

 

인트로만 읽는데 어렵네;;;