GAN으로 부터 학습된 latent semantics를 face editing에 활용해보겠다.
Latent semantics가 latent space상에서 어떻게 encode되어 있는지를 해석한다.
각기 다른 semantics를 disentangle하여 잘 control할 수 있도록 subspace projection 방법을 사용한다.
where X: image doman and S: Semantic score; with '' semantics
where with -dimensional latent space
Semantic score:
Semantics 의 경계를 잘 구분할 수 있는 을 잘 찾으면, 다른 attribute의 semantics는 변하지 않되, control 하고자 하는 attribute만 잘 edit할 수 있다.
semantic score 와 plane-sample() 사이의 거리의 관계: Linearly dependent
where : a scalar to measure how fast the semantic varies along with the change of distance; : boundary plane**의 normal vector
semantics score와 plane-sample() 사이의 거리의 관계는 Single semantic의 수식 유도와 같음
다만 위 글에서 말하는 것과 같이, 와 는 서로 orthogonal 해야 잘 disentangle되어 있다고 볼 수 있음.
단순함!
so,
edit할 때, 다른 semantics에 correlated 된 영향을 받지 않기 위해 을 Diagonal matrix로 만들어준다. (즉, 와 를 서로 orthogonalize 한다.)
위 그림과 같이 semantic 1에 대한 것만 Edit하고 semantic 2는 그대로 유지하고 싶다면, 와 orthogonal 하게 움직이면 되므로, projection vector를 구한다.
Multi-semantics에 대해 control을 하고싶을 때,
five indepenent linear SVMs on pose, smile, age, gender, eyeglasses
tbc...