MakeItTalk-Python deepfake image talk (1)

MakeItTalk는 얼굴이미지와 음성 이미지를 가지고 해당 음성을 읽어주는 동영상 얼굴을 만들어 내는 생성형 AI 기반의 코드입니다. 원래의 코드는 다음의 Github에서 다운로드 받아서 사용할 수 있습니다. 저의 경우는 Colab을 사용하여 실행하였습니다.

다음의 그림에서 설명하는 바와 같이 examples 디렉토리에 얼굴 이미지와 음성이미지를 업로드하고 코드를 실행하면 음성을 읽는 (립싱크) 얼굴 동영상을 생성할 수있습니다.

이코드의 내용은 제가 저술한 책위키에도  명시가 되어 있으나 그동안 라이브러리들이 업그레이드 되어 약간의 수정후에 제대로 실행할 수 있었습니다.  변경한 코드는 다음의 링크에서 접속할 수 있으며 다음의 동영상을 참고하면 도움을 받을 수 있습니다.

주석처리한 내용을 참고하면 변경 내용을 확인할 수 있습니다.  다음의 내용들이 원래의 코드에 변경 추가 된 부분입니다.

!pip install librosa==0.9.1 # 사이트에서 추천해서 버전을 맞추어 줌 https://github.com/yzhou359/MakeItTalk/issues/93
#버전 변화로 아랫줄의 face_alignment의 _3D 를 THREE_D 로 바꿈)
# au embedding
from thirdparty.resemblyer_util.speaker_emb import get_spk_emb
me, ae = get_spk_emb(‘examples/{}’.format(ain))
ifisinstance(me, complex): # Use `complex` for type checks
# Handle complex values as needed
au_emb.append(me.real)
else:
# Handle other types appropriately
au_emb.append(me)
# au_emb.append(me.reshape(-1))
이 방법은 다음과 같이 예전의 콘텐츠를 업데이트 하는데 유용하게 사용할 수 있습니다. 원래의 유튜브 동영상이 다음과 같았습니다.2012년에 제작한 영상입니다.

이 동영상에 추가 부분을 제작하여 OpenShot Video Editor로 추가하고 음성을 추출하여 MakeItTalk를 활용하여 얼굴 동영상을 만든 다음에 크로마키 효과를 추가하여 동영상에 삽입하여 다음과 같은 동영상을 얻을 수 있었습니다.

Leave a Reply

Your email address will not be published. Required fields are marked *