1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-dreamtalk

Клонировать/Скачать
README.md 10 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 03.06.2025 08:17 13ed11b

DreamTalk: Когда Генерация Выразительных Головных Аватаров
Встречается с Диффузионными Вероятностными Моделями

teaser

DreamTalk — это диффузионная платформа для генерации высококачественных выразительных головных аватаров, которая может создавать видео с головными аватарами по различным стилям речи. DreamTalk демонстрирует устойчивую производительность при работе с разнообразными входными данными, включая песни, речь на нескольких языках, шумовые аудиофайлы и портреты, выходящие за рамки домена.

Новости

  • [2023.12] Опубликован код для вывода и предобученные точки сохранения.

Установка

conda create -n dreamtalk python=3.7.0
conda activate dreamtalk
pip install -r requirements.txt
conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cudatoolkit=11.1 -c pytorch -c conda-forge
conda update ffmpeg

pip install urllib3==1.26.6
pip install transformers==4.28.1
pip install dlib
```## Загрузка точек сохранения
Учитывая социальное воздействие, мы прекратили публичный доступ к точкам сохранения. Если вы хотите получить точки сохранения, пожалуйста, запросите их, отправив письмо на mayf18@mails.tsinghua.edu.cn. Важно отметить, что отправка этого письма подразумевает ваше согласие на использование предоставленного метода **исключительно для академических исследовательских целей**.Установите загруженные точки сохранения в папку `checkpoints`.


## Вывод
Запустите скрипт:

python inference_for_demo_video.py
--wav_path data/audio/acknowledgement_english.m4a
--style_clip_path data/style_clip/3DMM/M030_front_neutral_level1_001.mat
--pose_path data/pose/RichardShelby_front_neutral_level1_001.mat
--image_path data/src_img/uncropped/male_face.png
--cfg_scale 1.0
--max_gen_len 30
--output_name acknowledgement_english@M030_front_neutral_level1_001@male_face


`wav_path` указывает на входной аудиофайл. Расширения файлов аудиофайлов, такие как wav, mp3, m4a и mp4 (видео с звуком), должны быть совместимы. `style_clip_path` указывает на стиль речи, а `pose_path` указывает на положение головы. Они являются последовательностями параметров 3DMM, извлеченных из ссылочных видео. Вы можете следовать [PIRenderer](https://github.com/RenYurui/PIRender) для извлечения параметров 3DMM из своих собственных видео. Обратите внимание, что частота кадров видео должна быть 25 FPS. Кроме того, видео, используемые для ссылки на положение головы, должны быть сначала обрезаны до размера 256×256 с помощью скриптов из [FOMM video preprocessing](https://github.com/AliaksandrSiarohin/video-preprocessing). `image_path` указывает на входное портретное изображение. Его разрешение должно быть больше 256×256. Фронтальные портреты, где лицо прямо смотрит вперед и не наклонено в сторону, обычно дают удовлетворительные результаты. Входное изображение будет обрезано до размера 256×256. Если ваше портретное изображение уже обрезано до размера 256×256 и вы хотите отключить обрезку, используйте опцию `--disable_img_crop` следующим образом:```
python inference_for_demo_video.py \
--wav_path data/audio/acknowledgement_chinese.m4a \
--style_clip_path data/style_clip/3DMM/M030_front_surprised_level3_001.mat \
--pose_path data/pose/RichardShelby_front_neutral_level1_001.mat \
--image_path data/src_img/cropped/zp1.png \
--disable_img_crop \
--cfg_scale 1.0 \
--max_gen_len 30 \
--output_name acknowledgement_chinese@M030_front_surprised_level3_001@zp1

cfg_scale контролирует масштаб управления без классификатора. Он может регулировать интенсивность стилей речи.

max_gen_len — это максимальная продолжительность генерации видео, измеряемая в секундах. Если входное аудио превышает эту длину, оно будет обрезано.

Сгенерированное видео будет названо $(output_name).mp4 и помещено в папку output_video. Промежуточные результаты, включая обрезанное изображение, будут находиться в папке tmp/$(output_name).

Примеры входных данных представлены в папке data. Из-за проблем с авторскими правами мы не можем включить песни, которые использовались в этой папке.

Если вы хотите запустить этот программный код на CPU, добавьте --device=cpu в аргументы командной строки. (Благодарим lukevs за добавление поддержки CPU.)## Временные решения для улучшения разрешения Основной целью этого метода является достижение точного синхронного движения губ и создания ярких выражений для различных стилей речи. Разрешение не учитывалось в начальном процессе проектирования. Существует два временных решения для улучшения разрешения. Первый вариант — использование CodeFormer, которое может достичь разрешения $1024\times1024$; однако, это довольно медленно, обрабатывая только один кадр в секунду на GPU A100, и страдает от проблем временной несогласованности. Второй вариант — использование модели временного супер-разрешения из MetaPortrait, которая достигает разрешения $512\times512$, обеспечивает более быструю производительность в 10 кадров в секунду и поддерживает временную согласованность. Однако эти модули супер-разрешения могут уменьшить интенсивность эмоций на лице. Примерные результаты после обработки супер-разрешением находятся в папке output_video.## Благодарности

Мы выражаем искреннюю благодарность за бесценные вклады, сделанные предыдущими работами в развитие DreamTalk. Это включает, но не ограничивается следующими проектами: PIRenderer ,AVCT ,StyleTalk ,Deep3DFaceRecon_pytorch ,Wav2vec2.0 ,diffusion-point-cloud ,FOMM video preprocessing. Мы стремимся развивать на основе этих фундаментальных работ с глубочайшим уважением к их первоначальным вкладам.

Цитирование

Если вы находите эту базу кода полезной для ваших исследований, пожалуйста, используйте следующую запись.

@article{ma2023dreamtalk,
  title={DreamTalk: Когда генерация выразительных говорящих голов сталкивается с диффузионными вероятностными моделями},
  author={Ma, Yifeng and Zhang, Shiwei and Wang, Jiayu and Wang, Xiang and Zhang, Yingya and Deng, Zhidong},
  journal={arXiv preprint arXiv:2312.09767},
  year={2023}
}

Уведомление

Этот метод предназначен только для использования в целях ИССЛЕДОВАНИЯ/НЕКОММЕРЧЕСКОГО ИСПОЛЬЗОВАНИЯ.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/mirrors-dreamtalk.git
git@api.gitlife.ru:oschina-mirror/mirrors-dreamtalk.git
oschina-mirror
mirrors-dreamtalk
mirrors-dreamtalk
main