오픈 보캐뷸러리 로봇 인지: 처음 보는 물체 이름을 실제 조작 대상으로 연결하는 방법

오픈 보캐뷸러리 로봇 인지는 미리 정한 클래스 번호가 아니라 사용자의 물체 이름과 속성 표현을 영상의 영역·마스크에 연결하고, 깊이·카메라 보정으로 3D instance를 만든 뒤 추적·파지 모듈에 넘기는 과정입니다. 텍스트-박스 일치도만으로는 부족하며 동명이인 해소, 3D 일관성, 가림 뒤 재식별과 조작 성공까지 검증해야 합니다.

아래에서는 용어의 차이를 실제 시스템 경계, 실패 조건과 검증 순서로 나눠 살펴봅니다.

오픈 보캐뷸러리 로봇 인지는 자유로운 물체 이름을 실제 조작 가능한 instance로 grounding하는 과정이다

사용자가 ‘파란 손잡이가 달린 작은 컵’을 말하면 시스템은 고정된 cup class ID만 찾는 대신 표현과 맞는 영상 영역을 제안해야 합니다. 이어서 픽셀 마스크, 깊이, 카메라 자세를 결합해 어느 3D 물체인지 결정하고 추적 ID와 파지 후보를 생성합니다.

VLA의 의미처럼 언어에서 행동까지 학습하는 모델도 내부적으로 대상 identity가 흔들리면 엉뚱한 물체를 집을 수 있습니다. 이 글의 범위는 VLA 전체가 아니라 언어 명사구를 region·mask·3D instance로 연결하는 인지 경계입니다.

closed-set detector와 다른 점은 학습 클래스 밖의 텍스트를 후보로 사용할 수 있다는 데 있다

closed-set 검출기는 미리 정한 클래스 logit 가운데 하나를 고르지만 open-vocabulary 모델은 이미지 영역과 텍스트 embedding의 유사도를 비교합니다. 그래서 ‘머그’ 대신 ‘음료를 담는 손잡이 있는 그릇’처럼 학습 label과 다른 표현도 후보를 만들 수 있습니다.

OWL-ViT 원 논문은 이미지-텍스트 사전학습 표현을 open-vocabulary detection에 전이하는 방식을 제시합니다. 유사도가 높다는 사실은 3D 위치, 파지 가능성이나 장면 안 유일한 대상임을 보장하지 않으므로 로봇 단계가 추가됩니다.

언어 질의는 명사·속성·관계를 분리하되 원문의 모호성을 지우지 않는다

‘왼쪽 빨간 컵’에서 cup은 범주, red는 속성, left of는 장면 관계입니다. query normalizer가 이를 구조화하면 후보 생성과 관계 필터를 나눌 수 있지만 ‘그것’처럼 참조가 불명확한 말을 임의의 물체로 확정하면 안 됩니다.

후보가 둘 이상이면 top-1을 강제하기보다 복수 후보와 점수 차이를 유지하고 카메라 시점 이동이나 사용자 확인을 요청합니다. 로봇이 질문할 임계값은 텍스트 점수뿐 아니라 후보 간 공간 분리와 잘못 집었을 때의 비용을 반영합니다.

질의 요소예시처리남는 위험
명사cup·toolopen-vocab 후보동의어·상위어
속성red·smallattribute rerank조명·상대 크기
관계left of·insidescene graph filter시점 의존
대명사it·that one대화 참조오래된 대상 ID

비슷한 물체가 여러 개이면 box 하나보다 instance identity가 더 중요하다

사진처럼 형태가 비슷한 원통형 물체가 반복되면 ‘원통을 집어라’는 지시만으로 대상을 고를 수 없습니다. 검출 box가 겹치거나 배경을 포함하면 다른 물체의 depth가 섞이므로 instance별 mask와 장면 관계를 유지해야 합니다.

실제 현장에서는 색·크기·위치와 작업 순번 같은 추가 속성을 써서 후보를 좁히고, 조작 직전 wrist camera로 다시 확인합니다. 사진은 유사 물체가 있는 작업 환경을 설명할 뿐 표시된 로봇이 오픈 보캐뷸러리 모델을 사용한다는 뜻은 아닙니다.

공장 작업대에서 노란 산업용 로봇 팔이 여러 원통형 물체를 다루는 모습
이름과 속성이 비슷한 물체가 함께 있으면 2D 검출 뒤에도 instance 구분과 3D 위치 연결이 필요합니다. 사진은 현장 맥락을 보여 주며 특정 오픈 보캐뷸러리 모델의 성능을 입증하지 않습니다. 출처: Shixart1985. 라이선스: CC BY 2.0. EXIF orientation normalized, center-cropped around the robot arm and cylindrical workpieces, and resized; no material content altered.

text-conditioned box 뒤에 정확한 mask를 붙여야 depth와 파지 영역이 섞이지 않는다

box 중심 depth 하나만 쓰면 손잡이, 배경과 뒤 물체가 같은 상자 안에 들어갈 수 있습니다. box나 point prompt로 segmentation 모델을 호출하고 mask edge의 depth outlier를 제거해 대상 표면의 point cloud를 만듭니다.

Segment Anything 원 논문은 다양한 prompt에서 mask를 생성하는 foundation segmentation을 제시합니다. mask 품질은 prompt box와 장면에 의존하므로 얇은 손잡이, 투명체와 가림 물체는 별도의 mask IoU·boundary·조작 실패 평가가 필요합니다.

Grounding DINO 같은 후보 생성기는 표현 유연성을 주지만 score calibration은 장면별로 달라진다

텍스트와 이미지 특징을 결합한 detector는 복합 명사구의 영역을 찾을 수 있지만, unseen 단어의 score가 known class score와 같은 의미를 갖는다고 가정하면 안 됩니다. 배경이 바뀌거나 여러 동의어를 넣으면 후보 수와 순위가 달라질 수 있습니다.

Grounding DINO 원 논문의 open-set detection 능력을 로봇에 쓸 때는 query ensemble, negative phrase와 score threshold를 실제 작업 장면에서 calibration합니다. top-1 정확도 외에 정답이 후보 K개 안에 남는 recall을 측정해야 후단 관계 필터가 일할 기회가 생깁니다.

2D mask를 조작 대상으로 바꾸려면 깊이·카메라 내참수·좌표 변환의 시각을 맞춰야 한다

mask pixel과 depth를 K로 역투영하고 camera-to-base transform으로 옮겨 3D cluster와 centroid, surface normal을 계산합니다. RGB와 depth timestamp가 다르거나 로봇 팔이 움직이는 동안 transform을 잘못 보간하면 올바른 이름에 다른 공간 좌표가 붙습니다.

로봇 6D 물체 자세 추정은 대상 identity가 정해진 뒤 자세를 더 정밀하게 구하는 문제입니다. open-vocabulary grounding은 그 앞에서 어떤 instance를 pose estimator에 넘길지 결정하며, category가 맞아도 instance association이 틀리면 자세 숫자는 쓸 수 없습니다.

가림과 로봇 이동 뒤에도 같은 대상을 유지하려면 2D box가 아니라 3D track을 갱신한다

카메라가 움직일 때 화면의 왼쪽·오른쪽은 바뀌므로 이전 pixel 위치로 identity를 유지할 수 없습니다. 3D 위치 예측, appearance embedding, mask overlap과 물체 운동 제약을 결합하고 가림 동안 track을 잠시 유지합니다.

재등장 후보가 여러 개면 track을 강제로 합치지 말고 identity uncertain 상태로 둡니다. 조작 직전 active perception으로 가까이 보고, 집은 뒤에는 대상이 원래 위치에서 사라지고 그리퍼 안에 나타났는지 postcondition으로 확인합니다.

공간 관계는 한 장의 2D 좌우보다 로봇 기준 3D 장면 그래프로 표현한다

‘상자 안 도구’, ‘병 뒤 컵’ 같은 지시는 object node와 inside·behind·nearest 관계 edge로 바꿉니다. 카메라 시점의 left/right와 로봇 base 기준 방향을 구분하고 관계 계산에 사용한 frame을 저장합니다.

VoxPoser 공식 프로젝트는 언어 지시와 VLM에서 얻은 affordance·constraint를 3D value map으로 구성해 로봇 trajectory를 합성합니다. open-vocabulary 영역을 행동 공간과 연결할 때도 언어 점수 하나보다 3D 제약 지도가 유용합니다.

인지와 조작의 경계 계약에는 후보 집합·좌표·시각·가시성·금지 영역이 포함된다

perception API는 label 하나 대신 instance ID, query, score, mask, 3D bounding volume, covariance, timestamp와 supporting views를 반환합니다. grasp planner는 이 계약으로 접근 가능한 표면을 찾고 low confidence·stale pose·금지 영역 후보는 실행하지 않습니다.

이동 조작의 베이스·팔 계획과 연결할 때 base 이동으로 시점이 달라지면 기존 target pose를 그대로 쓰지 않습니다. 이동 후 target을 재관측하고 map object와 다시 association한 다음 최종 팔 trajectory를 만듭니다.

언어 지시 정규화부터 후보 영역, 마스크, 3D instance, 추적과 파지 검증까지 이어지는 점검표
텍스트가 맞아도 다른 물체의 depth와 grasp pose를 붙이면 실패하므로 각 변환의 identity를 확인합니다. 출처: 피지컬 AI Lab.

평가는 언어-박스 점수에서 끝내지 않고 3D 연결과 실제 조작 성공으로 단계별 분해한다

phrase grounding recall, box·mask 품질, correct instance rate, 3D centroid·pose error, track identity switch, clarification rate와 grasp success를 따로 측정합니다. 최종 성공만 보면 detector 오류와 grasp planner 오류를 구분할 수 없습니다.

로봇 영상 데이터 증강에서 설명한 crop·색 변화가 attribute와 camera intrinsics를 깨뜨리지 않는지도 확인합니다. unseen noun, synonym, attribute, relation, clutter, occlusion과 transparent object를 별도 slice로 보고합니다.

배포 가능한 파이프라인은 모호한 대상에 질문하고 조작 직전에 다시 확인한다

후보 점수 차이가 작거나 3D cluster가 불안정하면 ‘왼쪽 것인가요, 손잡이 있는 것인가요?’처럼 차이를 드러내는 질문을 만듭니다. 사람 응답은 새 표현과 기존 track ID를 연결하되 scene이 바뀌면 참조를 만료합니다.

합격 기준은 unseen 표현의 후보 recall, 정확한 instance·3D 연결, 가림 뒤 identity 유지, stale target 차단과 실제 grasp 성공입니다. open vocabulary는 이름 목록의 한계를 줄이지만 모호성·좌표·물리 가능성을 제거하지 않으므로 실행 전 검증 루프가 필요합니다.

단계핵심 지표실패 예보완
언어→후보recall@K·calibration동의어 누락query ensemble·질문
후보→maskIoU·boundary배경 depth 혼입prompt·edge filtering
mask→3Dinstance rate·pose errortime·frame 불일치동기·covariance
3D→행동ID switch·grasp success가림 뒤 오인재관측·postcondition

오픈 보캐뷸러리 로봇 인지에서 자주 묻는 질문

오픈 보캐뷸러리와 zero-shot object detection은 같은 말인가요?

겹치지만 로봇에서는 검출 뒤 단계가 더 필요합니다. 텍스트 후보를 mask·depth·3D instance와 추적 ID에 연결해 실제 조작 대상으로 만들어야 합니다.

CLIP 유사도가 가장 높은 물체를 바로 집어도 되나요?

권장되지 않습니다. 점수는 장면별 calibration이 다르고 복수 후보가 비슷할 수 있습니다. 공간 관계·3D 일관성과 조작 직전 재확인을 함께 사용해야 합니다.

Segment Anything만 쓰면 처음 보는 물체를 찾을 수 있나요?

SAM은 prompt에 따른 mask 생성에 강점이 있지만 어떤 이름의 물체인지 스스로 확정하는 detector는 아닙니다. 텍스트 grounding이나 사용자 point·box와 결합해야 합니다.

투명 물체도 같은 파이프라인으로 처리할 수 있나요?

RGB 후보는 가능해도 일반 depth 센서가 투명 표면을 놓칠 수 있습니다. 다중 시점, 별도 depth 보완과 보수적인 조작 가능성 판정이 필요합니다.

후보가 둘이면 로봇이 임의로 하나를 고르는 것이 빠르지 않나요?

잘못 집는 비용이 낮은 작업에서는 가능하지만 중요 물체에서는 질문 비용이 더 작습니다. 후보 간 점수·공간 차이와 오조작 비용으로 clarification 기준을 정합니다.

오픈 보캐뷸러리 모델은 학습 클래스 밖 표현을 다룰 수 있어도 모든 신물체를 정확히 식별하거나 안전하게 집는 것을 보장하지 않습니다. 중요한 조작은 대상 확인과 물리 안전 제한을 별도로 둬야 합니다.