멀티모달·피지컬 AI

NVIDIA MetricTrail 공개, 긴 영상서 카메라 경로와 거리 추정

비상업 연구용으로 공개된 이 모델은 NVIDIA가 원래 SALAD/PyPose 루프 폐쇄 절차를 보정된 스테레오 KITTI 설정에 적용해 평균 궤적 오차 3.00m를 냈다고 밝혔다. 이 값은 이번에 공개된 후처리기의 수치가 아니며, 가중치도 저장소에 없다.

루카스 ·

NVIDIA가 긴 RGB 영상에서 카메라의 움직임과 프레임별 실제 거리(미터 단위 깊이)를 추정하는 연구용 모델 MetricTrail 1.0의 저장소를 Hugging Face에 공개했다. 영상 속 장면을 3차원으로 복원하는 연구에 쓰는 도구다.

사용 범위는 연구와 개발로 한정된다. 모델 가중치는 NVIDIA License에 따라 비상업적 연구나 평가에만 쓸 수 있다. 저장소에는 가중치가 들어 있지 않고, DINO-DPVO 체크포인트는 Hugging Face에서 따로 공개할 예정이다. 공개일은 2026년 11월 5일로 적혀 있으며, 배포 지역은 전 세계(Global)다.

작동 방식

MetricTrail은 단일 이미지 깊이 추정, 학습된 희소 대응점, 국소 기하 최적화를 결합한다. 입력은 시간순 RGB 이미지와 카메라 파라미터이며, 보정된 스테레오 영상도 선택해 쓸 수 있다. 카메라 내부 파라미터를 주지 않으면 RGB 영상만으로 추정한다.

뼈대는 DPVO의 희소 패치 대응 네트워크다. 여기에 학습된 잔차 어댑터로 고정된 DINOv3-S/16 인코더의 특징을 더하고, 고정된 MoGe-2가 프레임마다 깊이를 따로 예측한다. 이 깊이는 패치 깊이의 초기값이 되고 최적화 중에는 약한 제약으로 남아, 여러 시점의 증거가 신뢰하기 어려운 깊이 값을 덮어쓸 수 있다.

체크포인트의 학습 파라미터는 3,425,860개(약 343만 개)다. 학습은 A100 80GB GPU 16장에서 약 7시간, 15,000스텝, 전역 배치 크기 16으로 했다고 NVIDIA는 밝혔다. TartanAir, TartanGround, CarlaOcc, LightwheelOcc, OmniWorld-Game 등 합성 데이터 24만 클립(클립당 15프레임)을 썼다.

성능과 속도

궤적 정확도는 시퀀스별 Sim(3) 정렬 뒤 절대 궤적 오차(ATE)의 제곱근 평균으로 쟀다. 아래 값은 NVIDIA가 연구용 평가 절차로 낸 수치이며, 저장소에는 평가 스크립트가 없다. LC는 NVIDIA가 평가에 쓴 원래 SALAD/PyPose 기반 루프 폐쇄 절차다. 보정된 스테레오의 3.00m는 이 원래 절차를 적용한 값이다. 이번에 저장소에 들어간 외부 후보 방식의 NumPy/SciPy 후처리기로 낸 값이 아니며, NVIDIA는 이 결과가 해당 후처리기의 수치나 벤치마크 동등성을 입증하지 않는다고 밝혔다. 가중치가 아직 공개되지 않아 공개 저장소만으로 이 수치를 재현할 수도 없다. LC 없는 스테레오 수치는 제시되지 않았다.

주요 벤치마크 평균 ATE
벤치마크와 설정평균 ATE
KITTI Odometry, RGB 보정, LC 없음14.05m
KITTI Odometry, RGB 보정, LC 있음9.78m
KITTI Odometry, 내부 파라미터 제공, LC 있음7.39m
KITTI Odometry, 보정 스테레오, LC 있음3.00m
VBR, RGB 보정과 재방문 초점 보정, LC 없음/있음16.36m / 10.88m
TUM RGB-D, RGB 보정, 국소/전역 BA8.4cm / 4.9cm

밀집 복원은 RGB로 추정한 내부 파라미터를 쓰고 LC 없이, Sim(3) 정렬과 ICP 뒤에 평가했다. 7Scenes는 Chamfer 거리 0.04m에 F1 97.60%(0.25m 기준), Oxford Spires는 0.98m에 95.12%(4m 기준), TUM-Dynamic은 0.13m에 89.58%(0.25m 기준)였다. KITTI 비디오 깊이(13개 영상, 1,269프레임)는 Abs Rel 0.057, delta-1 정확도 97.8%였다.

KITTI-02에서 내부 파라미터를 주면 첫 출력까지 약 0.7초, 처리 속도 12.70FPS, 최대 GPU 메모리 3.21GB였다. RGB만 쓰면 첫 출력까지 약 175초가 걸리고 최대 메모리는 6.81GB이며, 이후 처리 속도는 같다.

사용 조건과 한계

실행에는 CUDA가 필요하다. 문서화된 환경은 Linux x86_64, Python 3.10, PyTorch 2.5.1, CUDA 12.4이고 검증 하드웨어는 NVIDIA Ampere(A100)다. DPVO의 CUDA 확장은 미리 빌드된 파일이 없어 직접 빌드해야 한다. 명령줄 도구는 PNG 프레임이나 KITTI NPZ를 받으며 일반 동영상 파일은 디코딩하지 않는다. 최소 16장의 이미지가 필요하다.

도구는 카메라 궤적과 프레임별 깊이 캐시를 내보내며, 밀집 점군이나 메시는 내보내지 않는다. 루프 폐쇄는 별도 명령이 CPU에서 NumPy/SciPy로 처리하고 외부에서 만든 후보 쌍을 받아 쓰는데, NVIDIA는 이 새 후처리기를 벤치마크로 검증하지 않았다고 밝혔다. 표의 LC 수치는 원래 SALAD/PyPose 절차의 결과여서 이 후처리기에는 적용되지 않는다.

NVIDIA가 밝힌 한계는 깊이 제공 모델의 정확도에 의존한다는 점이다. 시차가 작거나 빠르게 회전하거나 롤링 셔터, 모션 블러가 있으면 희소 대응이 나빠진다. 이 모델에는 명시적인 동적 객체 마스크나 동역학 전용 목표가 없고, TUM-Dynamic 점수는 선두 평가 방법에 못 미친다. 미터 척도는 추정값이며 포즈와 깊이의 불확실성은 보정되어 제공되지 않는다. 위 점수는 Sim(3), ICP, 깊이 스케일 정렬을 거친 뒤의 일치도를 잰 것이어서, 정렬 없는 미터 척도 정확도를 보증하지 않는다.

댓글

기사에 대한 의견이나 틀린 내용 제보를 남겨 주세요.

댓글을 불러오고 있습니다.