← 목록07 / CASE STUDY

AI · 관계 예측 실험

RelateAnything Lab

물체 사이의 관계를 예측하는 공개 모델을 RTX 4090에서 실행했습니다. 생성 영상에서 검출 분류가 바뀌며 병의 관계 점수가 사라지는 원인을 분석하고, 객체 연결과 시간 후처리를 분리해 비교합니다.

역할추론 연동 · 오류 분석 · 객체 연결 · 평가 · 결과 비교 화면
기간2026.09
주요 도구Python · PyTorch · YOLO11s · RelateAnything · Vercel
관계 예측 실험에 사용한 생성 영상: 사람이 테이블 위에서 파란 병을 들고 있는 장면
실험용으로 생성한 20.04초 영상의 실제 프레임 · 웹 데모는 이 영상과 저장된 추론 결과를 재생합니다.
병 영역 확보
59.7% → 100%

287/481 → 481/481 · 같은 생성 영상

holding F1
0.120 → 0.825

전체 파이프라인 · 시간 후처리 전 · 유효 초안 라벨 74개

on 양성 검출 · 미해결
0 / 56

임계값 0.5 · 추적 후에도 재현율 0

01 / DIAGNOSIS

관계 점수가 사라지는 이유를 추적하기

병을 잡아 올렸다가 테이블에 내려놓는 약 20초 영상을 생성했습니다. 같은 영상의 모든 프레임에 YOLO11s와 RelateAnything을 실행하고, 사람이 병을 잡는 관계와 병이 테이블 위에 있는 관계를 살펴봤습니다.

초기 실행은 프레임마다 bottle로 분류된 검출만 선택했습니다. 그런데 병을 든 구간의 물체가 vase, cell phone, cup으로 바뀌어 분류되면서, 위치가 검출되어도 병의 관계 모델 입력에서는 제외됐습니다.

02 / IMPLEMENTATION

물체의 동일성과 관계 점수 분리

신뢰도가 높은 bottle 검출로 객체를 초기화한 뒤, 다음 프레임의 모든 분류 후보를 위치·이동·크기로 연결합니다. 현재 프레임에서 실제로 관찰된 박스만 관계 모델에 전달합니다. 검출이 없으면 점수를 미관측으로 남깁니다.

RelateAnything은 이미지 한 장과 영역, 관계 어휘를 입력받는 프레임별 모델입니다. 이전 프레임을 기억하는 객체 연결과 EMA·히스테리시스는 별도로 구현했습니다. 모델 점수와 시간 후처리의 상태를 나누어 표시합니다.

  1. 01영상 프레임

    원본 시간과 프레임 번호

  2. 02검출·객체 연결

    현재 관찰된 영역

  3. 03RelateAnything

    방향성 객체 쌍 × 관계 점수

  4. 04기록·비교

    원시 예측 / 시간 후처리

03 / EVIDENCE

누락과 오탐을 따로 평가하기

추론 전에 영상을 보고 0.25초 간격으로 초안 라벨을 작성했습니다. 접촉 전환이 불명확한 프레임은 uncertain으로 제외하고, 프레임 번호를 정확히 맞춰 평가합니다. 생성 요청에 적은 동작 시간은 정답으로 사용하지 않았습니다.

검출 누락은 관계가 거짓이라는 관찰과 다릅니다. 조건부 지표와 전체 파이프라인 지표를 함께 확인하며, 전체 평가에서는 양성 관계를 관찰하지 못한 경우도 FN에 포함합니다. 0.5 임계값은 별도 검증셋에서 최적화한 값이 아닙니다.

초기 자동 검출은 병 영역을 287/481프레임에서 제공했고 holding F1은 0.120이었습니다. 분류에 관계없이 같은 물체를 연결한 뒤에는 481프레임 모두에서 실제 관찰 박스를 확보했고, 시간 후처리 전 F1은 0.825였습니다. 정밀도는 70.2%, 재현율은 100%였으며 오탐 14개는 남았습니다.

시간 후처리는 holding 오탐을 14개에서 13개로 줄였고 F1은 0.835였습니다. on 관계는 추적 후에도 양성 56개를 모두 놓쳤습니다. 객체를 유지하는 개선과 관계를 정확히 판정하는 문제를 구분해 남은 실패도 함께 공개합니다.

RTX 4090·FP32·배치 1에서 추적과 후처리를 포함한 파이프라인의 평균은 38.68ms/프레임, p95는 46.14ms였습니다. 평균 시간의 역수는 약 25.85 FPS이며 웹 재생 속도나 배포 서버의 성능 수치는 아닙니다.

측정초기 자동 검출객체 연결 후
병 영역 · 전체 481프레임287 / 481481 / 481
holding · TP / FP / FN3 / 14 / 3033 / 14 / 0
holding F1 · 후처리 전0.1200.825
on 재현율 · 양성 56개0%0%

04 / RECORDED DEMO

원본·추론·후처리를 같은 시점에 비교

공개 데모에서는 원본 영상과 저장된 실행 결과를 같은 시점에 확인합니다. 객체가 어떤 분류로 관찰됐는지, 관계 점수가 있는지, 시간 후처리로 표시 상태가 어떻게 바뀌는지 구분합니다.

Vercel은 결과 탐색 화면을 제공합니다. 이 공개 페이지에서 GPU 모델을 실행하거나 업로드한 새 영상의 관계를 계산하지 않습니다. 표시된 실행 시간은 로컬 RTX 4090에서 측정한 기록입니다.

ENGINEERING DECISIONS

설계 판단

01

검출 분류가 변해도 객체 연결 유지

병의 위치를 이미 검출한 프레임을 버리는 경로를 확인했습니다. 신뢰도 높은 초기 관찰 이후에는 객체 연결을 유지하며 분류 변화를 기록합니다. 색상이나 수동 영역은 최종 추적 방식의 입력으로 사용하지 않습니다.

02

모델 출력과 시간 후처리 구분

공개 체크포인트의 점수 보정을 적용한 프레임별 점수와 EMA·히스테리시스 결과를 따로 저장합니다. 후처리 상태를 모델이 예측한 확률로 표현하지 않습니다.

03

실제 실행 기록으로 재현

모델·검출기 버전, 어휘, 입력 영상 해시, 점수 공식과 시간 측정 범위를 남깁니다. 결과 화면을 다시 만드는 데 모델을 재실행할 필요가 없습니다.

SCOPE & LIMITS

한계와 검증 범위

  • 박스 확보율은 위치 정확도 지표가 아닙니다. 테이블 박스의 범위가 프레임별로 달라지는 한계가 남아 있으며, 수동 박스 정답에 대한 정확도는 평가하지 않았습니다.
  • 하나의 생성 영상과 같은 영상에서 검수한 초안 라벨을 사용한 개발 실험입니다. 별도 실제 영상이나 held-out 영상에서 일반화 성능을 검증하지 않았습니다.
  • 객체별 한 인스턴스를 가정합니다. 여러 병, 완전 가림, 카메라 이동에서의 안정적인 동일성 유지는 별도 실험이 필요합니다.
  • 모델이나 검출기를 재학습하지 않았습니다. RelateAnything과 RA-4M은 Maëlic Neau의 원본 연구이며, 이 사례의 기여는 추론 연동·분석·추적·평가·시각화입니다.
  • 처리 시간은 워밍업 후 GPU 동기화로 측정했으며 영상 읽기·검출·관계 계산·후처리를 포함합니다. JSON 저장과 웹 렌더링·결과 영상 인코딩은 제외합니다.
다음 사례VisionEye ↗

Contact

hyunaeee@gmail.com ↗

대한민국 · 한국어 / 영어

포트폴리오 PDF

역할, 설계 판단, 검증 결과와 자료 링크를 함께 담습니다.

인쇄 창에서 ‘PDF로 저장’을 선택하세요.