제작한 가상 얼굴 활용해서 딥페이크 영상 만들어보기 with GAN Algo, 가상인플루언서의 장단점

🥕 Google Colab을 활용해서 가상 인플루언서 얼굴을 활용한 딥페이크 영상 만들어 보겠습니다!

2019년 11월에 NeuroIPS에서 발표된 First Order Motion Model for Image Animation 페이퍼에서 발표된 기술&코드를 포함

📌 코드

🌳 버전세팅 및 깃허브 코드 불러오기

!pip install scikit-video
!git clone https://github.com/drminix/first-order-model
%cd /content/first-order-model

🌳 인공지능 신경망 파일 가져오기

https://drive.google.com/drive/folders/1TIjufuJdPgkzvCQ3G1mICQZVCxWbCOFX?usp=sharing

from google.colab import drive
drive.mount('/content/gdrive')
target_folder = "/content/gdrive/My Drive/deepfake"

🌳 결과화면 보여주는 display 함수

def display(source, driving, generated=None):
     fig = plt.figure(figsize=(8 + 4 * (generated is not None), 6))

     ims = []
     for i in range(len(driving)):
         cols = [source]
         cols.append(driving[i])
         if generated is not None:
             cols.append(generated[i])
         im = plt.imshow(np.concatenate(cols, axis=1), animated=True)
         plt.axis('off')
         ims.append([im])

     ani = animation.ArtistAnimation(fig, ims, interval=50, repeat_delay=1000)
     plt.close()
     return ani

🌳 생성자 선언 및 사진/영상소스 설정하여 영상 제작

🌱 초기 세팅

import imageio
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
from skimage.transform import resize
from IPython.display import HTML
import warnings
import os
import skvideo.io
warnings.filterwarnings("ignore")
from demo import make_animation
from skimage import img_as_ubyte

#생성자 선언
from demo import load_checkpoints
import os
generator, kp_detector = load_checkpoints(config_path='config/vox-256.yaml', 
                            checkpoint_path=os.path.join(target_folder,'vox-cpk.pth.tar'))

🌱 사진/영상 소스설정 : 경로는 자신의 구글드라이브 경로로 설정

#얼굴 소스
source_image = imageio.imread('/content/gdrive/MyDrive/Colab Notebooks/deepfake_src/000.PNG')
source_image = resize(source_image, (256, 256))[..., :3]

#입력영상
# driving_video = skvideo.io.vread('/content/gdrive/MyDrive/Colab Notebooks/deepfake_src/data_dst_3.mp4')
driving_video = skvideo.io.vread('/content/gdrive/My Drive/deepfake/04.mp4')
# driving_video = skvideo.io.vread('/content/gdrive/MyDrive/Colab Notebooks/deepfake_src/video1.mp4')

driving_video = [resize(frame, (256, 256))[..., :3] for frame in driving_video]
predictions = make_animation(source_image, driving_video, generator, kp_detector, relative=True)

#save resulting video
imageio.mimsave('../generated.mp4', [img_as_ubyte(frame) for frame in predictions])
#video can be downloaded from /content folder

HTML(display(source_image, driving_video, predictions).to_html5_video())
# HTML(display( predictions).to_html5_video())

🌳 영상 결과

아래 사진 클릭하면 영상 나옵니다!

가상인풀루언서 딥페이크
가상인풀루언서 딥페이크

📌 License

  • 2019년 11월에 NeuroIPS에서 발표된 First Order Motion Model for Image Animation 페이퍼에서 발표된 기술&코드를 포함

✔ 깃허브! 아래 사진을 클릭하면 제작에 사용된 코드를 볼수 있음!

깃허브 가상인플루언서
깃허브 가상인플루언서


🌊가상인플루언서를 활용하는 것에는 몇 가지 단점이 존재할 수 있습니다!

  1. 사람 간 상호작용의 부재: 가상인플루언서는 컴퓨터 프로그램 또는 인공지능이므로, 실제 사람과의 상호작용이 부재합니다. 이로 인해 소비자들은 인플루언서와의 감정적 연결이 덜 형성되거나 신뢰도가 낮을 수 있다는 우려가 있습니다.
  2. 신뢰성과 진정성의 문제: 가상인플루언서가 인공적으로 생성된 캐릭터라는 점에서, 소비자들은 그들의 의견이나 추천이 실제로 정직하고 독립적인 것인지 의문을 가질 수 있습니다. 실제 인플루언서들은 경험과 감정을 기반으로 제품을 소개하는 반면, 가상인플루언서는 프로그래밍된 알고리즘에 따라 행동하기 때문에 진정성과 신뢰성의 문제가 있을 수 있습니다.
  3. 콘텐츠 제한성: 가상인플루언서는 프로그램에 의해 생성되므로, 콘텐츠 제한이 발생할 수 있습니다. 인플루언서의 창의성과 개인적인 시각이 없을 수 있으며, 이로 인해 일정한 패턴의 콘텐츠를 제공할 가능성이 있습니다.
  4. 불안정한 기술과 기술 오류: 가상인플루언서의 기술적인 면은 계속 발전하고 있지만, 아직은 완벽하지 않을 수 있습니다. 기술적인 오류나 장애가 발생할 경우, 가상인플루언서와의 상호작용이 중단될 수 있으며, 소비자들의 경험에 영향을 줄 수 있습니다.
  5. 응답 및 대응 한계: 가상인플루언서는 실시간으로 대화하거나 상호작용하는 것이 제한될 수 있습니다. 소비자의 질문에 실시간으로 대응할 수 없거나, 개별적인 요청에 대한 맞춤형 응답이 어려울 수 있습니다.

이러한 단점들은 기업이 가상인플루언서를 활용할 때 고려해야 할 요소들입니다.



답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다