AIGeeksGroup/3D-R1

[NeurIPS 2026 Reviewed (5/4/4 - A/WA/WA)] 3D-R1: Enhancing Reasoning in 3D VLMs for Unified Scene Understanding

3D‑R1 – 범용 3‑D 시각 언어 모델

소개 – 3D‑R1은 대규모 시각 언어 모델(VLM)을 3‑D 도메인으로 확장하는 오픈소스 기반 모델입니다. 포인트 클라우드 장면을 추론하고, 질문에 답하며, 캡션을 생성하고, 객체를 접지(grounding)하며, 행동을 계획하는 등 모든 기능을 단일 모델에서 수행하도록 학습되었습니다.

중요성 – 기존 3‑D VLM은 정적 시점과 제한된 공간 데이터에 의존하기 때문에 복잡한 추론에서 성능이 저하되는 경우가 많습니다. 3D‑R1은 다음과 같은 방식으로 이를 해결합니다:

  • Scene‑30K라는 합성 사고 연쇄(CoT) 데이터셋으로 사전 학습하여 고품질의 풍부한 언어 주석이 달린 3‑D 장면을 제공합니다.
  • 인간 피드백 기반 강화 학습(RLHF)(GRPO)과 세 가지 사용자 정의 보상(지각, 의미적 유사성, 형식)을 사용하여 추론 및 답변의 정확도를 높입니다.
  • 추론 중에 가장 정보량이 많은 카메라 시점을 동적으로 선택하여 보지 못한 장면에 대한 일반화 성능을 향상시킵니다.

주요 구성 요소

구성 요소 역할
Scene‑30K CoT 캡션이 포함된 합성 30K 3‑D 장면; 콜드 스타트 데이터로 활용
RLHF (GRPO) 지각, 의미적 유사성, 형식 보상을 사용하여 모델 미세 조정
동적 시점 선택기 각 장면에 최적화된 시점 선택
백본 LLM Qwen2.5‑VL‑7B‑Instruct(또는 호환 모델)가 언어 생성 담당
3‑D 인코더 PointNet++ (third_party/pointnet2에서 빌드) 및 선택적 PyTorch3D 렌더링
시각화 포인트 클라우드 및 3‑D 바운딩 박스 예측을 위한 Rerun‑SDK 기반 뷰어

시작하기

  1. 환경 – CUDA 11.8, Python 3.9, PyTorch 2.0.1+cu118에서 테스트되었습니다. 나열된 pip/conda 패키지(선택적 pytorch3d 포함)를 설치하세요. README에 따라 PointNet++ 및 가속화된 GIoU 연산을 빌드하세요.
  2. 데이터 – 제공된 Hugging Face 링크에서 전처리된 ScanNet 데이터를 다운로드하고, 추가 인코더를 활성화하려면 지침에 따라 다중 시점 이미지/깊이 맵을 추가하세요. ScanRefer, Nr3D, ScanQA, 3D‑LLM에서 언어 주석을 가져오거나 준비된 Scene‑30K 데이터셋을 다운로드하세요.
  3. 학습 –
    • 지도 미세 조정 (SFT) on Scene‑30K: bash script/train.generalist.sh
    • RL 미세 조정: bash script/train.rl.sh
  4. 추론 – 체크포인트를 사용하여 bash script/infer.sh를 실행하여 벤치마크 데이터셋의 검증 세트에서 평가합니다.
  5. 시각화 – rerun-sdk, trimesh, plyfile을 설치하고 bash script/visualize.sh를 실행하여 포인트 클라우드와 예측된 3‑D 박스를 확인합니다.

데모 및 리소스

사용 사례 – 포인트 클라우드 장면에서의 제로샷 3‑D 밀집 캡셔닝, 객체 캡셔닝, 시각적 접지, 질문 답변, 대화, 추론 및 계획. README에서 이러한 기능의 비디오 데모를 확인할 수 있습니다.

감사의 말 – Qwen, LSceneLLM, ARKitScenes, DeepSeek‑Math 코드베이스를 기반으로 구축되었습니다.


코드를 재사용하거나 본 연구를 인용할 경우, 제공된 BibTeX 항목을 추가해 주세요.

관련

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