СПОСОБ ИДЕНТИФИКАЦИИ ЧЕЛОВЕКА В РЕЖИМЕ ОДНОВРЕМЕННОЙ РАБОТЫ ГРУППЫ ВИДЕОКАМЕР
METHOD OF HUMAN IDENTIFICATION IN A MODE OF SIMULTANEOUS OPERATION OF A GROUP OF VIDEO CAMERAS

ОБЛАСТЬ ТЕХНИКИ
[1] Изобретение относится к области вычислительной техники, применяемой для обработки изображений, в частности к способу идентификации человека в режиме одновременной работы группы видеокамер.
УРОВЕНЬ ТЕХНИКИ
[2] На текущий момент основной проблемой в использовании в системах видеонаблюдения множества камер приводит к тому, что изображения, получаемые от различных камер, каждая из которых захватывает изображение под собственным ракурсом, не позволяет с достаточной точностью идентифицировать людей, даже тех, о которых имеется информация в базе данных системы контроля. Это обусловлено необходимостью проведения сложного процесса переобучения камер с обеспечением повышения точности распознавания лиц людей под различными ракурсами, что является трудоемкой задачей и не всегда позволяет решить проблему при использовании множества камер.
[3] Из уровня техники известно решения для идентификации людей с помощью множества камер (CN 100568262 C, 09.12.2009). В патенте описывается метод, позволяющий совместить информацию от нескольких камер для повышения точности распознавания человека по лицу. Недостатком данного метода является необходимость попадания лица в зону обзора сразу нескольких камер, при этом способ подразумевает, что необходимо прикладывать внешнее управление к камерам для камер на область, в которой находится лицо.
[4] В другом известном решении (US 20050063566 A1, 24.03.2005) описывается система, позволяющая с использованием системы зеркал и дальномера адаптировать входное изображение интересующего объекта для получения изображения, наиболее подходящего для идентификации. Недостатком данного решения является необходимость в дополнительных устройствах (дальномер, система зеркал), необходимость ручной настройки системы для конкретного помещения, а также близкое расположение человека к камерам.
[5] Известно решение для идентификации лица человека в случае использования множества камер (CN 102254169 B, 22.08.2012), в котором описывается система камер, состоящая из одной широкоугольной камеры с низким разрешением и нескольких камер с узким полем зрения, в которой широкоугольная камера определяет расположения объекта интереса, после чего происходит выбор узко-угольной камеры, которая снимает интересующее лицо в высоком разрешении для проведения идентификации. Недостатком этого метода также является необходимость использования нескольких камер, а также необходимость размещать полную систему в каждом помещении, в котором необходимо проводить идентификацию.
[6] Общий недостаток известных подходов заключается в достаточно сложном построении систем, которые не обеспечивают должной точности распознавания людей с помощью использования множества камер.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
[7] Заявленное изобретение позволяет решить техническую проблему, заключающуюся в обеспечении должного качества распознавания людей в системах, использующих множество камер.
[8] Технический результат заключается в повышении точности идентификации лиц людей в системах видеонаблюдения, использующих множество камер, за счет переобучения камер с использованием векторных изображений людей для определения эталонных изображений лиц людей, позволяющих точно идентифицировать людей на каждой камере с соответствующим ракурсом.
[9] Дополнительный технический эффект заключается в повышении скорости процесса переобучения камер для целей идентификации людей и скорости идентификации людей.
[10] Заявленное изобретение реализуется за счет осуществления компьютерно-реализуемого способа идентификации человека в режиме одновременной работы группы видеокамер, выполняемый с помощью вычислительного устройства и содержащий этапы, на которых:
a) получают изображения лица человека от группы видеокамер, причем каждая из камер фиксирует изображение человека под определенным ракурсом;
b) преобразовывают полученные от видеокамер изображения в векторную форму;
c) идентифицируют человека и выявляют соответствующую ему информацию об имеющихся векторных изображениях в базе данных для различных ракурсов, полученных от группы видеокамер;
d) сравнивают полученные от видеокамер векторные изображения с векторными изображениями человека, хранящиеся в базе данных;
e) определяют для каждой видеокамеры из группы целевой вектор изображения для каждой видеокамеры на основании векторной близости изображений на этапе d);
f) присваивают целевой вектор изображения как эталонный для каждой видеокамеры;
g) осуществляют распознавание человека на основании эталонных векторов изображений.
[1] В одном из частных вариантов осуществления способа определение целевого вектора осуществляется с помощью усреднения значения вектора и сравнения его близости с известными векторами для изображений человека для каждой видеокамеры из группы.
[2] В другом частном варианте осуществления способа этапы a) – g) выполняется итеративно для каждого изображения человека, данные о котором содержаться в базе данных.
[3] В другом частном варианте осуществления способа определение целевого вектора выполняется с помощью модели машинного обучения.
[4] В другом частном варианте осуществления способа этап b) выполняется с помощью нейронной сети.
[5] В другом частном варианте осуществления способа вычислительным устройством является сервер, соединенный посредством проводного и/или беспроводного канала передачи данных с видеокамерами.
[6] В другом частном варианте осуществления способа видеокамеры представляют собой IP видеокамеры, PTZ-камеры или их сочетания.
[7] В другом частном варианте осуществления способа выполняется обучение видеокамер с помощью эталонных векторных изображений как в режиме реального времени, так и в режиме оффлайн.
[8] В другом частном варианте осуществления способа в режиме оффлайн обучение осуществляется на партиях изображений, полученных за определенный временной период.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[9] Фиг. 1 иллюстрирует пример области наблюдения с множеством камер
[10] Фиг. 2 иллюстрирует пример изображений лица с различных ракурсов для перевода в векторную форму.
[11] Фиг. 3 иллюстрирует блок-схему процесса обучения камер в оффлайн режиме.
[12] Фиг. 4 иллюстрирует блок-схему процесса обучения камер в режиме онлайн.
[13] Фиг. 5 иллюстрирует пример выявления целевого вектора.
[14] Фиг. 6 иллюстрирует блок-схему процесса идентификации людей.
[15] Фиг. 7 иллюстрирует пример вычислительного устройства.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
[16] Как представлено на Фиг. 1 заявленное решение реализуется в системах видеонаблюдения за областью (100) с помощью группы видеокамер (110, 120, 130). Каждая из камер (110, 120, 130) осуществляет наблюдение за установленной частью области (100) под соответствующим углом (область видимости камер) и соответственно получают различные изображения (ракурсы) одного и того же человека (10).
[17] Получаемые изображения c камер (110, 120, 130) для целей распознавания и последующего их обучения для каждого из лиц людей (10) должны переводиться в векторную форму для целей определения эталонных векторных изображений лиц по сравнению с базовым. В случае выявления целевого вектора, который имеет большую близость с текущими примерами обучения для каждой камеры (изображения конкретного изображения человека), такой вектор присваивается как эталонный для каждой камеры. Процесс обучения камер будет представлен далее.
[18] На Фиг. 3 представлен способ обучения (210) камер (110, 120, 130) в оффлайн режиме, т.е. когда имеется накопленные изображения лиц людей (10), на основании которых необходимо осуществить поиск векторных изображений, оптимизирующих процесс распознавания.
[19] Способ обучения в режиме офлайн (210) активируется для группы камер, в частности, по расписанию (этап 211), устанавливаемому на вычислительном компьютерном устройстве, подключенном к группе камер, например, сервере. Накопленные изображения с каждой из камер передаются в базу данных компьютерного устройства (этап 212) для из последующей обработки и преобразования полученных изображений в векторную форму (этап 213).
[20] Преобразование изображений в векторную форму может осуществляться с помощью различных известных алгоритмов векторизации, например, алгоритмов машинного обучения (нейронная сеть) или других известных решений. Такие решения широко известны в уровне техники, например, David Beymer “Vectorizing Face Images by Interleaving Shape and Texture Computations”, MIT, 1995; Yan et al. “Face recognition algorithm using extended vector quantization histogram features”, 02.01.2018.
[21] Полученные изображения от группы камер (110, 120, 130), переведенные в векторную форму сравниваются на этапе (214) для целей идентификации изображений с векторными изображениями людей, содержащимся в хранилище идентифицированных людей (250). Хранилище (250), как правило, представляет базу данных, содержащая упорядоченное хранение данных, в частности, векторных изображений людей, полученных от конкретной камеры. Записи в хранилище (250) связаны соответствующими идентификаторами (ID) для целей.
[22]    Содержащиеся в хранилище (250) векторные изображения лиц людей представляют собой базовые вектора для каждой из группы камер (110, 120, 130). По сохраненным базовым векторам в хранилище (250) и полученным на этапе (212) векторных изображений с группы камер наблюдения (110, 120, 130) выполняется последующий анализ для выявления целевого вектора, который будет иметь наименьший показатель векторной близости (этап 215) между полученными и сохраненными векторными представлениями.
[23] Далее выявленный целевой вектор (этап 216) изображения человека для каждой из камер группы (110, 120, 130) записывается в хранилище (260) базовых векторов. Каждый найденный целевой вектор на этапе (216) для каждой камеры присваивается как эталонный и сохраняется в хранилище базовых векторов (260).
[24] Алгоритм на этапе (217) проверяет, что не осталось более обработанных векторных изображений или камер, с которых не были получения изображения распознанных лиц людей, для чего осуществляется итеративный опрос в рамках заданного временного интервала группу камер (110, 120, 130) на предмет выявления новых изображений. Если новых изображений
[25] Разработанный алгоритм относится к классу алгоритмов машинного обучения и направлен на оптимизацию некой функции на основе подаваемых ему примеров. Разработанный алгоритм можно охарактеризовать как мета-алгоритм бэггинга (Bootstrap aggregating), так как он рассчитывает такой целевой вектор, который бы являлся наилучшим усреднением идентифицированных лиц конкретного человека с конкретной камеры, т.е. наиболее близким к другим векторам одного и того же изображения лица для каждой из камер (соответствующего ракурса).
[26] В качестве оптимизируемой функции применяется функция схожести двух векторов. Это может быть функция косинусной близости, может быть функция обратная евклидовому расстоянию, или любая другая функция, характеризующая близость двух векторов. Решаемая задача оптимизации может быть представлена следующим образом:
,
где
[27] На Фиг. 5 представлен пример поиска целевого вектора из группы примеров для обучения. Как правило, вектор лица человека, который в дальнейшем подлежит идентификации, представляется в виде многомерного вектора, на Фиг. 5 представлен пример, в котором вектор спроецирован на двумерную плоскость. Предположим, что в результате проецировании 5 лиц одного и того же человека с одной и той же камера из N- мерного вектора на двумерную плоскость получается пространство векторов, в котором желтые точки являются: 1) координатами конца векторов из начала координат; 2) являются примерами для обучения.
[28] Далее необходимо определить точку, которая бы суммарно имела бы наименьшее расстояние до желтых точек. Процедура нахождения этой точки может быть любой, однако должно сохранятся основное свойство этой точки: суммарное расстояние от всех примеров для обучения до этой точки должно быть наименьшим. Таким образом находится целевой вектор, который бы характеризовал лицо человека, идентифицированное с одной и той же камеры.  Процесс нахождения целевого вектора был описан для случая, когда лицо человека можно представить в 2-х мерном пространстве, однако не ограничивается только приведенным примером и может быть обобщено для любого N- мерного пространства.
[29] На Фиг. 4 представлен пример обучения группы камер (110, 120, 130) в режиме онлайн (220). В этом примере в отличие от обучения в офлайн режиме (210), процесс выполняется динамически в ходе наблюдения камерами (110, 120, 130) за соответствующей областью (100). Получаемые с группы камер изображения (этап 221) переводятся в векторную форму (этап 222) и анализируются на предмет идентификации человека по полученным изображениям (этап 223) с помощью сравнения векторных изображений, содержащихся в хранилище (250). Далее выполняется поиск целевого вектора (этап 224) для каждой из камер и в случае успешного выявления вектора он записывается (этап 225) в хранилище базовых векторов (260). В случае выявления нового целевого вектора для лица идентифицированного человека (10) в ходе выполнения способа (220) осуществляется его запись в хранилище (260).
[30] На Фиг. 6 представлен процесс работы обученной группы камер для целей идентификации людей (300). Полученные с камер изображения (этап 301) переводятся в векторную форму (этап 302), по которым впоследствии происходит поиск в хранилище базовых векторов (260) для целей идентификации векторного изображения лица человека (этап 303). Необходимо отметить, что базовые вектора в хранилище (260) содержат эталонные вектора, выбранные для каждой камеры из группы (110, 120, 130).
[31] На этапе (304) выполняется сравнение векторов с помощью вычисления оценки схожести векторов (этап 305), полученных от камер (110, 120, 130) и векторов из хранилища (260). В случае, если оценка выше заданного порогового значения (например, 0,6), то человек идентифицируется (этап 307) по информации, содержащейся в хранилище (260), и полученное векторное изображение записывается (этап 308) как новое векторное изображение в хранилище векторных представлений идентифицированных лиц (250). В противном случае, если при вычислении оценки на этапе (305) показатель меньше порогового значения, то лицо человека не идентифицируется.
[32] Таким образом, при применении заявленного способа и алгоритма обучения группы камер повышается точность и скорость работы по выявлению новых векторных изображений для каждого ракурса соответствующей камеры, что обеспечивает улучшенный показатель безопасности зоны контроля с помощью видеокамер с учетом определения эталонных векторных представлений изображений лиц людей для каждой камеры.
[33] На Фиг. 7 представлен общий пример вычислительного компьютерного устройства (400), которое может применяться для реализации заявленного способа. В общем случае устройство (400) содержит такие компоненты, как: один или более процессоров (401), по меньшей мере одну оперативную память (402), средство постоянного хранения данных (403), интерфейсы ввода/вывода (404), средство В/В (405), средства сетевого взаимодействия (406).
[34] Процессор (401) устройства выполняет основные вычислительные операции, необходимые для функционирования устройства (400) или функционала одного или более его компонентов. Процессор (401) исполняет необходимые машиночитаемые команды, содержащиеся в оперативной памяти (402).
[35] Память (402), как правило, выполнена в виде ОЗУ и содержит необходимую программную логику, обеспечивающую требуемый функционал. Средство хранения данных (403) может выполняться в виде HDD, SSD дисков, рейд массива, сетевого хранилища, флэш-памяти, оптических накопителей информации (CD, DVD, MD, Blue-Ray дисков) и т.п. Средство (403) позволяет выполнять долгосрочное хранение различного вида информации, например, истории обработки запросов (логов), идентификаторов пользователей, данные камер, изображения и т.п.
[36] Интерфейсы (404) представляют собой стандартные средства для подключения и работы с камерами (110, 120, 130) или иными вычислительноыми устройствами, например, USB, RS232, RJ45, LPT, COM, HDMI, PS/2, Lightning, FireWire и т.п. Выбор интерфейсов (404) зависит от конкретного исполнения устройства (400), которое может представлять собой персональный компьютер, мейнфрейм, серверный кластер, тонкий клиент, смартфон, ноутбук и т.п.
[37] В качестве средств В/В данных (405) может использоваться: клавиатура, джойстик, дисплей (сенсорный дисплей), проектор, тачпад, манипулятор мышь, трекбол, световое перо, динамики, микрофон и т.п.
[38] Средства сетевого взаимодействия (406) выбираются из устройства, обеспечивающий сетевой прием и передачу данных, например, Ethernet карту, WLAN/Wi-Fi модуль, Bluetooth модуль, BLE модуль, NFC модуль, IrDa, RFID модуль, GSM модем и т.п. С помощью средства (406) обеспечивается организация обмена данными по проводному или беспроводному каналу передачи данных, например, WAN, PAN, ЛВС (LAN), Интранет, Интернет, WLAN, WMAN или GSM.
[39] Компоненты устройства (400), как правило, сопряжены посредством общей шины передачи данных.
[40] В качестве камер (110, 120, 130) могут применяться различные типы камер, например, IP видеокамеры, PTZ-камеры и т.п. Камеры (110, 120, 130) могут осуществлять передачу данных на устройство (400) с помощью проводного и/или беспроводного канала передачи данных, например, посредством TCP/IP протокола, Ethernet подключения и т.п.
[41] В настоящих материалах заявки было представлено предпочтительное раскрытие осуществление заявленного технического решения, которое не должно использоваться как ограничивающее иные, частные воплощения его реализации, которые не выходят за рамки испрашиваемого объема правовой охраны и являются очевидными для специалистов в соответствующей области техники.