Добрый день!
Сегодня мы хотим рассказать Вам про технологии подсчёта посетителей.
Традиционно людей по видео считают с помощью технологии трекинга или метода оптического потока.
Трекинг строит траектории перемещения движущихся объектов, а подсчет фиксирует направление пересечения виртуальной линии входа/выхода. Траектории можно строить несколькими способами:
1. С помощью анализа последовательности кадров, на которой присутствуют движущиеся объекты. В общем случае в одном кадре может присутствовать несколько движущихся объектов, поэтому программе необходимо не только построить траектории, но и различить объекты и их перемещения. Когда движущиеся объекты пересекают линию входа/выхода по одному, никакой сложности с подсчетом нет: задача сводится к определению направления пересечения линии.
С этой задачей может справиться метод подсчета, основанный на наиболее простой реализации трекинга, анализирующий объекты переднего плана (движущиеся объекты) на двух последовательных кадрах.
2. В общем случае люди в кадре могут перемещаться по-разному: их траектории могут пересекаться или перекрываться, а зоны движения, соответствующие объектам, — объединяться в одну область. В таком случае программе нужно выявить каждый объект, разделить группы объектов и корректно посчитать людей, пересекающих виртуальную линию в том или ином направлении.
В этих случаях задача построения точной траектории отдельных объектов усложняется, тогда метод построения траектории по двум кадрам, не подходит, он дает высокую погрешность. Для повышения точности подсчета также применяются методы разделения людей в группах. Это можно сделать с помощью оценки площадей групп или детектируя и подсчитывая головы людей.
Подсчет по трекингу предоставляет наилучшую точность работы, когда люди в кадре минимально перекрываются. И в реальных системах этого зачастую можно добиться, только устанавливая камеру над ограниченным проходом (узкая входная дверь, эскалатор и т.п.).
Подсчет посетителей на основе анализа оптического потока.
Если подсчет на базе трекинга находит объект в видеопотоке и следит за его перемещениями, то этот метод наблюдает за виртуальной линией входа/выхода и анализирует движение цветовых пикселей через нее. Метод следит за перемещением области определенной яркости и определенного цвета через линию, вычисляет характеристики особенностей изображения (края, углы, особые точки, информацию о текстуре и т.д.) При этом метод лишь фиксирует факт перемещения какого-то объекта через линию, но не определяет, что это за объект, сколько людей перемещаются в данном объекте. Для определения числа людей, пересекших линию, также используются методы детектирования голов и анализа площади движущегося объекта.
Этот метод применим для плотного потока людей, когда традиционные методы трекинга непригодны. Наиболее точный результат достигается, когда плотность потока людей приблизительно однородна.
В нашем «классическом» подсчёте посетителей мы реализовали и первый, и второй способы. В зависимости от условий, при которых происходит подсчет, пользователь может выбрать наиболее подходящий режим работы. Если условия съемки близки к идеальным (с точки зрения подсчета), можно использовать «классический» подсчёт посетителей Macroscop.
Мы озадачились поиском новых решений для подсчета посетителей.
Новый модуль 3D-подсчета посетителей реализован принципиально иначе. Если раньше подсчет использовал данные двух измерений, то в новом введено третье – глубина (расстояние от видеокамеры до человека). Теперь подсчет – это не просто модуль, это программно-аппаратный комплекс из специального устройства – датчика глубины,- и программного модуля обработки данных. Датчик вычисляет расстояние от устройства до объектов, излучая и принимая ИК – сигналы, строит матрицу глубины, с которой уже работает программа.
Глубина дает информацию о высоте того, кто пересекает линию входа-выхода, и позволяет отличать людей от прочих объектов. Пользователю необходимо задать в настройках минимальный рост посетителя, и все люди этого роста и выше будут подсчитываться системой.
Для пользователя 3D-подсчет посетителей предельно прост: надо задать всего две настройки- рост и линию входа.
Его результаты практически не зависят от условий, в которых производится подсчет (разве что вы считаете в каких-то очень сложных рельефах).
Он сверхточный – 98.6% в реальных условиях у реальных пользователей (а не в «тепличных» лабораторных, как часто любят тестировать программисты). Высочайшая точность обусловлена тем, что модуль работает не с картинкой, а с трехмерной картой. В дополнение мы реализовали несколько технологий, чтобы решать ряд ключевых задач при подсчете:
Задача разделения людей. Когда люди находятся близко друг к другу, их контуры на заданной высоте могут соединиться в один. Чтобы избежать «потери» человека мы «режем» карту глубины на слои и получаем многослойные контуры объектов. Контур без вложений соответствует макушке человека. Считаем макушки.
Новый 3D-подсчет посетителей намного проще традиционного модуля. Проще и с точки зрения реализованных в нем технологий, и с точки зрения пользовательской работы. При этом он существенно более точный и менее «прихотливый» к условиям съемки.
http://pro.macroscop.com/3dcounting?utm_medium=email&utm_source=UniSender&utm_campaign=153717521