Тестим API от Microsoft — распознавание эмоций

emotion-detector-demo-logo

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

Любой желающий может закачать фотку и получить результат работы API Emotion Recognition (распознавание эмоций).

Не знаю сколько будет висеть демка для тестирования, вот ссылка — www.projectoxford.ai/demo/Emotion.

На каждой фотографии производится поиск лиц (максимум до 64), которые потом помечаются на изображении рамочкой. Т.е. в обработку можно запихнуть весьма серьезные коллективные фотки. Есть ограничения по разрешению картинки — до 4х мегапикселей. При использовании современных мыльниц, фотку скорее всего придется уменьшать или обрезать.

Эмоция в терминах API — это некий 8-мерный вектор. Для каждого найденного лица на фотке мы получаем 8 базовых составляющих эмоции:

  • Anger (Гнев),
  • Contempt (Презрение),
  • Disgust (Отвращение),
  • Fear (Страх),
  • Happiness (Счастье),
  • Neutral (Обычный) — эдакий покер-фейс,
  • Sadness (Печаль),
  • Surprise (Удивление)

Нормировка произведена так, чтобы в сумме компоненты давали единицу.

Простые тесты распознавания эмоций

Для начала посмотрим как алгоритм распознаёт и оценивает самые очевидные варианты. Благо, под рукой всегда кто то вертится для экспериментов. :)

happiness

Практически вся 1 — это счастье. Согласен, Лиза очень довольная тут.

anger

Тут я попросил свою ассистентку изобразить гнев. Но ей было почему то очень весело, что и увидел умный алгоритм, распределив эмоции между гневом (0.46) и счастьем (0.53).

sadness

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

poker-face

А тут редкая фотка, где Леха примеривает покер-файс. Алгоритм выставляет почти единицу. Согласен. Знаю, что Леха почитывает мой блог, ему будет приятно увидеть здесь себя. :)

Усложняем тесты

almost-happy

Я загрузил вместо фото — рисунок. Видим, что был найден только один персонаж. Мне кажется, счастье этого малыша переоценено программой (0.76). На мой взгляд, это больше Нейтральное выражение лица.

gitler-anger

Черно-белое фотографическое изображение Гитлера. Что это? Он щурится от солнца или действительно так зол? Программа тоже сомневается : ярость (0.55) + отвращение (0.27). Пожалуй, я соглашусь с вердиктом.

will-smit-surprised

Уил Смит удивлен (0.99) способностям алгоритма. Думаю, как актер он способен на любое выражение лица.

Алгоритму не важна ни раса, ни возраст персонажа (я вообще то, ещё и Эйнштейна прогонял с его высунутым языком).

Групповой снимок

group

Алгоритм нашел девушку как бы она не закатывала глаза и поджимала губы.

1 и 5 почти имеют почти одинаковое нейтрально-доброжелательное выражение, что и отметил алгоритм (примерно — 70 нейтральная компонента, 30 — счастье).

2 и 4 были распознаны отлично — соответственно получили по единице удивление и счастье.

3я пикча алгоритмом интерпретирована не верно (нейтраль — 0.87). Оставшаяся доля распределена между яростью, отвращением и презрением, т.е. в принципе в том спектре эмоций, которые и ожидаются. Но доля их очень мала. Возможно, это связано с не очень высокой детализацией изображения, иначе алгоритм принял бы верное решение.

6я — картинка алгоритмом была не понята (0.96 — нейтраль). Я тоже не понял это выражение лица, но оно точно не нейтральное. Возможно, не хватает нужной эмоциональной компоненты — что то вроде раздражения или озабоченности. При этом — «губки бантиком» — баловство.

7я картинка — это должно быть сомнение или что то ещё из того спектра эмоций, которыми не владеет алгоритм (покерфэйс — 0.52, счастье — 0.37 и презрение — 0.09).

8 — это должно быть удивление (бровь приподнята, глаза широко раскрыты), но программа не поняла этих мимических сигналов — (нейтраль 0.93).

9 — после серии неудача, алгоритм берет реванш на последней картинке. Программа посчитала, что это ярость (0.52) + печаль (0.21). Соглашаюсь.

Итоги

Ну что ж… молодцы! Но, надо ещё много работать.

Алгоритм, скорее всего, пользуется какими то «геометрическими» построениями, основываясь на характерной мимике. Обнаружение лиц и их эмоций получается только в ан-фас (в профиль не находит даже лица).

8 эмоций, как мы увидели — маловато для полноценного спектра. Но это только начало. Вполне возможно, что экспериментаторы пробовали и больший спектр эмоций, но алгоритм начинал давать слишком размытые результаты.

Никто не мешает и вам попробовать поиграть с распознавателем. ;)

Написать комментарий

Мало букафф? Читайте есчо !

Расчет прибыльности банковского депозита

Июль 14, 2018 г.

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

Читать

Пакетная загрузка картинок в поле типа ImageField CCK (Drupal)

Декабрь 17, 2011 г.

В wordpress, к примеру, такая возможность уже есть в базовой комплектации движка. А что касается drupal-a, в 7й версии хоть и интегрировали в движок что ...

Читать

 

Комментарии к «Тестим API от Microsoft — распознавание эмоций»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: