헬스케어
피트니스 애플리케이션의 AI 포즈 추정

데이터 사이언스 엔지니어인 Maksym Tatariants, MobiDev의 기고문입니다.
인간 포즈 추정은 상대적으로 새로운 기술이지만 빠르게 발전하고 있으며, 피트니스와 댄스 애플리케이션에서 중요한 역할을 하며 디지털 콘텐츠를 실제 세계에 올려놓을 수 있습니다.
간단히 말하면, 인간 포즈 추정의 개념은 컴퓨터 비전 기반 기술로 인간의 姿勢를 감지하고 처리할 수 있습니다. 이 기술의 가장 중요한 부분은 인간 몸 모델링입니다. 현재 인간 포즈 추정 시스템에서 가장 두드러진 세 가지 몸 모델은 스켈레톤 기반, 컨투어 기반, 볼륨 기반 모델입니다.
스켈레톤 기반 모델
이 모델은 관절(키 포인트)로 구성되어 있으며, 무릎, 발목, 손목, 팔꿈치, 어깨, 몸의 四肢의 방향을 포함합니다. 이 모델은 유연性이 뛰어나며, 3차원 및 2차원 인간 포즈 추정 모두에 적합합니다. 3차원 모델링에서는 RGB 이미지와 함께 키 포인트의 X, Y, Z 좌표를 찾습니다. 2차원 모델링에서는 RGB 이미지의 X 및 Y 좌표만 분석합니다.
컨투어 기반 모델
이 모델은 몸의 토르소와 四肢의 컨투어 및 너비를 사용합니다. 여기서 몸의 실루엣을 가져와 몸의 부분을 사각형 및 경계로 렌더링합니다.
볼륨 기반 모델
이 모델은 일반적으로 3차원 스캔을 사용하여 몸의 형태를 캡처하고 기하학적 메쉬로 변환합니다. 이러한 모양은 3차원 시리즈의 포즈 및 몸 표현을 생성합니다.
3D 인간 포즈 추정의 작동 원리
피트니스 애플리케이션은 일반적으로 3차원 인간 포즈 추정을 사용합니다. 이러한 앱에서는 인간 포즈에 대한 정보가 많을수록 좋습니다. 이 기술을 사용하면 사용자가 운동이나 운동 루틴을 수행하는 동안 자신을 녹화할 수 있습니다. 앱은 사용자의 몸 움직임을 분석하여 오류 또는 부정확성을 수정합니다.
이러한 앱의 일반적인 흐름은 다음과 같습니다:
- 사용자가 운동을 수행하는 동안 데이터를 수집합니다.
- 사용자의 움직임이 올바른지 또는 부정확한지 판단합니다.
- 사용자에게 인터페이스를 통해 오류를 표시합니다.
현재 인간 포즈 기술의 표준은 COCO 토폴로지입니다. COCO 토폴로지는 얼굴에서 다리까지 17개의 랜드마크로 구성되어 있습니다. COCO는 인간 몸 포즈 프레임워크 중 하나일 뿐입니다.
이러한 프로세스는 일반적으로 깊은 기계 학습 기술을 사용하여 사용자의 포즈를 추정하기 위해 관절을 추출합니다. 또한 기하학적 알고리즘을 사용하여 발견된 내용을 분석합니다(검출된 관절의 상대적 위치). 동적 비디오를 소스 데이터로 사용하면 단일 이미지뿐만 아니라 여러 프레임을 사용하여 키 포인트를 캡처할 수 있습니다. 이렇게 하면 현재 프레임의 인간 몸의 위치에 대한 불확실성을 해결하는 데 정보를 사용할 수 있어 사용자의 실제 움직임을 더 정확하게 렌더링할 수 있습니다.
현재 피트니스 애플리케이션에서 3D 포즈 추정을 사용하는 기술 중 가장 정확한 접근법은 2D 키 포인트를 감지하는 모델을 적용한 다음 2D 감지를 다른 모델로 처리하여 3D 키 포인트 예측을 생성하는 것입니다.
최근에 게시한 연구에서 단일 비디오 소스를 사용하여 2D에서 3D 키 포인트로의 변환을 수행하기 위해 확장된 시간적畳み込み를 사용하는 컨볼루션 신경망을 적용했습니다.
현재 모델을 분석한 결과, VideoPose3D는 대부분의 AI 기반 피트니스 애플리케이션에 가장 적합한 솔루션입니다. 이 시스템에서는 2D 키 포인트를 감지하는 입력을 허용하며, COCO 2017 데이터셋으로 사전 훈련된 모델을 2D 감지기로 적용할 수 있습니다.
VideoPose3D는 현재 키 포인트의 위치를 예측하기 위해 짧은 시간 순서의 여러 프레임을 사용하여 2D 포즈 정보를 생성할 수 있습니다.
3D 포즈 추정의 정확도를 높이기 위해 사용자가 운동을 수행하는 동안 여러 카메라를 사용하여 사용자의 대체 관점을 수집할 수 있습니다. 그러나 이는 더 많은 처리 능력과 전문 모델 아키텍처가 필요합니다.
최근에 Google은 BlazePose 시스템을 공개했습니다. 이는 모바일 디바이스에서 인간 포즈를 추정하기 위한 모델로, 33개의 키 포인트를 분석하여 COCO 키 포인트 세트와 두 가지 다른 토폴로지(BlazePalm 및 BlazeFace)를 포함합니다. BlazePose 모델은 몸 모델과 얼굴 모델을 일관되게 예측할 수 있습니다.
인간 포즈 추정 시스템의 각 구성 요소는 빠르며, 포즈 감지 및 추적 모델당 최대 몇 밀리초가 소요됩니다.
BlazePose 파이프라인(포즈 추정 및 추적 구성 요소 포함)은 다양한 모바일 디바이스에서 실시간으로 작동하므로 각 구성 요소는 매우 계산적으로 효율적이며 200-1000 FPS에서 실행됩니다.
비디오에서 사람의 존재 여부가 알려지지 않은 경우 포즈 추정 및 추적은 일반적으로 두 단계로 수행됩니다.
첫 번째 단계에서는 객체 감지 모델을 실행하여 사람의 존재를 감지하거나 존재하지 않는지 확인합니다. 사람을 감지한 후 포즈 추정 모듈은 사람을 포함하는 지역을 처리하여 키 포인트의 위치를 예측할 수 있습니다.
이 설정의 단점은 객체 감지 및 포즈 추정 모듈이 모든 프레임에서 실행되어 추가 계산 리소스를 소비한다는 것입니다. 그러나 BlazePose의 저자는 이러한 문제를 해결하고 다른 키 포인트 감지 모듈(예: FaceMesh 및 MediaPipe Hand)에서 효율적으로 사용할 수 있는 방법을 고안했습니다.
아이디어는 객체 감지 모듈(BlazePose의 경우 얼굴 감지기)을 사용하여 첫 번째 프레임에서 포즈 추적을 시작한 다음 포즈 예측을 사용하여 사람의 추적을 수행할 수 있다는 것입니다.
머리는 상대적으로 작은 외관의 변이와 높은 대조로 인해 토르소의 위치에 대한 가장 강한 신호를 생성하므로, 신경망은 인간의 머리가 모든 개인 사용 사례에서 찾을 수 있다는 가정에 근거하여 빠르고 저 오버헤드의 포즈 감지 시스템을 생성할 수 있습니다.
인간 포즈 추정의 도전 과제 극복
피트니스 애플리케이션에서 포즈 추정을 사용하는 것은 인간 포즈의 방대한 양(예: 요가 루틴의 수백 개의 아사나)에 대한 도전을 겪습니다.
또한, 몸은 때때로 특정肢体를 가릴 수 있으며, 사용자는 다양한 의류를 착용하여 몸의 특징을 가릴 수 있습니다.
사전 훈련된 모델을 사용하는 경우, 비정상적인 몸 움직임이나 특이한 카메라 각도는 인간 포즈 추정 오류를 유발할 수 있습니다. 이를 어느 정도 완화하기 위해 3D 인간 몸 모델 렌더링의 합성 데이터 또는 해당 도메인에 특화된 데이터로 세부 튜닝할 수 있습니다.
幸い, 이러한 대부분의 약점을 피하거나 완화할 수 있습니다. 이를 달성하는 열쇠는 적절한 훈련 데이터와 모델 아키텍처를 선택하는 것입니다. 또한, 인간 포즈 추정 기술의 발전은 현재의 일부 문제가 향후 덜 관련이 될 것임을 시사합니다.
최종 결론
인간 포즈 추정은 피트니스 애플리케이션 및 인간 움직임 추적 외에도 게임, 애니메이션, 증강 현실, 로봇공학 등 다양한 분야에서 잠재적인 미래 사용 사례를 가지고 있습니다. 이는 모든 가능성을 대표하는 목록은 아니지만, 인간 포즈 추정이 디지털 풍경에 기여할 가장 가능성이 높은 분야 중 일부를 강조합니다.
















