Продолжаем знакомиться с технологиями ближайшего будущего. Из-за большой популярности и претензий модераторов 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 и через правый клик загружаем наши файлы.
P.S Учитывайте, что для качественной замены в подменяемом видео не должно быть более одного действующего лица. Для сложных сцен применяйте в видеоредакторах кадрирование или маску.
Я остановил свой выбор на фотографии молодой Саши Грей и небольшого публичного 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 и нажимаем скачать.
Результат
Если не работает
Скрипт всё ещё развивается и автор может изменять его компоненты и настройки. Если у вас что-то не работает, то, пожалуйста, воспользуйтесь старой версией. Найти её можно здесь.
P.S. Настройки и параметры запуска скрипта обновляются здесь.
По материалам iXBT.Live