Продолжаем знакомиться с технологиями ближайшего будущего. Ранее мы уже рассмотрели применение технологии Deepfake (замены лица) с использование форка (копии) новейшего алгоритма нейронной сети Roop в любом видео. Однако из-за большой популярности и претензий модераторов Github автор был вынужден ограничить использование технологии при создание различных пикантных материалов. Да и, честно говоря, предыдущая инструкция была весьма ограничена по функционалу и удобству использованию, так как каждый раз требовала перезапуска при создании нового Deepfake. В этом же небольшом материале вы познакомитесь с новейшим алгоритмом без какой-либо цензуры и научитесь применять его вне зависимости от используемого оборудования или установленной ОС.
Для замены лица больше не требуется долгого обучения модели нейронной сети на примере сотен фотографий с различными вариациями мимики. Теперь для замены актёра в любом видео досточно единственной фотографии среднего качества и доступа к GPU Nvidia (Можно и на CPU, но будет заметно медленней). Для использования алгоритма воспользуемся сервисом Google Colab.
Google Colab — это бесплатный сервис, который позволяет удалённо запускать и использовать различные скрипты/приложения на серверах компании Google.
P. S. Бесплатный доступ к GPU в Google Colab ограничен 6-12 часами для одного сеанса, после чего потребуется 24-часовой перерыв. Или используйте другой аккаунт.
1. Открываем веб-сайт сервиса Gmail и регистрируем новый почтовый ящик. Он нам понадобится для халявного доступа к серверам Google и созданию личной страницы со скриптом.
2. Переходим в панель управления и копируем скрипт установки нейронной сети через через «Файл>Сохранить копию на диск». Если всё сработало успешно, то система автоматически перенаправит вас на новый веб-адрес панели управления. (Скрины в лучшем качестве здесь).
3. С помощью галочки запускаем первый скрипт и дожидаемся завершения установки нейронной сети.
Практически всегда при первой установки нейронной сети в середине выполнения кода появится надоедливая ошибка и кнопка Restart Runtime. Не беспокойтесь и просто перезапустите установочный скрипт с помощью галочки. Не нужно нажимать на кнопку Restart Runtime!
4. Выполним перенос библиотек, а также загрузим фото и видео для подмены лица. Нажимаем по папке слева внизу и в открывшемся интерфейсе находим папку под названием roop.
Щёлкаем по папкам roop>roop и мышкой из первой папки roop переносим во вторую папку roop следующие файлы: requirements.txt, run.py
Перезапускаем первый установочный скрипт, и если всё было сделано правильно, то ошибка ERROR: Could not open requirements file: [Errno 2] должна исчезнуть. Загружаем наши файлы в новую папку roop (третья). Учитывайте, что для качественной замены в подменяемом видео не должно быть более одного действующего лица. Для сложных сцен применяйте в видеоредакторе кадрирование или маску.
Я остановил свой выбор на фотографии молодой Саши Грей и небольшого публичного Coub c неизвестной мне актрисой.
5. После того как наши файлы будут загружены на серверы Google, (Для их отображения закройте и вновь откройте дерево файлов), необходимо их указать в параметрах обработки.
face.png — это стандартное имя файла картинки с лицом для замены. (Lico.png)
video3.mp4 —стандартное название файла видеозаписи в котором и будет происходить замена. (Zamena.mp4)
face_changed_video.mp4 — готовое видео с поддельным лицом. (Можно оставить по дефолту)
Дальше идут технические параметры определения количества кадров и принудительное задействование GPU. Их вам трогать не нужно. Пожалуйста, не используйте пробелы или название на русском в ваших исходных файлах.
Вписываем название файлов и запускаем скрипт.
Время обработки конечного видео будет зависить от качества и длины исходных файлов. Наберитесь терпения!
6. Когда появится надпись Status: swap successful, то ваше видео обработано и его можно скачать. Находим в колонке с лева face_changed_video.mp4 и нажимаем скачать. Убедитесь, что вашь браузер не блокирует скачивание с Google Colab.
Ну что же, как по мне, то получилось всё просто замечательно и не заняло слишком много времени. Пользуйтесь, пополняйте свои личные архивы ожившими мечтами и никогда не позволяйте компаниям диктовать вам свои условия. С вами был Павел.
Скрипт всё ещё развивается и автор может изменять его компоненты и настройки. Если у вас что-то не работает, то, пожалуйста, воспользуйтесь старой версией. Найти её можно здесь.
P.S. Настройки и параметры запуска скрипта обновляются здесь.