СИСТЕМА И СПОСОБ ИДЕНТИФИКАЦИИ ОБЪЕКТОВ В СОСТАВНОМ ОБЪЕКТЕ
SYSTEM AND METHOD OF IDENTIFYING OBJECTS IN COMPOSITE OBJECT

Настоящее изобретение относится к области использования искусственных нейронных сетей в компьютерном зрении, а более конкретно к системам и способам обработки видеоданных, полученных от видеокамер, для автоматической идентификации различных объектов.
УРОВЕНЬ ТЕХНИКИ
Под видеосистемами в контексте данной заявки подразумеваются программно-аппаратные средства, использующие методы компьютерного зрения для автоматизированного сбора данных на основании анализа потокового видео (видеоанализа). Такие видеосистемы опираются на алгоритмы обработки изображений, в том числе на алгоритмы распознавания, сегментации, классификации и идентификации изображений, позволяющие анализировать видео без прямого участия человека. Кроме того, современные видеосистемы позволяют автоматически анализировать видеоданные с камер и сопоставлять указанные данные с данными, имеющимися в базе данных.
Такими видеосистемами в настоящее время оснащены практически любые склады и торговые точки (главным образом для обеспечения безопасности, предотвращения краж и контроля за товаром и сотрудниками). Склад - это важное структурное подразделение, которое оказывает влияние на эффективность функционирования всех бизнес-процессов предприятия или торговой точки. Увеличение объемов товаров и работ сделало невозможным его нормальную деятельность на основе простого складского учета, в связи с чем предприятия ищут способы автоматизации процессов складирования. Для примера, некоторые современные склады являются полностью автоматизированными и не требуют присутствия человека (товар перемещается по системе автоматизированных конвейеров в нужное местоположение и соответственно также автоматизировано отгружается). Для поиска и отслеживания товаров, а также для контроля и учета товаров на складе или в любом другом помещении также могут быть использованы автоматизированные системы (см., например, патент RU 2698157 C1).
В настоящий момент широко распространены такие общие технологии автоматизированного управления складом, как: 1) маркировка грузов или товаров, которая позволяет идентифицировать товар и отследить маршрут его движения; 2) адресное хранение, гарантирующее порядок на складе, поскольку всем грузам присваивается конкретный адрес размещения; 3) двухмерное штрихкодирование, необходимое для оптимизации складской логистики и позволяющее моментально узнать всю информацию о грузе с помощью специального программного оборудования; 4) 3D-сканирование, характерно в большей степени для промышленных складов; и 5) RFID - метод, на основании которого информация о грузе или товаре списывается со специальных RFID-меток.
Для примера, из уровня техники известно решение, раскрытое в патенте US 8310363 В2, G08B 1/08, опубл. 13.11.2012, в котором раскрыты различные варианты автоматизированного мониторинга неодушевленных объектов, которые могут перемещаться в или из помещения. Мониторинг производится посредством системы датчиков, предназначенных для размещения на каждом, по меньшей мере, одном неодушевленном объекте, который может перемещаться относительно объектов и расположен в упомянутой внутренней части помещения, ограниченной рамкой, причем указанная система датчиков выполнена с возможностью получения данных, по меньшей мере, об одном объекте для их последующей обработки. Датчик мониторинга событий, связанный с указанной системой датчиков, отслеживает, происходит ли событие, связанное с перемещением, по меньшей мере, одного объекта относительно упомянутой рамки, причем указанная система датчиков получает данные о, по меньшей мере, одном объекте, только когда указанный датчик мониторинга событий обнаруживает возникновение события. Система определения местоположения предназначена для контроля местоположения охраняемого помещения. Упомянутая система датчиков и упомянутая система определения местоположения соединены системой связи, которая передает данные относительно, по меньшей мере, одного объекта, упомянутой системой датчиков, и местоположение объекта, предоставленного упомянутой системой определения местоположения, на удаленное устройство всякий раз, когда указанная система датчиков получает данные по меньшей мере об одном объекте в результате обнаружения возникновения события перемещения посредством вспомогательного датчика мониторинга событий, после чего удаленное устройство может предпринять соответствующее действие.
Из уровня техники также известно решение, раскрытое в заявке Китая CN 102147888 A, G06K 17/00, опубл. 10.08.2011, в котором описана интеллектуальная система управления складом, включающая в себя устройство обработки данных, хранилище RFID и лоток RFID. Хранилище RFID и лоток RFID соответственно оснащены электронными метками RFID. Лоток RFID беспроводным образом подключен к оборудованию для обработки данных. Система отличается тем, что она также включает в себя ручной терминал менеджера склада, терминал на транспортном средстве, терминал на погрузчике и терминал ворот, установленный у двери склада. В данном решении также описан способ, применяемый к упомянутой интеллектуальной системе управления складом, в котором реализовано интеллектуальное управление складом с использованием электронных меток RFID.
Для реализации описанных выше решений каждый объект на складе или в любом другом охраняемом помещении должен быть оснащен либо соответствующим датчиком, либо меткой RFID, которая считывается различными считывателями RFID для отслеживания объектов. Такого рода решения являются сложными и дорогостоящими в исполнении. Кроме того, велика вероятность ошибки при их реализации.
Из уровня техники также известно решение, раскрытое в заявке US 2013/0088591 A1, G06K 9/78, опубл. 11.04.2013, в котором описана система идентификации и отслеживания объектов, сконфигурированная для связывания идентификатора объекта с позицией объекта на складе, причем система содержит несколько пар видеокамер и средство обработки данных, связанное с парами видеокамер. Средство обработки данных сконфигурировано для: определения идентификатора объекта для рассматриваемого объекта; определения первой позиций указанного объекта на основе изображений с указанных пар видеокамер; и связывания идентификатора объекта с указанной первой позицией. Известное решение хоть и использует видеоданные и методы обработки изображений, однако значительно отличается от заявляемого решения.
Основным отличием/преимуществом заявляемого нами решения от известных из уровня техники решений является использование уже имеющихся стандартных средств видеонаблюдения и средств обработки изображений для идентификации всех объектов/товаров на складе. Наше решение главным образом направлено на упрощение, ускорение и повышение точности процесса идентификации. Кроме того, когда формируется заказ или поставка, то чаще всего товары размещаются на специальные паллеты или лотки. Заявляемое нами решение предусматривает распознавание и идентификацию всех отдельных объектов в составе одного составного объекта. То есть не требуется отдельной идентификации каждого объекта (как происходит в технологиях с метками и штрих-кодами). Такой подход также ускоряет процесс идентификации.
Кроме того, в современных видеосистемах для распознавания и идентификации изображений все чаще применяются искусственные нейронные сети. Искусственная нейронная сеть (ИНС) - это математическая модель, а также ее аппаратное и/или программное воплощение, построенное по принципу организации и функционирования биологических нейронных сетей (сетей нервных клеток живых организмов). Одним из главных преимуществ ИНС является возможность их обучения, в процессе которого ИНС способна самостоятельно выявлять сложные зависимости между входными и выходными данными. Именно использование одной или даже нескольких ИНС для обработки изображений, а также использование стандартных средств видеонаблюдения и обработки видеоданных делает заявляемое решение более простым для осуществления абсолютно в любом помещении и более точным в части идентификации объектов (в том числе и составных объектов) по сравнению с известными из уровня техники решениями.
РАСКРЫТИЕ СУЩНОСТИ ИЗОБРЕТЕНИЯ
Заявляемое техническое решение направлено на устранение недостатков, присущих предшествующему уровню техники и на развитие уже известных решений.
Техническим результатом заявленной группы изобретений является повышение точности и скорости идентификации объектов за счет использования по меньшей мере одной искусственной нейронной сети.
Данный технический результат достигается тем, что система для идентификации объектов в составном объекте содержит: графический пользовательский интерфейс (ГПИ), содержащий средства ввода/вывода данных, сконфигурированные для обеспечения взаимодействия пользователя с системой; память, сконфигурированную для хранения видеоданных и базы данных, которая включает в себя по меньшей мере выборку эталонных изображений объектов; по меньшей мере одно устройство захвата изображений, сконфигурированное для получения видеоданных из зоны контроля; и по меньшей мере, одно устройство обработки данных, содержащее: модуль получения видеоданных, сконфигурированный для получения видеоданных от по меньшей мере одного устройства захвата изображений в режиме реального времени; модуль анализа изображений, сконфигурированный для анализа видеоданных с целью обнаружения в кадре по меньшей мере одного составного объекта, после чего полученное изображение передается в модуль сегментации; модуль сегментации, сконфигурированный для сегментации полученного изображения составного объекта на отдельные изображения объектов, входящих в состав составного объекта, причем упомянутая сегментация осуществляется с использование искусственной нейронной сети (ИНС); модуль идентификации, сконфигурированный для идентификации объектов с использованием другой по меньшей мере одной искусственной нейронной сети на каждом из полученных отдельных изображений объектов; модуль вывода, выполненный с возможностью вывода полученного результата идентификации.
Указанный технический результат также достигается за счет способа идентификации объектов в составном объекте, выполняемого компьютерной системой, содержащей графический пользовательский интерфейс, по меньшей мере, одно устройство обработки данных и память, хранящую видеоданные и базу данных, которая включает в себя по меньшей мере выборку эталонных изображений объектов, причем способ содержит этапы, на которых: получают видеоданные от по меньшей мере одного устройства захвата изображений в режиме реального времени, причем упомянутое устройство захвата изображений получает видеоданные из зоны контроля; выполняют анализ видеоданных с целью обнаружения в кадре по меньшей мере одного составного объекта и получения изображения упомянутого составного объекта; выполняют сегментацию полученного изображения составного объекта на отдельные изображения объектов, входящих в состав составного объекта, причем упомянутая сегментация осуществляется с использование искусственной нейронной сети (ИНС); идентифицируют объект с использованием другой по меньшей мере одной искусственной нейронной сети на каждом из полученных отдельных изображений объекта; выводят полученный результат идентификации на экран.
В одном частном варианте заявленного решения к составным объектам относятся по меньшей мере: паллеты, поддоны, лотки, а к объектам, входящим в состав составного объекта, относятся по меньшей мере: груз, товар, коробка.
В другом частном варианте заявленного решения к зонам контроля относятся по меньшей мере одно из следующего: складское помещение, кузов автомобиля.
Еще в одном частном варианте заявленного решения сегментация выполняется по цвету и/или форме и/или текстуре.
В другом частном варианте заявленного решения идентификация осуществляется путем сравнения каждого распознанного изображения объекта с по меньшей мере, одним эталонным изображением объектов, содержащимся в базе данных.
Еще в одном частном варианте заявленного решения все объекты в базе данных разделены на классы объектов.
А еще в одном частном варианте заявленного решения для каждого класса объектов предусмотрена отдельная ИНС, используемая при идентификации.
В другом частном варианте заявленного решения по меньшей мере одно устройство обработки данных дополнительно содержит модуль классификации, сконфигурированный с возможностью классификации полученных после сегментации отдельных изображений объектов по классам объектов, причем для упомянутой классификации предусмотрена отдельная искусственная нейронная сеть.
Еще в одном частном варианте заявленного решения система дополнительно сконфигурирована для автоматического пополнения выборки эталонных изображений каждого объекта для обучения по меньшей мере одной искусственной нейронной сети, причем пополнение выборки эталонных изображений объектов и обучение по меньшей мере одной искусственной нейронной сети являются постоянными процессами, поскольку набор объектов и их внешний вид меняются со временем.
В другом частном варианте заявленного решения выборка эталонных изображений каждого объекта содержит N последних загруженных изображений для этого объекта, где N является положительным целым числом, предварительно заданным пользователем.
Еще в одном частном варианте заявленного решения по меньшей мере одно устройство обработки данных дополнительно содержит модуль учета и контроля, сконфигурированный для подсчета в заданной зоне контроля как составных объектов, так и идентифицированных объектов, входящих в состав составного объекта, для учета объектов в заданное пользователем системы время в каждой заданной пользователем зоне контроля.
В другом частном варианте заявленного решения модуль учета и контроля дополнительно сконфигурирован для подсчета убывших из зоны контроля и прибывших в зону контроля объектов.
Еще в одном частном варианте заявленного решения модуль учета и контроля дополнительно сконфигурирован для сопоставления количества убывших идентифицированных объектов из одной зоны контроля с количеством прибывших идентифицированных объектов, по меньшей мере, в одну другую зону контроля, причем сопоставляемые зоны контроля задаются пользователем системы и при выявлении несоответствия упомянутого количества модуль вывода автоматически выполняет предварительно заданные пользователем системы действия.
В другом частном варианте заявленного решения к предварительно заданным пользователем системы действиям относятся по меньшей мере одно или комбинация из: инициирование тревоги, SMS оповещение пользователя системы, оповещение пользователя по электронной почте, аудио оповещение пользователя.
Еще в одном частном варианте заявленного решения модуль учета и контроля в случае выявления несоответствия упомянутого количества идентифицированных объектов в разных зонах контроля дополнительно выполняет определение по меньшей мере одного интервала времени, во время которого потенциально произошло нарушение, после чего модулем вывода автоматически выполняется экспорт видеоданных этого интервала времени и его отправка предварительно заданному пользователю системы для выполнения анализа.
В другом частном варианте заявленного решения модуль вывода дополнительно сконфигурирован для автоматической записи обработанных видеоданных в архив и/или экспорта видеоданных, причем запись и экспорт может осуществляться для всех видеоданных в заданный пользователем системы интервал времени или только для тех видеоданных, в которых зафиксированы факты убытия и факты прибытия объектов в каждую зону контроля, для обеспечения возможности анализа по архивным данным.
Еще в одном частном варианте заявленного решения модуль учета и контроля дополнительно сконфигурирован с возможностью формирования отчета на основании полученных результатов идентификации, подсчета и сопоставления количества идентифицированных объектов, причем отчет может быть сформирован для каждой зоны контроля отдельно или для связки зон контроля, при этом упомянутая связка зон контроля либо предварительно задается пользователем, либо задается пользователем системы в режиме реального времени.
В другом частном варианте заявленного решения модуль вывода дополнительно сконфигурирован для вывода, полученного по меньшей мере одного отчета на экран или для отправки полученного по меньшей мере одного отчета предварительно заданному пользователю системы.
А еще в одном частном варианте заявленного решения анализ видеоданных с целью обнаружения в кадре по меньшей мере одного составного объекта выполняется постоянно или в определенно заданный пользователем системы диапазон времени или по команде от пользователя системы.
Помимо указанного выше, данный технический результат также достигается за счет считываемого компьютером носителя данных, содержащего исполняемые процессором компьютера инструкции для осуществления способов идентификации объектов в составном объекте.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1 - блок-схема системы для идентификации объектов в составном объекте.
Фиг. 2 - блок-схема способа идентификации объектов в составном объекте.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
Ниже будет приведено описание примерных вариантов осуществления заявленной группы изобретений. Однако заявленная группа изобретений не ограничивается только этими вариантами осуществления. Специалистам будет очевидно, что под объем заявленной группы изобретений, описанной в формуле, могут попадать и другие варианты реализаций.
Заявляемое техническое решение в различных своих вариантах осуществления может быть выполнено в виде вычислительных систем и способов, реализуемых различными компьютерными средствами, а также в виде считываемого компьютером носителя данных, хранящего исполняемые процессором компьютера инструкции.
На фиг. 1 представлена блок-схема системы для идентификации объектов в составном объекте. Данная система в полной своей комплектации включает в себя: память (10), сконфигурированную для хранения базы данных (DB) и видеоданных; графический пользовательский интерфейс (20), содержащий средства ввода/вывода данных; по меньшей мере одно устройство захвата изображений (30, …, 3n); и по меньшей мере, одно устройство обработки данных (40, …, 4m), содержащее: модуль получения видеоданных (50), модуль анализа изображений (60), модуль сегментации (70), модуль классификации (75), модуль идентификации (80), модуль учета и контроля (85) и модуль вывода (90). Следует отметить, что в базовую комплектацию системы могут не входить модули (75) и (85).
В данном контексте под компьютерными системами понимаются любые вычислительные системы, построенные на базе программно-аппаратных взаимосвязанных технических средств.
Под устройством захвата изображений в контексте данной заявки подразумевается видеокамера.
В качестве устройства обработки данных может выступать процессор, микропроцессор, графический процессор, ЭВМ (электронно-вычислительная машина), ПЛК (программируемый логический контроллер) или интегральная схема, сконфигурированные для исполнения определенных команд (инструкций, программ) по обработке данных. Процессор может быть многоядерным, для параллельной обработки данных.
Графический пользовательский интерфейс (ГПИ) представляет собой систему средств, для взаимодействия пользователя с вычислительным устройством, основанную на представлении всех доступных пользователю системных объектов и функций в виде графических компонентов экрана (окон, значков, меню, кнопок, списков и т.п.). При этом пользователь имеет произвольный доступ, посредством устройств ввода/вывода данных, ко всем видимым экранным объектам - блокам интерфейса, которые отображаются на дисплее. Причем устройство ввода/вывода данных может представлять собой, но не ограничиваться, например, манипулятор мышь, клавиатуру, тачпад, стилус, джойстик, трекпад и т.п.
В роли устройства памяти, сконфигурированного для хранения данных, могут выступать, но, не ограничиваясь, жесткие диски (HDD), флеш-память, сервер, ПЗУ (постоянное запоминающее устройство), твердотельные накопители (SSD), оптические накопители информации и т.д.
В контексте данной заявки память хранит видеоданные, поступающие от устройств захвата изображений, а также базу данных (DB), которая включает в себя по меньшей мере выборку эталонных изображений объектов.
Следует отметить, что в описанную систему могут входить и любые другие известные в данном уровне техники устройства, например, такие как различного вида датчики, устройства ввода/вывода данных, устройства отображения, считыватели меток или штрих-кодов и т.п.
Далее будет подробно описан пример работы вышеупомянутой системы для идентификации объектов в составном объекте.
Все нижеописанные этапы работы системы также применимы и к реализации заявляемого способа идентификации объектов в составном объекте, который будет рассмотрен более подробно ниже.
Рассмотрим принцип работы данной системы. Предположим данная система, а также соответствующее ей ПО, установлены на складе крупного магазина. Для доставки и перевозки товаров на склад от поставщика или по адресу покупателей используются грузовые (для крупногабаритных товаров) или легковые автомобили (для небольших грузов и товаров).
Складское помещение, а также кузов каждого автомобиля оснащены устройствами захвата изображений (30, …, 3n). Устройство захвата изображений, в данном случае видеокамера, расположена таким образом, чтобы непрерывно в режиме реального времени получать видеоданные из определенной зоны контроля. К зонам контроля в контексте данной заявки относятся по меньшей мере одно из следующего: складское помещение, кузов грузового автомобиля, кузов легкового автомобиля или любое другое помещение, используемое для хранения или перевозки различных товаров (объектов).
Следует отметить, что описываемая система идентификации может включать в себя несколько видеокамер в каждой отдельной зоне контроля для получения большего количества видеоданных и повышения точности результатов их обработки. Устройства захвата изображений непрерывно получают видеоданные в режиме реального времени, которые записываются в архив системы видеонаблюдения (для обеспечения возможности дальнейшего анализа по архивным данным), а также передаются к устройству обработки данных.
Далее основную работу выполняет по меньшей мере одно устройство обработки данных, например, такое как графический процессор компьютера. Упомянутое устройство обработки данных (40, …, 4m) включает в себя отдельные программные или аппаратные модули/блоки, каждый из которых сконфигурирован для выполнения определенной задачи. В описываемом решении, как представлено на фиг. 1, устройство обработки данных содержит такие модули как: модуль получения видеоданных (50), модуль анализа изображений (60), модуль сегментации (70), модуль классификации (75), модуль идентификации (80), модуль учета и контроля (85) и модуль вывода (90). Далее будет подробно описана работа каждого модуля.
Модуль получения видеоданных (50) непрерывно получает все видеоданные, поступающие от по меньшей мере одного устройства захвата изображений в режиме реального времени. Затем все получаемые видеоданные анализируются модулем анализа изображений (60) для выявления/обнаружения кадров, отображающих/характеризующих по меньшей мере один составной объект, после чего полученное изображение передается в модуль сегментации (70).
В контексте данной заявки к составным объектам относятся по меньшей мере: паллеты, поддоны, лотки (проще говоря все то, куда можно разместить несколько объектов), а к объектам, входящим в состав составного объекта, относятся по меньшей мере, но не ограничиваясь: груз, товар, коробка, продукт и так далее. При этом, как указано в частном варианте исполнения системы, анализ видеоданных выполняется постоянно или в определенно заданный пользователем системы диапазон времени или же по сигналу/команде от пользователя системы. То есть для склада с временем отгрузки и получения товаров, например, с 8:00 до 12:00 актуально записывать и анализировать видеоданные только в этот промежуток времени для экономии памяти и вычислительных ресурсов системы.
Следует отметить, что все устройства захвата изображений расположены в зонах контроля таким образом, чтобы полностью охватывать все помещение/зону контроля. То есть для получения полной картины из зоны контроля области зрения камер могут немного пересекаться/накладываться. Таким образом модуль анализа изображений может с легкостью обнаружить все составные или отдельные объекты. После того как обнаружен кадр с составным объектом, полученное по меньшей мере одно изображение/кадр упомянутого составного объекта автоматически передается в модуль сегментации (70).
Модуль сегментации (70) в свою очередь сконфигурирован для сегментации полученного изображения составного объекта на отдельные изображения объектов, входящих в состав составного объекта. Упомянутая сегментация выполняется с использованием своей искусственной нейронной сети. Следует отметить, что сегментация выполняется по цвету и/или форме и/или текстуре. Пользователь системы может задать любой вид сегментации, или же сегментация может выполняться последовательно каждым из перечисленных способов.
После разделения изображения составного объекта на отдельные изображения составляющих его объектов, эти отдельные изображения далее передаются в модуль идентификации (80). Упомянутый модуль выполняет идентификацию объектов с использованием другой по меньшей мере одной искусственной нейронной сети на каждом из полученных отдельных изображений объектов. Идентификация осуществляется путем сравнения каждого распознанного изображения объекта с по меньшей мере, одним изображением объекта, содержащимся в базе данных. Если в процессе идентификации распознанное изображение объекта совпадает в достаточной степени хотя бы с одним изображением из базы данных, то система сразу же прекращает процесс идентификации. Такой подход позволяет не тратить впустую имеющиеся вычислительные ресурсы системы и ускоряет процесс сравнения.
А принцип идентификации следующий: искусственная нейронная сеть получает отдельное изображение объекта, после чего выдает некоторый вектор чисел - дескриптор изображения. База данных хранит выборку эталонных изображения всех объектов, включающую соответствующий каждому изображению дескриптор. Для сравнения изображений ИНС использует именно эти дескрипторы. Причем ИНС обучена так, что чем меньше угол между этими векторами чисел в пространстве, тем больше вероятность совпадения изображений. В качестве метрики для сравнения используется косинус угла между векторами чисел (векторами из базы данных и полученным вектором изображения объекта). Соответственно, чем ближе косинус угла между векторами к единице, тем больше вероятность того, что объект является одним и тем же на сравниваемой паре изображений. Пользователь при настройке системы может задать диапазон значений, при котором система будет принимать решение о совпадении объектов. При этом искусственная нейронная сеть сравнивает последовательно каждое полученное отдельное изображение объекта со всеми имеющимися в базе данных изображениями объектов до тех пор, пока не получит достаточного совпадения.
Следует отметить, что для повышения точности работы системы и улучшения и ускорения идентификации объектов, перед непосредственной идентификацией в некоторых реализациях заявляемого решения может осуществляться классификация отдельных изображений объектов. Для этого в, по меньшей мере, одном устройстве обработки данных предусмотрен дополнительный модуль классификации (75), использующий отдельную/свою ИНС для классификации. Упомянутый модуль классификации сконфигурирован с возможностью классификации полученных после сегментации отдельных изображений объектов по классам объектов. Примерами таких классов могут являться, но не ограничиваясь: электроника, бытовая техника, зоотовары, детские товары, товары для дома, одежда, автотовары, товары для сада и огорода, строительство, спорт, продукты питания, здоровье и тому подобное. Кроме того, объекты в каждом классе могут быть дополнительно распределены на более конкретные подклассы (для примера продукты питания можно разделить на такие подклассы как: чай, кофе, алкоголь, кондитерские изделия, хлебобулочные изделия, бакалея, консервация, напитки, молочные продукты и так далее, вплоть до распределения на такие подклассы как: коробка, пакет, бутылка, скоропортящийся продукт, и т.п.). При этом в базе данных все файлы объектов также разделены на аналогичные классы (имеющиеся на конкретном складе, где используется рассматриваемая система идентификации). Данные о каждом объекте в базе данных включают в себя по меньшей мере: наименование, основные характеристики (такие как размер, форма, цветовая палитра) и выборку эталонных изображений объекта. При этом каждое изображение в выборке эталонных изображений объектов включает в себя дескриптор, характеризующий вектор чисел данного изображения. Следует отметить, что для каждого класса (или даже подкласса) объектов в модуле идентификации предусмотрена своя отдельная ИНС, используемая при идентификации объектов (для повышения точности и скорости идентификации).
Что касается выборки эталонных изображений объектов, то рассматриваемая система для идентификации сконфигурирована для автоматического пополнения упомянутой выборки эталонных изображений каждого объекта для обучения по меньшей мере одной используемой искусственной нейронной сети. При этом пополнение выборки эталонных изображений объектов и обучение по меньшей мере одной искусственной нейронной сети являются постоянными процессами, поскольку набор объектов и их внешний вид меняются со временем. Следует отметить, что процессы пополнения выборки изображений, обучения искусственной нейронной сети и непосредственных этапов обработки изображений могут выполняться параллельно, по меньшей мере, одним устройством обработки данных. При этом каждое новое изображение объекта добавляется в выборку эталонных изображений соответствующего объекта только после завершения процесса идентификации этого изображения (для исключения ошибок).
Обучение каждой искусственной нейронной сети в контексте заявляемого решения выполняется на основании пополняемой базы данных. Пользователь/оператор системы может задать определенное время, в которое будет выполняться обучение искусственной нейронной сети. Например, один раз в день. При этом упомянутое обучение может выполняться, например, устройством обработки данных или же облачным сервисом или любым другим вычислительным устройством.
Следует еще раз отметить, что выборка изображений каждого объекта содержит множество изображений этого объекта (разных ракурсов и видов). Пользователь системы может при настройке ее работы задать конкретное число изображений, которое должно содержаться в выборке (для поддержания актуальности данных в базе данных). Таким образом, выборка эталонных изображений каждого объекта содержит N последних загруженных изображений для этого объекта, где N является положительным целым числом, предварительно заданным пользователем. Предположим, пользователь задал N=20. После идентификации конкретного объекта (например, был идентифицирован принтер определенной марки и модели) устройство обработки данных анализирует выборку изображений именно этого принтера. Если количество изображений в выборке изображений для распознанного объекта равно 20, то устройство обработки данных удаляет самое давнее (старое) изображение и сохраняет новое, только что полученное изображение объекта в выборку. Если же в выборке изображений содержится, например, всего 5 изображений объекта, то новое полученное изображение объекта просто добавляется в выборку (без удаления более старых изображений). Таким образом удается поддерживать актуальность информации о объектах, имеющихся на складе. Это необходимо, поскольку набор объектов/товаров и их внешний вид меняются со временем.
После идентификации всех объектов в различных реализациях системы выполняются разные действия в соответствии с требованиями на разных предприятиях или торговых точках. В базовой реализации результаты идентификации объектов передаются в модуль вывода (90), который сконфигурирован для вывода полученных результатов идентификации на экран. Полученные результаты могут быть использованы либо пользователем системы, либо могут загружаться в какую-либо другую систему обработки данных для анализа и дальнейшей обработки полученных результатов.
Однако чаще всего подобного рода системы идентификации хотят использовать для полного учета и контроля товаров на складе. Для этой цели в устройстве обработки данных заявляемой системы предусмотрен отдельный модуль учета и контроля (85). Данный модуль сконфигурирован для подсчета в определенной заданной пользователем системы зоне контроля как составных объектов, так и идентифицированных отдельных объектов, входящих в состав составного объекта. Следует отметить, что любое взаимодействие пользователя с системой осуществляется посредством использования средств ввода/вывода данных, содержащихся в графическом пользовательском интерфейсе (ГПИ) заявляемой системы идентификации. Упомянутый подсчет объектов необходим для учета объектов в заданное пользователем системы время в каждой заданной пользователем зоне контроля. При этом модуль учета и контроля дополнительно сконфигурирован для подсчета убывших из зоны контроля и прибывших в зону контроля объектов. Таким образом можно легко проконтролировать сколько объектов (товаров) увезли со склада, сколько поступило в грузовой автомобиль для перевозки, сколько привезли на склад и так далее.
Кроме того, модуль учета и контроля (85) дополнительно сконфигурирован для сопоставления количества убывших идентифицированных объектов из одной зоны контроля с количеством прибывших идентифицированных объектов, по меньшей мере, в одну другую зону контроля. В этом случае сопоставляемые зоны контроля задаются пользователем системы (посредством средств ГПИ) и при выявлении несоответствия упомянутого количества модуль вывода (90) автоматически выполняет предварительно заданные пользователем системы действия. Для примера рассмотрим ситуацию, когда со склада забрали набор товаров для доставки покупателю. В этом случае первая зона контроля - это склад, вторая зона контроля - это грузовой автомобиль, на котором предполагается доставить товар для покупателя. Если система идентификации определила, что со склада в определенно заданное время убыло 9 позиций товаров, а в грузовой автомобиль загрузили также 9 позиций товаров, то система не совершает никаких действий. Однако, если со склада убыло 9 товаров, а в грузовой автомобиль прибыло допустим только 7 товаров, то система выполняет предварительно заданные пользователем системы действия. Причем, к предварительно заданным пользователем системы действиям в контексте данной заявки относятся по меньшей мере одно или комбинация из: инициирование тревоги, sms оповещение пользователя системы, оповещение пользователя по электронной почте, аудио оповещение пользователя и тому подобное. Таким образом можно своевременно обнаружить ошибку и устранить ее еще на территории склада, не вмешивая в этот процесс конечного покупателя набора товаров. Следует отметить, что это был рассмотрен лишь самый простой случай.
Однако чаще всего со склада каждый день убывает очень большое количество товаров, которые везутся разным заказчикам в разных автомобилях. В этом случае количество убывших со склада объектов (из зоны 1) может сопоставляться с суммарным количеством объектов, прибывших в предварительно заданные пользователем системы грузовые автомобили (зона 2 + зона 3 + зона 4 + …).
Кроме того, в отдельных частных вариантах исполнения модуль учета и контроля (85) в случае выявления несоответствия упомянутого количества идентифицированных объектов в разных зонах контроля дополнительно выполняет определение по меньшей мере одного интервала времени, во время которого потенциально произошло нарушение. После определения упомянутого интервала времени модуль вывода автоматически выполняет экспорт видеоданных этого интервала времени и отправку предварительно заданному пользователю системы для выполнения анализа. То есть пользователь системы может просмотреть видеоданные только определенного системой интервала времени и легко понять где произошла ошибка или нарушение (не тратя при этом много времени).
Как уже было указано ранее, модуль вывода (90) в базовой своей реализации сконфигурирован для вывода результатов идентификации, однако упомянутый модуль также дополнительно сконфигурирован и для автоматической записи обработанных видеоданных в архив и/или для экспорта упомянутых видеоданных. Причем запись и экспорт может осуществляться для всех видеоданных в заданный пользователем системы интервал времени или только для тех видеоданных, в которых зафиксированы факты убытия и факты прибытия объектов в каждую зону контроля. Это необходимо для обеспечения возможности быстрого и точного анализа видеоданных по архивным данным.
Кроме того, что касается модуля учета и контроля (85), то он дополнительно сконфигурирован с возможностью формирования отчета на основании полученных результатов идентификации, результатов подсчета и результатов сопоставления количества идентифицированных объектов. Следует отметить, что упомянутый отчет может быть сформирован для каждой зоны контроля отдельно или для связки зон контроля, которая либо предварительно задается пользователем, либо задается пользователем системы в режиме реального времени (посредством использования средств ГПИ). Например, для связки таких зон контроля, как несколько грузовых автомобилей, забравших в течении дня товары со склада.
При этом модуль вывода (90) дополнительно сконфигурирован для вывода полученного по меньшей мере одного отчета на экран. Причем упомянутые отчеты формируются либо по сигналу от пользователя, либо в предварительно заданное пользователем время (например, один раз в день, в 21:00, после окончания отгрузок со склада). Кроме того, отчеты могут быть автоматически отправлены предварительно заданным пользователям системы (например, по sms или по электронной почте) или сохранены в память системы. А вот при формировании по меньшей мере одного отчета по сигналу/команде от пользователя системы данный отчет может быть сразу выведен на экран модулем вывода (90).
Далее будет описан пример конкретной реализации способа для идентификации объектов в составном объекте. На фиг. 2 представлена блок-схема одного из вариантов реализации способа идентификации объектов в составном объекте.
Указанный способ выполняется уже описанной выше компьютерной системой, содержащей графический пользовательский интерфейс, по меньшей мере одно устройство обработки данных и память, хранящую видеоданные и базу данных, которая включает в себя по меньшей мере выборку эталонных изображений объектов.
Заявляемый способ в базовом варианте содержит этапы, на которых:
(100) получают видеоданные от по меньшей мере одного устройства захвата изображений в режиме реального времени, причем упомянутое устройство захвата изображений получает видеоданные из зоны контроля;
(200) выполняют анализ видеоданных с целью обнаружения в кадре по меньшей мере одного составного объекта и получения изображения упомянутого составного объекта;
(300) выполняют сегментацию полученного изображения составного объекта на отдельные изображения объектов, входящих в состав составного объекта, причем упомянутая сегментация осуществляется с использование искусственной нейронной сети (ИНС);
(400) идентифицируют объект с использованием другой по меньшей мере одной искусственной нейронной сети на каждом из полученных отдельных изображений объекта;
(500) выводят полученный результат идентификации на экран.
Следует еще раз отметить, что данный способ может быть реализован посредством использования охарактеризованной ранее вычислительной системы и, следовательно, может быть расширен и уточнен всеми теми же частными вариантами исполнения, которые уже были описаны выше для реализации системы для идентификации объектов в составном объекте.
Кроме того, варианты осуществления настоящей группы изобретений могут быть реализованы с использованием программного обеспечения, аппаратных средств, программной логики или их комбинации. В данном примере осуществления программная логика, программное обеспечение или набор инструкций хранятся на одном или более из различных традиционных считываемых компьютером носителе данных.
В контексте данного описания «считываемым компьютером носителем данных» может быть любая среда или средства, которые могут содержать, хранить, передавать, распространять или транспортировать инструкции (команды) для их использования (исполнения) вычислительной системой, например, такой как компьютер. При этом носитель данных может являться энергонезависимым машиночитаемым носителем данных.
При необходимости, по меньшей мере часть различных операций, рассмотренных в описании данного решения, может быть выполнена в отличном от представленного порядке и/или одновременно друг с другом.
Хотя данное техническое решение было описано подробно в целях иллюстрации наиболее необходимых в настоящее время и предпочтительных вариантов осуществления, следует понимать, что данное изобретение не ограничивается раскрытыми вариантами осуществления и более того, предназначено для модификации и различных других комбинаций признаков из описанных вариантов осуществления. Например, следует понимать, что настоящее изобретение предполагает, что в возможной степени, один или более признаков любого варианта осуществления могут быть объединены с другим одним или более признаками любого другого варианта осуществления.