최근 딥페이크 프로그램 인 딥페이스랩 이 큰 화제가 되면서 많은 분들이 관심을 가지게 되었는데요
대표적으로 Deepfacelab인데요 현제 github에 공개된 오픈소스로 배치파일들을 차례대로 실행하시면 일반인 분들도 쉽게 딥페이크 영상을 만들어보실 수 있습니다
딥페이크 프로그램 얼굴 합성 영상
딥페이크 프로그램 Deepfacelab 다운로드
그래픽카드 종류에 따라서 다운로드 받아야 하는 프로그램 버전이 달라집니다
공식 사이트에서 보시면 지포스 그래픽카드를 정식 지원하고 있는 것을 알 수 있습니다(현재 업데이트는 NVIDIA만 이루어지고 있다)
▶ Deepfacelab 필요기능만 넣은 수정버전(지포스용) ◀
▶ Deepfacelab 공식 사이트에서 다운로드받기(지포스용) ◀
▶ Deepfacelab OpenCL 빌드 다운로드 (AMD용) ◀
딥페이크 영상 제작
공식 배치파일에는 소스영상과 목적영상 작업과정이 혼재되어 있어서 정돈을 해줬습니다
최종 딥페이크 작업에 필요한 영상은 소스영상(data_src)과 목적영상(data_dst) 2가지가 필요한데요
각 영상의 프레임을 추출해서 얼굴 부분만 따주는 작업을 하게 됩니다(소스영상, 목적영상 모두)
위에 나와 있는 배치 파일들을 순서대로 진행하면 됩니다 다만 이미 작업된 이미지 파일이 남아있는 경우 1번 clear workspace 배치파일을 실행해서 빠르게 삭제해줍니다
소스영상(data_src)과 목적영상(data_dst)
소스영상은 말그대로 얼굴이 입혀질 영상이고 목적영상은 원본 영상이 되겠죠 이 복적영상에 소스영상의 얼굴을 합성하게 되는 것입니다
소스영상에는 얼굴부분만 필요하기 때문에 얼굴부분이 가리거나 제대로 표현되지 않은 프레임들을 과감히 삭제해줍니다
목적영상 역시 마찬가지로 얼굴이 잘 드러나 있지 않거나 가려져 있는 부분들은 잘라주는것이 좋겠죠
만약 이상하게 표현되어 버리는 경우 나중에 따로 영상편집 프로그램 등으로 수정작업이 필요하게 될 수 있습니다
얼굴 추출 배치파일 (자동+수동)
기본적으로 Deepfacelab 프로그램에서 얼굴 추출을 자동추출과 수동추출로 나뉘어져 있습니다
목적영상은 manualfix가 적용되어 있지만 data_src에서 자동과 수동을 동시에 진행하도록 하기위해서 스크립트 수정을 해주었습니다(상단 deepfacelab 수정버전에 있음)
배치 파일의 편집으로 들어가주셔서 –manual-fix 를 추가해주시면 됩니다
만약 data_src extract whole_face S3FD + manualfix 을 수정한다고 하면
“%PYTHON_EXECUTABLE%” “%DFL_ROOT%\main.py” extract ^
–input-dir “%WORKSPACE%\data_src” ^
–output-dir “%WORKSPACE%\data_src\aligned” ^
–detector s3fd ^
–face-type whole_face ^
–manual-fix
가 되겠죠 꺽세표시 ^ 는 이어서 한다는 것이니 반드시 추가를 해주셔야 합니다
트레이닝 단계
딥페이스랩 10번 배치파일 트레이닝 단계를 실행하시면 소스영상얼굴과 목적영상 얼굴의 얼굴을 학습하는 딥러닝 과정이 이루어집니다
시간이 갈 수록 좀더 선명하면서 완성도 높은 얼굴 표정이 만들어 지게 되는데요
트레이닝 시간이 길면 길수록 이목구비가 선명해지고 세부적인 표현들이 살아납니다
딥페이스랩 트레이닝 시간은 딱 정해져 있는 것은 아니지만 대략 0.02 ~ 0.05 사이를 추천해드립니다
그전에도 완성도가 되신다면 더 돌릴 필요는 없구요 다만 트레이닝이 오버하게 되면 수치가 더 올라가는 현상이 생길 수 있으니 이점도 유의해주세요
영상함성 단계(merge 단축키)
트레이닝을 완료 하셨다면 합성 과정입니다 트레이닝을 quick96으로 진행했다면 merge도 quick96으로 해주시면 됩니다
위와 같은 화면이 나오는데요 Tap 키를 눌러서 영상 화면으로 전환이 가능합니다
키보드 숫자 1 ~ 5까지 필터를 적용할 수 있습니다
가장 적합한 색상을 고르셔서 선택한다면 아래 w키와 S키, E키와 D 키 등 게이지를 조절하셔서 최적의 합성 값으로 맞춰줍니다
다음 프레임 이동: >
전 프레임 이동 : <
현재 적용된 필터값 모든 프레임에 한꺼번에 적용하기: Shift + /
처음 프레임으로 되돌아가기 : Shift + <
필터값 모두 저장하고 빠져나오기 : Shift + >
만약 얼굴이 너무 흐릿하거나 뚜렷하지 않고 뭉개지는 경우 트레이닝이 덜되었다는 표시이기 때문에 좀더 돌려주셔야 합니다
만약 얼굴형이 너무 크거나 너무 작은경우와 색상이 매치가 잘 되지 않는 경우 다른 영상 편집 프로그램으로 2차 편집을 해주셔야 합니다
에프터이팩트를 통한 보정
대표적인 영상편집 프로그램인 after effects를 활용해서 얼굴 보정을 할 수 있습니다
▶ Deepfacelab after effects 보정 템플릿 다운로드◀
딥페이스랩 에서 최종 결과물 result 최종 영상파일과 result_mask 파일이 같이 나오게 되는데요
위에서 받은 에프터이펙트 파일을 처음 실행하면 해당영상이 없어서 깨져 나오게 되실겁니다
위 그림에서 보시는것 처럼 result파일과 data_dst, result_mask 파일을 마우스 우클릭 하셔서 [푸티지 바꾸기] -> [파일] 을 눌러서 변경 해주시면 됩니다
얼굴 색상 조절
얼굴 컴포지션에 효과 컨트롤 lumetri 색상 효과로 가셔서 색조와 온도, 노출, 대비 등 적절한 값으로 조절해주시면 됩니다
얼굴형 조절
메쉬 비틀기 효과에서 얼굴 크기를 조절할 수 있습니다