Для получения дополнительных результатов посетите нашу домашнюю страницу
2024/10/18
: ❗ Мы обновили версии библиотек transformers
и gradio
чтобы избежать уязвимостей безопасности. Подробности здесь.2024/08/29
: ? Мы обновляем программу установки Windows в один клик и поддерживаем автоматические обновления, см. журнал изменений.2024/08/19
: ?️ Мы поддерживаем режим управления изображением и региональное управление . Подробности смотрите здесь .2024/08/06
: ? Мы поддерживаем точное редактирование портретов в интерфейсе Gradio, вдохновленном ComfyUI-AdvancedLivePortrait. Смотрите здесь .2024/08/05
: ? Пользователи Windows теперь могут загрузить установщик в один клик для режима «Люди» и режима «Животные» прямо сейчас! Подробности смотрите здесь .2024/08/02
: ? Мы выпустили версию модели «Животные» , а также несколько других обновлений и улучшений. Подробности смотрите здесь !2024/07/25
: ? Пользователи Windows теперь могут загрузить пакет с HuggingFace. Просто разархивируйте и дважды щелкните run_windows.bat
, чтобы наслаждаться!2024/07/24
: ? Мы поддерживаем редактирование поз для исходных портретов в интерфейсе Gradio. Мы также снизили порог обнаружения по умолчанию, чтобы повысить запоминаемость. Веселиться!2024/07/19
: Мы поддерживаем портретное редактирование видео (также известное как v2v) ! Больше можно увидеть здесь.2024/07/17
: ? Мы поддерживаем macOS с помощью Apple Silicon, модифицированной на основе PR № 143 Джиту.2024/07/10
: ? Мы поддерживаем объединение аудио и видео, автоматическую обрезку видео и создание шаблонов для защиты конфиденциальности. Больше можно увидеть здесь.2024/07/09
: ? Мы выпустили HuggingFace Space благодаря команде HF и Gradio!2024/07/04
: ? Мы выпустили первоначальную версию кода вывода и моделей. Постоянные обновления, следите за обновлениями!2024/07/04
: Мы опубликовали домашнюю страницу и технический отчет по arXiv. Этот репозиторий под названием LivePortrait содержит официальную реализацию PyTorch нашей статьи LivePortrait: эффективная портретная анимация со сшивкой и управлением перенацеливанием. Мы активно обновляем и улучшаем этот репозиторий. Если вы обнаружите какие-либо ошибки или у вас есть предложения, пожалуйста, поднимайте вопросы или отправляйте запросы на включение (PR)?.
Примечание
Убедитесь, что в вашей системе установлены git
, conda
и FFmpeg
. Подробную информацию об установке FFmpeg см. в разделе «Как установить FFmpeg» .
git clone https://github.com/KwaiVGI/LivePortrait
cd LivePortrait
# create env using conda
conda create -n LivePortrait python=3.10
conda activate LivePortrait
X-Pose требует, чтобы версия вашего torch
была совместима с версией CUDA.
Во-первых, проверьте текущую версию CUDA:
nvcc -V # example versions: 11.1, 11.8, 12.1, etc.
Затем установите соответствующую версию фонарика. Вот примеры для разных версий CUDA. Посетите официальный сайт PyTorch для получения команд установки, если ваша версия CUDA не указана:
# for CUDA 11.1
pip install torch==1.10.1+cu111 torchvision==0.11.2 torchaudio==0.10.1 -f https://download.pytorch.org/whl/cu111/torch_stable.html
# for CUDA 11.8
pip install torch==2.3.0 torchvision==0.18.0 torchaudio==2.3.0 --index-url https://download.pytorch.org/whl/cu118
# for CUDA 12.1
pip install torch==2.3.0 torchvision==0.18.0 torchaudio==2.3.0 --index-url https://download.pytorch.org/whl/cu121
# ...
Примечание . В системах Windows некоторые более поздние версии CUDA (например, 12.4, 12.6 и т. д.) могут привести к неизвестным проблемам. Вы можете рассмотреть возможность понижения версии CUDA до версии 11.8 для обеспечения стабильности. См. руководство по переходу на более раннюю версию от @dimitribarbot.
Наконец, установите оставшиеся зависимости:
pip install -r requirements.txt
Зависимость X-Pose не поддерживает macOS, поэтому вы можете пропустить ее установку. Режим «Люди» работает как обычно, режим «Животные» не поддерживается. Используйте предоставленный файл требований для macOS с Apple Silicon:
# for macOS with Apple Silicon users
pip install -r requirements_macOS.txt
Самый простой способ загрузить предварительно обученные веса — с HuggingFace:
# !pip install -U "huggingface_hub[cli]"
huggingface-cli download KwaiVGI/LivePortrait --local-dir pretrained_weights --exclude " *.git* " " README.md " " docs "
Если у вас нет доступа к Huggingface, вы можете использовать hf-mirror для загрузки:
# !pip install -U "huggingface_hub[cli]"
export HF_ENDPOINT=https://hf-mirror.com
huggingface-cli download KwaiVGI/LivePortrait --local-dir pretrained_weights --exclude " *.git* " " README.md " " docs "
Кроме того, вы можете загрузить все предварительно подготовленные веса с Google Диска или Baidu Yun. Разархивируйте и поместите их в ./pretrained_weights
.
Убедитесь, что структура каталогов такая же или содержит эту .
# For Linux and Windows users
python inference.py
# For macOS users with Apple Silicon (Intel is not tested). NOTE: this maybe 20x slower than RTX 4090
PYTORCH_ENABLE_MPS_FALLBACK=1 python inference.py
Если сценарий запустится успешно, вы получите выходной файл mp4 с именем animations/s6--d0_concat.mp4
. Этот файл включает в себя следующие результаты: видео вождения, входное изображение или видео и сгенерированный результат.
Или вы можете изменить ввод, указав аргументы -s
и -d
:
# source input is an image
python inference.py -s assets/examples/source/s9.jpg -d assets/examples/driving/d0.mp4
# source input is a video
python inference.py -s assets/examples/source/s13.mp4 -d assets/examples/driving/d0.mp4
# more options to see
python inference.py -h
Режим «Животные» тестируется ТОЛЬКО в Linux и Windows с графическим процессором NVIDIA.
Сначала вам необходимо создать OP с именем MultiScaleDeformableAttention
, который используется X-Pose, общей платформой обнаружения ключевых точек.
cd src/utils/dependencies/XPose/models/UniPose/ops
python setup.py build install
cd - # equal to cd ../../../../../../../
Затем
python inference_animals.py -s assets/examples/source/s39.jpg -d assets/examples/driving/wink.pkl --driving_multiplier 1.75 --no_flag_stitching
Если сценарий запустится успешно, вы получите выходной файл mp4 с именем animations/s39--wink_concat.mp4
.
Важный
Чтобы использовать собственное видео о вождении, мы рекомендуем :
--flag_crop_driving_video
. Ниже приведен случай автоматической обрезки с помощью --flag_crop_driving_video
:
python inference.py -s assets/examples/source/s9.jpg -d assets/examples/driving/d13.mp4 --flag_crop_driving_video
Если вы обнаружите, что результаты автоматической обрезки неудовлетворительны, вы можете изменить параметры --scale_crop_driving_video
, --vy_ratio_crop_driving_video
чтобы настроить масштаб и смещение, или сделать это вручную.
Вы также можете использовать автоматически создаваемые файлы шаблонов движения, заканчивающиеся на .pkl
, чтобы ускорить вывод и защитить конфиденциальность , например:
python inference.py -s assets/examples/source/s9.jpg -d assets/examples/driving/d5.pkl # portrait animation
python inference.py -s assets/examples/source/s13.mp4 -d assets/examples/driving/d5.pkl # portrait video editing
Мы также предоставляем интерфейс Gradio для более удобного использования, который можно просто запустить:
# For Linux and Windows users (and macOS with Intel??)
python app.py # humans mode
# For macOS with Apple Silicon users, Intel not supported, this maybe 20x slower than RTX 4090
PYTORCH_ENABLE_MPS_FALLBACK=1 python app.py # humans mode
Мы также предоставляем интерфейс Gradio для режима животных, который тестируется только в Linux с графическим процессором NVIDIA:
python app_animals.py # animals mode ??
Вы можете указать аргументы --server_port
, --share
, --server_name
в соответствии с вашими потребностями!
Мы также предоставляем опцию ускорения --flag_do_torch_compile
. Первый вывод запускает процесс оптимизации (около одной минуты), что делает последующие выводы на 20–30 % быстрее. Прирост производительности может различаться в зависимости от версии CUDA.
# enable torch.compile for faster inference
python app.py --flag_do_torch_compile
Примечание . Этот метод не поддерживается в Windows и macOS.
Или легко опробовать это на HuggingFace?
Мы также предоставили скрипт для оценки скорости вывода каждого модуля:
# For NVIDIA GPU
python speed.py
Результаты здесь .
Откройте для себя бесценные ресурсы, предоставленные нашим сообществом для улучшения вашего опыта работы с LivePortrait.
Репо (отсортировано по временной метке создания) | Описание | Автор |
---|---|---|
AdvancedLivePortrait-WebUI | Выделенный веб-интерфейс на основе градиента, запущенный из ComfyUI-AdvancedLivePortrait. | @jhj0517 |
FacePoke | Приложение для трансформации головы в реальном времени, управляемое вашей мышью! | @jbilcke-hf |
FaceFusion | FaceFusion 3.0 интегрирует LivePortrait в качестве expression_restorer и face_editor . | @henryruhs |
sd-webui-live-portrait | Расширение веб-интерфейса LivePortrait, добавляющее atab к исходному веб-интерфейсу Stable Diffusion для использования функций LivePortrait. | @dimitribarbot |
ComfyUI-LivePortraitKJ | Узел ComfyUI для использования LivePortrait с MediaPipe в качестве альтернативы Insightface. | @киджай |
ComfyUI-AdvancedLivePortrait | Более быстрый узел ComfyUI с предварительным просмотром в реальном времени, который вдохновил множество других инструментов и проектов, разработанных сообществом. | @PowerHouseMan |
comfyui-liveportrait | Узел ComfyUI для использования LivePortrait, поддерживающий многогранность, интерполяцию выражений и т. д., с учебным пособием. | @shadowcz007 |
И так МНОГО замечательных вкладов нашего сообщества, слишком много, чтобы перечислить их все?
Мы хотели бы поблагодарить участников репозиториев FOMM, Open Facevid2vid, SPADE, InsightFace и X-Pose за их открытые исследования и вклад.
Технологии портретной анимации сопряжены с социальными рисками, особенно с возможностью неправильного использования при создании дипфейков. Чтобы снизить эти риски, крайне важно следовать этическим принципам и применять ответственную практику использования. В настоящее время синтезированные результаты содержат визуальные артефакты, которые могут помочь в обнаружении дипфейков. Обратите внимание, что мы не несем никакой юридической ответственности за использование результатов этого проекта.
Если вы считаете, что LivePortrait полезен для ваших исследований, добро пожаловать на ? этот репозиторий и процитируйте нашу работу, используя следующий BibTeX:
@article { guo2024liveportrait ,
title = { LivePortrait: Efficient Portrait Animation with Stitching and Retargeting Control } ,
author = { Guo, Jianzhu and Zhang, Dingyun and Liu, Xiaoqiang and Zhong, Zhizhou and Zhang, Yuan and Wan, Pengfei and Zhang, Di } ,
journal = { arXiv preprint arXiv:2407.03168 } ,
year = { 2024 }
}
Цзяньчжу Го (郭建珠) ; [email protected]