borglab/gtsfm

End-to-end SFM framework based on GTSAM

해결하는 문제

GTSfM은 2D 이미지 모음에서 3D 장면을 재구성하기 위한 엔드투엔드 Structure-from-Motion (SfM) 파이프라인을 제공합니다. 특히 3D 재구성에서 확장 가능하고 분산된 계산의 필요성을 해결하며, 더 큰 데이터셋을 더 효율적으로 처리할 수 있도록 여러 머신이나 워커에 걸쳐 병렬화할 수 있도록 설계되어 있습니다.

작동 방식

이 프로젝트는 GTSAM 위에 구축되었으며, Dask를 사용하여 네이티브 병렬 계산을 지원합니다. 모듈식 아키텍처를 채택하여 SfM 파이프라인의 다양한 구성 요소를 쉽게 교체할 수 있습니다:

  • 프론트엔드: 키포인트 탐지, 특징 기술 (SIFT 또는 SuperPoint 같은 도구 사용), 매칭 (예: SuperGlue), 대응 검증을 처리합니다.
  • 평균화: 초기 자세를 설정하기 위해 회전 및 이동 평균화를 구현합니다.
  • 데이터 연관: 2D 트랙에서 3D 점을 삼각 측량합니다.
  • 버블 조정: 3D 구조와 카메라 자세를 정밀하게 최적화합니다.
  • 밀도화: 고정밀 장면 표현을 위한 밀도 있는 Multi-View Stereo (MVS) 및 Gaussian Splatting을 지원합니다.

대상 사용자

컴퓨터 비전, 로보틱스, 3D 재구성 분야에서 일하는 연구자 및 개발자에게 적합합니다. COLMAP, Argoverse, Tanks and Temples 등 다양한 데이터셋 형식을 처리할 수 있는 고성능 분산 파이프라인을 필요로 하는 분들께 추천합니다.

주요 특징

  • 분산 처리: Dask를 통해 네이티브 병렬 계산을 지원하며, 다중 머신 클러스터 배포도 가능합니다.
  • 모듈식 설계: 추출기, 기술자, 매칭기 교체가 쉬운 추상 기반 클래스를 제공합니다.
  • 딥러닝 통합: SuperPoint, SuperGlue, PatchmatchNet의 사전 학습된 가중치를 지원합니다.
  • 광범위한 호환성: 다양한 산업 표준 데이터셋용 로더를 포함하고, Nerfstudio용 변환 스크립트도 제공합니다.
  • 시각화: Open3D 및 COLMAP GUI를 통합하여 재구성된 장면을 시각화할 수 있습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트