Itsgiving: нейросеть меняет ваше лицо на мем прямо во время видеозвонка

Приветствую! Нашел необычный инструмент под названием itsgiving. Это не расширение, а Python-скрипт, который распознает ваши жесты и мимику через веб-камеру и подставляет вместо лица подходящий мем - прямо во время звонка в Zoom, Meet, Teams или Discord.

Как это работает

Скрипт анализирует лицо и руки через MediaPipe - модель для отслеживания 478 точек лица, жестов рук и положения тела. Когда вы делаете определенный жест или гримасу, программа распознает совпадение с одной из заготовленных реакций и накладывает поверх вашего лица картинку-мем, которая масштабируется и следует за вами в кадре.

Всего заложено 14 реакций: жест "тайм-аут", сердечко руками, руки у лица, "разваливаюсь на части", танец, зажатый нос, флирт с пальцем у губ, поднятая рука, язык наружу, удивление, отвращение, "разговор со стеной", прищур и выход из кадра.

Программа создает виртуальную камеру, и видеосервисы видят ее как обычную веб-камеру. Достаточно выбрать нужное устройство в настройках видео - это работает одинаково в Zoom, Meet, Teams, Discord и даже в OBS.

Фишка с калибровкой

Отдельного внимания заслуживает то, как разработчица решила проблему разных лиц. Обычные пороги срабатывания (условно "открытый рот больше 0.5") работают плохо, потому что у каждого лица разный "нейтральный" уровень выражения - одно лицо в покое уже выглядит слегка удивленным, другое нет.

Поэтому в улучшенной версии скрипта (its_giving_v2.py) есть 7-секундная калибровка: программа записывает ваше лицо в состоянии покоя и дальше сравнивает все выражения относительно вашей персональной нормы, а не общего усредненного порога. Благодаря этому реакции срабатывают одинаково надежно на разных лицах.

Как установить и запустить

Нужен Python 3.11 или 3.12. Устанавливается через стандартное окружение:

python3.12 -m venv venv source venv/bin/activate pip install -r requirements.txt

Модели MediaPipe (около 15 МБ) скачиваются автоматически при первом запуске.

Для виртуальной камеры на Mac или Windows нужен OBS Studio (достаточно один раз открыть и закрыть), на Linux - v4l2loopback. После этого запускаете:

python its_giving_v2.py --calibrate python its_giving_v2.py

Программа выведет название виртуальной камеры - выбираете ее в настройках видео вашего звонка.

Что стоит знать перед использованием

Реакции срабатывают автоматически, без вашего подтверждения. Разработчица прямо предупреждает: лучше протестировать на звонке с кем-то, кто хорошо к вам относится, потому что все участники увидят то, что решит алгоритм.

Свои мемы можно добавлять за полминуты - просто кладете файл с нужным именем в папку assets (поддерживаются JPEG, PNG и анимированные GIF).

Вердикт

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

Для рабочих встреч с клиентами, конечно, не подойдет, а вот для внутренних командных созвонов или дружеских посиделок в Zoom - отличный способ разрядить обстановку.

Ссылка на репозиторий: https://github.com/gazijarin/itsgiving

Спасибо за внимание!

Этот гайд - один из многих. В моем Телеграм-канале регулярно рассказываю о практическом применении ИИ!

22