CS 공부/취업준비 이론정리

MobileFaceSwap (2022)

imsmile2000 2023. 11. 15. 23:37

대부분의 face swap 모델은 많은 파라미터와 계산 비용을 요구하기 때문에 real-time 어플리케이션에 적용하거나 edge device에 배포하기에는 매우 어렵다.

하지만 MobileFaceSwap은 동적 neural network 기술을 이용한 IDN을 제안한다. IDN은 한번 업데이트되면 어떠한 target 이미지와 비디오에도 적용하여 face swap을 수행할 수 있다.

IDN은 오직 0.5M 파라미터와 0.33G FLOPS만을 필요로하기 때문에 real-time 비디오에 적용할 수 있다.

 

직접 만들어본 추론 구조

 

생성 모델인 MobileFaceSwap의 추론 방식은 다음과 같다.

우선 대상이미지가 되는 source이미지와 표적이 되는 target 이미지를 사용자에게서 입력 받으면 InsightFace라는 landmark 모델을 거치게 된다.

랜드마크 모델을 거치게되면 face detection과 face alignment가 진행되어 다음과 같이 정렬된 이미지를 얻을 수 있다.

이렇게 정렬된 이미지는 ArcFace라는 얼굴 인식 알고리즘을 거쳐서 얼굴 이미지에서 특징을 추출한다.(Face Representation)

이후 UNet 기반의 face swap 모델을 거쳐서 output 이미지를 얻을 수 있다.

 

 

MobileFaceSwap의 네트워크 구조는Identity Injection Module (IIM)과 Identity-aware Dynamic Network(IDN), weakly semantic fusion 모듈을 포함한다.

 

ArcFace를 통해 source image의 identity representation이 주어지면, IIM은 IDN에 ID 정보를 주입하는 두 가지 동적 신경망 기술이 포함되어 있다. injection 프로세스가 끝나면, light weight IDN을 통해서 target image나 video의 face를 swap 할 수 있다.

IDN은 U-Net 구조에서 standard convolution을 depthwise, pointweise conv로 변환한 구조이다. 주어진 source image에 따라서 IDN의 파라미터를 수정하기 위해, depthwise, pointwise conv 각각을 위한 weights prediction, weights modulation을 제안한다.

 

 

 

참고 블로그

 

(MobileFaceSwap) A Lightweight Framework for Video Face Swapping

AI Paper Review

jihyeonryu.github.io