LingBot-Map
단일 카메라 스트리밍 3D 재구성: 모든 프레임의 자세와 깊이를 실시간으로
라이선스
Apache 2.0
코드 및 모델 가중치: Apache-2.0(저장소의 LICENSE.txt 및 Hugging Face 모델 카드). 백본은 DINOv2(Apache-2.0)에서 초기화됩니다. 학습 데이터 구성에는 자체 이용 조건이 있는 학술 데이터셋이 포함되며, 일부는 비상업적 용도 전용입니다(예: ScanNet, Waymo Open Dataset). 그럼에도 저자들은 가중치를 Apache-2.0으로 공개합니다. 2026-10-23 확인.
개요
LingBot-Map은 Ant Group의 체화 AI 연구소 Robbyant가 만든 피드포워드 모델로, 움직이는 단일 카메라의 영상이 들어오는 대로 장면을 3D로 재구성합니다. 새 프레임마다 이미 본 프레임만 사용해 카메라 자세와 깊이 맵을 예측하므로, 궤적과 조밀한 포인트 클라우드가 실시간으로 쌓여 갑니다. 시각 SLAM 시스템과 비슷하지만, 손으로 설계한 추적, 특징점 매칭, 번들 조정은 쓰지 않습니다. 코드와 가중치는 Apache-2.0으로 lingbot-map 저장소에 공개되어 있고, 체크포인트는 Hugging Face에 있으며, 연구 내용은 기술 보고서와 ECCV 2026 논문에 정리되어 있습니다. 논문에 따르면 518 × 378 픽셀 입력에서 NVIDIA H800으로 약 20 FPS, RTX 4090으로 약 12 FPS이며, 10,000프레임이 넘는 시퀀스를 처리합니다. LingBot-VLA, LingBot-VA와 같은 연구소에서 나왔습니다.
LingBot-Map은 이미지 묶음에 대해 카메라와 기하를 한 번에 예측하는 VGGT 같은 최신 3D 파운데이션 모델의 설계를 따르면서, 이를 인과적으로 바꿔 스트림에서 돌아가게 했습니다. DINOv2 이미지 백본이 트랜스포머에 특징을 넘기고, 이 네트워크는 프레임 내부 어텐션과 프레임 간 Geometric Context Attention을 번갈아 적용합니다. 이 어텐션은 세 종류의 기억을 유지합니다. 좌표계와 스케일을 고정하는 처음 몇 장의 앵커 프레임, 조밀한 국소 기하를 위한 최근 프레임의 슬라이딩 윈도우, 그리고 더 오래된 이력을 모두 요약해 드리프트를 줄이는 프레임별 압축 궤적 메모리입니다. 상태가 작게 유지되므로 시퀀스가 길어져도 프레임당 비용은 거의 일정합니다. 스트리밍 구현은 FlashInfer를 통한 페이지형 키-값 캐시를 쓰며, 순수 PyTorch 대체 경로도 있습니다.
저장소에는 이미지 폴더나 영상 프레임을 브라우저 뷰어(viser)로 스트리밍하는 대화형 데모, 긴 시퀀스용 오프라인 렌더러, 약 3,000프레임을 넘는 실행을 위한 키프레임 모드와 윈도우 모드, 야외 장면용 하늘 마스킹, 그리고 KITTI, Oxford Spires, TUM, ETH3D 등 논문 벤치마크의 평가 스크립트가 들어 있습니다. 공개된 체크포인트는 세 가지로, 논문에 쓰인 균형형 모델, 긴 시퀀스용 모델, 그리고 VGGT에 불러와 오프라인 양방향 재구성에 쓸 수 있는 1단계 체크포인트입니다.
모델은 31개 데이터셋 항목으로 두 단계에 걸쳐 학습되었습니다. 먼저 짧은 다시점 클립, 그다음 긴 영상 궤적으로 학습했으며, 여기에는 TartanGround, MidAir, KITTI-360, Waymo 같은 지상 로봇, 항공, 주행 데이터가 포함됩니다. 논문에 따르면 첫 단계는 GPU 64개로 약 2주가 걸렸습니다.
중요한 이유
카메라가 어디에 있고 주변에 무엇이 있는지 아는 로봇은 주행하고, 지도를 만들고, 계획을 세울 수 있습니다. 고전적인 시각 SLAM은 정교하게 설계한 추적과 최적화로 이를 해내지만, 텍스처가 적은 장면이나 빠른 움직임에서는 쉽게 무너집니다. 학습 기반 오프라인 재구성 모델은 정확하지만 영상 전체를 미리 확보해야 합니다. LingBot-Map은 학습 기반 재구성을 프레임 단위로 인과적으로, 긴 궤적에서도 쓸 만한 속도로 수행하는 초기 오픈 모델 가운데 하나이며, 가중치는 상업적 이용을 허용하는 라이선스입니다. 로봇이나 드론에서 카메라만으로 지도를 만들어 보거나 로봇 영상 기록에서 3D 지도를 만드는 데 바로 써 볼 수 있습니다.
해결하는 문제
평범한 카메라로 긴 궤적에 걸쳐 카메라 자세와 조밀한 3D 기하를 실시간으로 얻는 것입니다. 손으로 짠 SLAM 파이프라인도, 영상 전체가 모일 때까지 기다릴 필요도 없습니다. 이전의 학습 기반 스트리밍 모델은 시퀀스가 길어지면 드리프트가 생기거나 느려졌지만, LingBot-Map은 유한한 기억을 유지해 수천 프레임 동안 빠르고 안정적입니다.
핵심 요점
- 영상의 각 프레임이 도착할 때마다 과거 프레임만으로 카메라 자세와 깊이 맵을 예측
- 논문 기준 518 × 378에서 NVIDIA H800 약 20 FPS, RTX 4090 약 12 FPS, 10,000프레임 이상 시퀀스 처리
- 유한한 기억: 앵커 프레임, 슬라이딩 윈도우, 압축 궤적 메모리로 프레임당 비용을 거의 일정하게 유지
- 코드와 체크포인트 세 가지 모두 Apache-2.0, DINOv2 백본 기반
- 브라우저 뷰어 데모, 긴 시퀀스·윈도우 모드, KITTI·Oxford Spires 등 벤치마크 스크립트 제공
- LingBot-VLA와 LingBot-VA를 만든 연구소 Robbyant의 작품
대상
- 바퀴형 로봇, 보행 로봇, 드론에 카메라만으로 지도 작성이나 오도메트리를 구현하려는 로봇 엔지니어
- 학습 기반 재구성과 고전적 시각 SLAM을 비교하는 연구자
- 녹화된 로봇·차량 영상으로 3D 지도를 만드는 팀
- 후속 학습이나 시뮬레이션을 위해 영상에서 카메라 궤적과 깊이가 필요한 모든 사람
한계
- 성능 좋은 NVIDIA GPU가 필요: 논문의 20 FPS는 H800 기준이고 RTX 4090에서는 약 12 FPS이며, 체크포인트 하나가 약 4.6 GB
- 명시적 루프 클로저나 테스트 시점 최적화가 없어, 아주 길거나 같은 곳을 다시 지나는 경로에서는 드리프트가 쌓일 수 있음
- 학습 범위를 넘는 긴 실행에는 키프레임 모드나 윈도우 모드가 필요하며, 윈도우 사이에 상태가 초기화되어 드리프트가 늘어남
- 현재는 단안 카메라만 지원: IMU, LiDAR, 스테레오 입력이 없고 렌즈 왜곡도 처리하지 않음
- 재구성 모델일 뿐 완전한 로봇 스택은 아님: ROS 연동도, 이전 지도에서의 재위치 추정도 없지만 재구성 결과는 GLB로 내보낼 수 있음
- 가중치는 Apache-2.0이지만 학습 데이터에는 ScanNet, Waymo처럼 일부 비상업 조건을 포함한 자체 약관의 학술 데이터셋이 들어 있음