한 줄 요약
Fast3R은 1,000개 이상의 이미지를 단일 순방향 패스로 처리하는 Transformer 기반 3D 재구성 모델로, DUSt3R 대비 14배 오류 감소와 250 FPS 이상의 추론 속도를 달성한다.
핵심 기여도
- Fast3R은 DUSt3R의 쌍별 처리 방식을 대체하여 N개 이미지를 단일 순방향 패스로 처리하는 Transformer 기반 아키텍처를 제안한다.
- CO3Dv2 데이터셋에서 15도 이내의 카메라 포즈 추정 정확도가 99.7%로, DUSt3R 대비 14배 오류 감소를 기록한다.
- 1,000개 이상의 이미지를 처리할 수 있는 확장성을 확보하며, 250 FPS 이상의 추론 속도를 달성한다.
- Position Interpolation 기법을 통해 훈련 시 사용된 이미지 수보다 훨씬 많은 수의 이미지를 추론 시 처리할 수 있다.
핵심 아이디어
Fast3R은 기존 3D 재구성 방법에서 일반적인 쌍별 처리와 글로벌 정렬 과정을 제거하고, Transformer 기반의 병렬 처리를 도입함으로써 효율적이고 확장 가능한 3D 재구성을 가능하게 한다. 기존 DUSt3R은 쌍별 이미지 처리를 기반으로 하여 N개의 이미지에 대해 O(N²)의 연산이 필요하며, 글로벌 정렬이 필수적이었다. Fast3R은 이를 Transformer의 all-to-all self-attention을 통해 N개 이미지를 동시에 처리하고, 순차적 처리 없이 포인트맵을 생성한다. 이는 오류 누적을 줄이고, 추론 속도를 크게 향상시키는 핵심 아이디어이다.
Fast3R은 이미지 인코딩, 퓨전 트랜스포머, 포인트맵 디코딩의 세 단계로 구성되며, 각 이미지 패치는 이미지 인덱스에 따른 위치 임베딩을 추가하여 전역 좌표계를 유지한다. 특히, Position Interpolation 기법을 통해 훈련 시 N=20개 이미지만 사용해도 추론 시 N=1,000개 이미지를 처리할 수 있도록 확장성을 확보하였다.
기술적 접근법
- **Image Encoder**: ViT-Large 아키텍처를 사용하며, 16x16 패치 크기, 24 레이어, 16 헤드, 1024 차원 임베딩, MLP 비율 4.0을 갖는다. DUSt3R 사전 학습 가중치로 초기화된다.
- **Fusion Transformer**: ViT-Large 기반의 24 레이어 트랜스포머로, 모든 이미지 패치에 대해 all-to-all self-attention을 수행한다. 이미지 인덱스 임베딩을 통해 전역 좌표계를 유지하며, N'=1,000개의 인덱스 풀에서 무작위로 샘플링하여 확장성을 보장한다.
- **Pointmap Decoding Heads**: DPT 기반의 두 개의 디코더 헤드(로컬 및 글로벌)를 사용하여 포인트맵과 신뢰도 맵을 생성한다. 글로벌 헤드는 DUSt3R 사전 학습 가중치로 초기화되고, 로컬 헤드는 스크래치에서 학습된다.
- **Position Interpolation**: 훈련 시 N'=1,000개 인덱스 풀에서 무작위로 샘플링하여, 추론 시 N=1,000개 이미지를 처리할 수 있도록 확장성을 확보한다.
- **하이퍼파라미터**: 512 해상도 이미지, AdamW 최적화, 0.0001 학습률, 코사인 감소 스케줄, 174,000 스텝 훈련, DeepSpeed ZeRO stage 2를 사용하여 메모리 효율성을 높인다.
주요 결과
- **CO3Dv2 데이터셋**: 카메라 포즈 추정 정확도 99.7% (15도 이내), DUSt3R 대비 14배 오류 감소.
- **추론 속도**: 250 FPS 이상 처리 가능, 1,500개 이미지를 단일 순방향 패스로 처리.
- **확장성**: 훈련 시 N=20개 이미지만 사용해도 추론 시 N=1,000개 이미지를 처리할 수 있음.
- **모델 크기 및 데이터 확장성**: 모델 크기와 데이터 양을 늘릴수록 성능 향상이 지속적으로 관찰됨.
의의 및 한계
Fast3R은 기존 SfM 및 MVS 파이프라인의 복잡성과 느린 처리 속도를 극복하고, 단일 순방향 패스로 N개 이미지를 처리함으로써 3D 재구성의 효율성과 확장성을 획기적으로 향상시킨다. 특히, Transformer 기반의 all-to-all self-attention을 통해 오류 누적을 줄이고, Position Interpolation 기법을 통해 훈련-추론 간의 이미지 수 차이를 해결하였다. 이는 실시간 3D 재구성, 대규모 장면 스캔 등 다양한 응용 분야에서 유용하다.
그러나, Fast3R의 성능은 훈련 데이터의 정확성과 양에 크게 의존하며, 이는 확장성의 한계로 작용할 수 있다. 또한, 현재는 주로 정적 장면에 초점을 맞추고 있어, 동적 장면(4D)에 대한 처리는 추가 연구가 필요하다.
실용적 활용
Fast3R은 자율주행, 증강현실(AR), 로봇 비전 등에서 대규모 이미지 집합을 빠르고 정확하게 3D 재구성해야 하는 상황에 적합하다. 특히