본문 바로가기
Deep Learning/[논문] Paper Review

SMPL: A Skinned Multi-Person Linear Model

by a._muj 2023. 7. 28.
728x90
반응형

 

 

💡
SMPL: A Skinned Multi-Person Linear Model

 

목차

  1. SMPL의 정의
  1. SMPL 연구 목적
  1. 기존의 방법 및 한계
  1. SMPL의 원리와 작동
  1. 최종
  1. DMPL

 


 

SMPL(Skinned Multi-Person Linear) 이란?

[참고] ➡️ SMPL에 대한 간단한 설명

: skinned vertex 기반의 모델로서, 다양한 인간의 체형을 현실적으로 나타내고 자연스러운 자세에 따른 변형을 취할 수 있으며 연조직 움직임을 나타낸다.

※ skinned vertex: 스킨(피부)을 씌워진 뼈구조에 속한 메시의 정점 (뼈의 움직임에 따라 변형되는 정점)

 

SMPL 연구의 목적

: 다양한 체형을 대표할 수 있는 실제적인 애니메이션 인간 신체를 만들고, 자연스러운 자세에 따라 자연스럽게 변형되며, 실제 인간과 같은 연조직 움직임을 나타낼 수 있는 모델을 만들고자 한다.

: 추가적으로, 렌더링이 빨라야 하며, 배포가 용이하고, 기존의 렌더링 엔진과 호환될 수 있도록 해야 한다.

 

기존의 방법 및 한계

[참고] ➡️ LBS에 대한 간단한 설명

  • LBS(Linear Blend Skinning) : 3차원 물체를 컴퓨터 그래픽으로 형상화시킬 때에 사람의 뼈 구조(skeleton structure)로부터 Mesh를 만드는 기본적이고 널리 쓰이고 있는 방법
  • 💢 collapsing elbow 와 candy-wrapper effect의 문제
  • 3차원 물체를 LSB로 표현한 경우. 꼬인 경우에는 물체의 표면 면적 자체가 작아지면서 많은 Volume이 사라지게 됨
    1. collapsing elbow: 관절 부분에서 비현실적으로 부러지거나 무너지는 현상
    1. Candy-wrapper effect: 종이 포장지를 풀어 펴는 듯한 비현실적인 변형
    1. taffy(엿): 인접한 뼈들의 영향이 지나치게 클 경우, 해당 관절이 늘어나게 되는 현상
    1. Bowtie(넥타이): 정점이 두 개의 뼈에 겹쳐서 뾰족한 형태로 변형되어 ‘넥타이’ 모양이 되는 현상
    ⇒ 현실성 부족, 기존 패키지와의 호환성 문제, 한정된 체형, 수동 노동 필요

 

  • ※ mesh: 물체의 Vertex(점)들을 연결해서 여러 Polygon(면)들을 만들게 되는데, 이런 Polygon들이 하나로 모여서 만들어진 물체를 의미
  • Auto-rigging(자동) (↔LBS(수동)): 메시의 컬렉션을 가져와서 뼈와 관절 및 블렌드 가중치를 추론하여 메시를 자동으로 리깅하는 방법이지만, 일반적으로 기본 LBS 모델의 문제를 수정하지는 않음.

 

  • Blend Shapes: 기본 Blend skinning의 문제를 해결하기 위해, 기본 모양에 상대적인 변형으로 정의된 변형을 사용하여 자세에 따른 보정된 블렌드 형상을 정의함. 포즈에 대해 보정된 모양을 정의하여 기본 모양에 추가하고 블렌드 스킨닝에 의해 변형시킴
  • → 단일 자세/단일 형상 모델에만 수행 가능

 

  • Learning pose and shape models: 인간 체형 변화 공간을 커버하는 자세 가능한 모델을 구축하기 위해 통계적 형상 변화 모델을 학습하는 방법들로 SCAPE를 기반으로 하거나, 삼각형 변형을 사용하여 다양한 체형과 자세를 표현
    • 삼각형 변형

      체형 변화, 경직된 부분 회전 및 자세 의존 변형과 같은 다양한 변환의 구성을 허용

SMPL 이전의 문제들:

⇒ mesh와 Blend 가중치를 학습(기존에 정의된 형상만을 사용한다고 이해함) 하지만 Blend Shape은 학습하지 않음.

⇒ 따라서 다양한 자세에 대해 현실적인 변형을 제공하지 않음

 

💡
SMPL은 적절한 shape blend shapes(체형) pose blend shapes(자세, 관절 움직임)를 사용하여 자연스럽고 현실적인 변형을 가능하게 한다.

SMPL의 원리와 작동
3개의 shape Blendshape basis가 정의되어 각각의 Linear Combination으로 새로운 체형 만드는 과정
  1. Shape Blend shapes(체형)
  • 각 사람의 체형은 선형 함수 BS로 표현됨
  1. Pose Blend shapes(자세)
  • Pn (n은 1부터 9K까지의 인덱스)는 다시 정점 변위의 벡터를 의미
  • P = [P1,..., P9K]는 모든 207개의 자세 블렌드 쉐이프를 포함하는 행렬
  1. Joint locations
  • J: 기본적으로 관절을 기본 자세에서의 위치로 변환하는 행렬
  • 다양한 사람들의 다양한 자세 예제를 통해 회귀 행렬 J를 학습함
  • 다른 체형은 서로 다른 관절 위치를 가지고 있음
  • 각 관절은 기본 자세에서의 3D 위치로 표현됨
전체 SMPL 식(자세히는..논문 참고*^^*)

 

최종
  • 맨 우측 (연한 회색) 메시는 3D 스캔 데이터
  • (진한 회색) 논문에서의 모델 (DMPL - Dynamic Blend Shapes)
  • (연한 녹색) LBS
  • (진한 녹색) DQBS
    • LBS의 단점을 보완(움직임과 회전에 더 잘 적응하도록)
  • (파랑) BlendSCAPE
    • 삼각형 변형 사용(체형변화, 경직된 부분 회전 및 자세 의존 변형과 같은 다양한 변환 구성)
  • (빨강) SMPL-LBS
  • (주황) SMPL-DQBS

 

DMPL(Dynamic Blend Shapes)

 

  1. SMPL의 경우, : 특정한 자세를 취한 상태의 변화만 표현할 수 있었음 (움직이는 동작x) ➡️ 실제 움직임을 표현하기에는 한계가 존재 + 현실성이 부족 즉, 동적인 움직임이나 지면과의 충돌(뛰는 동작 or 땅에 발을 내딛는 움직임)이 발생할 경우, 움직임을 모델링하지 못함
  1. DMPL의 경우, : SMPL의 한계를 보완하기 위해 동적인 움직임을 모델에 포함함 ➡️ 몸과 팔다리의 속도와 가속도와 관련하여 포즈와 상관관계를 가지도록 설계 ➡️ 다양한 체형에 대해 일반화하는 능력이 더 우수 + 동적인 변형의 효과. Dynamic Blend shape을 도입했다 라고 표현

 

 

728x90
반응형