[연재 기고] 고정밀도 3차원 인간 자세 추정 알고리즘 이해하기
  • 2025-05-07
  • 신윤오 기자, yoshin@elec4.co.kr
  • 고려대학교 주병권 교수님 연구실


모델 구조 관점에서 바라보는 MotionBert 모델과 FinePose 모델의 해석과 차이점

3차원 인간 자세 추정 분야는 컴퓨터 비전 및 인간-컴퓨터 상호작용(HCI) 분야에서 중요한 연구 주제이다. 최근의 딥러닝 기반 접근 방식은 2차원 이미지 또는 비디오에서 3차원 자세를 예측하는 성능을 크게 향상시켰으나 깊이 정보의 손실, 데이터 부족, 일반화 문제 등 여전히 해결해야 할 과제가 존재한다. 이번 기술 보고서에서는 기존의 고성능 모델들을 분석하여 고정밀도의 3차원 인간 자세 추정 알고리즘을 이해하고자 한다.



글/ 고려대학교 주병권 교수님 연구실
     주병권 (고려대학교 전기전자공학부 교수)
     이시윤 (데이터쿡 선임연구원, 고려대학교 전기전자공학부 석사 과정)


목 차

1. 서론
2. MotionBert 모델과 FinePose 모델의 해석
     2-1. MotionBert 모델의 해석
     2-2. FinePose 모델의 해석
3. 각 모델의 성능 지표
     3-1. MotionBert 모델의 성능 지표
     3-2. FinePose 모델의 성능 지표
4. 모델 성능 개선을 위한 제안
5. 결론
6. 참고 문헌


1. 서론

노이즈는 컴퓨터 비전 분야에서 제외할 수 없는 요소이다. 이미지를 입력 받아 분석하고 정보를 추론하는 과정에서 노이즈가 존재할 경우 추론의 정확성이 떨어지는 문제점이 존재한다.

반대로 학습 과정에서 노이즈가 존재하는 이미지 혹은 원본 이미지에 노이즈 효과를 부여하여 학습에 활용하는 경우가 있다. MotionBert 모델에서는 노이즈가 존재하는 2차원 골격에서 3차원 골격을 복원하기 위한 방법론을 제시하였으며, FinePose 모델에서는 학습 이미지에 점진적으로 노이즈를 주어 원본 이미지를 복원하는 방향으로 모델을 학습하는 방법론을 제시하였다.


그림 1. MotionBert 모델 구조도 [1]


그림 1을 통해 확인해 보면, MotionBert 모델의 구조에 대해서 이해할 수 있다. 



그림 2. FinePose 모델 구조도 [2]


그림 2를 살펴보면 FinePose 모델의 구조를 이해할 수 있다.

2. MotionBert 모델과 FinePose 모델의 해석

2-1 MotionBert 모델의 해석

MotionBert 모델에서는 이중 스트림 시공간 변환기(Dual-stream Spatio-temporal Transformer) 인코더를 활용하여 인간의 동작을 이해 및 예측한다. 또한 1~2 계층의 단순한 회귀 헤드(regression head)를 이용하여 사전 학습된 모션 인코더를 미세 조정한다. 이는 두 개의 스트림을 통해 시공간 정보를 처리하여 정확한 분석을 추구하는 방식으로 이해할 수 있다.

특히 이중 스트림 구조는 시간적 정보를 처리하는 스트림과 공간적 정보를 처리하는 스트림을 병렬로 구성하여 학습 과정에서 소실되는 정보를 최소화한다. 시공간 변환기의 경우 Resnet model을 백 본으로 하는 트랜스포머 구조 기반의 인코더로 시공간 관계를 효과적으로 모델링하였으며, 인간의 골격 관절 사이의 장거리 관계를 포괄적으로 이해하여 복잡한 동작을 분석할 수 있도록 하였다. 특히 노이즈가 있는 불완전한 데이터로부터 유의미한 3차원 동작 정보를 복원하는데 높은 성능을 보이는 것으로 나타났다.

 
그림 3. 시공간 변환기 예시 코드


시공간 변환기의 입력 표현에는 공간적 표현, 시간적 표현의 두 가지 방식이 있으며 공간적 표현의 경우 입력 데이터의 각 시간 프레임에서 이미지의 특성 정보를 추출한다. 시간적 표현의 경우 연속적인 프레임들을 연결하여 시간적 변화를 포착한다. 변환기의 자가 주의 메커니즘은 입력의 각 요소들 간의 상관 관계를 계산하는 주의 헤드(Attention head)와 계산된 상관 관계를 행렬로 나타낸 주의 지도(Attention map)으로 구성된다. 입력 값은 위치 인코딩(Positional encoding)을 거쳐 입력된 시퀀스의 각 요소에 대한 위치 정보를 추가한다. 변환기 블록을 통과한 결과 값은 시간적 및 공간적 특징을 모두 포함하고 있으며, 후처리 레이어에서 회귀 헤드를 활용하여 추가적인 예측을 수행한다.

회귀 헤드는 복잡한 신경망의 마지막 부분에 위치하여, 학습된 특징 정보를 기반으로 연속적인 수치 예측을 수행한다. 은닉층과 두 번째 layer를 활용하여 최종 예측을 수행하는 예제 코드를 그림 4와 같이 구현할 수 있다.

 
그림 4. Regression head 예시 코드
 

2-2 FinePose 모델의 해석

FinePose 모델에서는 새로운 확산 모델 기반의 3차원 인간 자세 추정 방법을 통해 신체 부위별 세분화된 가이던스에 집중하는 방안을 제시하였다.[7, 8] 확산 모델의 역과정을 향상시키는데 다음의 세 가지 블록을 제안하였다. 

첫 번째 블록은 세분화된 신체 부위 인식 프롬프트 학습(Fine-grained Part-aware Prompt Learning) 블록이다. 인간 자세에 대한 정보를 학습하여 프롬프트를 생성하는 역할을 수행하며 동작 클래스, 신체 부위별 정보(예: 머리, 몸통, 팔, 다리), 운동학적 정보(속도)의 세 가지 정보를 포함하고 있다. 이 정보를 자세 특징과 결합하여 후속 프로세스를 위한 입력으로 사용한다.[4] 

두 번째 블록은 세분화된 프롬프트-자세 상호작용(Fine-grained Prompt-Pose Communication) 블록이다. 해당 블록에서는 학습된 신체 부위별 프롬프트 임베딩을 노이즈가 포함된 3차원 자세에 주입한다. 이를 통해 세분화된 신체 부위별 프롬프트와 자세 간의 상호작용을 촉진하여, 노이즈 제거 성능을 향상시킨다. 세 번째 블록은 프롬프트 기반 타임스탬프 스타일화(Prompt-driven Timestamp Stylization) 블록이다.

이 블록에서는 시간 정보와 신체 부위별 프롬프트 임베딩을 결합하여 노이즈 제거 프로세스에 적용한다.[5] 이는 다양한 노이즈 수준을 가진 3차원 자세를 처리할 수 있도록 한다. 이는 각 노이즈 제거 단계에서 적응성을 향상시키며, 예측의 정밀도가 높아지는 결과로 이어진다.

3. 각 모델의 성능 지표

각 모델의 성능 지표는 현시점 SOTA 리더보드 기준 3위와 4위를 기록하고 있다. 성능 지표의 기준이 되는 데이터셋은 Human3.6M으로 3D 인간 포즈 추정 및 행동 인식을 위한 대규모 데이터셋이다. [3] 11명의 피사체가 4개의 카메라 뷰에서 15가지 일상적인 동작(걷기, 앉기, 물건 들기 등)을 수행하는 모습을 50Hz로 촬영하여 약 360만 개의 3D 포즈 데이터를 제공하며, 3D 스켈레톤 데이터는 17개의 주요 관절 정보로 구성, RGB 비디오, 2D 및 3D 관절 좌표, 깊이(depth) 정보 등을 포함한다.

이 데이터셋은 주로 컴퓨터 비전 연구에서 3D 포즈 추정, 행동 인식, 강화 학습 등의 분야에 활용되며, 특히 딥러닝 기반의 포즈 추정 모델을 훈련하는 데 널리 사용되는 데이터셋이다. 측정 지표는 관절 평균 위치 오류(Mean Per Joint Position Error)로 해당 지표는 예측된 3D 관절 위치와 실제 3차원 관절 위치 간의 평균 유클리드 거리를 측정하여 오류의 계산 값을 의미한다. 값이 작을수록 모델의 예측이 더 정확하다는 것을 나타낸다. MotionBERT 모델은 해당 데이터셋 기준 관절 평균 위치 오류 점수가 16.9를 기록하여 4위에 위치해 있으며, FinePose 모델은 동일 데이터셋 기준 관절 평균 위치 오류 점수 16.7로 3위를 기록하고 있다.

 
그림 5. MotionBERT 모델 성능지표 비교표 [1]


그림 5는 Human3.6M 데이터셋에서의 3차원 인간 자세 추정에 대한 정량적 비교이다. [6] 상단은 감지된 2차원 자세 시퀀스를 사용한 MPJPE(mm), 중단은 정답지 2차원 자세 시퀀스를 사용한 MPJPE(mm)이다. 하단은 감지된 2차원 자세 시퀀스를 사용한 MPJVE(mm)를 나타낸다. T는 각 방법에서 사용한 클립 길이이며, 각 연구에서 보고된 최고의 결과를 선정하였음.
 
그림 6. FinePose 모델 성능지표 비교표 [2]
 

그림 6은 Human3.6M 데이터셋에서 최신 3차원 인간 자세 추정 방법들과의 정량적 비교를 의미한다. N은 입력 프레임의 수를 나타냄. CPN [9], HRNet [10], SH [11]: 각각 CPN, HRNet, SH을 2D 키포인트 검출기로 사용하여 입력을 생성한 경우를 의미함.


 
그림 7. MotionBERT 모델과 FinePose 모델 비교표

 
그림 7은 MotionBERT 모델과 FinePose 모델을 비교해본 내용을 정리한 표이다. MotionBERT 모델이 가지는 한계점은 다음의 4가지 사항으로 정리할 수 있다. 

(1) 데이터 의존성
- MotionBERT는 대규모 3차원 pose annotation이 필요한데, 3차원 정답지를 얻는 것은 매우 비용이 큼.
- Human3.6M, MPI-INF-3DHP 등 소수의 대형 데이터셋에 과도하게 의존하여 일반화가 어려움.

(2) 계산량 및 실시간성 부족
- Transformer 구조 특성상 시간 축 주의 집중 계산이 많아 모델이 무겁고 실시간 처리에 부적합.
- 특히 긴 비디오 시퀀스를 다루면 연산량이 폭증함.

(3) 폐쇄 효과 및 빠른 동작에 약함
- 한두 관절이 가려졌을 때나 빠른 동작에서는 예측 성능이 급격히 떨어짐.
- BERT 기반이 시퀀스 문맥은 잘 이해하지만, 세밀한 spatial 관계는 CNN보다 덜 정교함.

(4) 2차원에서 3차원으로의 일반화 문제
- 입력으로 사용하는 2D pose가 노이즈가 끼거나 다른 탐색기에서 추출된 경우, 성능 저하 큼.
- 특히 도메인 간(예: OpenPose → MotionBERT) 전이가 어려움.

반면 FinePose 모델이 가지는 한계성에 대해서는 마찬가지로 4가지 사항들로 요약할 수 있다.

(1) 복잡한 SMPL 조정
- SMPL 매개변수 추정은 고차원 비선형 회귀 문제로, 초기화나 학습 안정성이 낮고 과적합 가능성 있음.
- 특히 의복, 소품, 뷰 각도에 따라 성능 저하.

(2) 다양한 신체 유형 일반화 부족
- FinePOSE는 주로 표준 체형에 맞춰 학습되어 연령, 체형, 장애 유무 등 다양한 사람에 대한 일반화 어려움.

(3) 영상 기반 추론의 취약성
- 단일 이미지나 단기 영상 시퀀스에만 의존할 경우, 깊이 정보 부족으로 3차원 구조 예측에 한계가 있음.
- 영상 노이즈, 배경 복잡도, 조명 변화에 민감.

(4) 추론 속도 문제
- 메쉬를 매 프레임 추론하는 방식은 실시간 처리에 부적합.
- SMPL 파라미터 회귀와 재조정 과정이 연산적으로 비쌈.


4. 모델 성능 개선을 위한 제안

MotionBERT 모델에서 각 MHSA 블록이 정방향 전파된 이후에 건너뛰기 연결(Skip-connection)이 이루어져 정보손실을 방지하고 있음.

Temporal MHSA + Spatial MHSA/Spatial MHSA + Temporal MHSA의 묶음 블록에도 건너뛰기 연결을 적용하는 구조에 대한 실험을 적용해보는 것이 좋을 것으로 추정된다. 두 분기의 DST former에서 각 헤드와 추출된 특징 값(features)가 어텐션 회귀 모델(attention regressor)에 의해 예측된 적응형 가중치로 융합되는 과정에서 소프트맥스 함수가 활용될 수 있다.

 
그림 8. DST former 구조 예시1
 
 
그림 9. DST former 구조 예시2









SGT(Scaled Gamma Tanh) activate function, SwiGLU, Tanh+GELU+SGT 등의 다양한 활성화 함수 적용 및 결과 분석(역연산)을 실험해 보는 방법을 제안한다.
 
FinePose 모델을 개선하기 위한 방안으로는 다음의 4가지 보완 방안을 제시한다.

(1) 하이브리드 접근 방식
    - CNN 기반 초기 추론 + 트랜스포머 기반 시공간 재조정 → 정밀도 + 효율성 확보.
    - 시간적 일관성(Temporal coherence)를 반영한 SMPL 매개변수 평활화 적용.

(2) 데이터셋 증강 및 도메인 적응
    - 다양한 옷, 체형, 배경, 조명 등 다양한 합성 데이터를 통해 일반화 개선.
    - 실제 데이터와 합성 데이터 간 도메인 차이를 줄이는 적대 학습(adversarial training) 도입.

(3) 희소한 메쉬 표현 혹은 키포인트 중심 맞춤 방식 차용
    - 전체 SMPL 파라미터 대신 주요 관절 기반 초기 피팅 후 정밀조정으로 연산량 감소.
    - 또는 암묵적 표현 학습(implicit surface learning/e.g. PIFu, NHR)으로 대체 가능.

(4) 다중 모달 정보 결합
   - RGB + 깊이 정보, IMU, 스켈레톤 정보 등 다양한 센서 융합을 통한 정밀도 향상.
   - 특히 깊이 정보가 있는 경우 자세 추정 모호성이 현저히 줄어듬.


5. 결론
 
MotionBERT와 FinePose는 모두 인간의 포즈 추정을 위한 딥러닝 모델이지만, 접근 방식과 강점에서 뚜렷한 차이를 보인다. MotionBERT는 트랜스포머(Transformer) 기반 아키텍처를 중심으로, 시간 정보를 효과적으로 처리하는 데 초점을 맞춘 모델이다.

이 모델은 특히 비디오 시퀀스나 연속적인 모션 데이터를 활용할 때, 프레임 간의 장기적인 의존 관계를 학습하여 시간적으로 부드럽고 일관성 있는 포즈 예측을 가능하게 한다. 반면 FinePose는 고해상도 이미지 상의 정적인 포즈 정보를 최대한 정밀하게 추정하는 데 최적화된 구조를 가지고 있으며, 고정된 프레임에서의 공간 정보 보존 및 정교한 키포인트 정렬을 통해 매우 정확한 포즈 추정 성능을 보여준다. 이처럼 MotionBERT는 시간 정보에 민감한 동적 시퀀스에 특화된 반면, FinePose는 이미지 기반의 고정된 포즈 정밀도에서 강점을 가지는 모델이다.

두 모델을 동일한 실험 조건에서 비교해본 결과, 각자의 구조적 특성이 실제 결과에 뚜렷하게 반영됨을 확인할 수 있었다. MotionBERT는 연속된 프레임 사이에서의 움직임을 자연스럽게 연결하며, 포즈의 시간적 일관성을 훌륭하게 유지했다.

예를 들어, 걷거나 손을 흔드는 등 시간 축에서의 움직임이 중요한 시퀀스에서는 MotionBERT가 상대적으로 더 안정적이고 매끄러운 포즈 예측 결과를 보여주었다. 반면 FinePose는 단일 이미지나 순간적인 자세 캡처에 더 적합하였으며, 관절의 위치를 매우 정밀하게 추정하여 세밀한 분석이 필요한 작업에 특히 효과적이었다. 특히 복잡한 관절이나 손, 발과 같이 세밀한 부위에서도 FinePose는 높은 공간 해상도 유지 능력을 바탕으로 정확한 결과를 생성했다.

이러한 비교 분석을 통해 도출된 결론은, 두 모델은 서로 경쟁하기보다는 사용 목적에 따라 선택적으로 적용하거나 보완적으로 활용할 수 있는 상호보완적인 관계에 있다는 점이다. 예를 들어, 실시간 동작 분석이나 모션 기반 인터랙션 시스템처럼 시간적 연속성이 핵심이 되는 분야에서는 MotionBERT가 매우 적합하다.

반면, 의료 영상 분석이나 피트니스 자세 평가처럼 단일 이미지에서의 포즈 정밀도가 중요한 경우에는 FinePose가 더욱 효과적이다. 나아가, 각 모델의 장점을 융합하여 시간 정보와 공간 정밀도를 동시에 고려하는 하이브리드 시스템을 설계한다면, 더 강력하고 유연한 포즈 추정 모델을 개발할 수 있을 가능성도 엿볼 수 있었다.


6. 참고문헌

[1] Wentao Zhu, Xiaoxuan Ma, Zhaoyang Liu, Libin Liu, Wayne Wu, Yizhou Wang. MotionBERT: A Unified Perspective on Learning Human Motion Representations. In ICCV, 2023.
[2] Jinglin Xu, Yijie Guo, Yuxin Peng. FinePOSE: Fine-Grained Prompt-Driven 3D Human Pose Estimation via Diffusion Models. In CVPR, 2024.
[3] Catalin Ionescu, Dragos Papava, Vlad Olaru, Cristian Sminchisescu. Human3.6M: Large Scale Datasets and Predictive Methods for 3D Human Sensing in Natural Environments. In IEEE, 2014.
[4] Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob
Uszkoreit, Llion Jones, Aidan N Gomez, Ł ukasz
Kaiser, and Illia Polosukhin. Attention is all you need.
In NeurIPS, 2017.
[5] Tom Brown, Benjamin Mann, Nick Ryder, Melanie
Subbiah, Jared D Kaplan, Prafulla Dhariwal, Arvind
Neelakantan, Pranav Shyam, Girish Sastry, Amanda
Askell, et al. Language models are few-shot learners.
NeurIPS, 33:1877–1901, 2020.
[6] Nikos Kolotouros, Georgios Pavlakos, Michael J
Black, and Kostas Daniilidis. Learning to reconstruct
3d human pose and shape via model-fitting in the loop.
In ICCV, pages 2252–2261, 2019.
[7] Jonathan Ho, Ajay Jain, and Pieter Abbeel. Denoising diffusion probabilistic models. NeurIPS, 33:6840–6851, 2020.
[8] Alexander Quinn Nichol and Prafulla Dhariwal. Improved denoising diffusion probabilistic models. In ICML, pages 8162–8171, 2021.
[9] Yilun Chen, Zhicheng Wang, Yuxiang Peng, Zhiqiang Zhang, Gang Yu, and Jian Sun. Cascaded pyramid network for multiperson pose estimation. In CVPR, pages 7103–7112, 2018.
[10] Ke Sun, Bin Xiao, Dong Liu, and Jingdong Wang. Deep highresolution representation learning for human pose estimation. In CVPR, pages 5693–5703, 2019.
[11] Alejandro Newell, Kaiyu Yang, and Jia Deng. Stacked hourglass networks for human pose estimation. In ECCV, pages 483–499, 2016.
 

<저작권자(c)스마트앤컴퍼니. 무단전재-재배포금지>


#네트워크   #빅데이터   #소프트웨어   #인공지능   #임베디드  

  • 100자평 쓰기
  • 로그인

세미나/교육/전시
TOP