Знакомые лица: алгоритмы создания «типичного» портрета


Автор: Андрей Сорокин, Senior Developer DataArt

В конце прошлого года мы завершили R&D-проект, посвященный методам машинного зрения в обработке изображений. В результате мы создали ряд усредненных портретов IT-специалистов, работающих с разными технологиями. В этой статье я расскажу об изображениях «типичных» Java и .NET-программистов, подходящих для этого фреймворках и оптимизации процесса.

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

[Из песочницы] Обнаружение лиц на видео с помощью Movidius Neural Compute Stick

Не так давно в свет вышло устройство Movidius Neural Compute Stick (NCS), представляющее собой аппаратный ускоритель для нейронных сетей с USB интерфейсом. Меня заинтересовала потенциальная возможность применения устройства в области робототехники, поэтому я приобрел его и задумал запустить какую-нибудь нейросеть. Однако большинство существующих примеров для NCS решают задачу классификации изображений, а мне хотелось попробовать кое-что другое, а именно обнаружение лиц. В этой публикации я хотел бы поделиться опытом, полученным в ходе такого эксперимента.

Весь код можно найти на GitHub.

image

Читать дальше →

Безопасность футбольных стадионов: некоторые неявные особенности


Пример монтажа на стадионе ЦСКА

Итальянские и английские футбольные фанаты считались самыми агрессивными. Но теперь они дома не бузят. Почему? Потому что их лишают пожизненно права посещения стадионов. Поэтому они бузят на евро, на ЧМ, во Франции. У нас тоже начинается такое: особо эмоциональные фанаты легко могут словить запрет на посещение арены на достаточно продолжительный срок.

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

Вообще, есть два мифа про безопасность на стадионах:

  1. Что видеонаблюдение не помогает в предотвращении преступлений.
  2. И что биодетекторы — это прошлый век.
Читать дальше →

[Перевод] Итоги развития компьютерного зрения за один год

Часть первая. Классификация/локализация, обнаружение объектов и слежение за объектом
Этот фрагмент взят из недавней публикации, которую составила наша научно-исследовательская группа в области компьютерного зрения. В ближайшие месяцы мы опубликуем работы на разные темы исследований в области Искусственного Интеллекта  —  о его экономических, технологических и социальных приложениях — с целью предоставить образовательные ресурсы для тех, кто желает больше узнать об этой удивительной технологии и её текущем состоянии. Наш проект надеется внести свой вклад в растущую массу работ, которые обеспечивают всех исследователей информацией о самых современных разработках ИИ.
Полная публикация доступна бесплатно на нашем веб-сайте: www.themtank.org.

Введение

Компьютерным зрением обычно называют научную дисциплину, которая даёт машинам способность видеть, или более красочно, позволяя машинам визуально анализировать своё окружение и стимулы в нём. Этот процесс обычно включает в себя оценку одного или нескольких изображений или видео. Британская ассоциация машинного зрения (BMVA) определяет компьютерное зрение как «автоматическое извлечение, анализ и понимание полезной информации из изображения или их последовательности». Термин понимание интересно выделяется на фоне механического определения зрения — и демонстрирует одновременно и значимость, и сложность области компьютерного зрения. Истинное понимание нашего окружения достигается не только через визуальное представление. На самом деле визуальные сигналы проходят через оптический нерв в первичную зрительную кору и осмысливаются мозгом в сильно стилизованном смысле. Интерпретация этой сенсорной информации охватывает почти всю совокупность наших естественных встроенных программ и субъективного опыта, то есть как эволюция запрограммировала нас на выживание и что мы узнали о мире в течение жизни. ...Далее...

Сравнительное тестирование Smart IDReader на 5-ти вычислительных комплексах с процессорами Эльбрус

Smart IDReader — приложение, позволяющее распознавать удостоверяющие документы на различных платформах. Различные режимы распознавания позволяют извлекать данные держателя документа из видеопотока, фотографий или сканов документов.



Сегодня мы решили рассказать вам о том как мы тестировали Smart IDReader на семействе вычислительных систем Российского производства — Эльбрус. На чем будем тестировать? Как работает распознавание документов на новой машине Эльбрус-8.4? Если интересно, идем под кат.

Читать дальше →

[Перевод] Время отклика компьютеров: 1977−2017

У меня гнетущее чувство, что современные компьютеры по ощущениям медленнее, чем те компьютеры, которые я использовал в детстве. Я не доверяют такого рода ощущениям, потому что человеческое восприятие доказало свою ненадёжность в эмпирических исследованиях, так что я взял высокоскоростную камеру и измерил время отклика устройств, которые попали ко мне за последние несколько месяцев. Вот результаты: Компьютер Отклик (мс) Год Тактовая частота Кол-во транзисторов Apple 2e 30 1983 1 МГц 3,5 тыс. TI 99/4A 40 1981 3 МГц 8 тыс. Haswell-E 165 Гц 50 2014 3,5 ГГц 2 млрд Commodore Pet 4016 60 1977 1 МГц 3,5 тыс. SGI Indy 60 1993 0,1 ГГц 1,2 млн Haswell-E 120 Гц 60 2014 3,5 ГГц 2 млрд ThinkPad 13 ChromeOS 70 2017 2,3 ГГц 1 млрд iMac G4 OS 9 70 2002 0,8 ГГц 11 млн Haswell-E 60 Гц 80 2014 3,5 ГГц 2 млрд Mac Color Classic 90 1993 16 МГц 273 тыс....Далее...

Сверточная сеть на python. Часть 3. Применение модели


Это заключительная часть статей о сверточных сетях. Перед прочтением рекомендую ознакомиться с первой и второй частями, в которых рассматриваются слои сети и принципы их работы, а также формулы, которые отвечают за обучение всей модели. Сегодня мы рассмотрим особенности и трудности, с которыми можно столкнуться при тестировании вручную написанной на python сверточной сети, применим написанную сеть к датасету MNIST и сравним полученные результаты с библиотекой tensorflow.
Читать дальше →

Smart IDReader SDK — как написать Telegram-бота на Python для распознавания документов за 5 минут

Smart IDReader by Smart Engines

Мы, Smart Engines, продолжаем цикл статей про то, как встроить наши технологии распознавания (паспортов, банковских карт и других) в ваши приложения. Ранее мы уже писали про встраивание на iOS и Android, а сегодня мы расскажем про то, как работать с Python-интерфейсом библиотеки распознавания Smart IDReader и напишем простого Telegram-бота.

Кстати, список поддерживаемых нами языков программирования расширился и теперь включает C++, C, C#, Objective-C, Swift, Java, Python, а также такие эзотерические языки, как Visual Basic и, разумеется, PHP. Как и раньше, мы поддерживаем все популярные и многие непопулярные операционные системы и архитектуры, а наши бесплатные приложения доступны для скачивания из App Store и Google Play.

По традиции, демо-версия Smart IDReader SDK для Python вместе с исходным кодом реализации Telegram-бота выложены на Github и доступны по ссылке: ...Далее...

[Перевод] Netflix подбирает оптимальные обложки фильмов для каждого зрителя

Из блога Netflix Technology Много лет основной целью системы персональных рекомендаций Netflix было выбрать правильные фильмы — и вовремя предложить их пользователям. С тысячами фильмов в каталоге и разносторонними предпочтениями клиентов на сотнях миллионов аккаунтов критически важно рекомендовать точные фильмы каждому из них. Но работа системы рекомендаций на этом не заканчивается. Что можно сказать о новом и незнакомом фильме, который вызовет ваш интерес? Как вас убедить, что он достоин просмотра? Очень важно ответить на эти вопросы, чтобы помочь людям открывать для себя новый контент, особенно незнакомые фильмы. Один из вариантов решения проблемы — принять в учёт картинки или обложки для фильмов. Если картинка выглядит убедительно, то она служит толчком и неким визуальным «доказательством», что фильм достоин просмотра. На ней может быть изображён известный вам актёр, захватывающий момент вроде автомобильной погони или драматическая сцена, передающая суть фильма или сериала. Если мы покажем идеальную обложку фильма на вашей домашней странице (как говорится, картинка стоит тысячи слов), то возможно, только возможно, вы решитесь выбрать этот фильм. Это просто ещё одна вещь, в которой Netflix отличается от традиционных медиа: у нас не один продукт, а более 100 млн разных продуктов, а каждый из пользователей получает персональные рекомендации и персональные обложки. ...Далее...

Сверточная сеть на python. Часть 2. Вывод формул для обучения модели


В прошлой статье мы рассмотрели концептуально все слои и функции, из которых будет состоять будущая модель. Сегодня мы выведем формулы, которые будут отвечать за обучение этой модели. Слои будем разбирать в обратном порядке — начиная с функции потерь и заканчивая сверточным слоем. Если возникнут трудности с пониманием формул, рекомендую ознакомиться с подробным объяснением (на картинках) метода обратного распространения ошибки, и также вспомнить о правиле дифференцирования сложной функции.
Читать дальше →


Последние посты