Contents — find the section you need

자세 추정은 2D 관절((u,v)), 3D 관절, 객체 회전(R) 및 이동(t)을 추론할 수 있습니다. 투영은 \tilde p\sim K[R|t]P으로 나타낼 수 있습니다. 보정, 가림, 좌우 모호성 및 시간 정렬은 네트워크 아키텍처만큼 중요합니다.

Diagram 1 · Use the button to switch views
Image keypoint estimationAn image is transformed to feature heatmaps and keypoint or pose coordinates.imagefeatures/heatmapskeypoints/pose

다이어그램: Duskcoil, 개념도. 식별 또는 감시 목적으로 사용할 수 없습니다.

히트맵 또는 좌표 회귀, PnP 및 시간 필터링을 사용하십시오. 가림, 조명, 의복, 보조 장치 및 인구 통계학적 요인에 따른 PCK, OKS 또는 재투영 오류를 평가하십시오. 사람을 대상으로 하는 경우 동의, 목적 제한, 보존 및 오류에 대한 사람의 검토를 명시하십시오.

  • OpenPose
  • [OpenCV] solvePnP](https://docs.opencv.org/4.x/d5/d1f/calib3d_solvePnP.html)

방법 및 좌표계

2D 사람 자세의 경우, 네트워크는 각 관절에 대한 히트맵의 최댓값을 선택하거나, 좌표를 직접 회귀하거나, 감지 후 한 번에 한 사람씩 추정하거나(탑다운 방식), 전체 이미지에서 모든 사람을 연결하거나(바텀업 방식) 할 수 있습니다. 6D 객체 자세의 경우, PnP는 알려진 3D 점과 이미지 대응점을 사용하여 회전 및 변환을 추정합니다. 회전 R\in SO(3)은 R^TR=I,\det R=1을 따릅니다. 직접 오일러 각 회귀는 특이점과 불연속성을 가지므로 정규화된 쿼터니언 또는 연속적인 6D 표현이 사용됩니다.

출력 일반적인 사용 측정 기준 실패
2D 키포인트 자세 분석, UI PCK, OKS 가림, 좌우 교환
3D 스켈레톤 동작 분석, 로봇 모방 MPJPE 깊이 모호성, 카메라 오류
6D 객체 자세 파악, AR ADD, 재투영 오류 대칭, 반사, PnP 이상치

데이터 및 오류 처리

가림, 역광, 거울, 다수의 사람, 보조 장치, 의복, 신체 형태, 피부 외관, 카메라 높이를 각각 평가합니다. 높은 평균 OKS 값이 낙상 감지 또는 협업 로봇 회피에 필요한 최악의 지연 시간 및 오인율을 보장하는 것은 아닙니다. 동의 없이 키포인트를 신원 또는 감정 추론에 재사용하지 마십시오. 목적 제한, 보존, 접근 제어, 삭제 및 이의 제기 절차를 정의하십시오.

구현 시 내재적 및 외재적 변수를 보정하고 프레임, 단위, 타임스탬프 및 신뢰도를 문서화하십시오. 신뢰도가 낮을 경우 보간값을 실제 값으로 간주하지 마십시오. 로봇 속도를 늦추거나, 중지하거나, 사람의 검토를 요청하십시오. 시간적 평활화는 지터를 줄이지만 지연 시간을 추가하므로 정지 거리에 반영해야 합니다.

  1. 작업에 대한 출력, 허용 오차 및 지연 시간을 정의합니다.

  2. 속성별로 평가를 분할합니다. 가림 현상 및 조명.

  3. 캘리브레이션, 좌표 변환 및 PnP 이상치 기록.

  4. 낮은 신뢰도, 카메라 드롭아웃 및 접근하는 사람에 대한 테스트 중지 규칙.

  5. COCO 키포인트 평가

캘리브레이션 및 시간은 네트워크 외부에 있어야 함

자세 오류는 네트워크만의 문제가 아닙니다. 초점 거리 또는 주점이 잘못되면 시각적으로 올바른 점도 3D에서는 잘못된 점이 됩니다. 학습과 추론에서 왜곡 순서, 크기 조정/자르기, 원점 및 픽셀 중심 규칙을 동일하게 유지해야 합니다. 외부 변수는 카메라 움직임과 진동에 따라 변하므로 하나의 캘리브레이션을 영구적으로 신뢰하는 대신 참조 대상에 대한 재투영 오류를 다시 확인해야 합니다.

여러 대의 카메라 또는 IMU를 사용하는 경우 프레임 전에 타임스탬프를 확인해야 합니다. 30fps 프레임의 지연은 빠른 손이나 도구의 움직임을 상당히 크게 만들 수 있습니다. 하드웨어 시간, 수신 시간, 추론 완료 시간 및 보간에 사용된 샘플 수를 저장해야 합니다. 아름답게 부드럽게 처리된 궤적이라도 충돌 방지에는 너무 늦을 수 있습니다.

파이프라인 선택 사항

파이프라인 이점 컴퓨팅/데이터 요구 사항 주요 오류
단안 2D 저렴하고 간단함 2D 레이블, 카메라 1대 깊이 정보 부족, 가림 현상
단안 3D 간편한 설치 3D 사전 정보, 대용량 데이터 도메인 외 캡처, 스케일
다중 시점 삼각측량 기하학적 3D 제약 조건 동기화, 보정, 시점 잘못된 대응점, 시야 밖
RGB-D 직접 깊이 측정 깊이 센서, 범위 제한 반사, 햇빛, 깊이 정보 누락
키포인트 + PnP CAD 사용 3D 대응점, 내부 특성 대칭성, 이상치, 퇴화된 레이아웃

대상 크기로 2D 오류를 정규화하고 3D 단위와 프레임을 지정합니다. 대칭 객체의 경우, 하나의 표준 회전과 비교하면 물리적으로 올바른 포즈가 잘못 표시될 수 있습니다. 대칭성을 고려한 ADD-S 또는 재투영을 사용하고 파지 간격을 평가합니다. 보고서 평균 오차 외에도 95번째 백분위수, 미스, 높은 신뢰도의 오류, 그리고 엔드투엔드 지연 시간을 고려합니다.

실패 사례: 좌우 반전된 골격에 대한 확신

거울, 후방 시야, 그리고 자체 가림 현상으로 인해 좌우가 바뀐 골격이 기하학적으로 그럴듯하게 보일 수 있습니다. 스무딩 처리로 인해 오류가 여러 프레임 동안 고정될 수 있습니다. 방향, 시각적 단서, 여러 가설, 그리고 동작 제한을 종합적으로 고려해야 하며, 뼈대 길이 제약 조건에만 의존해서는 안 됩니다. 안전 관련 애플리케이션에서는 높은 신뢰도가 확실한 증거가 될 수 없으므로, 골격 반전 감지 및 독립 센서와의 불일치를 오류 발생 조건으로 사용해야 합니다.

재현 가능한 구현 절차

  1. 다이어그램과 테스트 데이터를 사용하여 이미지, 카메라, 월드, 로봇 프레임을 고정합니다.

  2. 크기 조정, 패딩, 증강 후 키포인트 변환을 왕복 테스트하고, 알려진 서브픽셀 오류를 포함합니다.

  3. PnP RANSAC 임계값과 최소점을 설정하고, 인라이어, 재투영 오류, 그리고 양의 깊이를 검사합니다.

  4. 정지, 보행, 빠른 동작 등을 기록합니다. 가림, 이미지 가장자리, 카메라 드롭아웃 사례에서 지연 시간을 고려합니다.

  5. 낮은 신뢰도, 갑작스러운 골격 변형, 보정 드리프트, 시간 반전 시 테스트 중지 및 재초기화를 수행합니다.

  6. 원본 프레임을 저장하는 경우 목적, 접근, 보존, 익명화 및 삭제 절차를 문서화합니다.

자세는 관찰 가설일 뿐, 개인의 신원, 의도 또는 상태가 아닙니다. 프레임, 시간 및 불확실성을 하위 시스템으로 전달하여 하위 시스템에서 "알 수 없음"을 안전하게 처리할 수 있도록 합니다.

어노테이션 품질 및 운영 감사

어노테이션에도 불확실성이 존재합니다. 옷 아래 관절 중심, 가려진 손목, 대칭 객체 방향은 어노테이션 작성자마다 다릅니다. 보이는 부분, 가려진 부분, 프레임 외부 상태를 별도로 저장하고, 어노테이션 작성자 간의 불일치, 정의 수정, 보간된 점을 유지하여 모호성을 고정된 값으로 강제하지 않도록 합니다. 레이블을 지정합니다. 합성 재질과 조명 단서가 지배적이지 않도록 실제 이미지 기준점을 남겨둡니다.

모든 이미지를 영구적으로 보관하지 않고도 작업을 모니터링할 수 있습니다. 신뢰도, 누락된 관절 수, 재투영 오류, 지연 시간, 카메라 상태 및 중단 시간을 집계하고, 짧은 기간 동안 접근 제어를 통해 발생한 사건 데이터만 보관합니다. 모델 업데이트 시 동일한 비디오를 재생하여 드롭아웃 길이, 좌우 교환, 위험 구역에서의 최대 오류를 비교한 다음, 카메라 교체 후 재보정합니다.

이해도 확인
2D 관절이 3D 자세를 고유하게 결정합니까?

깊이가 여전히 모호합니다. 이를 해결하기 위해 사용된 추가 뷰, 깊이 측정 또는 신체 모델 가정을 확인하십시오.

What to read next

Review the backgroundSegFormer 완벽 가이드 — 위치 인코딩이 없는 트랜스포머가 세그멘테이션에 효과적인 이유Continue the series머신러닝 입문: 생성형 모델Explore another aspect of this field로컬 LLM 벤치마킹: 첫 응답, 생성 속도 및 메모리