Перейти к контенту

Приложение Avatarify для Windows, Mac и Linux

Приложение Avatarify поможет оживить любое селфи. Фотореалистичные аватары для приложений для видеоконференцсвязи. Open Avatarify не связан с Avatarify Inc.

Новости

  • 11 июля 2020 г. Добавлена поддержка Docker. Теперь вы можете запускать Avatarify из Docker в Linux. Спасибо mikaelhg и mintmaker за вклад!
  • 22 мая 2020 г. Добавлен режим Google Colab. Теперь вы можете запускать Avatarify на любом компьютере без графического процессора!
  • 7 мая 2020 г. Добавлена поддержка удаленного GPU для всех платформ(на основе решения mynameisfiber). Демо. Инструкции по развертыванию.
  • 24 апреля 2020 г. Добавлен туториал по установке Windows.
  • 17 апреля 2020 г. Создано сообщество Slack.
  • 15 апреля 2020 г. Добавлены аватары, созданные StyleGAN. Просто нажмите Q. Каждый раз, когда вы нажимаете кнопку — выбирается новый аватар.
  • 13 апреля 2020 г. Добавлена поддержка Windows(спасибо 9of9).

Требования

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

 

Для локального запуска Avatarify вам потребуется видеокарта с поддержкой CUDA(NVIDIA). В противном случае он переключится на центральный процессор и будет работать очень медленно. Это показатели производительности для оборудования:

  • GeForce GTX 1080 Ti: 33 кадра в секунду
  • GeForce GTX 1070: 15 кадров в секунду
  • GeForce GTX 950: 9 кадров в секунду

Вы также можете запустить приложение Avatarify удаленно в Google Colab(https://colab.research.google.com/github/alievk/avatarify/blob/master/avatarify.ipynb) или на выделенном сервере с графическим процессором(сложнее). Для этого режима нет особых требований к ПК, только стабильное интернет-соединение. Конечно, вам понадобится еще и веб-камера!

Загрузите вес модели здесь, здесь https://avatarify.s3.amazonaws.com/weights/vox-adv-cpk.pth.tar или здесь https://drive.google.com/file/d/1coUCdyRXDbpWnEkA99NLNY60mb9dQ_n3/view?usp=sharing [228 МБ, md5sum 8a45a24037871c045fbb8a6a8aa95ebc]

Все ссылки для скачивания можно найти тут https://github.com/alievk/avatarify

Linux

Linux использует v4l2loopback для создания виртуальной камеры.

  • Загрузите Miniconda Python 3.7 и установите с помощью команды:
bash Miniconda3-latest-Linux-x86_64.sh
  • Клонируйте avatarify и установите его зависимости(требуется sudo privelege):
git clone https://github.com/alievk/avatarify.git
cd avatarify
bash scripts/install.sh
  • Загрузите веса сети и поместите файл vox-adv-cpk.pth.tar в каталог(не распаковывайте его).

Mac

Примечание: в версиях после v4.6.8(23 марта 2020 г.) Zoom отключил поддержку виртуальных камер на Mac.

Чтобы использовать Avatarify в Zoom, вы можете выбрать один из двух вариантов:

  • Установите Zoom v4.6.8 — последнюю версию, поддерживающую виртуальные камеры.
  • Используйте последнюю версию Zoom, но отключите проверку библиотеки, выполнив эту команду в терминале:
codesign --remove-signature /Applications/zoom.us.app

Мы будем использовать CamTwist для создания виртуальной камеры для Mac.

  • Установите Miniconda Python 3.7 или используйте Homebrew Cask: brew cask install miniconda.
  • Скачайте и распакуйте репозиторий или воспользуйтесь git:
git clone https://github.com/alievk/avatarify.git
cd avatarify
bash scripts/install_mac.sh
  • Загрузите и установите CamTwist.

Windows

Это руководство протестировано для Windows 10.

  • Установите Miniconda Python 3.7.
  • Установите Git.
  • Нажмите кнопку Windows и введите «miniconda». Выполнить Anaconda Prompt.
  • Загрузите и установите Avatarify(скопируйте и вставьте эти команды и не меняйте их):
git clone https://github.com/alievk/avatarify.git
cd avatarify
scripts\install_windows.bat
  • Загрузите веса сети и поместите файл vox-adv-cpk.pth.tar в каталог avatarify(не распаковывайте его).
  • Запустите run_windows.bat. Если установка прошла успешно, появятся два окна «cam» и «avatarify». Оставьте эти окна открытыми для следующих шагов установки.
  • Установите OBS Studio для записи вывода.
  • Установите плагин VirtualCam. Выберите «Установить» и зарегистрируйте только 1 виртуальную камеру.
  • Запустите OBS Studio.
  • В разделе «Источники» нажмите кнопку «Добавить»(знак «+»), выберите «Захват Windows» и нажмите «ОК». В появившемся окне выберите «[python.exe]: avatarify» в раскрывающемся меню «Окно» и нажмите OK. Затем выберите Edit -> Transform -> Fit to screen.
  • В OBS Studio перейдите в Инструменты -> VirtualCam. Отметьте AutoStart, установите Buffered Frames равным 0 и нажмите Start.
  • Теперь камера OBS-Camera должна быть доступна в Zoom(или другом ПО для видеоконференцсвязи).

Удаленный графический процессор

Вы можете переложить тяжелую работу на Google Colab или сервер с графическим процессором и использовать свой ноутбук только для передачи видеопотока. Серверное и клиентское программное обеспечение является родным и доступно в докере.

Докер

Образы Docker доступны только в Linux.

  • Установите Docker, следуя документации https://docs.docker.com/engine/install/. Затем запустите этот шаг https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user, чтобы сделать докер доступным для вашего пользователя.
  • Для использования графического процессора(вряд ли рекомендуется): установите драйверы nvidia и докер nvidia.
  • Клонируйте avatarify и установите его зависимости(модуль ядра v4l2loopback):
git clone https://github.com/alievk/avatarify.git
cd avatarify
bash scripts/install_docker.sh
  • Создайте Dockerfile:
cd avatarify
docker build -t avatarify .

Настроить аватары

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

Следуйте этим советам, чтобы улучшить качество изображения:

  • Сделайте квадратную обрезку вашего аватара.
  • Обрежьте лицо аватара так, чтобы оно было не слишком близко и не слишком далеко. Используйте стандартные аватары в качестве справочника.
  • Отдавайте предпочтение картинкам с однородным фоном. Это уменьшит визуальные эффекты.

Ваша веб-камера должна быть подключена. Запустите приложение для видеоконференцсвязи только после запуска приложения.

Linux

Скрипт запуска создаст виртуальную камеру / dev / video9. Вы можете изменить эти настройки в scripts / settings.sh.

Вы можете использовать команду v4l2-ctl —list-devices для вывода списка всех устройств в вашей системе.

bash run.sh

Если вы не установили графический процессор, добавьте флаг —no-gpus. Чтобы использовать Docker, добавьте флаг —docker.

Появятся окна cam и avatarify. Окно камеры предназначено для управления положением вашего лица, а avatarify — для предварительного просмотра анимации аватара.

Mac

Примечание. На Mac Avatarify работает только с Google Colab или выделенным сервером с графическим процессором.

Найдите место, где вы скачали приложение, и замените /path/to/avatarify аватарам ниже.

  • Чтобы запустить Avatarify, следуйте инструкциям для Google Colab https://colab.research.google.com/github/alievk/avatarify/blob/master/avatarify.ipynb или выделенного сервера https://github.com/alievk/avatarify/wiki/Remote-GPU.
  • Перейдите в CamTwist на сайт camtwiststudio.com.
  • Выберите «Desktop+» и нажмите «Select».
  • В разделе «Настройки» выберите «Привязать к окну приложения»(Confine to Application Window) и в раскрывающемся меню выберите «python(аватаризация)».

Появятся окна cam и avatarify. Окно камеры предназначено для управления положением вашего лица, а avatarify — для предварительного просмотра анимации аватара.

Windows

  • В подсказке Anaconda:
cd C:\path\to\avatarify
run_windows.bat

Запустите OBS Studio. Он должен автоматически начать потоковую передачу видео с Avatarify на OBS-Camera.

Примечание. Чтобы уменьшить задержку видео, в OBS Studio щелкните правой кнопкой мыши окно предварительного просмотра и снимите флажок «Включить предварительный просмотр».

Вот основные принципы управления:

кнопкиописание
1-9переключатся между первыми 9 аватарами.
QВключает созданный аватар. Каждый раз, когда вы нажимаете на кнопку-новый аватар появляется.
0Включает и выключает отображение Аватара.
A/DПредыдущий / следующий Аватар в папке.
W/SУвеличение/уменьшение масштаба камеры.
U/H/J/KПереводите камеру. H-влево, K — вправо, U — вверх, J — вниз на 5 пикселей. Добавьте сдвиг для регулировки на 1 пиксель.
Shift-ZСброс зума камеры и перевод
Z/CОтрегулируйте непрозрачность целевого наложения Аватара.
XСброс системы отсчета.
FПереключите режим поиска опорного кадра.
RЗеркальное справочное окно
TЗеркальное выходное окно.
LПерезагрузите аватары.
Iпоказать FPS
ESCвыход
  • Выровняйте лицо в окне камеры как можно точнее пропорционально и по положению относительно целевого аватара. Используйте функцию увеличения / уменьшения(клавиши W / S) и перемещение камеры влево, вправо, вверх и вниз(клавиши U / H / J / K). Когда вы выровняли, нажмите «X», чтобы использовать этот кадр в качестве ссылки для управления остальной анимацией.
  • Используйте функцию наложения(клавиши Z / C), чтобы максимально приблизить выражение лица и вашего аватара.

Как вариант, вы можете нажать «F», чтобы программа попыталась найти лучшую систему отсчета. Это замедлит частоту кадров, но пока это происходит, вы можете продолжать двигать головой: окно предварительного просмотра будет мигать зеленым, когда он обнаружит, что ваша поза лица ближе к аватару, чем та, которую он использует в настоящее время.

Вы также увидите два числа: первое число показывает, насколько близко вы в данный момент выровнены с аватаром, а второе число — насколько точно выровнен опорный кадр.

Лучше, чтобы первое число было как можно меньше — около 10 обычно является хорошим выравниванием. Когда вы закончите, нажмите «F» для выхода из режима поиска кадра.

Настроить приложение для видеовстреч

Avatarify поддерживает любое приложение для видеоконференцсвязи, в котором можно изменить источник видеосигнала(Zoom, Skype, Hangouts, Slack, …). Вот несколько примеров того, как настроить конкретное приложение.

Skype

Перейдите в «Настройки» -> «Аудио-видео», выберите камеру avatarify(Linux), CamTwist(Mac) или OBS-Camera(Windows).

Zoom

Перейдите в Настройки -> Видео и выберите avatarify(Linux), CamTwist(Mac) или OBS-Camera(Windows) из раскрывающегося меню камеры.

Teams

Перейдите к изображению вашего профиля -> Настройки -> Устройства и выберите avatarify(Linux), CamTwist(Mac) или OBS-Camera(Windows) в раскрывающемся меню камеры.

Slack

Сделайте звонок, разрешите браузеру использовать камеры, щелкните значок «Настройки», выберите avatarify(Linux), CamTwist(Mac) или OBS-Camera(Windows) в раскрывающемся меню настроек видео.

Удалить

Чтобы удалить Avatarify и связанные с ним программы, следуйте инструкциям по ссылке https://github.com/alievk/avatarify/wiki/Removing-Avatarify.

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

  • Добавить поддержку для большего количества платформ(Linux и Mac уже поддерживаются).
  • Удаленная поддержка GPU. Работа в процессе.
  • Перенос на графические процессоры без CUDA(интегрированные графические процессоры Intel, графические процессоры AMD и т. Д.) И оптимизация. Цель состоит в том, чтобы запустить Avatarify в реальном времени(не менее 10 кадров в секунду) на современных ноутбуках.

Вопросы и ответы

В: Нужны ли мне какие-либо знания программирования для запуска Avatarify?

О: Не совсем, но вам нужны знания командной строки на начальном уровне. Для Windows мы записали видеоурок, поэтому установить его будет легко.

В: Почему на моем Macbook он работает так медленно?

О: Модель, используемая в Avatarify, требует графического процессора NVIDIA с поддержкой CUDA для выполнения тяжелых вычислений. В Macbook нет таких графических процессоров, и для обработки используется процессор, у которого гораздо меньше вычислительной мощности для бесперебойной работы Avatarify.

В: У меня нет графического процессора NVIDIA, могу ли я его запустить?

О: Вы по-прежнему можете запускать его без графического процессора NVIDIA, но со значительно сниженной производительностью(<1 кадр / с).

В: У меня графический процессор ATI(например, Radeon). Почему так медленно работает?

О: Для запуска нейронной сети Avatarify использует библиотеку PyTorch, которая оптимизирована для CUDA. Если PyTorch не может найти графический процессор с поддержкой CUDA в вашей системе, он переключится на CPU. Производительность процессора будет намного хуже.

В: Как добавить новый аватар?

О: Это просто. Все, что вам нужно, это найти изображение вашего аватара и положить его в папку с аватарами.

В: Avatarify вылетел, что делать?

О: Сначала попробуйте найти свою ошибку в разделе устранения неполадок. Если его нет, попробуйте найти его в выпусках. Если вы не смогли найти там свою проблему, откройте новую, используя шаблон задачи.

В: Могу ли я использовать Avatarify в коммерческих целях?

О: Нет. Avatarify и First Order Motion Model находятся под некоммерческой лицензией Creative Commons, которая запрещает коммерческое использование.

Оцени статью

Средняя оценка / 5. Количество голосов:

Спасибо, помогите другим - напишите комментарий, добавьте информации к статье.

Или поделись статьей

Видим, что вы не нашли ответ на свой вопрос.

Помогите улучшить статью.

 

Сайдбар