СИСТЕМА И СПОСОБ ФОРМИРОВАНИЯ ОТЧЕТОВ НА ОСНОВАНИИ АНАЛИЗА МЕСТОПОЛОЖЕНИЯ И ВЗАИМОДЕЙСТВИЯ СОТРУДНИКОВ И ПОСЕТИТЕЛЕЙ
SYSTEM AND METHOD FOR FORMING REPORTS BASED ON THE ANALYSIS OF THE LOCATION AND INTERACTION OF EMPLOYEES AND VISITORS

ОБЛАСТЬ ПРИМЕНЕНИЯ
Настоящее изобретение относится к области использования искусственных нейронных сетей в компьютерном зрении, а более конкретно к системам и способам анализа и обработки видеоданных и метаданных, полученных от видеокамер, для автоматического формирования отчетов на основании полученных результатов и обеспечения таким образом контроля за действиями сотрудников.
УРОВЕНЬ ТЕХНИКИ
В настоящее время большую популярность приобрела тема контроля качества обслуживания посетителей в сфере розничной торговли. Качество обслуживания клиентов очень важно для владельцев торговых точек, поэтому они хотят контролировать уровень обслуживания посетителей/покупателей, предоставляемый сотрудниками их магазина. Хорошее обслуживание клиентов, а именно быстрое и эффективное, способствует росту потока клиентов и соответствующему росту продаж.
Из уровня техники известно множество различных методов сбора и обработки данных о деятельности покупателей в торговых залах. Большое распространение получили системы, включающие различные датчики, для подсчета посетителей и анализа их пути перемещения по магазину (см. US 2004/0111454 A1, CN 105122270 В). Такие решения способны показать владельцу, какие именно товары интересуют покупателей, подсчитать количество людей, выявить время наибольшего потока покупателей, однако не способны обеспечить контроль за работой сотрудников магазина.
Кроме того, из уровня техники также известно решение, раскрытое в международной заявке WO 2019/010557 A1, G06Q 10/00, опубл. 17.01.2019, в котором раскрыты различные варианты реализации систем и способов для сбора данных, относящихся к сфере обслуживания. Способ содержит такие этапы, как: а) размещение, по меньшей мере, одного датчика цвета и глубины в зоне обслуживания покупателей/клиентов, причем датчик обращен к клиентам в упомянутой зоне обслуживания; b) создание по меньшей мере одного цветного изображения и по меньшей мере одной карты глубины указанной зоны обслуживания с использованием по меньшей мере одного датчика цвета и глубины; с) использование процессора для обработки указанного по меньшей мере одного цветного изображения для извлечения первого набора дескрипторов клиентов по меньшей мере для одного клиента в указанной зоне обслуживания, причем указанный первый набор дескрипторов клиентов предназначен для описания указанного по меньшей мере одного клиента на основе по меньшей мере одного дескриптор цвета; d) использование процессора для обработки упомянутой по меньшей мере одной карты глубины для извлечения второго набора дескрипторов клиентов для упомянутого по меньшей мере одного клиента в указанной зоне обслуживания, причем указанный второй набор дескрипторов клиентов предназначен для описания указанного по меньшей мере одного клиента на основе по меньшей мере одного дескриптора глубины; е) выгрузка указанных первого и второго наборов дескрипторов клиентов на сервер для дальнейшей обработки.
Для реализации такой системы владельцу необходимо приобретать соответствующие датчики и устанавливать их в своем магазине. При этом анализируются именно действия покупателей/клиентов, а работа сотрудников никак не контролируется. Таким образом, такое решение является сложным и дорогостоящим в исполнении, а также малоэффективным в части контроля за обслуживанием посетителей.
Для обеспечения должной безопасности и контроля за сотрудниками многие современные торговые точки используют системы видеонаблюдения. Наличие таких систем положительно влияет на дисциплину и исполнительность сотрудников. Видеоданные с камер могут просматриваться оператором системы в режиме реального времени или записывается для последующего просмотра и анализа. Однако для мониторинга видео, предоставляемого множеством камер, может потребоваться большое количество людей и времени. При этом определение того, обеспечивается ли хорошее обслуживание клиентов, может быть проблематичным в таких условиях. Поэтому в настоящее время распространено использование автоматизированных систем сбора и обработки видеоданных. Такой подход является более эффективным и точным в плане анализа данных, а также исключает ошибки, вызванные человеческим фактором.
Под автоматизированными видеосистемами в контексте данной заявки подразумеваются программно-аппаратные средства, использующие методы компьютерного зрения для автоматизированного сбора данных на основании анализа потокового видео (видеоанализа). Такие видеосистемы опираются на алгоритмы обработки изображений, в том числе на алгоритмы распознавания, сегментации, классификации и идентификации изображений, позволяющие анализировать видео без прямого участия человека. Кроме того, современные видеосистемы позволяют автоматически анализировать видеоданные и метаданные с камер и сопоставлять указанные данные с данными, имеющимися в базе данных.
Таким образом, наиболее близким по технической сущности к заявляемому нами решению является известное из уровня техники решение, раскрытое в заявке US 2008/0018738 A1, H04N 7/18, опубл. 24.01.2008, в котором описана система видеонаблюдения за розничным бизнес-процессом, включающая в себя: средство видео аналитики для обработки видео, полученного видеокамерой, и для генерации видео примитивов относительно видео; пользовательский интерфейс для определения, по меньшей мере, одного интересующего действия в отношении просматриваемой области, причем каждое интересующее действие идентифицирует, по меньшей мере, одно из правила или запроса в отношении просматриваемой области; и средство вывода активности для обработки сгенерированных видео примитивов на основе каждой определенной активности интереса и определения, произошла ли интересующая активность в видео. Кроме того, данная система в одном из вариантов реализации содержит средство генерации отчетов, связанное со средством интерфейса предупреждений, для генерации отчета на основе одного или нескольких предупреждений об определенной активности.
Данное решение хоть и характеризует анализ видеоданных на основании заданных пользователем интересующих действий или событий, а также генерацию отчетов, однако существенно отличается от заявляемого решения как минимум основными операциями по обработке видеоданных и средствами, используемыми для упомянутой обработки. Кроме того, в известном решении не указано на различение сотрудников и покупателей, что делает невозможным анализ из взаимодействия.
Наше решение главным образом направлено на ускорение и повышение точности процесса обработки видеоданных и метаданных, а соответственно на обеспечение должного контроля за сотрудниками и обеспечение высокого качества обслуживание посетителей. В настоящее время к передовым технологиям обработки и анализа данных относится использование искусственных нейронных сетей.
Искусственная нейронная сеть (ИНС) – это математическая модель, а также ее аппаратное и/или программное воплощение, построенное по принципу организации и функционирования биологических нейронных сетей (сетей нервных клеток живых организмов). Одним из главных преимуществ ИНС является возможность их обучения, в процессе которого ИНС способна самостоятельно выявлять сложные зависимости между входными и выходными данными.
Именно использование одной или даже нескольких ИНС для обработки видеоданных и метаданных, а также использование стандартных средств видеонаблюдения и обработки видеоданных делает заявляемое решение более простым для осуществления, а также более точным и функциональным по сравнению с известными из уровня техники решениями.
РАСКРЫТИЕ СУЩНОСТИИЗОБРЕТЕНИЯ
Заявляемое техническое решение направлено на устранение недостатков, присущих предшествующему уровню техники и на развитие уже известных решений.
Техническим результатом заявленной группы изобретений является обеспечение автоматического формирования отчетов на основании анализа местоположения и взаимодействия сотрудников и посетителей, выполняемого с использованием по меньшей мере одной искусственной нейронной сети.
Данный технический результат достигается за счет того, что система для формирования отчетов на основании анализа местоположения и взаимодействия сотрудников и посетителей содержит: память, сконфигурированную для хранения базы данных, содержащей по меньшей мере фотографии лиц сотрудников и изображения их униформы, а также для хранения видеоданных и соответствующих им метаданных; по меньшей мере одно устройство захвата изображений, сконфигурированное для получения в режиме реального времени видеоданных из зоны контроля; графический пользовательский интерфейс (ГПИ), содержащий средства ввода и вывода данных для предоставления пользователю возможности задавать параметры работы системы; и по меньшей мере, одно устройство обработки данных, сконфигурированное для: получения видеоданных и метаданных объектов от по меньшей мере одного устройства захвата изображений или из памяти системы; анализа полученных метаданных объектов и видеоданных с использованием по меньшей мере одной искусственной нейронной сети (ИНС) для различения сотрудников по наличию униформы и посетителей, идентификации личности каждого выявленного сотрудника, а также для дальнейшего анализа местоположения и взаимодействия сотрудников и посетителей в соответствии с заданными пользователем параметрами работы системы; автоматического формирования по меньшей мере одного отчета на основании результатов упомянутого анализа за заданный пользователем системы интервал времени.
Указанный технический результат также достигается за счет способа формирования отчетов на основании анализа местоположения и взаимодействия сотрудников и посетителей, выполняемого компьютерной системой, содержащей, по меньшей мере, графический пользовательский интерфейс, содержащий средства ввода и вывода данных для предоставления пользователю возможности задавать параметры работы системы, устройство обработки данных и память, хранящую базу данных, содержащую по меньшей мере фотографии лиц сотрудников и изображения их униформы, а также хранящую видеоданные и соответствующие им метаданные, причем способ содержит этапы, на которых осуществляется: получение видеоданных и метаданных объектов от по меньшей мере одного устройства захвата изображений или из памяти системы, причем каждое упомянутое по меньшей мере одно устройство захвата изображений сконфигурировано для получения в режиме реального времени видеоданных из своей зоны контроля; анализ полученных метаданных объектов и видеоданных с использованием по меньшей мере одной искусственной нейронной сети (ИНС) для различения сотрудников по наличию униформы и посетителей, идентификации личности каждого выявленного сотрудника, а также для дальнейшего анализа местоположения и взаимодействия сотрудников и посетителей в соответствии с заданными пользователем параметрами работы системы; автоматическое формирование по меньшей мере одного отчета на основании результатов упомянутого анализа за заданный пользователем системы интервал времени.
В одном частном варианте заявленного решения при анализе по меньшей мере одна ИНС пытается идентифицировать униформу на каждом распознанном человеке по визуальной схожести путем сравнения изображения одежды человека, полученного от по меньшей мере одного устройства захвата изображений, с по меньшей мере одним изображением униформы, хранящимся в базе данных системы, при этом если на человеке идентифицирована униформа, то система считает, что человек является сотрудником, а если униформа не идентифицирована, то система считает, что человек является посетителем, причем в случае, когда системой определено, что человек является сотрудником, выполняется идентификация личности упомянутого сотрудника путем сравнения с использованием другой ИНС распознанного лица сотрудника с фотографиями лиц сотрудников, хранящимися в базе данных системы.
В другом частном варианте заявленного решения система дополнительно сконфигурирована для автоматического пополнения базы данных, содержащей по меньшей мере фотографии лиц сотрудников и изображения их униформы, для обучения по меньшей мере одной ИНС, причем пополнение базы данных и обучение по меньшей мере одной ИНС являются постоянными процессами.
Еще в одном частном варианте заявленного решения средствами ввода ГПИ являются по меньшей мере: блок задания максимального расстояния от сотрудника до посетителя, блок задания минимального времени сохранения заданного расстояния, блок максимального допустимого времени в секундах в течение которого к посетителю должен подойти сотрудник, блок визуального задания по меньшей мере одной зоны контроля на кадре, а средством вывода является, по меньшей мере, блок отображения.
В другом частном варианте заявленного решения перед анализом при задании параметров работы системы пользователь задает конкретные данные в блоке задания максимального расстояния от сотрудника до посетителя и в блоке задания минимального времени сохранения заданного расстояния, причем если в результате последующего анализа определено, что расстояние между сотрудником и посетителем меньше или равно максимальному расстоянию, то считается что сотрудник подошел к посетителю, при этом если упомянутое расстояние не превышает максимальное расстояние на протяжении времени, которое больше минимального времени сохранения упомянутого расстояния, то считается, что сотрудник общается с посетителем.
Еще в одном частном варианте заявленного решения по полученным данным после анализа формируется отчет в виде таблицы, содержащий данные о каждом конкретном сотруднике, сколько времени ему требуется, чтобы подойти к новому посетителю, и сколько времени он беседует с каждым посетителем.
А еще в одном частном варианте заявленного решения по полученным данным после анализа формируется отчет в виде таблицы, содержащий данные о эпизодах, когда к новому посетителю сотрудник не подходил более чем N секунд, при этом N является положительным целым числом, задаваемым в настройках системы посредством блока максимального допустимого времени в секундах в течение которого к новому посетителю должен подойти сотрудник.
В другом частном варианте заявленного решения по полученным данным после анализа формируется отчет в виде графика по каждой зоне контроля за заданный пользователем промежуток времени, содержащий данные о количестве сотрудников в предварительно заданной зоне контроля, при этом по шкале X указано время, а по шкале Y указано количество сотрудников, причем упомянутая зона контроля либо задается в процессе настройки работы системы в блоке визуального задания по меньшей мере одной зоны контроля на кадре, либо если не задано иное, зоной контроля является вся область зрения устройства захвата изображений.
Еще в одном частном варианте заявленного решения по полученным данным после анализа формируется отчет в виде таблицы, содержащий данные о том, сколько времени сотрудники проводят в различных зонах контроля, причем зонами контроля являются различные помещения, в каждом из которых размещено по меньшей мере одно устройство захвата изображений, при этом если сотрудник попадает в поле зрение хотя бы одного устройства захвата изображений, то система считает, что он находится в соответствующей ему зоне контроля, а если сотрудника нет в поле зрения ни одного устройства захвата изображений, то система считает, что сотрудника нет на рабочем месте.
В другом частном варианте заявленного решения упомянутый отчет формируется по каждому конкретному сотруднику за заданный пользователем системы промежуток времени, при этом в отчете указано, сколько времени сотрудник проводит в каждой конкретной зоне контроля и сколько времени он не находится на рабочем месте.
Еще в одном частном варианте заявленного решения упомянутый отчет формируется по каждой конкретной зоне контроля за заданный пользователем системы промежуток времени, при этом в отчете указано, сколько времени в этой зоне контроля провел каждый конкретный сотрудник.
В другом частном варианте заявленного решения в случае если в зоне контроля находится только один сотрудник, который является кассиром, то по полученным данным после анализа формируется отчет, содержащий данные о том, сколько времени проходит перед тем как каждый посетитель подходит к кассе, при этом отчет также содержит данные о времени, когда именно конкретный посетитель подошел к кассе и сколько времени он провел на кассе, причем для формирования упомянутого отчета пользователь системы предварительно визуально задает зону контроля на кадре, при нахождении посетителя в которой система считает, что посетитель подошел к кассе.
Еще в одном частном варианте заявленного решения упомянутый по меньшей мере один отчет формируется при анализе архивных видеоданных, хранящихся в памяти системы.
В другом частном варианте заявленного решения упомянутый по меньшей мере один отчет автоматически формируется с предварительно заданной периодичностью, которая задается пользователем системы посредством использования средств ГПИ.
А еще в одном частном варианте заявленного решения упомянутый по меньшей мере один отчет выводится на экран пользователю системы посредством блока отображения или автоматически отправляется предварительно заданному пользователю системы.
Помимо указанного выше, данный технический результат также достигается за счет считываемого компьютером носителя данных, содержащего исполняемые процессором компьютера инструкции для осуществления способов формирования отчетов на основании анализа местоположения и взаимодействия сотрудников и посетителей.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1 – блок-схема системы для формирования отчетов на основании анализа местоположения и взаимодействия сотрудников и посетителей.
Фиг. 2 – блок-схема варианта графического пользовательского интерфейса, используемого для задания параметров работы системы;
Фиг. 3А – пример графика контроля сотрудников в первой зоне контроля (в торговом зале);
Фиг. 3Б – пример графика контроля сотрудников во второй зоне контроля (на складе);
Фиг. 4 – блок-схема способа формирования отчетов на основании анализа местоположения и взаимодействия сотрудников и посетителей.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
Ниже будет приведено описание примерных вариантов осуществления заявленной группы изобретений. Однако заявленная группа изобретений не ограничивается только этими вариантами осуществления. Специалистам будет очевидно, что под объем заявленной группы изобретений, описанной в формуле, могут попадать и другие варианты реализаций.
Заявляемое техническое решение в различных своих вариантах осуществления может быть выполнено в виде вычислительных систем и способов, реализуемых различными компьютерными средствами, а также в виде считываемого компьютером носителя данных, хранящего исполняемые процессором компьютера инструкции.
На фиг. 1 представлена блок-схема системы для формирования отчетов на основании анализа местоположения и взаимодействия сотрудников и посетителей. Данная система в общей своей комплектации включает в себя: память (10) сконфигурированную для хранения базы данных (DB), видеоданных и метаданных; по меньшей мере одно устройство захвата изображений (20, …, 2n); по меньшей мере одно устройство обработки данных (30, …, 3m), и графический пользовательский интерфейс (40), установленный на каждом упомянутом устройстве обработки данных. Память, устройства обработки данных и устройства захвата изображений могут быть объединены в единую систему посредством использования локальной сети или через интернет.
В данном контексте под компьютерными системами понимаются любые вычислительные системы, построенные на базе программно-аппаратных взаимосвязанных технических средств.
Под устройством захвата изображений подразумевается видеокамера.
В качестве устройства обработки данных может выступать процессор, микропроцессор, графический процессор, ЭВМ (электронно-вычислительная машина), ПЛК (программируемый логический контроллер) или интегральная схема, сконфигурированные для исполнения определенных команд (инструкций, программ) по обработке данных.
Графический пользовательский интерфейс (ГПИ) представляет собой систему средств ввода и вывода данных, для взаимодействия пользователя с вычислительным устройством, основанную на представлении всех доступных пользователю системных объектов и функций в виде графических компонентов экрана (окон, значков, меню, кнопок, списков и т.п.). При этом пользователь имеет произвольный доступ, посредством устройств ввода/вывода данных, ко всем видимым экранным объектам блокам интерфейса, которые отображаются на дисплее. Устройство ввода/вывода данных может представлять собой, но, не ограничиваясь, например, манипулятор мышь, клавиатуру, тачпад, стилус, джойстик, трекпад и т.п.
В роли устройства памяти, сконфигурированного для хранения данных, могут выступать, но, не ограничиваясь, жесткие диски (HDD), флеш-память, сервера, ПЗУ (постоянное запоминающее устройство), твердотельные накопители (SSD), оптические накопители информации и т.д. Причем в случае, когда в роли устройства памяти выступает сервер, он может как хранить данные, так и осуществлять их обработку, например, для формирования метаданных. В контексте данной заявки память хранит базу данных (DB), которая содержит по меньшей мере фотографии лиц сотрудников и изображения их униформы, а также видеоданные и соответствующие им метаданные.
Следует отметить, что в описанную систему могут входить и любые другие известные в данном уровне техники устройства, например, такие как различного вида датчики, устройства ввода/вывода, устройства отображения и т.п.
Далее будет подробно описан пример работы вышеупомянутой системы для формирования отчетов на основании анализа местоположения и взаимодействия сотрудников и посетителей. Все нижеописанные этапы работы системы также применимы и к реализации заявляемого способа формирования отчетов на основании анализа местоположения и взаимодействия сотрудников и посетителей, который будет рассмотрен более подробно ниже.
Рассмотрим принцип работы заявляемой системы, сконфигурированной главным образом для обеспечения контроля за сотрудниками. Предположим, рассматриваемая система формирования отчетов на основании анализа, а также соответствующее ей ПО, установлены в магазине, владелец которого хочет контролировать работу своих сотрудников для повышения уровня обслуживания посетителей. Каждый сотрудник имеют свою униформу (либо одинаковую, либо различающуюся в зависимости от должности). Рабочее помещение/магазин оборудовано необходимым количеством устройств захвата изображений. Их количество зависит от площади контролируемого помещения и количества контролируемых помещений в магазине. Каждое устройство захвата изображений, в данном случае видеокамера, расположено таким образом, чтобы непрерывно в режиме реального времени получать видеоданные из своей области зрения. При этом видеокамеры могут содержать трекер объектов, сконфигурированный для формирования метаданных объектов. Или же в другом варианте, если в системе используются самые простые видеокамеры, то трекер объектов может быть установлен на сервере (выступающем в роли памяти системы) для обработки видеоданных, получаемых от видеокамер системы, и для формирования соответствующих им метаданных. Трекер объектов в контексте данной заявки это программный алгоритм для определения местоположения движущихся объектов в видеоданных. Посредством использования упомянутого трекера возможно выполнить обнаружение всех движущихся в кадре объектов и определить их конкретные пространственные координаты.
Полученные тем или иным образом метаданные объектов (от видеокамер или от сервера) сохраняются в память системы, вместе с соответствующими им видеоданными, для обеспечения возможности дальнейшего анализа по архивным данным. А в случае, когда все видеокамеры системы содержат трекер объектов, получаемые в режиме реального времени видеоданные и метаданные могут сразу же передаваться к устройству обработки данных. Следует отметить, что метаданными являются подробные данные обо всех объектах, перемещающихся в поле зрения каждой камеры (местоположения, траектории движений, описатели лиц, описатели одежды и т.п.).
Что касается зоны контроля, то она либо задается пользователем системы на кадре, либо вся область зрения видеокамеры является зоной контроля. В некоторых вариантах (когда контролируется большое помещение) к одной зоне контроля может быть привязано несколько видеокамер. Для маленького помещения может быть достаточно одной камеры. Следует отметить, что устройства захвата изображений предпочтительно располагать в торговых помещениях таким образом, чтобы полностью охватывать все помещение (области зрения камер могут немного пересекаться/накладываться, для получения полной картины). Таким образом при анализе изображений легко обнаружить каждого человека, получить хорошее одно или несколько его изображений по видеоданным, а также отследить маршрут его перемещения по магазину и проанализировать его взаимодействие с другими людьми (по метаданным и видеоданным).
Далее основную работу выполняет по меньшей мере одно устройство обработки данных, например, такое как графический процессор компьютера. При этом взаимодействие пользователя с системой осуществляется посредством использования графического пользовательского интерфейса (ГПИ), установленного на каждом устройстве обработки данных, причем упомянутый ГПИ содержит необходимые средства ввода и вывода данных.
Как указано на фиг. 2, в одном частном варианте исполнения средствами ввода ГПИ являются по меньшей мере: блок задания максимального расстояния от сотрудника до посетителя (b1), блок задания минимального времени сохранения заданного расстояния (b2), блок максимального допустимого времени в секундах в течение которого к посетителю должен подойти сотрудник (b3), блок визуального задания по меньшей мере одной зоны контроля на кадре (b4). А средством вывода является, по меньшей мере, блок отображения (b5). Кроме того, ГПИ может содержать любые другие блоки дополнительно или взамен указанных, в зависимости от требований владельца магазина по контролю для формирования необходимых отчетов после выполнения анализа данных. Для примера, ГПИ может содержать блок задания/выбора даты и интервала времени (b6).
Итак, устройство обработки данных (одно или несколько)в одном варианте может непрерывно получать в режиме реального времени все видеоданные и соответствующие им метаданные, поступающие от по меньшей мере одного устройства захвата изображений (если видеокамеры содержат трекер объектов). При этом устройство обработки данных в другом варианте реализации может в любое время получать видеоданные и метаданные непосредственно из памяти системы, в роли которой выступает сервер. При этом сервер в режиме реального времени получает видеоданные от устройств захвата изображений и формирует соответствующие им метаданные, после чего хранит упомянутые видеоданные и метаданные для обеспечения анализа по архивным данным.
Далее полученные тем или иным образом видеоданные и метаданные объектов анализируются устройством обработки данных с использованием по меньшей мере одной искусственной нейронной сети (ИНС) для (а) различения сотрудников и посетителей по наличию или отсутствию униформы, (б) идентификации личности каждого выявленного сотрудника, а также для (в) дальнейшего анализа местоположения и взаимодействия сотрудников и посетителей в соответствии с заданными пользователем параметрами работы системы посредством использования ГПИ.
При этом при анализе система сначала распознает всех людей на каждом кадре видеоданных, а затем по меньшей мере одна ИНС пытается идентифицировать униформу на каждом распознанном человеке. Упомянутая идентификация униформы выполняется по визуальной схожести путем сравнения изображения одежды человека с по меньшей мере одним изображением униформы, хранящимся в базе данных системы.
Если в процессе идентификации распознанное изображение одежды человека совпадает в достаточной степени хотя бы с одним изображением униформы сотрудников из базы данных, то система прекращает процесс идентификации с положительным результатом. Такой подход позволяет не тратить впустую имеющиеся вычислительные ресурсы системы и ускоряет процесс сравнения. А принцип идентификации следующий: искусственная нейронная сеть получает отдельное изображение одежды человека, после чего выдает некоторый вектор чисел - дескриптор изображения. База данных хранит выборку эталонных изображений всех униформ, используемых в рассматриваемом магазине, включающую соответствующий каждому изображению униформы дескриптор. Для сравнения изображений ИНС использует именно эти дескрипторы. Причем ИНС обучена так, что чем меньше угол между этими векторами чисел в пространстве, тем больше вероятность совпадения изображений. В качестве метрики для сравнения используется косинус угла между векторами чисел (векторами из базы данных и полученным вектором изображения одежды человека, на котором нужно проверить наличие униформы). Соответственно, чем ближе косинус угла между векторами к единице, тем больше вероятность, что одежда человека является униформой. Пользователь при настройке системы может задать диапазон значений, при котором система будет принимать решение о наличии униформы. В противном случае система будет считать, что на человеке нет униформы, и значит он является покупателем/клиентом/посетителем магазина. При этом искусственная нейронная сеть сравнивает последовательно полученное изображение одежды каждого распознанного человека со всеми имеющимися в базе данных изображениями различного вида униформ до тех пор, пока не получит достаточного совпадения.
Если на человеке идентифицирована униформа, то система считает, что человек является сотрудником, а если униформа не идентифицирована, то система считает, что человек является посетителем. Далее, если системой определено, что человек является сотрудником, то устройство обработки данных переходит к следующему этапу - (б) идентификации личности сотрудника. Упомянутая идентификация личности каждого выявленного по наличию униформы сотрудника осуществляется путем сравнения распознанного лица сотрудника с фотографиями лиц сотрудников, хранящимися в той же самой базе данных системы. Следует отметить, что идентификация личности выполняется с использованием либо уже используемой ИНС, или же (что более предпочтительно) с использованием другой/отдельной ИНС. А принцип идентификации аналогичен вышеописанному, только в этом случае искусственная нейронная сеть выделяет отдельное изображение лица сотрудника из изображения человека в униформе, после чего выдает дескриптор изображения, который аналогичным образом сравнивается с дескрипторами фотографий лиц сотрудников, хранящимися в базе данных системы вместе с упомянутыми фотографиями лиц. Следует отметить, что анализ видеоданных может выполняться постоянно или же по сигналу от пользователя системы за определенный интервал времени. То есть для торговой точки с четким рабочим графиком с 10:00 до 22:00 актуально анализировать видеоданные только в этот промежуток времени для экономии памяти и вычислительных ресурсов системы. При этом в остальное время (например, ночью) система может работать в режиме стандартной системы видеонаблюдения, записывая видеоданные в архив для обеспечения безопасности и охраны помещений.
Следует отметить, что дополнительно рассматриваемая система сконфигурирована для автоматического пополнения базы данных, содержащей по меньшей мере фотографии лиц сотрудников и изображения их униформы, а также для обучения по меньшей мере одной используемой ИНС. При этом пополнение базы данных и обучение по меньшей мере одной ИНС являются постоянными процессами, поскольку внешний вид униформы, а также черты лиц сотрудников меняются со временем. Обучение каждой искусственной нейронной сети в контексте заявляемого решения выполняется на основании пополняемой базы данных. Пользователь системы может задать определенное время, в которое будет выполняться обучение искусственной нейронной сети. Например, один раз в день. При этом упомянутое обучение может выполняться, например, устройством обработки данных или же облачным сервисом или любым другим вычислительным устройством. При этом более конкретно следует указать, что база данных содержит выборку изображений каждого вида униформы, а также выборку фотографий лиц для каждого конкретного сотрудника. Выборка представляет собой множество изображений. Пользователь системы может при настройке ее работы задать конкретное число изображений, которое должно содержаться в каждой выборке. Таким образом, выборка изображений каждого вида униформы содержит N последних загруженных изображений для этого вида униформы, где N является положительным целым числом, предварительно заданным пользователем. Аналогичным образом формируется выборка фотографий лиц каждого конкретного сотрудника. Предположим, пользователь при настройке работы системы задал N=5. В этом случае именно пять изображений содержится в каждой выборке. При этом при поступлении нового изображения (то есть шестого) автоматически удаляется более старое изображение и сохраняется новое. Так поддерживается актуальность базы данных и постоянное число изображений в выборке.
Проще говоря, подытожив вышесказанное, по меньшей мере одно устройство обработки данных сначала обнаруживает каждого человека в кадре, затем распознает одежду на человеке и далее анализирует выборку изображений каждого вида униформы, для выявления совпадения. При выявлении совпадения одежды человека с униформой магазина система определяет, что человек является сотрудником, после чего распознает лицо человека в униформе и последовательно анализирует выборку фотографий лиц каждого сотрудника, для выявления совпадения и соответственно идентификации личности сотрудника.
Для выполнения следующего этапа, а именно выполнения (в) анализа местоположения и взаимодействия сотрудников и посетителей, пользователь системы должен задать конкретные параметры работы системы, на основании которых будут анализироваться видеоданные, соответствующие им метаданные и полученные данные после различения сотрудников и посетителей, а также после идентификации личности сотрудников. Таким образом перед анализом пользователь задает параметры работы системы посредством использования средств ГПИ, указанных ранее. А именно в одном из частных вариантов исполнения пользователь задает конкретные данные в блоке задания максимального расстояния от сотрудника до посетителя (b1) и в блоке задания минимального времени сохранения заданного расстояния (b2). При этом если в результате последующего анализа определено, что расстояние между сотрудником и посетителем меньше или равно максимальному расстоянию, то считается что сотрудник подошел к посетителю. А если упомянутое заданное расстояние не превышает максимальное расстояние на протяжении времени, которое больше минимального времени сохранения заданного расстояния, то считается, что сотрудник общается с посетителем.
Для примера рассмотрим ситуацию, в которой пользователь системы задал в (b1) - 1 метр, а в (b2) - 30 сек (задать можно любые значения). Следует отметить, что минимальное время сохранения упомянутого расстояния задается для исключения ложных случаев, например, если сотрудник просто прошел мимо посетителя. Таким образом получается, что если сотрудник подошел к посетителю на расстояние менее 1 метра, но через 5 секунд отошел на расстояние больше 1 метра, то система определит, что сотрудник просто прошел мимо, а вот если сотрудник подошел на расстояние 0,8 метра к покупателю и это расстояние сохраняется таким же или в пределах заданного 1 метра дольше заданных 30 секунд, то система определяет, что сотрудник обслуживает посетителя.
После анализа по заданным пользователем данным/критериям, а также после предварительного указания конкретной даты и диапазона/интервала времени (например, дата 4 ноября 2019 года, интервал с 10:00 до 15:00), система может перейти к финальному этапу – автоматическому формированию по меньшей мере одного отчета на основании результатов упомянутого анализа за заданный интервал времени.
По полученным данным после анализа может быть автоматически сформирован отчет в виде таблицы, содержащий данные о каждом конкретном сотруднике, сколько времени ему требуется, чтобы подойти к новому посетителю, и сколько времени он беседует с каждым посетителем. При этом в отчет не попадают случаи, когда сотрудник проходит мимо посетителя. Отчетная таблица может выглядеть как представлено для примера в Таблице 1.
При этом количество указанных в таблице сотрудников зависит от реального количества сотрудников, работавших в указанный день, и главным образом от количества обслуженных посетителей. Таким образом факт обслуживания каждого посетителя фиксируется в таблице. Время в таблице указано в формате «ЧЧ:ММ:СС».
По такому отчету можно легко определить, какие сотрудники обслуживают больше посетителей, а также отследить низкую активность сотрудников. Или же можно определить, кто из сотрудников долго беседует с каждым посетителем, а кто наоборот слишком мало.
В другом частном варианте исполнения по полученным данным после анализа формируется отчет в виде таблицы, содержащий данные об эпизодах, когда к новому посетителю сотрудник не подходил более чем N секунд. При этом N является положительным целым числом, задаваемым в настройках системы посредством блока максимального допустимого времени в секундах в течение которого к новому посетителю должен подойти сотрудник (b3). Допустим, пользователь системы задал N=20 сек. Тогда в таблице будет указано время появления нового посетителя и если в течение 20 секунд к посетителю не подойдет ни один сотрудник, то данные будут зафиксированы в таблице. Таблица может выглядеть аналогичным образом, как и Таблица 1, при этом содержать только данные тех эпизодов, в которых разница времени подхода к новому посетителю и времени входа нового посетителя превышает заданные 20 секунд или эпизодов, когда к посетителю вообще не подходил ни один сотрудник магазина. В другом варианте таблица может содержать все эпизоды обслуживания каждого нового посетителя, при этом, если посетитель ждет сотрудника больше чем N секунд, то такие эпизоды в отчете будут выделены цветом в столбце «Время реакции сотрудника». Примерный вариант отчета представлен в Таблице 2. В данном примере представлены все эпизоды обслуживания посетителей с выделением цветов эпизодов, когда время реакции сотрудника превысило максимальное допустимое временя.
По такому отчету легко отследить какие сотрудники медленно реагируют на приход нового посетителя и выяснить связано ли это с большим потоком посетителей в определенные часы работы магазина.
В еще одном частном варианте реализации системы по полученным данным после анализа формируется отчет в виде графика по каждой конкретной зоне контроля за заданный пользователем промежуток времени. Такой график содержит данные о количестве сотрудников в предварительно заданной зоне контроля, при этом по шкале X указано время, а по шкале Y указано количество сотрудников. Упомянутая зона контроля задается в процессе настройки работы системы в блоке визуального задания по меньшей мере одной зоны контроля на кадре (b4) путем выделения нужной области на кадре. Для примера можно визуально задать зону контроля, охватывающую пространство рядом с кассой. Либо если не задано иное, зоной контроля является вся область зрения устройства захвата изображений. При этом к одной зоне контроля может быть привязано несколько видеокамер. Например, к зоне 1 привязаны камера 1, камера 2 и камера 3. Если идентифицированный сотрудник магазина попадает в область зрения хотя бы одной видеокамеры зоны 1, то система считает, что сотрудник находится в рассматриваемой зоне 1. Если же сотрудника нет ни в одной зоне контроля, то система считает, что сотрудника нет на рабочем месте. Следует отметить, что для случая, когда зоной контроля является вся область зрения камеры, система может работать без ввода дополнительных данных в блоках ГПИ. Для осуществления анализа достаточно знать лишь диапазон времени видео, и конкретную дату, за которую следует проанализировать видео. При этом можно настроить периодичность формирования отчетов и получать такой отчет, например, ежедневно в 10:00 за прошедший день за интервал с 10:00 до 22:00.
К отдельным зонам контроля могут относиться: торговые залы (один или несколько), складские помещения, область кассы и т.п. Для примера на фиг. 3А представлен график зависимости количества сотрудников магазина в зависимости от времени суток. График построен для зоны торгового зала и по нему можно понять, что с 14:00 до 17:00 в торговом зале располагается наибольшее количество сотрудников, а значит в эти часы самый большой поток покупателей. На фиг. 3Б для примера представлен график зависимости количества сотрудников магазина в зависимости от времени суток на складе. На основании графика понятно, что сотрудники заняты работой на складе в утренние и вечерние часы, а в дневные часы находятся в другом помещении, например, в торговом зале.
Кроме того, чтобы лучше контролировать работу сотрудников необходимо понимать, сколько времени каждый сотрудник проводит в каждой зоне контроля и сколько времени сотрудника нет на рабочем месте (то есть, сколько времени он не определяется ни одной видеокамерой системы). В итоге после анализа формируется отчет в виде таблицы, содержащий данные о том, сколько времени сотрудники проводят в различных зонах контроля. В этом случае зонами контроля являются различные помещения, в каждом из которых размещено по меньшей мере одно устройство захвата изображений. Такими зонами являются торговые залы, складские помещения и т.п. Таким образом если сотрудник попадает в поле зрение хотя бы одного устройства захвата изображений, то система считает, что он находится в соответствующей ему зоне контроля, а если сотрудника нет в поле зрения ни одного устройства захвата изображений, то система считает, что сотрудника нет на рабочем месте. То есть в отчете появляется еще одна зона, характеризующая неподконтрольную территорию. В этой зоне нет видеокамер, и поэтому если сотрудника нет ни в одной контролируемой зоне, то система автоматически определяет его в неподконтрольную зону.
Отчет такого вида может быть сформирован в двух различных формах. 1. По каждому конкретному сотруднику за заданный пользователем системы промежуток времени, при этом в отчете указано, сколько времени сотрудник проводит в каждой конкретной зоне контроля и сколько времени он не находится на рабочем месте (см. Таблица 3).
2. По каждой конкретной зоне контроля за заданный пользователем системы промежуток времени, при этом в отчете указано, сколько времени в этой зоне контроля провел каждый конкретный сотрудник (см. Таблица 4). Для примера допустим, что зона 1 это первый торговый зал, зона 2 это второй торговый зал, зона 3 это склад и еще одна зона в отчете - это бесконтрольная зона. При этом при настройке работы системы пользователь указывает, что рабочий день каждого сотрудника составляет 10 часов.
Следовательно, по Таблице 3 легко понять, кто из сотрудников тратит на обед больше положенного времени, а по Таблице 4 можно понять, какое именно помещение больше всего загружено для работы сотрудников.
Далее рассмотрим еще одну примерную ситуацию. Предположим, наша система установлена в маленьком продуктовом магазине (торговой точке), в котором работает только один сотрудник, он стоит на кассе и обслуживает посетителей. Покупатель заходит в магазин и сам набирает необходимые ему продукты в корзину, а затем проходит на кассу. Для такого случая, а именно для контроля работы за одним сотрудником/кассиром пользователь системы предварительно визуально задает зону контроля (область) на кадре, при нахождении посетителя в которой система считает, что посетитель подошел к кассе.
В таком случае после анализа может быть сформирован отчет, содержащий данные о том, сколько времени проходит перед тем как каждый посетитель подходит к кассе, при этом отчет также содержит данные о времени, когда именно конкретный посетитель подошел к кассе и сколько времени он провел на кассе, то есть сколько времени потребовалось кассиру чтобы обслужить/отпустить конкретного покупателя (см. Таблица 5).
Следует отметить, что подобным образом, как описано в различных вариантах выше, может быть сформирован отчет любого вида, в зависимости от данных, которые хочет контролировать владелец торговой точки. ИНС легко проанализирует любой объем информации по любым заданным пользователем системы параметрам или критериям. При этом каждый отчет как правило (предпочтительно) формируется при анализе архивных видеоданных, хранящихся в памяти системы, однако, как уже было указано ранее, устройства обработки данных могут получать от видеокамер и анализировать видеоданные и метаданные в режиме реального времени.
Кроме того, упомянутые отчеты могут быть автоматически сформированы по сигналу от пользователя системы или с предварительно заданной периодичностью (например, один раз в день, в 10:00). А еще отчеты могут быть автоматически отправлены предварительно заданным пользователям системы (например, по sms или по электронной почте) или сохранены в память системы (при желании пользователь системы сможет просмотреть отчеты в любое удобное для него время). При формировании по меньшей мере одного отчета по сигналу/команде от пользователя системы данный отчет может быть сразу же выведен на экран пользователю системы посредством блока отображения ГПИ (b5).
Далее будет описан пример конкретной реализации способа формирования отчетов на основании анализа местоположения и взаимодействия сотрудников и посетителей. На фиг. 4 представлена блок-схема одного из вариантов реализации способа формирования отчетов на основании анализа местоположения и взаимодействия сотрудников и посетителей.
Указанный способ выполняется уже описанной выше компьютерной системой, содержащей, по меньшей мере, графический пользовательский интерфейс, содержащий средства ввода и вывода данных для предоставления пользователю возможности задавать параметры работы системы, установленный на устройстве обработки данных, само устройство обработки данных и память, хранящую базу данных, содержащую по меньшей мере фотографии лиц сотрудников и изображения их униформы, а также хранящую видеоданные и соответствующие им метаданные. Заявляемый способ в базовом варианте содержит этапы, на которых осуществляется:
(100) получение видеоданных и метаданных объектов от по меньшей мере одного устройства захвата изображений или из памяти системы, причем упомянутое по меньшей мере одно устройство захвата изображений сконфигурировано для получения в режиме реального времени видеоданных из своей зоны контроля;
(200) анализ полученных метаданных объектов и видеоданных с использованием по меньшей мере одной искусственной нейронной сети (ИНС) для:
(201) различения сотрудников по наличию униформы и посетителей,
(202) идентификации личности каждого выявленного сотрудника, и
(203) дальнейшего анализа местоположения и взаимодействия сотрудников и посетителей в соответствии с заданными пользователем параметрами работы системы; и
(300) автоматическое формирование по меньшей мере одного отчета на основании результатов упомянутого анализа за заданный пользователем системы интервал времени.
Следует еще раз отметить, что данный способ может быть реализован посредством использования охарактеризованной ранее вычислительной системы и, следовательно, может быть расширен и уточнен всеми теми же частными вариантами исполнения, которые уже были описаны выше для реализации системы формирования отчетов на основании анализа местоположения и взаимодействия сотрудников и посетителей.
Кроме того, варианты осуществления настоящей группы изобретений могут быть реализованы с использованием программного обеспечения, аппаратных средств, программной логики или их комбинации. В данном примере осуществления программная логика, программное обеспечение или набор инструкций хранятся на одном или более из различных традиционных считываемых компьютером носителе данных.
В контексте данного описания «считываемым компьютером носителем данных» может быть любая среда или средства, которые могут содержать, хранить, передавать, распространять или транспортировать инструкции (команды) для их использования (исполнения) вычислительной системой, например, такой как компьютер. При этом носитель данных может являться энергонезависимым машиночитаемым носителем данных.
При необходимости, по меньшей мере часть различных операций, рассмотренных в описании данного решения, может быть выполнена в отличном от представленного порядке и/или одновременно друг с другом.
Хотя данное техническое решение было описано подробно в целях иллюстрации наиболее необходимых в настоящее время и предпочтительных вариантов осуществления, следует понимать, что данное изобретение не ограничивается раскрытыми вариантами осуществления и более того, предназначено для модификации и различных других комбинаций признаков из описанных вариантов осуществления. Например, следует понимать, что настоящее изобретение предполагает, что в возможной степени, один или более признаков любого варианта осуществления могут быть объединены с другим одним или более признаками любого другого варианта осуществления.