Skip to content

Releases: Najongs/DINObotPose

v1.0.0 — DINObotPose 논문 재현 패키지

Choose a tag to compare

@Najongs Najongs released this 15 Sep 17:16

DINObotPose: Monocular Robot Pose and Joint Angle Estimation with a Pretrained Vision Foundation Model and Kinematic Fitting

논문에 실린 모든 측정값을 재현하는 패키지의 첫 공개 릴리스입니다.

무엇을 하는가

단일 RGB 이미지 한 장에서, 엔코더 값도 정답 바운딩박스도 없이 카메라-로봇 6자유도 포즈와 관절각을 함께 복원합니다.

  • 키포인트는 고정(frozen) DINOv3 백본에서 서브픽셀로 읽습니다. 미세조정은 크롭 검출기의 마지막 4블록에만 적용됩니다.
  • 1차 패스가 전체 프레임을 피팅하고 자기 스켈레톤을 투영해 크롭을 정의합니다. 경쟁 기법이 정답이나 외부 검출기에서 가져오는 바운딩박스를 파이프라인이 스스로 만듭니다.
  • 이어지는 반복 피팅이 미분 가능한 순기구학을 통해 로버스트 가중 재투영 오차를 최소화하며 관절각과 카메라 포즈를 동시에 복원합니다.

깊이 모델을 학습하지 않고, 평가 데이터로 가중치를 갱신하지 않으며, 모든 카메라와 두 로봇에 단일 구성을 씁니다.

재현하기

uv sync                              # 또는 conda env create -f environment.yml
python scripts/download_weights.py   # 두 로봇 분 741 MB
python scripts/doctor.py             # 패키지·GPU·체크포인트·데이터셋 점검
bash scripts/reproduce_paper.sh
  • 의존성은 논문을 측정한 정확한 버전으로 고정돼 있습니다 (torch 2.10.0 / CUDA 12.8 휠).
  • 백본 아키텍처 설정이 src/dinobotpose/assets/ 에 동봉돼 추론 시 HuggingFace 접근이 필요 없습니다.
  • 체크포인트 무결성은 docs/checkpoint_sha256.txt 로 확인합니다.

구성

경로 내용
src/dinobotpose/ 모델 · 기하 · 솔버 · 순기구학 (solve.py · geometry.py · kuka_fk.py)
scripts/eval.py · selfbbox_eval.py · kuka_autobbox_eval.py 평가 3종
scripts/reproduce_paper.sh 논문 표 재현 엔트리
configs/deployed.yaml 배포 설정의 단일 authority
train/ 학습 (heatmap · rotation · angle)

라이선스

코드는 저장소 LICENSE 를 따릅니다. DINOv3 백본 가중치는 별도 라이선스이며 docs/DINOV3_LICENSE.md 에 조건을 정리했습니다.


이 저장소는 DIP_release 에서 DINObotPose 로 개명됐습니다. 1세대 구현은 DINObotPose-v1 에 있습니다.