Меня зовут Сергей Фомин, я CEO IT-компании Picvario. По совместительству — основатель фотоагентства «Русский Взгляд», среди клиентов которого крупные российские компании и ведущие СМИ (RT, «Аргументы и факты», ВГТРК, «Известия»). На серверах агентства хранится 20 млн изображений. И каждый день добавляется 20 тысяч новых. Около 3 500 наших снимков в день публикуют СМИ.
Что такое DAM-системы
По мере увеличения архивов операции по поиску фото и видеоматериалов становятся всё более трудозатратными. Пользователям недостаточно стандартного функционала сервисов для хранения данных. За границей уже много лет для работы с архивами медиафайлов используют DAM-системы (Digital asset management — «управление цифровыми активами»).
DAM — это класс систем для управления фото, видео, презентациями и любыми другими визуальными материалами. Каждое такое решение представляет собой корпоративную медиабиблиотеку, в которой оптимизированы алгоритмы поиска файлов, систематизации контента, управление правами пользователей.
Продвижение медцентров и клиник: три кейса о SEO, TikTok и Instagram*
Как получить измеримые результаты в фарммаркетинге.
Показываем на примерах →
Спецпроект
Почему мы начали разрабатывать собственную DAM-систему
Зарубежные DAM-системы развиваются более 15 лет и имеют много преимуществ. Но у них есть недостатки: неудобный интерфейс, сложность в освоении, высокая цена, языковой барьер, хранение данных на зарубежных серверах.
В 2019 году мы приступили к разработке DAM-платформы Picvario. И уже к середине года получили первых российских клиентов.
Изучив потребности рынка, мы поняли, что многим из потенциальных пользователей, например, спортивным организациям, было бы удобно наличие в DAM-системе функции распознавания лиц.
Как мы выбирали технологию распознавания лиц
Поскольку для клиентов было важно хранение данных на российских серверах, нам требовался отечественный продукт для распознавания лиц. Мы обратились к рейтингу Национального института стандартов и технологий при министерстве торговли США, который с начала 2000-х годов публикует отчёт о мировом рынке таких решений.
В рейтинге оказались три российских компании: NtechLab, Vision labs и 3DiVi. Однако ни у одной из них на тот момент не оказалось облачного продукта, а нам это было важно для скорейшего внедрения функционала.
SaaS-версию Picvario мы разворачивали на платформе Яндекс.Облако, поэтому в первую очередь обратились к продуктам Яндекса. На тот момент у них не оказалось решения, которое было бы способно не только находить лица, но и идентифицировать одну и ту же персону на разных изображениях.
Дальнейший поиск привёл нас к Vision от Mail.Ru — технологии распознавания лиц и объектов на базе машинного обучения и искусственных нейронных сетей.
Первый этап: внедрение технологии
В Mail.ru существует справочник лиц NameSpace, представляющий собой обученную нейросеть. После добавления в систему нейросеть присваивает лицу номер Xid. После этого достаточно искать по ID персоны.
Для связи и управления справочником лиц между нейросетью NameSpace и платформой Picvario мы создали наш собственный сервис Vision, который обрабатывает API-запрос от Picvario, передает его в NameSpace и получает ответ от Mail.ru. Кроме того, Vision выполняет функции пользовательского кабинета для управления справочником лиц и позволяет присвоить персоне имя.
Николай Дроздов — публичная личность, поэтому мы добавили его лицо в общий справочник Picvario, указав, что он «селебрити». При поиске в любой инсталляции система узнает его в лицо. Например, при загрузке изображения со спортивной трибуны или со светского мероприятия.
Разумеется, есть возможность и скрыть ФИО распознаваемых лиц, сделав их доступными только для конкретной инсталляции, например в случае с лицами сотрудников завода или ребят с детского турнира.
Что мы поняли после первого этапа
В процессе выяснилось, что пользователям не всегда достаточно ответа от справочника NameSpace. В некоторых случаях распознавание выполнялось не совсем корректно. Соответственно требовались дополнительные возможности по управлению справочником лиц.
Кроме того, возникли проблемы с масштабированием. Распознавание работало идеально, пока в архиве фотографий было 100 персон. Когда количество персон возросло до 150 000, обработка запросов замедлилась.
Одним из факторов, усложняющих поиск, послужил взрывной рост объёмов лишней информации о персонах. На некоторых фотографиях (к примеру, на снимках трибун во время футбольного матча) система каждому человеку в толпе присваивала персональный идентификатор.
В итоге были выделены три задачи для доработки справочника лиц:
-
объединение нескольких персон в одну, так как иногда одного и того же человека нейросеть распознавала как двух разных;
-
разделение персон в случаях, когда два похожих человека идентифицировались как одна персона;
-
удаление персон из справочника лиц.
Второй этап: доработка сервиса
На втором этапе мы занялись доработкой нашего кабинета пользователя Vision, связывающего DAM-систему со справочником NameSpace.
1. Объединение персон
Исходные данные: фотографии Дрю Бэрримор.
Нейросеть идентифицировала актрису в детстве (person13328) и в зрелом возрасте (person49074) как двух разных персон. Задача по объединению персон решается с помощью объединения параметров в Vision — уникального Xid персоны.
Пользователь должен указать, что person13328 и person49074 — один и тот же человек. При новых запросах, связанных с этими персонами, Picvario выдаст нам все изображения, касающиеся обеих персон. В справочнике Mail.ru эти лица по-прежнему принадлежат разным людям.
2. Противоположная задача: разделение персон
Мила Йовович и Линда Евангелиста очень похожи. Система воспринимала их как одну персону.
Для того, чтобы нейросеть в будущем различала похожих людей, нужно ввести фотографии по очереди и вручную заполнить метаданные, указав имена персон.
3. Удаление персон, которых не планируется искать: зрители в концертном зале, болельщики на трибунах
Чтобы не перегружать систему лишней информацией, решили дать возможность пользователям удалять ненужные идентификаторы персон.
Кроме того, на первом этапе внедрения поиск нужной персоны для управления в Vision отнимал много времени и был доступен только по его имени. Впоследствии для удобства клиентов мы реализовали ещё несколько алгоритмов, например, поиск по идентификатору персоны и номеру изображения в Picvario.
В итоге мы получили решение, которое удовлетворяет всем требованиям пользователей относительно распознавания лиц. Специалисты постоянно наблюдают за работой пользователей, внося изменения в продукт с учетом особенностей бизнес-процессов и потребностей клиентов.
Источник фото на тизере: Alex Iby on Unsplash
Мнение редакции может не совпадать с мнением автора. Ваши статьи присылайте нам на 42@cossa.ru. А наши требования к ним — вот тут.
Источник: