DeepFaceLab — это опенсорсная система для создания дипфейков. Репозиторий проекта имеет 3 тысячи форков и 14 тысяч звезд на GitHub. Система рассчитана одновременно на пользователей без знаний о фреймворках глубокого обучения и на разработчиков, которые хотят усилить существующий пайплайн.
Разработчики отмечают, что предыдущие работы по замене лица на видеозаписи не публикуют весь код проекта. Это затрудняет попытки воспроизвести результаты моделей и использование моделей в своих проектах. Среди наиболее популярных из существующих моделей исследователи перечисляют Synthesising Obama, FSGAN и FaceShifter.
Из чего состоит библиотека Deepfacelab
Внутри DeepFaceLab использует облегченную версию Keras фреймворка, Leras. В качестве основных преимуществ Leras исследователи перечисляют:
- Простой и флексибильный процесс сбора модели, схожий с PyTorch, но без eager execution режима;
- Обучение моделей в Leras в среднем на 20% быстрее, чем в Keras;
- Возможность контролировать обработку тензоров на более низком уровне, чем это позволяет Keras
Пайплайн генерации дипфейка состоит из трех частей: извлечение, обучение и конвертация. На этапе извлечения входное изображение проходит через стадии распознавания, соотнесения и сегментации лица. Затем обучается нейросеть, которая вставляет лицо в обрезанное изображение без лица. На этапе конвертации система использует обученную модель для подмены лица и уточнения результатов модели.