일상정보

얼굴 합성 Face Swap 사용법 설치 와 사용방법

소소한84 2023. 9. 7.

Faceswap은 광범위한 플랫폼에서 이용가능한 뛰어난 오픈 소스 Deepfakes 애플리케이션입니다. 이 프로그램은 Tensorflow, Keras, 그리고 Python 기반으로 개발되었습니다. 뿐만 아니라, Windows에서나 macOS, 또는 Linux 환경에서도 순조롭게 동작합니다.

 

 

Faceswap
Faceswap

 

Faceswap과 Anaconda(아나콘다) 설치 방법

파이썬 환경 구축: 아나콘다(Anaconda) 설치

Faceswap은 파이썬 환경에서 작동하므로, 먼저 파이썬을 시스템에 설정해야 합니다. 설치 과정 중에 발생할 수 있는 문제점을 줄이고, 다양한 라이브러리를 효율적으로 관리하기 위해 아나콘다를 활용하는 것이 좋습니다.

 

 

Free Download | Anaconda

Anaconda's open-source Distribution is the easiest way to perform Python/R data science and machine learning on a single machine.

www.anaconda.com

  • 설치 도중에는 'PATH' 옵션을 선택하여 경로 설정을 자동으로 진행하면 편리합니다.

Deepfake 툴: Faceswap 설치 과정

Faceswap 공식 다운로드 페이지: https://faceswap.dev/download/

 

Download - Faceswap

Windows users can get the latest Windows Installer from this link.Linux users can get the latest Install script from this link. To install on any other platform, please download our git repository from Github If you’re comfortable with using the command

faceswap.dev

  • 설치시, Windows 운영체제를 위한 실행파일(.exe) 선택을 권장합니다. 이 방법은 설치 과정의 복잡성을 줄여줍니다.
  • 만약 GPU(외장 그래픽 카드)가 컴퓨터에 장착되어 있다면, 해당 그래픽 카드 옵션을 선택하십시오. 반대로 GPU가 없는 경우에는 "Setup for CPU" 옵션을 선택합니다. Faceswap은 계산량이 많아, GPU를 사용하면 처리 시간을 크게 단축시킬 수 있습니다.
  • 기본적으로 Faceswap은 C:\Users\사용자\faceswap 경로에 설치됩니다. 이 경로에서 커맨드 창이나 터미널을 열고 python faceswap.py gui 명령어를 입력하여 Faceswap을 실행하거나, 바탕화면에 생성되는 바로가기 아이콘을 클릭하여 프로그램을 시작할 수 있습니다.

Faceswap 실행 오류 대처 방안

plaidml 라이브러리 설치와 설정

Faceswap 실행 중 문제가 발생할 경우, 가장 먼저 진행해야 할 절차는 'plaidml'라는 라이브러리를 설치하는 것입니다. 이 라이브러리는 딥러닝 연산을 위해 GPU를 효율적으로 활용하는 프레임워크를 제공합니다.

  • 특정 버전에 대한 호환성 문제로 인해 pip install plaidml==0.6.4 명령어를 사용하여 0.6.4 버전을 설치하는 것이 바람직합니다.
  • 설치가 끝난 후, plaidml-setup 명령어로 해당 라이브러리의 설정을 완료합니다.
  1. 'Enable experimental device support? (y,n)[n]'에서 'y'를 선택합니다.
  2. 'Default device? (1,2,3,4)[1]'에서 자신의 GPU 번호를 선택합니다.
  3. 'Save settings to C:Users\사용자.plaidml? (y,n)[y]'에서 'y'를 선택하여 설정을 저장합니다.
  4. 마지막으로 setx KERAS_BACKEND plaidml.keras.backend 명령어를 입력하여 설정을 마무리합니다.

필요한 라이브러리 추가 설치

Faceswap을 원활하게 사용하기 위해 추가적인 라이브러리 설치가 필요할 수 있습니다. 이때, C:\Users\사용자\faceswap 경로 내에 위치한 다음의 파일들을 참조하면 됩니다:

  • _requirements_base.txt
  • requirements_amd.txt
  • requirements_cpu.txt
  • requirements_nvidia.txt

컴퓨터의 GPU 유형에 따라 적절한 파일을 선택하고, 예를 들어 pip install -r requirements_amd.txt와 같은 명령어를 사용하여 한번에 필요한 라이브러리들을 설치할 수 있습니다.

Faceswap 사용 방법: 딥페이크 만들기

1. 기본적인 단계

Faceswap을 이용한 딥페이크 생성에는 세 가지 주요 단계가 있습니다.

  • 추출(Extract)
  • 학습(Train)
  • 변환(Convert)

2. 추출 과정 (Extract)

이 단계에서는 동영상에서 얼굴을 추출합니다. 두 개의 동영상을 준비해야 합니다: 하나는 원본("1번"), 다른 하나는 대상("2번") 동영상입니다. 이후에 원본 동영상의 얼굴을 대상 동영상에 적용할 것입니다.

  • Data 설정
    • Input Dir: 얼굴을 추출할 동영상을 선택합니다.
    • Output Dir: 추출된 얼굴 사진을 저장할 폴더를 지정합니다.
    • Alignments: 이 부분은 비워둡니다.
  • Plugins 설정
    • Cv2-Dnn 옵션을 선택합니다.

원본과 대상 동영상 모두에서 위의 과정을 거칩니다. 그러나 결과물은 서로 다른 폴더에 저장해야 합니다. 추출된 이미지 중 얼굴이 아닌 사진은 제거해야 합니다.

한글 파일 경로나 이름은 실행 오류를 유발할 수 있으므로, 모든 한글 이름/경로는 영어나 숫자로 변경하는 것이 좋습니다.

3. 학습 과정 (Train)

학습 전, 일부 설정이 필요합니다.

  • Settings
    • Coverage: 학습에 사용될 얼굴의 범위를 지정합니다. 자연스러운 결과를 위해 87.5로 설정하고 저장합니다.
  • Faces 설정
    • Input A: 원본 동영상에서 추출된 얼굴 이미지를 선택합니다.
    • Alignments A: 원본 동영상의 Alignments 파일을 선택합니다.
    • Input B: 대상 동영상에서 추출된 얼굴 이미지를 선택합니다.
    • Alignments B: 대상 동영상의 Alignments 파일을 선택합니다.
  • Model 설정
    • Model Dir: 학습 결과를 저장할 폴더를 선택합니다.
    • Trainer: 기본 설정으로 "Original" 옵션을 사용합니다.

학습은 시간이 많이 소요됩니다. 중간에 학습을 멈추더라도, 이후에 계속 학습할 수 있습니다.

4. 변환 과정 (Convert)

학습된 모델을 사용하여 원본 얼굴을 대상 동영상에 적용합니다.

  • Data 설정
    • Input Dir: 대상 동영상을 선택합니다.
    • Output Dir: 완성된 동영상을 저장할 폴더를 지정합니다.
    • Alignments: 대상 동영상의 Alignments 파일을 선택합니다.
    • Model Dir: 학습 결과 폴더를 선택합니다.
  • Writer 설정
    • Ffmpeg 옵션을 선택합니다.

마지막으로, Swap Model 옵션을 체크하면 변환 과정이 완료됩니다.

 

이를 악의적인 목적으로 활용할 경우 법적 제재를 받을 수 있습니다.

댓글