УСТРОЙСТВО ДЛЯ ПОДСЧЕТА ПАССАЖИРОПОТОКА

ОБЛАСТЬ ТЕХНИКИ
Заявленное устройство относится к контрольным вычислительным средствам, в частности к устройству для подсчета пассажиропотока.
УРОВЕНЬ ТЕХНИКИ
Из существующего уровня техники известны различные решения для контроля пассажиропотока на наземном городском транспорте, например, автобусах, троллейбусах и трамваях. В качестве примера такой системы контроля пассажиропотока можно рассматривать систему Автокондуктор (http://www.autoconductor.ru/), которая содержит устанавливаемый внутри салона транспортного средства (ТС) датчик подсчета пассажиров, который осуществляет подсчет пассажиров с помощью анализа изображений, фиксируемых камерой датчика.
Известны также аналогичные решения, которые используют датчики для подсчета пассажиропотока, устанавливаемые внутри салона ТС, для фиксации изображений с камеры с входящими и выходящими пассажирами (например, DTI Vi-count 3D Over Door Passenger Counting, Laipac Starfinder BUS и др.).
Из патента РФ № 121628 (Общество с ограниченной ответственностью "БрейнКрафт", 27.10.2012) известна система для подсчета пассажиропотока, которая состоит из одной или более видеокамер, которые полностью обозревают салон транспортного средства, модуля глобального позиционирования, реализованный на основе технологий GPS и/или ГЛОНАСС, бортового компьютера, модуля распознавания, модуль беспроводной связи, сигнальных датчиков, удаленного сервера.
Общий недостаток существующих решений состоит в том, что датчик с камерой для подсчета пассажиропотока устанавливается внутри салона ТС, что приводит к снижению точности подсчета, поскольку внутри салона возникает большое количество перемещений пассажиров, которые не должны учитываться и приводят к появлению и накоплению ошибки в подсчете.
Кроме этого, внутреннее перемещение пассажиров внутри салона вне остановок общественного транспорта в контрольной области (например, когда человек стоит возле выхода и кого-то пропускает) увеличивает погрешность измерений, и для повышения точности необходимо проводить дополнительные вычислительные операции. Таким образом, гораздо эффективнее производить вычисления, основываясь на наблюдениях, полученных с наружной части ТС во время остановки (а не путем анализа видео в фоновом режиме).
РАСКРЫТИЕ ПОЛЕЗНОЙ МОДЕЛИ
Решаемой технической проблемой с помощью заявленного устройства является создание нового средства подсчета пассажиропотока, обеспечивающего высокоточный подсчет людей при установке устройства на внешней стороне ТС.
Техническим результатом является повышение точности подсчета пассажиропотока за счет размещения устройства на внешней стороне ТС, что позволяет фиксировать траекторию перемещения пассажиров и осуществлять фиксацию их количества с более точным разграничением на вход/выход в зоне контроля камеры.
Дополнительным техническим результатом является обеспечение удаленной настройки положения камеры датчика подсчета пассажиропотока с помощью электропривода, а также обеспечение четкого изображения при различных погодных условиях за счет снабжения устройства средством очистки защитного стекла камеры. Также, расширяется арсенал технических средств для подсчета пассажиропотока.
Дополнительно, преимуществом заявленного устройства является то, что при внешней установке требуется минимальное вмешательство в конструкцию ТС. К тому же, во многих случаях, датчики пассажиропотока невозможно установить внутри салона из-за конструктивных особенностей (низкий потолок, наличие поручней\багажных полок в периметре входной площадки и т.п.).
Заявленное устройство для подсчета пассажиропотока, установленное на внешней части кузова ТС, содержит корпус с защитным стеклом, в котором объединены:
счетчик пассажиропотока, содержащий процессорный модуль, камеру, модуль памяти, блок питания, сетевой интерфейс и интерфейсы ввода/вывода, причем процессорный модуль выполнен с возможностью определения траектории перемещения пассажиров на изображениях, фиксируемых камерой, определения попадания каждой зафиксированной траектории в зону видимости камеры, осуществления подсчета количества пассажиров на основании траектории их перемещения и сохранения данных подсчета пассажиропотока в памяти;
электропривод положения камеры, выполненный с возможностью удаленной настройки через канал передачи данных положения камеры и соединенный с процессорным модулем через интерфейс ввода\вывода счетчика;
устройство очистки защитного стекла, соединенное с процессорным модулем через интерфейс ввода\вывода счетчика.
В одном из примеров реализации устройства корпус выполняется пылевлагозащищенным.
В другом примере реализации устройство устанавливается на внешней стороне кузова ТС над пассажирской дверью.
В другом примере реализации устройства дополнительно содержит по меньшей мере одну подсветку камеры.
В другом примере реализации устройства подсветка представляет собой ИК и/или LED подсветку.
В другом примере реализации устройство очистки защитного стекла представляет собой щетку стеклоочистителя.
В другом примере реализации устройство дополнительно содержит форсунку для подачи омывающей жидкости.
В другом примере реализации устройства в корпусе установлено средство для обогрева защитного стекла, соединенное с процессором через интерфейс ввода\вывода.
В другом примере реализации устройства процессорный модуль дополнительно выполнен с возможностью формирования пакетов данных, содержащих графические данные и данные статистики пассажиропотока, передаваемые через сетевой интерфейс на удаленный сервер.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1 иллюстрирует общий вид заявленного устройства.
Фиг. 2 иллюстрирует пример работы устройства на транспортном средстве.
Фиг. 3 иллюстрирует график распределения времени посадки/высадки пассажиров.
ОСУЩЕСТВЛЕНИЕ ПОЛЕЗНОЙ МОДЕЛИ
Как представлено на Фиг. 1 общая схема заявленного устройства (100) для подсчета пассажиропотока включает в себя такие компоненты, как процессорный модуль (111), модуль памяти (112), камеру (113), интерфейс ввода/вывода (114), блок питания (115), сетевой интерфейс (116). Указанные элементы формируют датчик (110) для контроля пассажиропотока и размещаются, например, на единой плате в корпусе. В едином корпусе устройства (100) датчик (110) через интерфейс ввода/вывода (114) соединен с электроприводом управления камерой (121) и устройством очистки стекла (122). Дополнительно устройство (100) может содержать также устройство для обогрева защитного стекла (123) и подсветку камеры (124).
Элементы устройства (100) соединяются между собой посредством сборочных операций и образуют единое функционально-конструктивное изделие, достаточное для выполнения предписанных функций и достижения требуемого технического эффекта.
В качестве процессорного модуля (111) может применяться, например, однопроцессорный или мультипроцессорный модуль, микроконтроллер, SoC (система на кристалле) и т.п.  Процессорный модуль (111) выполняет необходимый функционал по обработке информации, поступающей с элементов датчика (110).
Модуль памяти (112) может включать в себя как ОЗУ, так и ПЗУ (флэш-память, жесткий диск, SSD и т.п.). Модуль памяти (112) предназначен для хранения исполняемой программной логики процессором (111), а также данные статистики и прочую информацию, получаемую от элементов датчика (110), например, камеры (113).
Камера (113) выполняется, например, на основании одного или нескольких CMOS-датчиков (КМОП) и предназначена для захвата изображений в области видимости камеры (113) для последующей их обработки с помощью процессорного модуля (111) для анализа траектории перемещения и расчета количества пассажиров.
Интерфейс ввода/вывода (114), например, низкоуровневый интерфейс ввода-вывода прямого управления (GPIO - General Purpose Input Output). В качестве интерфейса В/В (114) может также применяться UART, i2c, SPI и другие типы интерфейсов. Устройство (100) обеспечивает взаимодействие датчика (110) через соответствующий интерфейс (114) элементом управления положением датчика (121), в частности электроприводом (цифровой сервопривод) положения камеры (113), который позволяет осуществить удаленную настройку через канал передачи данных, например, радиоканал, GSM/3G/LTE/5G, Интернет и т.п. Датчик (110) через интерфейс также соединен с устройством для очистки защитного стекла датчика (110), например, выполненное в виде щетки стеклоочистителя. Дополнительно может применяться форсунка для подачи стеклоомывающей жидкости, при этом обеспечивается контур подачи жидкости в форсунку.
Устройство (100) выполняется в едином корпусе (кожухе), который имеет пыле – влаго- защиту и выполняется антивандальным для исключения возможности выведения устройства (100) из строя с помощью внешнего физического и/или электрического воздействия. Дополнительно устройство (100) может включать устройство (123) обогрева защитного стекла, например, нити обогрева стекла или нагревательный элемент иного типа. Также, камера (113) может содержать ИК и/или LED подсветку для улучшения видимости в темное время суток, непогоду и т.п.
Блок питания (115) выполняется в виде аккумулятора, обеспечивающего питание элементов датчика (110). Блок питания (115) обеспечивает напряжение 12-36 В. Подключение питания также возможно при подключении к бортовой сети ТС, возможно также подключение питания по стандарту PoE (Power over Ethernet).
Сетевой интерфейс (116) представляет собой, например, интерфейс Ethernet, который предназначен для передачи информации на удаленный сервер, например, через коммутатор и/или роутер, установленный в ТС.
Далее будет рассмотрен принцип работы устройства (100). Как показано на Фиг. 2 устройство (100) устанавливается на внешней стороне ТС (10), в частности в наддверной области. Расположение устройства (100) может быть различным и обуславливаться конструктивными особенностями ТС (10). Устройство (100) жестко фиксируется на корпусе ТС (10) с помощью, например, болтового типа соединения или сварки.
Датчик (110) устройства (100) настраивается таким образом, чтобы область видимости камеры (113) захватывала двери ТС (10), в частности, камера (113) фиксирует траектории (21, 22) перемещения пассажиров (20) в контрольной области (30). Область (30), в отличие от известных решений, представляет собой границу ТС (10) при выходе или входе пассажиров (20). С помощью такой реализации при захвате изображения камерой (113) можно с большей точностью определить траектории (21, 22) перемещения пассажиров (20) и четко разграничить входящих и выходящих людей.
Наружное размещение датчика (110) требует меньших затрат на установку и настройку (достаточно один раз определить высоту и угол обзора камеры, и далее использовать единые параметры для всех случаев) и меньших затрат на вычисление.
Алгоритм подсчета пассажиров (20), реализуемый процессорным модулем (111) основан на анализе траекторий (21, 22) движения пассажиров (20) в заданной контрольной области (30) в случае появления новых объектов в ней. Далее будет более детально описан принцип работы алгоритма обработки изображений с помощью процессорного модуля (111).
При получении изображения с камеры (113) вначале с помощью процессора (111) отбираются движущиеся объекты – пассажиры (20) для анализа их траекторий (21, 22). Входные кадры видеопотока разбиваются на небольшие блоки размера, нпример, 32х32 пиксела. В ходе экспериментов с датчиком (110) было установлено, что такой размер блока обеспечивает хороший компромисс между точностью результата, объемом производимых операций и устойчивостью к быстрой смене картинки на соседних кадрах. Затем для каждого блока на каждом входном кадре выделяются потенциальные объекты, траекторию которых будет отслеживаться. Для каждого выявленного объекта определяются точки смещения (вектор признаков) для m последовательных кадров, и только для перемещаемых объектов строится траектория их движения.
Далее выполняется анализ траекторий для отобранных объектов. Траектории, не удовлетворяющие условию попадания в наблюдаемую область в A (30), удаляются и не подлежат анализу. Анализ траекторий для удаления осуществляется по следующей формуле:
если или .
i
Далее выполняется определение расстояния между начальным и конечным положением -го объекта слежения:
-,
L
2
где   и   - начальное и конечное положение объекта, а расстояние  определяется в смысле -нормы.
При этом для объектов (пассажиров (20)), вошедших в транспорт (10) это расстояние должно превышать размеры наблюдаемой области (30). Поэтому соответствующие траектории будут учитываться при подсчёте, если будет выполняться условие:
,
где  и  - ширина и высота области наблюдения.
Для разделения множества траекторий (21, 22) на входящих и выходящих пассажиров (20) дополнительно проверяется условие разности начальной и конечной координаты. Если ->0, то входит, если -)<0, то выходит.
При анализе траекторий перемещения пассажиров (20) также учитывается “время жизни” траектории пассажира (20), которая вычисляется исходя из среднестатистического времени, необходимо для осуществления посадки/высадки пассажира (20) в ТС (10). Анализ времени жизни для характерных точек траекторий (признаков) показал, что время между появлением и исчезновением объекта в кадре находится в пределах определенного интервала, и его плотность распределения может быть аппроксимирована нормальным законом. На Фиг. 3 приведены статистические показатели времени посадки/высадки пассажиров (20).
Таким образом для моделирования “времени жизни” траектории пассажира (20) применяется нормальное распределение, и на основе максимального правдоподобия вычисляются оценки математического ожидания и дисперсии жизни траектории объектов, попадающих в контрольную область (30):
, -)-,
где  - время жизни траектории.
Если траектория   не удовлетворяет условию   , тогда она не учитывается.
На основе временных признаков осуществляется кластеризация траекторий: точки для последовательности кадров на основе отслеживаемых временных признаков объединяются в группы, близкие точки относятся к одному пассажиру (20). После процесса проверки траектории, для выделения человека в толпе применяется алгоритм кластеризации на основе временных характеристик: 1) в качестве центра кластера выбирается точка  для первой отобранной траектории; 2) для каждой последующей траектории  в момент времени t вычисляется расстояние в пространстве признаков для каждого существующего кластера.
Если выполняется одно из следующих условий, то формируется новый кластер
,
.
Иначе траектория относится к ближайшему существующему кластеру и центра кластера пересчитывается заново
,
,
k
где    - размер кластера .
Для каждого сформированного кластера проверяется его размер и обновляется, подсчитывается число пассажиров:
,  1,  если ,
0,  если ,
где K - общее число кластеров, а  - минимальное число объектов, достаточное для того, чтобы объединить их в новый кластер, значение   было выбрано экспериментально исходя из размеров изображения.
В ходе экспериментов работы устройства (100) было установлено, что траектории (21, 22) пассажиров (20) можно классифицировать по степени похожести. В целом траектории (21) входящих людей (20) похожи по своим характеристикам (одна из координат начального или конечного положения, покадровые смещения и пр.) друг на друга и не сильно отличаются от остальных. В случае размещения датчика (110) снаружи, траектории хорошо делятся на четыре класса для входящих пассажиров (20), что позволяет повысить точность подсчета пассажиропотока. Таким образом, обеспечение возможности обработки данных с помощью процессорного модуля (111), получаемых с камеры (113), обеспечивает необходимую обработку информации для подсчета пассажиропотока.
Информация о подсчетах пассажиропотока, а также видеопоток сохраняются в памяти (112) устройства (100) для последующей передачи этой информации на удаленный сервер. На основании данной информации процессорный модуль (111) может выполнять формирование пакетов данных, содержащих графические данные и данные статистики пассажиропотока, передаваемые через сетевой интерфейс на удаленный сервер.