Анализ эмоций — неотъемлемая часть понимания поведения человека и его реакций. Все мы реагируем на переписку или устный разговор по-разному в зависимости от своих убеждений, образа мышления и личных предпочтений. Видео дает нам возможность значительно быстрее анализировать и понимать реакцию собеседника. Мы можем наблюдать черты лица и мышечные реакции, видим, когда человек улыбается, хмурится и т.д.
Компания Agora разрабатывает SDK для встраивания аудио- и видеосвязи в любые клиентские приложения. В своем блоге они рассказали о функционале анализа эмоций, который реализован на их платформе и доступен заказчикам для добавления в звонки 1-на-1 в вебе.
Как работает встроенный анализ эмоций
Алгоритм анализа эмоций — это технология глубокого обучения, разработанная при помощи библиотеки Keras с использованием TensorFlow на стороне сервера. Основное назначение алгоритма — определение лица и затем эмоциональной реакции в кадре.
Сервер работает на Python и размещен в облаке. Видеоконтент мы разбиваем на кадры и отправляем каждый кадр по отдельности для обработки на сервере.
Модель глубокого обучения выполняет две функции
1. Распознавание лиц, то есть нахождение лиц людей на изображениях. Алгоритм находит их, ориентируясь на черты лица — глаза, нос, щеки, уши, губы, поворот головы.
2. Классификация эмоций. Определив лицо, алгоритм должен определить эмоцию, которую оно выражает. У людей 43 мышцы лица, при помощи которых мы демонстрируем эмоции — хмуримся, улыбаемся, смеемся. Модель обучается на огромном массиве данных о выражениях лиц и предоставляет нам вероятностную оценку, с которой разные эмоции могут быть найдены на изображении.
То есть сначала из изображения извлекаются данные. Затем модель перебирает все, что в изображении может быть лицами, и выдает координаты лиц для дальнейшей обработки.
Каждое распознанное лицо обрабатывается отдельно. Алгоритм определяет вероятность, с которой выражение лица соответствует каждой из имеющихся в базе эмоций, и добавляет к лицу рамку с указанием той эмоции, которая получила наивысшую оценку вероятности. Окончательное изображение с аннотацией возвращается на сервер.
Технические подробности можно изучить в оригинале публикации и на GitHub
Подписывайтесь на наш Телеграм (@vcs_su) или Дзен, выбираем для вас все самое интересное из мира видеосвязи и коммуникаций!