Najongs/meca500-needle-insertion
Meca500 니들 삽입 데이터셋 (아이팬텀 트로카) Mecademic Meca500 R3 6축 로봇으로 수집한 아이팬텀(eye phantom) 니들 삽입 실기 시연 데이터. 카메라 3대 + (일부) 광섬유 OCT·힘 센서를 동기 기록했습니다. 1,281 에피소드 · 438,156 프레임 · 145 GB — 전량 실물 로봇 수집분입니다. 서브셋 서브셋 에피소드 프레임 크기 센서 수집 기간 Eye_trocar/ 990 344,181 102.9 GB 834개에 OCT A-line + 힘 2026-01-06 ~ 01-21 Red_point/ 291 93,975 42.4 GB 없음 2025-12-22 ~ 2026-01-04 Eye_trocar — 아이팬텀의 트로카에 니들을 정렬·삽입하는 본 태스크. 날짜 폴더(260106~`260121) 아래 있고, 260106은 작업자별 하위 폴더 (1_KTY… See the full description on the dataset page: https://huggingface.co/datasets/Najongs/meca500-needle-insertion.
Meca500 니들 삽입 데이터셋 (아이팬텀 트로카)
Mecademic Meca500 R3 6축 로봇으로 수집한 아이팬텀(eye phantom) 니들 삽입 실기 시연 데이터. 카메라 3대 + (일부) 광섬유 OCT·힘 센서를 동기 기록했습니다.
1,281 에피소드 · 438,156 프레임 · 145 GB — 전량 실물 로봇 수집분입니다.
서브셋
- Eye_trocar — 아이팬텀의 트로카에 니들을 정렬·삽입하는 본 태스크. 날짜 폴더(
260106~260121) 아래 있고,260106은 작업자별 하위 폴더 (1_KTY1_MIN2_JYT3_KHC4_DHH)로 더 나뉩니다. `260106`(156개)만 센서가 없고 나머지 834개는 전부 OCT·힘 센서를 포함합니다. - Red_point — 선행 단계. 평면 위 빨간 점 타겟으로 접근·정렬만 연습한 세션.
HDF5 스키마
에피소드 하나가 파일 하나(episode_<YYYYMMDD>_<HHMMSS>.h5)입니다. T = 프레임 수.
이미지 인코딩이 두 가지입니다. 대부분(1,243개)은dtype=object에 JPEG 바이트가 들어 있고,Red_point의 38개만 raw `uint8` `(T,480,640,3)`입니다.dtype으로 분기하세요. 마찬가지로 대부분float32이나 raw인 38개는float64입니다.
센서는 카메라보다 훨씬 빠릅니다.aline의N이T보다 수십 배 큽니다 (예: T=219 · N=11,617). 반드시observations/sensor/timestamp와timestamp로 정렬하세요 — 인덱스를 맞춰 자르면 안 됩니다.
읽기 예시
import h5py, numpy as np, io
from PIL import Image
with h5py.File("Eye_trocar/260121/episode_20260121_094356.h5", "r") as f:
action = f["action"][:] # (T, 6)
qpos = f["observations/qpos"][:] # (T, 6)
cam1 = f["observations/images/camera1"]
if cam1.dtype == object: # JPEG 바이트
frame = np.array(Image.open(io.BytesIO(bytes(cam1[0]))))
else: # raw uint8
frame = cam1[0]
if "observations/sensor" in f: # 있는 에피소드에서만
aline = f["observations/sensor/aline"][:] # (N, 1025)
st = f["observations/sensor/timestamp"][:] # (N,)
# 프레임 i에 대응하는 센서 인덱스
idx = np.searchsorted(st, f["timestamp"][:])일부만 받으려면:
from huggingface_hub import snapshot_download
snapshot_download("Najongs/meca500-needle-insertion", repo_type="dataset",
allow_patterns="Eye_trocar/260121/*")수집 환경
- 로봇: Mecademic Meca500 R3 (6DoF), 광학 브레드보드 위 고정
- 타겟: 3D 프린팅 아이팬텀 + 트로카. 리프트 스테이지로 높이 조절
- 카메라 3대 고정 (측면 전경 / 상단 근접 / 상단 광각), 640×480
- 센서: 니들 끝단 통합 광섬유 — OCT A-line 1025 bin + 힘
- 프레임에 사람은 등장하지 않습니다 (장비·팬텀만 촬영)
관련 저장소
모델·학습 코드(Insertion_VLAv4, LeRobot 기반)와 계보 문서(VLA)는 미발표라 비공개입니다. 공개된 것은 같은 연구실의 포즈추정 릴리스뿐입니다 — `Najongs/DINObotPose`.
연구 전반은 지식 그래프에서 볼 수 있습니다.
인용
미발표 연구입니다. 사용 시 저자에게 연락 바랍니다.
라이선스
CC BY-NC 4.0 — 비영리 목적의 연구 사용을 허용합니다.
Jongyeol Na — Researcher, KIRO · M.S. DGIST, IROM Lab GitHub · Knowledge graph · W&B
