1. FaceForensics++ Github에서 clone을 Colab에서 받아온다.
앞에 " ! " 를 붙이면, 명령어로 실행된다. git clone 명령어를 실행하여서 코드를 받아온다.
해당 코드는 연동 된 구글 드라이브로 들어가게 된다.
2. cd 명령어를 통해서 코드가 있는 곳으로 이동한다.
파일 경로는 사용자 마다 다르니, 각자 상황에 맞게 적용해야 한다.
3. 제공되는 requirements.txt를 사용하여, 필요 라이브러리를 설치한다
2021년 5월 8일 기준으로 FaceForensic++ 에서 제공하는 requirements.txt 를 그대로 사용하면 에러가 난다.
캡쳐는 하지 못했지만, 이미 지원이 끝난 버전들이 많아서 그렇다.
그런 경우에는 위 처럼 구글에 검색하여 최신 버전을 찾고, 그 최신 버전으로 바꿔주면 정상적으로 install이 진행된다.
4. 이미 학습 된 모델을 사용하여 테스트
README 파일을 참고하여 detect_from_video.py 를 실행시킨다.
해당 코드를 그대로 실행하면, 오류가 발생하는데 해결 방법에 대해 서술하겠다.
1. 모델 경로 수정
해당 github 에는, classfication / network / models.py 를 보면,
line 26을 보면 xception-b5690688.pth 의 경로가 지정되어 있는데, 학습된 모델 이름을 바꿔주고 경로 또한 본인의 환경에 맞게 재설정 해주면 정상적으로 작동한다.
본 포스팅은 학습은 아직 하지 않았고, Colab에서 작동시켜보는 것을 목표로 하기 때문에 이미 학습된 모델을 넣고 실행하였다.
학습된 모델 다운로드 링크 : http://data.lip6.fr/cadene/pretrainedmodels/xception-b5690688.pth
2. qt.qpa.xcb could not connect to display ERROR
해당 에러는, 코랩에서 cv2.imshow()를 지원하지 않기 때문에 발생하는 에러이다.
이를 해결하기 위해서는 "google.colab.patches import cv2_imshow " 를 임포트 하고, cv2.imshow를 cv2_imshow로 바꿔주면 해결된다.
5. 실행 결과
실행 할 때 -o 인자로 넘겨 주었던 폴더에 동영상이 생긴다. (위 포스팅 기준으로는 output 폴더)
학습된 모델로 테스트를 했을 때, deepFake 가 적용된 영상을 real로 판별 하는 것을 보니 정확도가 떨어져있는 모델인 것 같다.
추후 프로젝트를 진행하면서 정확도를 높여나갈 예정이다.
'colab' 카테고리의 다른 글
deepFake Detection - 02 (Google Colab 환경 설정) (0) | 2021.05.08 |
---|---|
deepFake Detection - 01(주제 선정 및 참고 자료) (0) | 2021.05.08 |