PERSONA: Personalized Whole-Body 3D Avatar with Pose-Driven Deformations from a Single Image

상솜공방·2025년 9월 18일

논문 리뷰

목록 보기
36/58
post-thumbnail

1. Introduction

  • Animatable Human Avatar의 정의 및 중요성:

    • Animatable Human Avatar는 새로운 전신(whole-body) 포즈와 얼굴 표정을 움직일 수 있으며, 어떤 시점에서도 렌더링(rendering) 가능한 3D 인체 모델을 의미한다.
    • 컴퓨터 비전(computer vision) 및 그래픽스(graphics) 분야에서 오랫동안 난제로 여겨져 왔다.
  • 기존 접근 방식의 한계점:

    • 3D-based 접근 방식:
      • NeRF 또는 3DGS와 같은 신경 렌더링(neural rendering) 기술과 SMPL, SMPL-X와 같은 3D 인체 파라메트릭 모델을 결합한다.
      • 장점: 단일 인물의 비디오나 단일 이미지로부터 Disentangled identity representation을 통해 개인화된 아바타를 생성하며 identity preservation이 뛰어나다.
      • 한계: Pose-driven deformations (예: 옷의 비강체(non-rigid) 변형)를 모델링하기 어렵다. 이를 위해서는 한 개인에 대해서 포즈가 풍부한(pose-rich) 수많은 비디오가 필요한데, 이는 비용이 많이 들고 일상생활에서 얻기 비실용적이다.
    • Diffusion-based 접근 방식:
      • 대규모 in-the-wild videos에서 pose-driven deformations를 학습한다.
      • 장점: 옷의 비강체 변형과 같은 포즈-주도 변형을 효과적으로 포착한다.
      • 한계: identity preservation에 어려움이 있고, pose-dependent identity entanglement (포즈에 따라 인물의 신원 정보가 얽혀 왜곡되는 현상) 문제가 발생한다.
  • PERSONA 프레임워크의 제안 및 핵심 기술:

    • 목표: 단일 이미지로부터 pose-driven deformations이 가능한 personalized whole-body 3D avatar를 생성한다.
    • 접근 방식: 3D-based 방식과 Diffusion-based 방식의 장점을 결합한다.
    • 핵심 아이디어: Diffusion-based 방식으로 입력 이미지로부터 pose-rich videos를 생성하고, 이를 훈련 데이터로 사용하여 3D 아바타를 최적화한다.
    • 고유 기술: 높은 사실감(authenticity)과 다양한 포즈에서의 선명한 렌더링(sharp renderings)을 보장하기 위해 두 가지 핵심 기술을 도입한다.
      • Balanced sampling: Diffusion 생성 훈련 비디오에서 발생할 수 있는 신원 변화(identity shifts)를 완화하기 위해 입력 이미지(input image)를 과표집(oversampling)한다.
      • Geometry-weighted optimization: 이미지 손실(image loss)보다 기하학적 제약(geometry constraints)에 우선순위를 부여하여 다양한 포즈에서 렌더링 품질을 보존한다.

참고 용어:

  • Pose-driven deformations (포즈-주도 변형): 인물의 포즈가 변화함에 따라 옷과 같은 신체 부위가 비강체적으로(non-rigidly) 변형되는 현상이다. 예를 들어, 팔을 올리면 옷에 주름이 생기거나 형태가 변하는 것.
  • Identity preservation (신원 보존): 아바타가 원본 인물의 고유한 외모(얼굴, 머리카락, 옷의 질감 등)를 정확하게 유지하는 능력이다.
  • Disentangled identity representation (분리된 신원 표현): 인물의 신원(identity) 정보와 포즈, 표정 등 다른 요소들이 서로 독립적으로 표현되어 각각을 개별적으로 제어할 수 있는 방식이다.
  • Diffusion-based generative models (확산 기반 생성 모델): 노이즈에서 점진적으로 데이터를 생성하는 방식의 생성 모델로, 고품질 이미지 및 비디오 생성에서 뛰어난 성능을 보인다.
  • Pose-dependent identity entanglement (포즈-종속 신원 얽힘): 특정 포즈에서 아바타의 신원이 왜곡되거나 원본과 다르게 표현되는 문제로, 신원 정보가 포즈에 따라 얽혀 있음을 의미한다.
  • Balanced sampling (균형 샘플링): 훈련 데이터셋 내에서 특정 종류의 데이터(예: 입력 이미지)를 다른 종류의 데이터(예: Diffusion 모델이 생성한 이미지)보다 더 높은 빈도로 샘플링하여, 학습 과정에서 중요한 정보가 희석되지 않도록 하는 기법이다.

2. Related works

  • 3D-기반 휴먼 아바타 (3D-based human avatars)

    • 초기 연구: 다중 시점(multi-view) 비디오 데이터와 정교한 3D 자세 추적 기술에 크게 의존했다. 이는 현실적인 환경에서 데이터를 얻기 어렵다는 실용적인 한계를 가졌다.
    • 최근 연구: 이러한 데이터 제약을 완화하여 단일 시점(monocular) 비디오나 심지어 단일 이미지를 통해서도 아바타를 구축하는 방향으로 발전했다. NeRF나 3D Gaussian Splatting과 같은 뉴럴 렌더링 기술을 SMPL과 같은 3D 파라메트릭 모델과 결합하여 신원 보존(identity preservation) 능력과 새로운 시점에서 렌더링하는 능력을 향상시켰다.
    • 한계: 그러나 대부분의 3D-기반 방법들은 3D 파라메트릭 모델이 주로 강체(rigid) 변형을 지원하기 때문에, 옷의 비강체(non-rigid) 변형과 같은 포즈에 따른 변형(pose-driven deformations)을 포착하는 데 어려움을 겪는다. 다양한 포즈와 옷의 움직임을 담은 대규모 데이터셋을 개인별로 획득하는 것이 비용이 많이 들고 비실용적이기 때문에, 이러한 아바타들은 복잡한 포즈 의존적 옷 변형을 표현하는 데 한계가 있었다. PERSONA는 이러한 한계를 극복하기 위해 diffusion-generated videos를 활용한다.
  • 확산-기반 휴먼 아바타 (Diffusion-based human avatars)

    • 주요 특징: 대규모 'in-the-wild' 비디오 데이터셋으로 학습된 확산 모델을 사용하여 2D 포즈 시퀀스로부터 애니메이션된 비디오를 직접 생성한다. 이 방법들은 포즈에 따른 변형을 효과적으로 학습하는 데 강점을 보인다.
    • 한계: 그러나 확산-기반 모델은 신원 보존(identity preservation)에 상당한 어려움을 겪는다. 입력 이미지 속 인물의 신원을 유지하거나, 아바타를 애니메이션하는 동안 신원 일관성을 유지하는 데 문제가 발생하여 개인화 능력이 제한적이다. 이는 신원 표현이 포즈로부터 완전히 분리되지 않아 포즈에 따라 신원이 변형되는 pose-dependent identity variation이 발생하기 때문이다.
  • 단일 이미지에서 3D 인체 재구성 (3D human recovery from a single image)

    • 목표: 단일 이미지에서 3D 인체 자세, 모양, 또는 완전한 3D 형상을 복원하는 것을 목표로 한다.
    • 자세/모양 추정: 3D 관절 각도와 3D 인체 모델의 파라미터(예: SMPL)를 회귀하는 방법들은 애니메이션이 가능하지만, 단순화된 알몸 형상에 의존하여 고품질의 디테일(예: 옷의 질감)이 부족하다.
    • 형상 재구성: 포즈를 취한 3D 인체 형상과 질감까지 복원하는 방법들도 있지만, 이렇게 재구성된 3D 스캔은 본질적으로 애니메이션하기 어렵다는 한계가 있다.

PERSONA의 위치:

PERSONA는 3D-기반 방법의 신원 보존 능력과 확산-기반 방법의 포즈에 따른 변형 모델링 능력이라는 두 가지 장점을 결합하여 단일 이미지로부터 개인화된 3D 휴먼 아바타를 생성한다. 즉, 확산 모델이 생성한 포즈가 풍부한 비디오를 훈련 데이터로 활용하여 3D 아바타를 최적화함으로써, 기존 방법들의 단점을 보완하고 개인별 대규모 데이터 캡처의 필요성을 없앤다.

3. Pipeline of PERSONA

파이프라인 동작 과정

  • Representation (표현 방식)

    • 하이브리드 모델: PERSONA는 SMPL-X 파라메트릭 모델과 3D Gaussian Splatting (3DGS)을 결합한다.
      • SMPL-X는 전신(whole-body) 애니메이션을 가능하게 하며, 얼굴 표현 및 손 포즈까지 지원하는 인체 모델이다.
      • 3DGS는 텍스처(texture) 및 지오메트리(geometry) 모델링과 실시간 렌더링을 담당한다.
    • 구현 상세: 📄 ExAvatar의 접근 방식을 따라 표면 메시와 3D 가우시안의 하이브리드 표현을 채택한다.
      • SMPL-X 템플릿 메시의 각 정점(vertex)은 하나의 3D 가우시안으로 모델링된다.
      • 이 가우시안들은 SMPL-X의 삼각형 토폴로지(triangle topology)로부터 연결성(connectivity)을 상속받는다.
      • 새로운 시점(novel views)에 대한 일반화(generalization)를 향상시키기 위해, 불투명도(opacity)가 1로 고정된 등방성(isotropic) 가우시안을 사용한다. 이는 가우시안의 모양이 모든 방향에서 동일하다는 것을 의미한다.
  • Architecture (아키텍처)

    • 포즈 기반 변형 모델링: PERSONA는 최적화 가능한 가우시안 특징(즉, 평균(means), 스케일(scales), RGB 색상)과 함께 '평균 오프셋(mean offsets)'을 도입하여 포즈 기반 변형을 모델링한다.
      • 이 오프셋은 다층 퍼셉트론(Multi-Layer Perceptrons, MLPs)에 의해 예측된다.
      • MLPs는 정규 공간(canonical space)에 있는 각 가우시안 포인트의 triplane 특징과 3D 포즈를 입력으로 받는다.
      • 일반화 성능을 높이기 위해, MLPs는 SCANimate에서와 같이 4-ring 인접 조인트(neighboring joints)의 3D 포즈만 활용하고, 비인접 조인트의 포즈는 0으로 설정한다.
      • 최종 평균 오프셋은 SMPL-X의 얼굴 표정(facial expression)에 따라 달라지는 정점 오프셋과 결합되어 정규 공간의 가우시안 평균에 적용된다.
  • Animation and Rendering (애니메이션 및 렌더링)

    • 정규 공간 구축 및 애니메이션: 3D 휴먼 아바타는 정규 공간에서 구축되며, SMPL-X 3D 포즈(θ\theta) 및 얼굴 표정 파라미터(ψ\psi)를 사용하여 애니메이션된다.
    • 스키닝 가중치: 각 바디 가우시안에는 가장 가까운 16개 SMPL-X 템플릿 정점의 평균 스키닝 가중치(skinning weight)가 할당된다. 손과 얼굴 부분에는 원래 SMPL-X 가중치가 유지된다.
    • 변형 및 렌더링: 3D 가우시안은 선형 블렌드 스키닝(Linear Blend Skinning, LBS)을 사용하여 애니메이션되며, 최종 렌더링은 Mip-Splatting으로 수행되어 고품질의 결과물을 얻는다.

용어 부연설명

1. "가우시안들이 SMPL-X의 삼각형 토폴로지(triangle topology)로부터 연결성(connectivity)을 상속"

이 문장은 PERSONA가 3D 아바타를 표현하는 방식의 근간을 설명한다.

  • 배경: 3D Gaussian Splatting (3DGS)의 기본 단위

    • 3DGS는 장면을 3D 가우시안(Gaussian)들의 집합으로 표현한다. 각 가우시안은 3D 공간 상의 위치(평균), 크기/방향(공분산), 색상(RGB) 및 불투명도(opacity)를 가진다.
    • 일반적인 3DGS는 이러한 가우시안들이 독립적으로 존재하며, 공간에 무작위로 분포되어 최적화 과정을 통해 장면을 재구성한다. 즉, 특정 메쉬(mesh) 구조에 얽매이지 않는다.
  • SMPL-X 모델과의 결합: 하이브리드 표현

    • PERSONA는 순수한 3DGS 방식 대신, SMPL-X라는 파라메트릭 인체 모델을 활용하여 아바타의 구조적 기반을 제공한다.
    • SMPL-X 모델은 인체의 몸통, 손, 얼굴을 표현하는 약 10,000개의 정점(vertices)과 이 정점들을 잇는 삼각형 면(faces)들로 구성된 메쉬이다. 이 삼각형들의 연결 관계를 삼각형 토폴로지(triangle topology)라고 한다.
    • "가우시안들이 SMPL-X의 삼각형 토폴로지로부터 연결성을 상속받는다"는 의미는 다음과 같다.
      • 정점-가우시안 매핑: SMPL-X 메쉬의 각 정점(vertex)이 하나의 3D 가우시안에 대응된다. 즉, 메쉬의 모든 정점이 곧 3D 가우시안의 위치(평균)가 된다.
      • 구조적 일관성: 이 가우시안들은 단순히 공간에 흩어져 있는 것이 아니라, SMPL-X 메쉬의 원래 구조를 따른다. 메쉬가 팔, 다리, 몸통 등 특정 부위를 구성하듯이, 이 가우시안들도 그 부위별로 연결되어 있는 것처럼 동작한다.
      • 변형 제어: SMPL-X가 포즈에 따라 정점의 위치를 변형시키면, 이에 대응하는 가우시안들도 함께 변형된다. 즉, SMPL-X의 움직임이 가우시안들의 움직임을 구조적으로 제어하는 것이다.
      • 장점: 이렇게 메쉬 토폴로지에서 연결성을 상속받으면, 인체의 구조적 특징(예: 팔은 팔과 연결되고, 다리는 다리와 연결되는 등)을 잃지 않고 3D 가우시안을 애니메이션하고 변형시킬 수 있다. 이는 아바타의 물리적으로 그럴듯한(plausible) 움직임과 형태를 유지하는 데 매우 중요하다. 순수 3DGS만으로는 복잡한 인체 구조의 연결성을 학습하기 매우 어렵다.

2. "정규 공간(canonical space)"

정규 공간(Canonical Space) 또는 템플릿 공간(Template Space)은 3D 인체 모델링 및 애니메이션 분야에서 매우 중요한 개념이다.

  • 정의:

    • 정규 공간은 3D 모델(여기서는 인체 아바타)이 특정 기준 포즈(reference pose), 예를 들어 T-포즈(T-pose)나 A-포즈(A-pose)와 같은 고정된 자세로 존재하는 가상의 3D 공간을 의미한다.
    • 이 공간에서 아바타의 모양(shape), 텍스처(texture), 기본적인 지오메트리(geometry)가 정의된다.
  • 활용 목적:

    • 포즈/변형 분리(Pose/Deformation Disentanglement): 인체를 다른 포즈로 애니메이션할 때, 모델의 모양 자체가 아닌 '어떤 포즈를 취할 것인가'와 '그 포즈에 따라 옷이 어떻게 변형될 것인가'를 분리하여 처리할 수 있다. 정규 공간에서는 기본 모양만 유지하고, 실제 애니메이션 시에는 이 기본 모양에 포즈 변환을 적용하여 움직임을 생성한다.
    • 학습 효율성: 다양한 포즈의 데이터를 학습할 때, 매번 다른 포즈의 모델을 학습하는 대신, 모든 포즈를 정규 공간으로 역변환(inverse deformation)하여 고정된 기준 포즈의 모델을 학습할 수 있다. 이렇게 하면 모델이 포즈와 독립적인 특성(예: 개인의 신체 비율, 옷의 기본 형태)을 더 효율적으로 학습할 수 있다.
    • 일관성 유지: 텍스처나 세부 지오메트리를 정규 공간에 고정함으로써, 아바타가 어떤 포즈를 취하더라도 해당 개인의 고유한 신원(identity)과 의상의 기본 형태가 일관성 있게 유지될 수 있다.
  • PERSONA에서의 역할:

    • PERSONA는 3D 아바타를 정규 공간에서 구축하고, 이 정규 공간의 아바타에 SMPL-X 포즈(θ\theta) 및 얼굴 표현 파라미터(ψ\psi)를 적용하여 실제 움직이는 아바타를 생성한다.
    • 특히, "평균 오프셋이 정규 공간의 가우시안 평균에 적용된다"는 것은, 포즈 기반 변형(예: 옷 주름)이 정규 공간에서 기본 형태에 더해져 '포즈에 따라 달라지는 변형'을 모델링한 후, 최종적으로 포즈를 적용하여 렌더링된다는 것을 의미한다. 이는 복잡한 포즈-의상 상호작용을 체계적으로 처리하는 방식이다.

3. "4-ring 인접 조인트(neighboring joints)의 3D 포즈만 활용하고, 비인접 조인트의 포즈는 0으로 설정"

이것은 인체 모델의 변형을 지역적으로(locally) 제어하여 모델의 일반화 성능을 높이고 원치 않는 부작용을 줄이기 위한 전략이다.

  • 배경: 인체 모델의 조인트(Joints)

    • SMPL-X와 같은 파라메트릭 인체 모델은 어깨, 팔꿈치, 무릎 등 인체의 주요 관절(joints)을 통해 움직임을 정의한다. 각 조인트는 3D 공간에서 회전 정보를 가진다.
    • 옷의 변형이나 피부의 움직임은 주로 해당 부위와 가까운 조인트의 움직임에 의해 영향을 받는다. 예를 들어, 팔꿈치 조인트의 움직임은 팔꿈치 주변의 옷 주름에 큰 영향을 미치지만, 발목 조인트의 움직임은 팔꿈치 주름에 거의 영향을 미치지 않는다.
  • '4-ring 인접 조인트'의 의미:

    • '4-ring'은 특정 조인트로부터 연결 거리(connectivity distance)를 나타내는 개념이다.
    • 어떤 조인트 JJ가 있을 때, '1-ring'은 JJ에 직접적으로 연결된 조인트들을 의미한다. '2-ring'은 JJ에 직접 연결된 조인트에 다시 직접 연결된 조인트들을 의미하며, 이런 식으로 '4-ring'은 JJ로부터 4단계 이내의 연결 거리에 있는 모든 조인트들을 포괄한다.
    • 즉, 특정 몸의 부위(예: 팔꿈치)에서 일어나는 포즈 기반 변형(예: 옷 주름)을 예측할 때, 해당 부위와 지리적으로 가깝게 연결된 조인트들(어깨, 팔목 등)의 3D 포즈 정보만 사용하고, 멀리 떨어진 조인트들(발목, 목 등)의 포즈 정보는 사용하지 않겠다는 뜻이다.
  • 비인접 조인트의 포즈를 0으로 설정하는 이유:

    • 지역성(Locality) 강화: MLPs가 포즈 기반 변형을 예측할 때, 멀리 떨어진 조인트의 복잡한 포즈 정보까지 입력으로 받으면 모델이 불필요한 상관관계를 학습하여 일반화 성능이 저해될 수 있다. 인접 조인트의 포즈만 사용하면, 모델이 변화의 지역적 원인을 더 명확하게 파악할 수 있다.
    • 잡음 감소 및 강건성(Robustness) 향상: 관련 없는 조인트 정보를 입력으로 주면 노이즈가 될 수 있다. 이를 0으로 설정함으로써 모델의 입력 공간을 단순화하고, 특정 부위의 변형이 해당 부위의 움직임과 긴밀하게 연결되도록 강제한다. 이는 특히 학습 데이터가 충분하지 않거나 다양한 포즈를 일반화해야 할 때 모델의 강건성을 높이는 데 도움이 된다.
    • SCANimate의 영향: 이 아이디어는 유사한 문제를 다룬 SCANimate에서 차용한 것으로, "local pose conditioning reduces long-range spurious correlations and improves generalization to unseen poses"라는 원리에 기반한다.

4. "최종 평균 오프셋은 SMPL-X의 얼굴 표정(facial expression)에 따라 달라지는 정점 오프셋과 결합되어 정규 공간의 가우시안 평균에 적용"

이 문장은 PERSONA가 전신 아바타의 움직임과 변형을 어떻게 통합적으로 처리하는지 보여준다.

  • 세 가지 구성 요소의 결합:

    1. 3D 가우시안의 기본 위치 (정규 공간): 아바타가 T-포즈나 A-포즈와 같은 기준 포즈에서 가질 기본 3D 형태를 정의하는 각 가우시안의 평균 위치이다.
    2. 포즈 기반 변형을 위한 '평균 오프셋': MLPs가 예측하는 값으로, 주로 옷의 주름, 몸의 비강체 변형 등 포즈 변화에 따라 발생하는 국소적인 변형을 모델링한다. 이 오프셋은 위에서 설명한 대로 정규 공간에서 계산된다.
    3. SMPL-X의 '얼굴 표정-의존적 정점 오프셋': SMPL-X 모델은 인체의 몸통, 손, 얼굴을 모두 포함하며, 특히 얼굴 부분에는 특정 얼굴 표정(facial expression) 파라미터(ψ\psi)에 따라 정점의 위치가 달라지는 기능이 내장되어 있다. 이 오프셋은 얼굴 표정 변화에 의해 발생하는 정점의 미세한 움직임을 나타낸다.
  • 결합 과정 및 의미:

    • 통합적인 변형 모델링:
      • MLPs가 예측한 '포즈 기반 평균 오프셋'은 주로 옷의 변형과 같은 전신(whole-body)의 비강체 변형에 초점을 맞춘다.
      • SMPL-X의 '얼굴 표정-의존적 정점 오프셋'은 얼굴 영역에 특화된 변형을 담당한다.
      • 이 두 가지 오프셋이 결합되어 아바타의 모든 부분(몸통, 사지, 얼굴)에 대한 통합적인 변형을 생성한다.
    • 적용 위치: 이렇게 결합된 오프셋은 "정규 공간의 가우시안 평균(means)에 적용된다."
      • 이는 아바타가 기준 포즈(정규 공간)에 있을 때, 그 기본 형태에 포즈와 얼굴 표정에 따른 미세한 변형(오프셋)을 미리 적용한다는 뜻이다.
      • 예를 들어, 웃는 표정을 짓는 아바타라면, 그 표정에 해당하는 얼굴 정점 오프셋이 먼저 기본 가우시안 평균에 더해진다. 동시에, 팔을 올리는 포즈를 취한다면, 그 포즈에 따라 옷 주름이 생기는 등의 변형을 나타내는 MLPs 예측 오프셋이 가우시안 평균에 더해진다.
      • 이후, 이 변형된 정규 공간의 가우시안에 최종적으로 SMPL-X의 일반적인 선형 블렌드 스키닝(LBS) 애니메이션 변환이 적용되어, 원하는 3D 포즈로 움직이는 최종 아바타가 렌더링된다.
  • 결론: 이 결합 방식은 PERSONA가 단순한 포즈 애니메이션을 넘어, 옷의 동적인 변형과 미세한 얼굴 표정 변화까지 하나의 통합된 3D 가우시안 아바타 내에서 사실적으로 모델링할 수 있도록 한다. 이를 통해 훨씬 더 풍부하고 현실적인 아바타를 단일 이미지로부터 생성하는 것이 가능해진다.

5. "각 바디 가우시안에는 가장 가까운 16개 SMPL-X 템플릿 정점의 평균 스키닝 가중치(skinning weight)가 할당된다. 손과 얼굴 부분에는 원래 SMPL-X 가중치가 유지된다."

이 문장은 PERSONA가 3D 가우시안 아바타를 SMPL-X 모델의 골격(skeleton)에 따라 움직이게 하는 방식, 즉 '스키닝(skinning)' 기법을 설명한다.

  • 배경: 스키닝(Skinning)과 스키닝 가중치(Skinning Weights)

    • 스키닝: 3D 캐릭터 애니메이션에서, 캐릭터의 표면(메쉬)을 내부의 골격(본, bones)에 연결하여 골격이 움직일 때 표면이 자연스럽게 변형되도록 하는 기술이다.
    • 스키닝 가중치: 메쉬의 각 정점(vertex)은 하나 이상의 본에 의해 영향을 받는다. 특정 정점이 어떤 본에 얼마나 영향을 받는지를 수치로 나타낸 것이 스키닝 가중치이다. 예를 들어, 팔꿈치 정점은 위팔 본과 아래팔 본에 각각 0.5씩 가중치를 가질 수 있다. 모든 가중치의 합은 1이 된다.
  • PERSONA의 접근 방식:
    PERSONA는 SMPL-X 템플릿 정점을 3D 가우시안과 1:1로 매핑하여 아바타를 표현한다고 앞서 설명했다. 여기서 핵심은 이 가우시안들을 SMPL-X 골격에 따라 움직이게 하는 방법이다.

    1. 바디 가우시안에 대한 처리 (16개 SMPL-X 템플릿 정점의 평균 가중치 할당):

      • "각 바디 가우시안"은 몸통, 팔, 다리 등 인체의 주요 부위를 나타내는 가우시안을 의미한다.
      • 일반적인 SMPL-X 메쉬에는 각 정점마다 고유한 스키닝 가중치 세트가 미리 정의되어 있다. 이 가중치들은 해당 정점이 어떤 본의 움직임에 얼마나 반응할지를 결정한다.
      • PERSONA는 "가장 가까운 16개 SMPL-X 템플릿 정점의 평균 스키닝 가중치"를 사용한다고 한다. 이는 정확한 1:1 매핑 대신, 약간 더 부드럽고 일반화된 가중치를 사용하려는 시도로 볼 수 있다.
        • 왜 16개인가? 특정 가우시안 주변의 정보를 더 넓게 반영하여, 개별 정점의 가중치가 가질 수 있는 지역적인 이상치(outlier)나 노이즈를 완화하고, 전반적인 움직임을 부드럽게 만들려는 의도일 수 있다.
        • '평균' 스키닝 가중치: 이 16개의 정점들이 가진 스키닝 가중치를 평균하여 해당 가우시안에 할당한다. 이는 가우시안이 특정 본에 너무 강하게 구속되거나, 메쉬의 미세한 불규칙성 때문에 움직임이 부자연스러워지는 것을 방지한다. 즉, 보다 안정적이고 부드러운 전신 움직임을 유도하기 위함이다.
    2. 손과 얼굴 부분에 대한 처리 (원래 SMPL-X 가중치 유지):

      • "손과 얼굴 부분에는 원래 SMPL-X 가중치가 유지된다"는 것은 중요한 차별점이다.
      • 미세하고 복잡한 움직임: 손가락의 움직임이나 얼굴 표정은 매우 미세하고 복잡하며, 정확한 스키닝 가중치가 필수적이다. 손가락 하나하나의 움직임이나 눈썹의 미세한 변화가 아바타의 표현력에 큰 영향을 미친다.
      • '평균'의 단점: 만약 이 부분에도 16개 정점의 평균 가중치를 사용한다면, 섬세한 움직임이 뭉개지거나 표현력을 잃을 가능성이 크다. 예를 들어, 손가락 하나의 움직임이 주변 손가락에 불필요하게 영향을 미 미쳐 어색한 변형을 초래할 수 있다.
      • 정확도 유지: 따라서 손과 얼굴 부분에서는 SMPL-X 모델에 내장된 원래의, 정교하게 설계된 스키닝 가중치를 그대로 사용하여, 해당 부위의 복잡하고 세밀한 움직임과 표정을 최대한 정확하게 표현하고자 하는 것이다.
  • 요약: 이 스키닝 가중치 할당 전략은 바디 전체의 일반적이고 부드러운 움직임과 손 및 얼굴의 정교하고 섬세한 움직임을 모두 만족시키기 위한 일종의 하이브리드 전략이다.

6. "3D 가우시안은 선형 블렌드 스키닝(Linear Blend Skinning, LBS)을 사용하여 애니메이션되며, 최종 렌더링은 Mip-Splatting으로 수행되어 고품질의 결과물을 얻는다."

이 문장은 아바타가 움직이고 화면에 그려지는 핵심적인 기술적 과정을 요약하고 있다.

  • 선형 블렌드 스키닝(Linear Blend Skinning, LBS)을 사용한 애니메이션:

    • LBS란? LBS는 3D 컴퓨터 그래픽스에서 가장 널리 사용되는 스키닝 기법 중 하나이다. 캐릭터 메쉬의 각 정점 위치를 여러 본(뼈대)의 변환(회전 및 이동)에 따라 가중치(스키닝 가중치)를 사용하여 선형적으로 보간(interpolate)하여 계산한다.
    • LBS 과정:
      1. 본(Bone) 변환: SMPL-X 모델에서 지정된 포즈(θ\theta)에 따라 각 본이 회전하고 이동하는 변환 행렬(transformation matrix)이 계산된다.
      2. 정점 변환 (가우시안 변환): 각 3D 가우시안(여기서는 SMPL-X 정점에 대응되는)의 정규 공간에서의 초기 위치(pcanonicalp_{canonical})는, 해당 가우시안에 할당된 스키닝 가중치(wiw_i)와 각 본의 변환 행렬(TiT_i)을 사용하여 다음과 같이 계산된다.
        • pposed=iwi(Tipcanonical)p_{posed} = \sum_{i} w_i \cdot (T_i \cdot p_{canonical})
        • 여기서 TiT_iii번째 본의 변환 행렬이고, wiw_i는 해당 가우시안이 ii번째 본에 대해 가지는 스키닝 가중치이다. 이 가중치의 합은 1이다 (wi=1\sum w_i = 1).
      3. 결과: 이 과정을 통해 정규 공간에 있던 3D 가우시안들이 새로운 포즈에 맞게 3D 공간에서 이동하고 회전하게 된다. 앞서 설명한 '평균 오프셋' 등은 이 LBS가 적용되기 전에 정규 공간의 pcanonicalp_{canonical}에 이미 반영되어 미세한 변형을 추가한 상태이다.
    • LBS의 장단점:
      • 장점: 구현이 비교적 간단하고 계산 효율이 뛰어나 실시간 애니메이션에 적합하다.
      • 단점: 관절이 크게 꺾이는 부분(예: 팔꿈치 안쪽)에서 '볼륨 손실(volume loss)' 또는 '캔디 래퍼(candy wrapper) 효과'라고 불리는 부자연스러운 찌그러짐이 발생할 수 있다. 하지만 3DGS는 기본적으로 볼류메트릭(volumetric)한 표현이므로 메쉬 기반 LBS보다는 이 문제가 덜 부각될 수 있다.
  • Mip-Splatting을 사용한 최종 렌더링:

    • 렌더링이란? 3D 공간에 존재하는 모델(여기서는 애니메이션된 3D 가우시안)을 2D 이미지로 변환하여 화면에 그리는 과정이다.
    • Mip-Splatting이란? Mip-Splatting은 3DGS의 렌더링 품질과 효율성을 향상시키기 위해 제안된 기술이다.
      • 안티-에일리어싱(Anti-Aliasing): 일반적인 3DGS는 카메라 거리가 변하거나(확대/축소) 특정 각도에서 볼 때 계단 현상(aliasing artifacts)이나 블러리(blurry)한 현상이 발생할 수 있다. Mip-Splatting은 '3D 스무딩 필터(3D smoothing filter)'와 '2D Mip 필터'를 도입하여 이러한 에일리어싱 문제를 효과적으로 해결한다.
      • 고품질 렌더링: 특히, 멀리 있는 작은 가우시안이나 가까이 있는 큰 가우시안을 렌더링할 때 발생하는 시각적 아티팩트를 줄여 텍스처 선명도와 전반적인 시각적 품질을 크게 향상시킨다. "고품질의 결과물을 얻는다"는 것은 바로 이 Mip-Splatting의 안티-에일리어싱 및 디테일 보존 능력 덕분이다.
    • 작동 방식 (간략히):
      • 각 3D 가우시안의 크기/형태를 카메라와의 거리에 따라 적절히 조절하여 픽셀에 투영되는 크기를 최적화한다.
      • 이 과정에서 불필요한 고주파 정보를 제거하여 계단 현상을 방지하고, 동시에 너무 많이 블러링되지 않도록 세밀하게 조절한다.
  • 요약: PERSONA는 SMPL-X 골격에 할당된 LBS를 사용하여 3D 가우시안 아바타의 자세를 변경(애니메이션)하고, 이렇게 자세가 변경된 아바타를 Mip-Splatting이라는 고도화된 렌더링 기법을 통해 최종 2D 이미지로 구현함으로써, 역동적이면서도 시각적으로 뛰어난 아바타를 제공하는 것이다.

파이프라인 가시화

  • Triplane:
    • Triplane은 3D 공간을 효율적으로 표현하기 위한 feature 표현 방식이다. 3D 공간의 각 축(XY, YZ, ZX)에 정렬된 3개의 2D 평면에 feature들을 저장한다.
    • 3D 공간의 어떤 지점이든, 이 3개의 평면에서 feature를 보간하여 해당 지점의 3D feature를 얻을 수 있다. 이는 3D Gaussian Splatting (3DGS) 3D Gaussian Splatting에서 3D 형상 및 외형 정보를 저장하고 활용하는 데 사용될 수 있다.
  • Per-Gaussian feature:
    • Triplane에서 얻어진 3D feature는 아바타를 구성하는 각 3D Gaussian에 할당되는 특성(feature)을 의미한다. 이 feature는 각 Gaussian이 어떤 모습과 특성을 가질지 정의하는 데 기여한다.
  • MLPs (Multi-Layer Perceptrons):
    • MLP는 Per-Gaussian feature와 Driving signals(3D pose)을 입력받아 Mean offset을 출력하는 신경망이다.
    • 입력 1: Per-Gaussian feature: Triplane에서 추출된 각 Gaussian의 고유한 공간적, 외형적 특징이다.
    • 입력 2: 3D pose (θ\theta):
      • 이는 SMPL-X SMPL Expressive body capture와 같은 파라메트릭 인체 모델의 포즈 파라미터이다.
      • 아바타의 골격 구조(skeleton)의 움직임과 회전을 정의한다. 즉, 팔을 올리거나 다리를 구부리는 등의 기본적인 몸 동작을 제어하는 데 사용된다.
      • θ\theta는 일반적으로 3D 관절 회전(예: 축-각 또는 회전 행렬)의 집합으로 표현된다. SMPL-X 모델의 경우, 24개의 주요 관절 각각에 대한 3x3 회전 행렬 또는 3차원 축-각 벡터로 구성될 수 있다.
    • MLP는 이러한 Driving signals을 기반으로 아바타의 비강체 변형, 특히 옷 주름이나 움직임과 같은 포즈에 따른 변형을 예측하는 핵심 역할을 한다.
  • Mean offset:
    • MLP에서 출력되는 값으로, 각 3D Gaussian의 평균(mean, 즉 3D 위치)에 추가적으로 적용되는 오프셋(변위)이다.
    • 이 오프셋은 포즈나 표정에 따라 Gaussian의 위치를 미세하게 조정하여 옷 주름이나 몸의 미세한 변형과 같은 pose-driven deformations을 모델링한다. 즉, 포즈 변화에 따라 옷이 몸에서 떨어지거나 주름이 잡히는 등의 자연스러운 움직임을 표현한다.
  • RGB, Scale, Mean:
    • 아바타를 구성하는 각 3D Gaussian의 기본 속성이다.
    • RGB: Gaussian의 색상 정보를 나타낸다.
    • Scale: Gaussian의 크기와 형태(길이, 너비, 깊이)를 나타낸다. 이 논문에서는 선명한 렌더링을 위해 Scale offset을 사용하지 않고 Mean offset만 사용한다.
    • Mean: Gaussian의 3D 공간에서의 중심 위치를 나타낸다. 여기에 MLP에서 예측된 Mean offset이 더해져 포즈에 따른 변형이 반영된다.
  • Avatar in the canonical space:
    • SMPL-X 모델의 A-포즈와 같이 표준화된 자세(canonical pose)에 있는 아바타를 의미한다. 이 공간에서 아바타의 기본 형태, 외형, 그리고 변형 가능한 요소들이 정의된다.
  • LBS + 3DGS:
    • LBS (Linear Blend Skinning):
      • 골격(skeleton)의 움직임을 메쉬(mesh) 또는 Gaussian에 전달하여 아바타를 애니메이션화하는 표준 기술이다. 각 Gaussian은 주변 SMPL-X 정점의 스키닝 가중치를 상속받아 골격의 움직임에 따라 변형된다.
      • 이 과정에서 3D pose (θ\theta)와 Facial expr. (ψ\psi)가 아바타의 뼈대와 얼굴 표정을 움직이는 driving signals로 사용된다.
    • 3DGS (3D Gaussian Splatting) 3D Gaussian Splatting:
      • 장면을 수많은 3D Gaussian으로 표현하고 이를 렌더링하는 기술이다. 각 Gaussian은 3D 위치(mean), 크기(scale), 색상(RGB), 투명도(opacity) 등의 속성을 갖는다.
      • LBS를 통해 애니메이션된 Gaussian들이 3D 공간에 배치되면, 3DGS 렌더링 파이프라인을 통해 최종 이미지로 변환된다. 이는 실시간으로 고품질의 렌더링을 가능하게 한다.
  • Animated avatar with driving signals:
    • Driving signals(3D pose θ\theta 및 Facial expr. ψ\psi)에 따라 애니메이션되고 렌더링된 최종 아바타의 모습이다. Mean offset 덕분에 포즈에 따른 옷의 비강체 변형까지 자연스럽게 표현된다.

4. Generating training videos from an image

  • 배경 및 필요성:

    • 단일 이미지는 특정 포즈와 외형만을 담고 있어, 아바타가 다양한 포즈에서 자연스러운 비강체 변형(non-rigid deformation, 예를 들어 옷 주름 변화)을 표현하기 위한 충분한 정보를 제공하지 못한다.
    • 이러한 한계를 극복하기 위해, PERSONA는 확산(diffusion) 기반 모델을 활용하여 입력 이미지에서 포즈가 풍부한(pose-rich) 학습 비디오를 생성한다. 이 비디오들은 옷이 다양한 포즈에서 어떻게 변형되는지에 대한 필수적인 정보를 제공한다.
  • 4.1. Pose-rich video generation (포즈가 풍부한 비디오 생성):

    • PERSONA는 MimicMotion과 같은 확산 기반 휴먼 애니메이션 방법을 사용하여 포즈가 풍부한 학습 비디오를 생성한다.
    • MimicMotion이 이 작업을 위해 다른 오픈 소스 확산 기반 방법들(Animate Anyone, StableAnimator)보다 우수하다고 판단하여 채택되었다.
    • 생성되는 비디오에는 춤 동작과 같은 격렬한 포즈부터 회전, 가벼운 펀치, 발차기 등 부드러운 포즈 변화까지 다양한 동작 유형이 포함되어, 아바타가 광범위한 움직임을 학습할 수 있도록 한다.
  • 4.2. Geometric ID-preserving video generation (기하학적 ID 보존 비디오 생성):

    1. 입력 이미지로부터 Identity-related SMPL-X Parameters 추출:

      • PERSONA의 첫 단계는 아바타를 만들고자 하는 대상 인물의 단일 입력 이미지에서 해당 인물의 고유한 기하학적 정체성을 나타내는 SMPL-X 파라미터(특히 shape 파라미터, β\beta)를 추출하는 것이다.
      • shape 파라미터는 인물의 고유한 체형(예: 키, 체중, 골격 구조)을 인코딩하며, 이는 비디오 내내 일관되게 유지되어야 할 핵심적인 정체성 정보이다.
      • (논문에는 이 과정이 명시적으로 상세화되어 있지 않지만, 일반적으로 단일 이미지 3D 인체 포즈 및 형상 추정 모델을 사용하여 SMPL-X 모델을 입력 이미지에 피팅하여 shape 파라미터를 얻는다.)
    2. 다양한 Target 3D Poses (Motion) 추출:

      • 다음으로, 아바타가 수행할 다양한 동작 시퀀스(target motions)를 정의한다. 이 동작들은 입력 이미지의 포즈와는 다른, 새로운 포즈들을 포함해야 한다.
      • 논문에서는 "ExAvatar fitting process를 사용하여 공개 비디오에서 미리 추출된" 다양한 3D 포즈들을 활용한다고 명시되어 있다.
      • ExAvatar의 역할: ExAvatar는 자체적으로 3D 아바타를 생성하는 방법이지만, 여기서는 그 중간 단계인 SMPL-X 모델을 비디오 데이터에 피팅하여 정확한 3D 포즈(관절 회전 파라미터 θ\theta)를 추출하는 능력을 활용하는 것이다.
      • 즉, 춤, 회전, 펀치, 발차기 등 다양한 공개 비디오들에서 ExAvatar를 통해 각 프레임에 대한 3D SMPL-X 포즈 시퀀스를 추출한다. 이 3D 포즈 시퀀스는 pose 파라미터(θ\theta)로 구성되며, 인물의 움직임을 정의한다.
    3. SMPL-X 모델 합성 및 2D Driving Pose Videos 생성:

      • 이제 1단계에서 얻은 입력 이미지 속 인물의 고유한 shape 파라미터(β\beta)와 2단계에서 얻은 다양한 pose 파라미터(θ\theta) 시퀀스를 조합하여 새로운 SMPL-X 모델을 생성한다.
      • 각 프레임에 대해: 입력 인물의 shape(β\beta)와 해당 프레임의 pose(θ\theta)를 가진 SMPL-X 메쉬를 구성한다.
      • 이 SMPL-X 메쉬의 3D 키포인트(joint locations)들을 2D 공간으로 투영(projection)한다. 이렇게 생성된 2D 키포인트 시퀀스가 바로 확산 기반 애니메이션 모델 MimicMotion의 입력으로 사용될 '드라이빙 포즈 비디오(driving pose videos)'이다.
      • 핵심: 이 '드라이빙 포즈 비디오'는 입력 인물의 고유한 체형을 반영하면서도, 다양한 외부 동작(target poses)을 따르도록 설계된 것이다. 기존 방법들이 단순히 2D 키포인트 정렬에 의존했던 것과 달리, 3D SMPL-X 모델을 통해 기하학적 정체성을 더 정확하게 보존한다.
    4. 확산 기반 애니메이션 모델(MimicMotion)을 통한 비디오 생성:

      • 3단계에서 생성된 '드라이빙 포즈 비디오'는 이제 조건 정보(conditioning signal)로서 확산 기반 애니메이션 모델인 MimicMotion에 입력된다.
      • 동시에, 원본 입력 이미지는 MimicMotion에 외형 참조(appearance reference)로 제공된다.
      • MimicMotion의 역할: MimicMotion은 "confidence-aware pose guidance"를 특징으로 하는 확산 모델로, 주어진 2D 포즈 시퀀스를 따르면서 참조 이미지의 외형을 유지하려 노력하며 비디오를 생성한다.
      • 결과: MimicMotion은 입력 인물의 체형(shape)을 기반으로 생성된 2D 드라이빙 포즈를 따르면서, 입력 이미지의 외형(texture, color)을 입혀 움직이는 고품질 비디오 프레임 시퀀스를 생성한다. 이 비디오에는 원본 인물의 기하학적 정체성과 외형이 보존되며, 옷의 비강체 변형까지도 학습할 수 있는 다양한 포즈가 담겨 있다.

5. Personalize with pose-driven deformations

5.1. Balanced sampling

1. 훈련 데이터 샘플링 예시

  • 기본 훈련 데이터: PERSONA는 단 한 장의 입력 이미지를 기반으로 개인화된 3D 아바타를 만든다. 하지만 다양한 포즈에서의 옷 변형(pose-driven deformation)을 학습하기 위해, 이 입력 이미지와 유사한 신원(identity)을 가진 인물이 다양한 포즈를 취하는 '가상 훈련 비디오'를 확산 모델(MimicMotion)로 생성한다. 즉, 훈련 데이터는 '원본 입력 이미지(Input Image)'와 '확산 모델이 생성한 여러 포즈의 비디오 프레임(Generated Video Frames)'으로 구성된다.

  • 샘플링 비율: 논문에서 1:1 ratio를 효과적인 비율로 언급하고 있다 (Supplementary Material Sec. S3, Fig. S8). 이는 훈련 반복(iteration)마다 입력 이미지 프레임 1개와 생성된 비디오 프레임 1개를 번갈아 가며 사용한다는 의미일 수 있다. 또는 훈련 데이터셋 전체에서 입력 이미지의 비율을 높여 전체 훈련 에폭(epoch) 동안 입력 이미지가 더 자주 등장하도록 할 수도 있다. 여기서는 전자의 직관적인 예시를 들어보자.

  • 훈련 과정의 흐름 (예시):

    1. 초기 아바타 생성: 먼저 입력 이미지(예: A-포즈를 취한 정국 사진)를 기반으로 초기 3D 아바타를 생성한다. 이 아바타는 SMPL-X 모델과 3D Gaussian Splatting을 결합한 형태이다.
    2. 훈련 반복(Training Iteration): 모델은 여러 훈련 반복을 거치며 아바타를 점진적으로 개선한다.
      • 1차 반복: '원본 입력 이미지'를 샘플링하여 훈련한다. PERSONA는 현재 아바타 모델(SMPL-X 기반)을 A-포즈에 맞게 변형시킨다. 그리고 이 포즈의 아바타를 렌더링한 결과와 원본 입력 이미지 간의 차이(이미지 손실, 기하학적 손실 등)를 계산하여, 아바타의 가우시안 파라미터(평균, 스케일, RGB 색상)와 MLPs 가중치를 업데이트한다. 입력 이미지의 얼굴 특징, 옷의 디테일, 전반적인 외형 등 '정국'이라는 인물의 고유한 신원을 아바타에 강력하게 주입하는 단계이다. 가장 정확한 신원 정보를 제공하는 유일한 실제 데이터이므로, 이 단계에서 높은 가중치를 받는다.
      • 2차 반복: 확산 모델이 생성한 비디오 프레임 중 하나(예: '정국'이 팔을 들어 올린 포즈의 가상 이미지)를 샘플링하여 훈련한다. 이 때 아바타 모델도 해당 '팔 들어 올린 포즈'에 맞게 변형시킨다. 그리고 렌더링 결과와 생성된 비디오 프레임 간의 차이를 계산하여 아바타를 업데이트한다. 이때, 논문에서 강조하는 geometry-weighted optimization이 적용되어 이미지 손실보다는 기하학적 손실(마스크, 깊이, 법선 맵 등)에 더 높은 가중치를 두어 훈련된다. 입력 이미지에서는 볼 수 없었던 새로운 포즈에서의 옷 주름, 늘어짐, 몸의 실루엣 변화 등을 학습하는 핵심 단계이다. 팔을 들어 올릴 때 겨드랑이가 드러나거나 옷이 당겨져 생기는 주름 등, '입력 이미지에서 안 보였던 부분'의 기하학적, 텍스처적 정보를 이 가상 프레임들을 통해 추론하고 학습한다.
      • 3차 반복: 다시 '원본 입력 이미지'를 샘플링하여 훈련한다. 아바타는 A-포즈로 돌아가고, 렌더링 결과가 원본 입력 이미지와 일치하도록 다시 최적화된다. 확산 모델이 생성한 비디오 프레임은 완벽하지 않으며, 신원 왜곡이나 텍스처 아티팩트를 포함할 수 있다. 이로 인해 아바타가 새로운 포즈를 학습하는 과정에서 '정국'의 고유한 신원이 희미해지거나 변형될 위험이 있다. 입력 이미지를 다시 샘플링함으로써, 훈련 과정에서 발생할 수 있는 이러한 신원 'drift' 현상을 상쇄하고, 아바타가 항상 '정국'의 모습을 유지하도록 강력하게 끌어당기는 역할을 한다.
      • 4차 반복: 확산 모델이 생성한 다른 비디오 프레임(예: '정국'이 허리를 숙인 포즈의 가상 이미지)을 샘플링하여 훈련한다.
      • ...반복: 이러한 과정을 계속 반복한다.
  • 'Balanced'의 의미: 논문에서는 'Oversamples the input image'라고 표현했는데, 이는 단순히 1:1 비율을 넘어서 입력 이미지를 더 자주 사용한다는 뉘앙스를 포함한다. 예를 들어, 훈련 데이터에 입력 이미지가 1장, 생성된 비디오 프레임이 100장이 있다면, 각 훈련 에폭에서 입력 이미지는 100번, 생성된 비디오 프레임은 각 1번씩 사용될 수도 있다. 혹은 매 N번째 반복마다 입력 이미지를 강제로 샘플링하는 방식으로 구현될 수도 있다. 핵심은 '원본 입력 이미지'가 '가상 생성 비디오 프레임'보다 훨씬 적음에도 불구하고, 신원 보존을 위해 훨씬 더 자주 사용되도록 가중치를 주거나 샘플링 전략을 조절한다는 것이다. 이렇게 함으로써, 생성된 비디오의 품질이 낮거나 신원 일관성이 떨어지는 문제(identity shifts)를 상쇄하고, 입력 이미지의 '진짜 신원'을 아바타에 강력하게 주입할 수 있다.

2. 솔기 경계(Seam Boundary) 감지 및 정규화 예시

  • 문제 상황 예시:

    • 당신이 '정국'의 사진 한 장을 PERSONA에 입력했다고 가정해보자. 이 사진에서 정국은 한쪽 팔을 몸에 붙이고 서 있고, 몸의 측면과 등 부분은 보이지 않는다.
    • PERSONA는 이 사진을 바탕으로 3D 아바타를 구축한다. 이때, 보이지 않는 등 부분의 텍스처나 기하학적 형태는 모델이 추론하거나 확산 모델이 생성한 비디오 프레임에서 가져와야 한다.
    • 만약 모델이 보이는 앞면과 추론된 뒷면 텍스처를 단순히 연결하면, 어깨나 겨드랑이, 허리선 등 몸통의 옆구리 부분에서 텍스처의 색상이나 패턴이 급격하게 바뀌거나, 옷의 주름이 갑자기 끊어지는 등 '솔기 아티팩트'가 발생할 수 있다. 특히 입력 이미지가 정적인 A-포즈이고 옷에 특정 주름이 있는 경우, 이 주름이 'baked-in' 되어 다른 포즈에서 부자연스럽게 나타날 수 있다.
  • 솔기 경계 감지 및 정규화 과정 예시:

    1. 위치 맵 렌더링: PERSONA는 아바타의 3D 가우시안들을 '표준 공간(canonical space)'(예: T-포즈)에 배치한다. 각 가우시안은 고유한 3D 좌표를 가진다.
      • 이 3D 좌표를 RGB 색상으로 인코딩하여(예: X좌표는 빨강, Y좌표는 초록, Z좌표는 파랑으로) '위치 맵'을 만든다.
      • 이 위치 맵을 '정국'의 실제 포즈(입력 이미지의 포즈나 확산 모델이 생성한 포즈)에 맞춰 렌더링한다. (Fig. 5 (c) 참조)
      • 예를 들어, 팔꿈치 부분의 가우시안들은 표준 공간에서는 서로 떨어져 있지만, 팔을 몸에 붙인 포즈에서는 화면상에서 가까워질 수 있다. 이 때 화면상에서 급격하게 이웃한 픽셀의 RGB 값이 달라지는 부분이 생길 수 있는데, 이것이 솔기 경계를 나타낼 가능성이 높다.
    2. Sobel 필터 적용: 렌더링된 위치 맵에 Sobel 필터(에지 검출 필터)를 적용하여 색상이 급격하게 변하는 영역을 찾아낸다. 이 영역이 바로 '솔기 경계(seam boundary)'이다. (Fig. 5 (d) 참조)
      • 예를 들어, 상의와 하의가 만나는 허리 부분, 팔과 몸통이 만나는 옆구리 부분, 그리고 몸의 앞면과 뒷면이 화면상에서 전환되는 부위 등이 솔기 경계로 감지될 수 있다.
    3. 정규화: 감지된 솔기 경계 영역에 대해서는 훈련 시 입력 이미지의 텍스처 정보를 직접적으로 사용하지 않고, 확산 모델이 생성한 비디오 프레임의 텍스처 정보만을 사용하여 정규화한다.
      • 확산 모델이 생성한 비디오는 다양한 포즈와 시점을 포함하고 있으므로, 이들 비디오는 입력 이미지에서 보이지 않던 영역이나 아티팩트가 적은 텍스처를 제공할 수 있다.
      • 이를 통해 입력 이미지에 고착될 수 있는 그림자나 특정 포즈의 주름과 같은 아티팩트가 솔기 경계를 따라 아바타의 표준 공간에 새겨지는 것을 방지한다. 즉, 특정 영역의 텍스처 학습을 '원본 이미지'보다는 '다양한 포즈의 생성 비디오'에 더 의존하게 만들어, 일반화된 텍스처를 학습하도록 유도한다.

3. 알베도 이미지(Albedo Image) 사용으로 그림자 아티팩트 방지 예시

  • 문제 상황 예시:

    • 다시 '정국'의 입력 사진을 생각해보자. 만약 정국이 햇빛이 강한 야외에서 사진을 찍어, 얼굴이나 옷에 강한 그림자가 드리워져 있다고 가정하자.
    • 만약 이 원본 이미지를 사용하여 아바타 텍스처를 직접 학습하면, 아바타의 텍스처 자체에 '그림자'가 마치 옷의 패턴인 것처럼 'baked-in' 될 수 있다.
    • 이렇게 그림자가 새겨진 아바타를 다른 조명 환경(예: 실내, 균일한 조명)에서 렌더링하거나, 아바타가 팔을 들어 그림자 위치가 바뀌는 포즈를 취하면, 옷에 이상한 검은 얼룩이 박혀있는 것처럼 보이거나, 그림자가 옷과 함께 움직이는 비현실적인 결과가 나타난다.
  • 알베도 이미지 사용 과정 예시:

    1. 알베도 이미지 확보: PERSONA는 입력 이미지와 대응하는 '알베도 이미지'를 추가적인 감독 신호로 활용한다. 알베도 이미지는 물체 고유의 색상만을 나타내며, 조명이나 그림자의 영향을 제거한 형태이다.

      • 이 논문에서는 'Intrinsic image decomposition via ordinal shading' 논문의 알베도 이미지를 사용한다고 명시되어 있다. 이 기술은 원본 이미지에서 조명, 반사, 알베도(고유 색상)를 분리하여 알베도 이미지를 추정하는 방법 중 하나이다.

      제안된 논문의 원본 이미지(좌)와 생성된 알베도 이미지(우)
    2. 감독 신호 활용: 훈련 과정에서 아바타의 텍스처(RGB 색상)를 최적화할 때, 원본 이미지의 RGB 값뿐만 아니라 추정된 '알베도 이미지'의 RGB 값과도 비교하여 손실(loss)을 계산한다.

      • 모델은 원본 이미지와의 유사성도 유지하면서, 알베도 이미지와의 유사성도 높이는 방향으로 텍스처를 학습하게 된다.
      • 예를 들어, 원본 이미지에서 그림자 때문에 어둡게 보이는 부분도 알베도 이미지에서는 밝은 고유 색상을 가지고 있으므로, 모델은 이 부분을 그림자가 아닌 밝은 고유 색상으로 학습하려는 경향을 보인다.
    3. 결과: 이렇게 학습된 아바타의 텍스처는 그림자의 영향을 최소화하여 '고유한 옷의 색상 및 패턴'을 반영하게 된다. 따라서 이 아바타를 다양한 포즈나 조명 환경에서 렌더링해도 그림자 아티팩트 없이 자연스러운 모습을 유지할 수 있다. 그림자는 아바타의 텍스처에 고착되는 것이 아니라, 렌더링 과정에서 새로운 조명 환경에 맞춰 동적으로 생성될 수 있게 되는 것이다.

5.2. Geometry-weighted optimization

  • 문제 제기:

    • PERSONA는 단일 이미지를 기반으로 개인화된 아바타를 생성하기 위해 확산 모델을 활용하여 다양한 포즈의 훈련 비디오를 생성한다.
    • 하지만 이러한 diffusion-generated videos는 종종 텍스처가 일관되지 않거나(inconsistent) 아티팩트(artifact-prone)를 포함하는 경우가 많다.
    • 이러한 품질이 낮은 생성 비디오 프레임에 아바타 최적화를 직접 수행하면 최종 렌더링 품질이 저하될 수 있다.
  • 해결책: 기하 가중치 최적화 (Geometry-weighted Optimization):

    • 이 방법은 MLPs (Multi-Layer Perceptrons)를 사용하여 포즈 기반 변형(pose-driven deformation)을 모델링할 때 이미지 손실에 낮은 가중치를 부여하고 기하 손실에 높은 가중치를 부여한다.
    • 이는 생성된 비디오 프레임의 일관성 없는 텍스처 아티팩트가 렌더링 품질 저하로 이어지는 것을 완화하는 것을 목표로 한다.
    • 핵심 원리: 기하학적 정보(예: binary masks, depth maps, normal maps, part segmentations)는 텍스처 품질의 변화에도 불구하고 비교적 안정적으로 유지된다. 따라서 이러한 기하학적 정보는 비강체 변형(non-rigid deformations)을 모델링하는 데 신뢰할 수 있는 제약 조건으로 활용될 수 있다.
    • 구현: SAM [23] 및 Sapiens [22]와 같은 도구를 사용하여 확산 모델이 생성한 비디오에서 binary masks, depth maps, normal maps, part segmentations를 추출하고, 이를 렌더링된 출력과 비교하여 L1 손실(L1 distance)을 최소화한다.
    • Mean Offsets의 중요성: 포즈 기반 변형을 모델링하기 위해 3D 가우시안(3D Gaussians)에 mean offsets만 적용한다. 이는 각 가우시안의 위치만 이동시키고 형태와 외형은 고정시켜, 텍스처가 블러링되지 않으면서 아바타가 변형되도록 한다. 스케일 오프셋(scale offsets)을 사용하면 가우시안이 성장하거나 축소되어 블러링이 발생할 수 있고, RGB 오프셋(RGB offsets)은 생성된 프레임의 신뢰할 수 없는 색상을 복사할 위험이 있어 피한다.

6. Optimization

  • 최적화 대상 파라미터: PERSONA는 사실적인 3D 아바타를 생성하고 애니메이션화하기 위해 다양한 파라미터를 최적화한다.

    • 3D Gaussian Features: 아바타의 기본 구성 요소인 3D 가우시안의 중심(means), 크기(scales), RGB 색상.
    • Triplane: 3D 공간의 특징을 효율적으로 인코딩하는 데 사용되는 Triplane 피처. 이는 가우시안 포인트의 특성을 결정하는 데 기여한다.
    • MLP Weights: 포즈 기반 변형(pose-driven deformations)을 모델링하기 위해 평균 오프셋(mean offsets)을 예측하는 Multi-Layer Perceptrons(MLP)의 가중치.
    • Per-frame SMPL-X parameters: 각 프레임에 대한 SMPL-X [40] 모델의 포즈(θ\theta) 및 얼굴 표정(ψ\psi) 파라미터. 이는 아바타의 전신 애니메이션을 가능하게 한다.
  • 손실 함수를 통한 감독(Supervision): 최적화는 다양한 손실 함수를 통해 이루어진다.

    • 이미지 재구성 손실(Image Reconstruction Loss): 렌더링된 아바타 이미지가 실제 학습 데이터(입력 이미지 또는 Diffusion 생성 비디오 프레임)와 얼마나 유사한지 측정한다.
      • L1 Loss: 픽셀별 절대 차이의 합계를 계산하여 이미지 유사성을 측정한다.
        • 수식: LL1=1Ni=1NPrendered,iPtarget,i\mathcal{L}_{\text{L1}} = \frac{1}{N} \sum_{i=1}^{N} |P_{\text{rendered},i} - P_{\text{target},i}|
        • 여기서 NN은 총 픽셀 수, Prendered,iP_{\text{rendered},i}는 렌더링된 이미지의 ii번째 픽셀 값, Ptarget,iP_{\text{target},i}는 목표 이미지의 ii번째 픽셀 값이다.
      • SSIM (Structural Similarity Index Measure): 이미지의 밝기, 대비, 구조를 고려하여 인간의 시각 시스템이 인지하는 유사성을 측정한다.
      • LPIPS (Learned Perceptual Image Patch Similarity): 사전 학습된 신경망을 사용하여 이미지의 지각적 유사성을 평가한다. 이는 단순한 픽셀 차이보다 인간의 인식에 더 잘 부합하는 유사성 척도를 제공한다. The unreasonable effectiveness of deep features as a perceptual metric
    • 기하학적 정규화(Geometry Regularizers): 아바타의 기하학적 특성을 안정화하고 실제와 유사하게 유지하기 위한 손실 함수이다.
      • Laplacian Regularization: Expressive whole-body 3D gaussian avatar에서 제시된 방식과 유사하게, 아바타의 메시(mesh) 또는 가우시안 분포의 기하학적 형태를 부드럽게 유지하여 불필요한 노이즈나 왜곡을 방지한다.
      • Geometry Loss (L1 distance): 렌더링된 기하학적 출력(이진 마스크, 깊이 맵, 노멀 맵, 파트 세그먼테이션)과 Diffusion 생성 비디오에서 추출된 목표 기하학적 맵 사이의 L1 거리를 최소화한다. 이는 "geometry-weighted optimization"의 핵심 요소로, 텍스처의 불일치에도 불구하고 기하학적 일관성을 유지하는 데 중점을 둔다.
    • 손 마스크 손실(Hand Mask Loss): Diffusion 생성 비디오가 종종 비현실적인 손 모양을 만들어내는 문제를 해결하기 위해 도입되었다.
      • 3DGS로 렌더링된 손 마스크와 표준 메시 렌더러를 사용하여 SMPL-X 메시(가우시안 포인트가 아닌)로 렌더링된 손 마스크 사이의 L1 거리를 최소화한다. 이는 아바타의 손 모양이 SMPL-X 손과 유사하도록 기하학적 신뢰성을 강화한다.

7. Experiments

  • 실험의 목적

    • PERSONA가 단일 이미지로부터 개인화된 3D 아바타를 생성하고, 복잡한 포즈-드리븐(pose-driven) 변형(예: 옷의 비강체 변형)을 얼마나 효과적으로 모델링하는지 입증하는 것이 목적이다.
    • 특히, balanced samplinggeometry-weighted optimization이라는 두 가지 핵심 기여가 아바타의 authenticity (원본 이미지와의 높은 일치성)와 sharp rendering (선명한 렌더링 품질)에 어떻게 기여하는지 분석한다.
  • 평가 프로토콜 및 데이터셋

    • 정량적 비교: [NeuMan [19]] 및 [X-Humans [52]] 데이터셋을 활용하여 기존 연구들의 평가 프로토콜을 따른다.
      • 렌더링 품질은 PSNR(Peak Signal-to-Noise Ratio), SSIM(Structural Similarity Index Measure), LPIPS [65] 지표로 측정된다.
    • 정성적 비교: "in-the-wild" 비디오(예: 강렬한 춤 동작)를 사용하여, 훈련 데이터와는 다른 다양한 포즈에서의 애니메이션 능력과 시각적 충실도를 평가한다. 이는 실제 환경에서의 적용 가능성을 보여준다.
  • 주요 실험 내용

    • (Ablation Studies:
      • Balanced Sampling의 중요성: 이 기법이 없으면 아바타가 입력 이미지의 신원을 잃고 렌더링이 흐려지는 현상(Fig. 7)을 보여주며, boundary detection이 신체 부위 간의 색상 유출 아티팩트를 방지하는 데 필수적임을 강조한다(Fig. 8).
      • Geometry-Weighted Optimization의 중요성: 이 최적화 방법이 없으면 확산 생성 비디오의 일관성 없는 텍스처로 인해 신원 변형 및 흐릿함이 발생함을 입증한다. 또한, 옷의 자연스러운 변형을 모델링하고(Fig. 6 (c) vs (b)), mean offsets만 사용하는 것이 scale offsets를 사용하는 것보다 선명한 렌더링에 유리함을 보인다(Fig. 6 (f), (g)).
    • 최신 기술과의 비교 (Comparisons to State-of-the-Art Methods):
      • 3D 기반 방법: [LHM [44]] 및 [AniGS [45]]와 같은 기존 3D 기반 방법들은 입력 이미지에 고정된 변형을 아바타에 내재화하여 새로운 포즈에서 "baked-in artifacts"를 유발하지만, PERSONA는 포즈-드리븐 변형을 명시적으로 모델링하여 이러한 문제를 완화한다(Fig. 9).
      • 확산 기반 방법: [Champ [69]], [MimicMotion [66]], [StableAnimator [58]]와 같은 확산 기반 방법들과 비교하여 PERSONA가 balanced sampling을 통해 얼굴 특징과 의상 패턴 등 신원을 더 잘 보존함을 보여준다(Fig. 10).
      • 정량적 결과는 PERSONA가 모든 단일 이미지 기반 방법론들을 능가하며, 포즈-드리븐 변형 모델링의 필요성과 효과를 입증한다(Tab. 2, 3).
profile
상어 인형을 좋아하는 사람

0개의 댓글