2 minute read

Invariant Teacher and Equivariant Student for Unsupervised 3D Human Pose Estimation

Teacher : Regularization 을 담당하며 pose estimation 의 실현 가능성을 보장한다.

Student : GCN 기반이며 Flexibility를 가능하게 한다.

Unsupervised 가 가능하기 위해 두 아키텍쳐는 Cycle-consistency loss 를 기반으로 학습하게 된다.

Teacher Network의 경우 카메라의 view point 와 여러 pose(in pose-dictionary) 의 선형 결합으로 이루어져 있지만 이것만 가지고 모델링을 할 경우 decomposition ambiguity가 생길 수 있다.(분해 시의 모호성, 유효한 카메라와 포즈의 pair가 무수히 많기 때문)

이러한 이유 때문에 간단한 cycle consistency architecture 를 통해 invariant 한 3D rotation 특징을 학습할 수 있는 네트워크를 제한한다.

이 것의 의미는, 다양한 카메라 각도에서의 3D skeleton에서 추출된 2D skeleton 은 분해될 때 동일한 3D skeleton(고유한) 과 각기 다른 Camera point 로 분해되어야 한다는 것이다.

따라서 추정된 3D skeleton을 랜덤하게 rotate 시킨 후 reprojection 시켜 2D skeleton 을 계산하게 된다(in Teacher network). 이후 해당 네트워크에서 나온 2D skeleton 과 original 2D skeleton 간의 consistency loss를 구하게 된다.

Student network의 경우 graph structure의 skeleton 을 capturing 하여 input view 에 맞는 3D pose를 직접적으로 추정하게 된다.

Student network 는 teacher 에서 학습한 camera view, feature에 대한 정보를 받은 후 강한 제약이 없는 환경에서 보다 나은 추정 성능을 달성하게 한다.

Student network는 최종적으로 추정된 3D pose를 Input으로 받으며 해당 네트워크는 camera view 에 대해서도 적응을 해야하기 때문에 또 다른 cycle-consistency loss 를 갖는 아키텍쳐를 제안하여 rotation-equivariant 한 특성을 지니게 한다.

여기서 rotation-equivariant의 의미는 동일한 input view 가 들어왔을 때 해당 view 에 맞는 output 3D estimation 이 생겨나게 되는 것이다.

Teacher Symbol

  • $X = [x_1 , \dots, x_N] \in R^{2 \times N}$ : 2D pose matrix
  • $x_i \in \R^2 $ : i번째 body joint (pelvis, 골반 좌표가 origin 이다.)
  • $E(\cdot)$: pose estimator disigned corresponding 3D pose matrix
  • $\hat{Y} \in \R^{3 \times N}$ -> $\hat{Y} = E(X)$
  • camera model by assuming virtual camera with intrinsic matrix $I_3$ : world origin 을 중점으로 하고 skeleton 과 camera 까지의 거리를 3차원 공간에서 상수 t 단위로 고정
  • $P$ : perspective projection function: 3D pose 를 2D 로 사영
  • $R \in SO(3)$ : Camera matrix
  • $Y^t = \sum_{k=1}^K c_k B_k$
    • $B_k \in \R^{3\times N}$ : $B_k$는 k 번째 pose 의 값(in pose dictionary)
    • $c_k$ : k 번째 pose 의 coefficient
  • B works as trainable parameters shared across different inputs

  • Decomposition
    • Teacher Network 에서 생성 된 $\hat{Y}$ 에 대해서 3차원 random rotation 시킴
    • 이후 해당 $G^{-1}\hat{Y}$ 를 2D 공간에 사영
    • 해당 $X’$ 을 다시 Reconstruct
    • $\hat{Y}’$ 과의 consistency loss 계산

Teacher Network 에서 L2 Norm 을 구할 시에는 Camera Matrix 학습은 3차원 공간 투영 시 진행된다 . 이후에 consistency loss 를 구할 때 Cam matrix 의 학습이 이루어짐

Student Symbol

이러한 Teacher Network의 학습은 단순하게 여러 Pose dictionary에 대해 coeff 의 선형 결합을 추정하는 것에 그친다. 따라서 모델에게 좀 더 자율성을 주기 위해 Student Network를 추가하게 된다.

Teacher network의 경우 3D coordinates 를 추정하기 위해 단순하게 여러 pose atom에 대해 linear combination 을 계산하게 되지만 해당 과정은 강한 규제가 이루어지는 작업이다.

하지만 Student network 에서는 유연성을 강조하기 위해 3D coord 에서 2D 로 reprojection 되는 과정의 Loss를 zero 로 설정하였다.

Student network는 3차원 Coor 로 표현하기 위해 각 Joint 와 root joint 간의 depth 를 구하게 된다

  • $A$ : adjency matrix
  • $H \in \R ^{D \times N} , H’ \in \R ^{D’ \times N}$ : pysical adaptive graph convolution 을 거치기 전 후의 feature
    • pysical adaptive graph convolution: GCN 을 통해 신체 제약 조건을 feature 를 뽑는 데에 활용한다.
  • $M = {M_d \vert M_d \in \R ^{N\times N}, d = 1,2,\dots, D’}$ :기존 GCN 이 아닌, 훈련 가능한 edge weight matrix

Camera calibration

img