СИСТЕМА И СПОСОБ СОКРЫТИЯ ОБЪЕКТОВ В ВИДЕОАРХИВЕ ПО ТРЕБОВАНИЮ ПОЛЬЗОВАТЕЛЕЙ
SYSTEM AND METHOD OF HIDING OBJECTS IN A VIDEO ARCHIVE ON USERS REQUIREMENT

ОБЛАСТЬ ТЕХНИКИ
Настоящая группа изобретений относится к области защиты конфиденциальной информации, а более конкретно к системам и способам обработки видеоинформации, полученной с камер видеонаблюдения, с целью сокрытия по требованию пользователей приватной информации в видеоархиве.
УРОВЕНЬ ТЕХНИКИ
Под системами видеонаблюдения понимается программно-аппаратное обеспечение или технические средства, использующие, в том числе и методы компьютерного зрения для автоматизированного сбора данных, на основании анализа потокового видео. Системы видеонаблюдения могут опираться на алгоритмы обработки изображения и распознавания образов, позволяющие анализировать видео без прямого участия человека. Системы видеонаблюдения, в зависимости от конкретных целей, могут реализовывать множество функций, например таких, как: обнаружение объектов, слежение за движением объектов, распознавание объектов, идентификация объектов, и т.д.
В настоящее время системы видеонаблюдения, например, такие как системы замкнутого телевидения (CCTV) быстро распространяются с целью обеспечения общей безопасности в охраняемых зонах. Помимо того, что большинство предприятий оснащено камерами, во многих городах уже развернута городская система видеонаблюдения.
Пропорционально скорости распространения таких систем растет и потребность в защите частной жизни людей. Конфиденциальность людей должна быть защищена по ряду причин. Например, некоторым людям просто неудобно постоянно находиться под видеонаблюдением, а некоторым (например, знаменитостям или просто хорошо обеспеченным гражданам) это даже не безопасно. Хотя данные о людях записываются непреднамеренно, однако эти данные сохраняются и порой становятся общедоступными в сети Интернет. Для решения указанной проблемы были разработаны различные методы маскировки приватной информации. Чаще всего используются способы распознавания лиц или объектов, с последующим шифрованием видео в области обнаруженного объекта. Однако указанные способы требуют высокой вычислительной мощности оборудования для качественной маскировки приватной информации.
Из уровня техники известно решение, раскрытое в заявке US 2014/0023248 A1, G06K 9/00, опубл. 23.01.2014, в котором раскрыты устройство и способ защиты конфиденциальной информации в видеоизображениях. Указанное устройство содержит: блок разделения видеопоследовательности на кадры; блок обнаружения лиц; блок распознавания лица, выполненный с возможностью сравнения обнаруженных лиц с целевым лицом; и блок обработки, для выборочной маскировки области лица. Указанное решение направлено на сокрытие всех других лиц в видеоизображении кроме целевого лица, или же на сокрытие только целевого лица. При этом данное решение характеризуется высокой вычислительной сложностью из-за распознавания всех лиц, имеющихся в видео и их последующего сравнения с целевым лицом.
Также из уровня техники известно еще одно решение, раскрытое в заявке US 2016/0155465 A1, G11B 20/00, опубл. 02.06.2016, в котором раскрыт способ маскировки видеоданных. Основными этапами данного способа являются: обнаружение области в кадре видео, которую необходимо замаскировать; маскировка обнаруженной области; вставка информации маскировки; сохранение замаскированного кадра вместе со вставленной информацией маскировки. Главным недостатком данного решения является тот факт, что для того, чтобы замаскировать все видео, вышеуказанные этапы способа повторяются для каждого кадра видео.
Наиболее близким по технической сущности является решение, раскрытое в заявке US 2010/0328460 A1, H04N 7/18, опубл. 30.12.2010, характеризующее метод маскировки выбранных объектов. Указанное решение описывает модуль для маскировки данных в системе видеонаблюдения, включающей камеры, размещенные в зоне контроля, которые обнаруживают все движущиеся объекты. Система видеонаблюдения содержит устройство для выбора объектов, а модуль маскировки предназначен для вывода области выбранных объектов в замаскированном виде, причем маскировка выполняется в заданной ограниченной области зоны контроля. Основным отличием данного решения от заявляемого решения является логика маскировки объектов именно в заданной области контроля, которая определяется расстоянием от камеры по диаграмме глубины сцены. Кроме того, данное решение не подразумевает автоматического расчета положений заслоняющих областей на промежуточных кадрах видео путем интерполяции.
РАСКРЫТИЕ СУЩНОСТИ ИЗОБРЕТЕНИЯ
Заявляемое техническое решение направлено на устранение недостатков, присущих предшествующему уровню техники и на развитие уже известных решений.
Техническим результатом заявленной группы изобретений является расширение арсенала технических средств, в части сокрытия объектов в видеоархиве, а также снижение вычислительной сложности таких систем, посредством задания опорной области, заслоняющей выбранный объект на первом и на последнем кадре, и расчета положений вычисленных областей на промежуточных кадрах путем интерполяции.
Данный технический результат достигается тем, что система сокрытия объектов в видеоархиве содержит: по меньшей мере, одну камеру видеонаблюдения; память, выполненную с возможностью хранения видеоданных, поступающих от камер видеонаблюдения; по меньшей мере, один процессор для обработки видеоданных в соответствии с командами, получаемыми от графического пользовательского интерфейса; графический пользовательский интерфейс, содержащий средства ввода и вывода данных, причем упомянутые средства ввода данных содержат: блок получения запроса, выполненный с возможностью получать от пользователей требование скрыть изображение конкретного выбранного объекта; блок задания опорной области, сконфигурированный для предоставления оператору системы возможности задавать опорную область, заслоняющую выбранный объект, причем опорная область задается на первом и на последнем кадре видео из видеоархива, на которых виден выбранный объект; блок интерполяции положений областей, выполненный с возможностью автоматически рассчитывать положения вычисленных областей на промежуточных кадрах между упомянутыми первым и последним кадрами видео путем интерполяции; блок сохранения видео, выполненный с возможностью сохранять измененное видео в видеоархив, причем измененное видео включает опорные и вычисленные области, заслоняющие выбранный объект, на каждом его кадре в заданном интервале от первого до последнего кадра.
В одном частном варианте заявленного решения объект является подвижным или неподвижным.
В другом частном варианте заявленного решения объектом может являться: человек, лицо человека или номер транспортного средства.
Еще в одном частном варианте блок задания опорной области дополнительно сконфигурирован для предоставления оператору системы возможности задавать, по меньшей мере, одно из: формы области, цвета области, содержания области, причем указанная область может содержать изображение или текст.
В другом частном варианте заявленного решения форма опорной области является одной из: овала, круга, прямоугольника, многоугольника.
Еще в одном частном варианте интерполяция выполняется в соответствии с допущением, что выбранный объект, который необходимо скрыть, движется прямолинейно и равномерно.
В другом частном варианте заявленного решения для, по меньшей мере, одной камеры видеонаблюдения имеется информация о траекториях движения объектов.
Еще в одном частном варианте графический пользовательский интерфейс дополнительно содержит блок выбора траектории движения объекта, сконфигурированный для выбора траектории движения конкретного выбранного объекта, причем блок интерполяции дополнительно выполнен с возможностью учитывать информацию о выбранной траектории движения объекта при расчете положений вычисленных областей.
В другом частном варианте заявленного решения блок задания опорной области дополнительно сконфигурирован для предоставления оператору возможности редактировать вычисленные области до этапа сохранения измененного видео.
Еще в одном частном варианте оператор может отредактировать вычисленную обдасть на, по меньшей мере, одном из промежуточных кадров, при этом отредактированная область станет опорной областью и видео, таким образом, будет разбито на, по меньшей мере, два интервала, причем блок интерполяции в таком случае автоматически выполнит перерасчет положений вычисленных областей на каждом промежуточном кадре в составе полученных интервалов.
В другом частном варианте заявленного решения блок интерполяции выполнен с возможностью выполнять перерасчет положений вычисленных областей в том случае, если оператор системы посредством использования блока задания опорной области добавит, по меньшей мере, одну дополнительную опорную область до или после уже замаскированного интервала видео.
Еще в одном частном варианте блок задания опорной области дополнительно сконфигурирован для предоставления оператору возможности удалять, по меньшей мере, одну опорную область, при этом блок интерполяции выполняет перерасчет положений вычисленных областей.
В другом частном варианте заявленного решения блок сохранения видео сохраняет измененное видео вместо первоначального видео, полученного из видеоархива.
Еще в одном частном варианте после сохранения измененного видео, заданные опорные области и вычисленные области остаются неизменными и отображаются при просмотре измененного видео и при экспорте его из системы.
Указанный технический результат также достигается и за счет выполнения способа сокрытия объектов в видеоархиве, реализуемого вычислительной системой, причем способ содержит этапы, на которых: получают видеоданные от, по меньшей мере, одной камеры видеонаблюдения; сохраняют полученные видеоданные в видеоархив; получают от пользователей требование скрыть изображение конкретного выбранного объекта; предоставляют оператору системы возможность задавать опорную область, заслоняющую выбранный объект, причем опорная область задается на первом и на последнем кадре видео из видеоархива, на которых виден выбранный объект; автоматически рассчитывают положения вычисленных областей на промежуточных кадрах между упомянутыми первым и последним кадром видео путем интерполяции положений областей; сохраняют измененное видео в видеоархив, причем измененное видео включает опорные и вычисленные области, заслоняющие выбранный объект, на каждом его кадре в заданном интервале от первого до последнего кадра.
А также, данный технический результат достигается за счет считываемого компьютером носителя данных, содержащего исполняемые процессором компьютера инструкции для осуществления вариантов способов сокрытия объектов в видеоархиве.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1 - блок-схема системы сокрытия объектов в видеоархиве;
Фиг. 2 - пример задания оператором опорной области, заслоняющей объект в кадре видео;
Фиг. 3 - пример кадра измененного видео, сохраненного в видеоархив;
Фиг. 4 - блок-схема способа сокрытия объектов в видеоархиве;
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
Ниже будет приведено описание примерных вариантов осуществления заявленной группы изобретений. Однако заявленная группа изобретений не ограничивается только этими вариантами осуществления. Специалистам будет очевидно, что под объем заявленной группы изобретений, описанной в формуле, могут попадать и другие варианты реализации.
Заявляемое техническое решение в различных своих вариантах осуществления может быть выполнено в виде систем и способов, реализуемых различными компьютерными средствами, а также в виде считываемого компьютером носителя данных, хранящего исполняемые процессором компьютера инструкции.
На Фиг. 1 показана блок-схема системы сокрытия объектов в видеоархиве. Система включает в себя: по меньшей мере, одну камеру видеонаблюдения (10, …, 1n); память (20); по меньшей мере, один процессор (30, …, 3m); и графический пользовательский интерфейс (40), который в свою очередь содержит: блок получения запроса (50), блок задания опорной области (60), блок интерполяции положений областей (70) и блок сохранения видео (80). Указанные блоки пользовательского интерфейса представляют собой средства ввода данных, при этом пользовательский интерфейс содержит и средства вывода данных (не показаны).
В данном контексте под системами понимаются любые вычислительные системы, построенные на базе программно-аппаратных средств, например, такие как: персональные компьютеры, смартфоны, ноутбуки, планшеты и т.д.
Процессор компьютерной системы в отдельных вариантах ее реализации может быть заменен на: микропроцессор, ЭВМ (электронно-вычислительная машина), ПЛК (программируемый логический контроллер) или интегральную схему.
В роли устройства памяти могут выступать, но, не ограничиваясь, жесткие диски (HDD), флеш-память, ПЗУ (постоянное запоминающее устройство), твердотельные накопители (SSD) и т.д.
Графический пользовательский интерфейс (ГПИ) представляет собой систему средств для взаимодействия пользователя с компьютерной системой, основанную на представлении всех доступных пользователю системных объектов и функций в виде графических компонентов экрана (окон, значков, меню, кнопок, списков и т.п.). При этом пользователь имеет произвольный доступ (с помощью устройств ввода данных) ко всем видимым экранным объектам - блокам интерфейса, которые отображаются на дисплее (мониторе). Устройство ввода данных пользователя может представлять собой, но не ограничиваться, например, манипулятор мышь, клавиатуру, тачпад, стилус, джойстик, трекпад и т.п.
Следует отметить, что в указанную компьютерную систему могут входить и любые другие известные в данном уровне техники устройства.
Далее будет подробно описан пример работы вышеупомянутой системы сокрытия объектов в видеоархиве. Все нижеописанные этапы работы системы также применимы и к реализации заявляемого способа сокрытия объектов в видеоархиве.
Как известно, видеоданные, получаемые от камер видеонаблюдения, сохраняются в видеоархив системы видеонаблюдения. Основная задача заявляемого решения заключается в том, что любому человеку, попавшему в поле зрения камер видеонаблюдения, предоставляется возможность обратиться к оператору системы, с просьбой убрать его изображение из видеоархива. В другом случае, пользователь может обратиться к оператору, с просьбой убрать изображение любого объекта из видеоархива. Объект может быть как подвижным, так и неподвижным. Например, объектом может являться одно из: человека, лица человека, транспортного средства, номера транспортного средства, домашнего питомца и т.д. Специалисту в данной области технике будет очевидно, что этим списком возможности предлагаемой системы сокрытия объектов не ограничиваются. Скрыть можно абсолютно любую приватную информацию, присутствующую в кадре видео.
Для реализации поставленной задачи графический пользовательский интерфейс системы содержит блок получения запроса, сконфигурированный для получения от пользователей требования скрыть изображение конкретного объекта.
Для примера предположим, что оператор получил запрос от одного пользователя скрыть его изображение (т.е. скрыть человека в полный рост) в видео с камер видеонаблюдения. Для этого пользовательский интерфейс системы содержит блок задания опорной области, сконфигурированный для предоставления оператору системы возможности задавать опорную область, заслоняющую требуемый объект. Оператор выбирает объект (по требованию пользователя) и вручную задает опорную область на первом и на последнем кадре видео из видеоархива, на которых виден выбранный объект. Например, в своей просьбе пользователь может указать конкретный день и конкретное время, в которое он был в охраняемой зоне. Тогда на основании этих сведений оператор быстро найдет первый кадр, в котором появляется выбранный объект, и последний кадр, после которого выбранный объект пропадает из зоны видимости камер видеонаблюдения. Посредством блока задания опорной области оператор может задать форму опорной области (например: прямоугольник, многоугольник, овал, круг и т.д.) и цвет области. Следует отметить, что оператор может задать область любой другой формы, например, посредством полилинии (ломаной линии). Кроме того, оператор может вставить в выбранную область другое нейтральное изображение или текст. Текст может содержать информацию о дате и/или времени, когда выбранный объект был скрыт и/или о порядковом номере запроса, полученного оператором.
На Фиг. 2 показан пример задания оператором опорной области, заслоняющей объект в кадре видео. Поскольку нужно заслонить человека в полный рост, оператор выбрал наиболее подходящую для этого форму области - прямоугольную.
После того, как опорные области заданы, блок интерполяции положений областей автоматически рассчитывает положения заслоняющих областей на промежуточных кадрах между первым и последним кадром видео, на которых виден выбранный объект, путем интерполяции. Суть интерполяции заключается в использовании уже известных данных о опорных областях (например, размер, местоположение в кадре и тд.) для получения аналогичных ожидаемых областей на промежуточных кадрах видео. Рассчитанные путем интерполяции заслоняющие области далее по тексту будут называться вычисленными областями. При этом расчет положений вычисленных областей производится с учетом допущения, что выбранный объект движется прямолинейно и равномерно.
В том случае, если для камер видеонаблюдения имеется информация о траекториях движения объектов, то эта информация может быть использована для ускорения процесса сокрытия объектов. Указанная информация может быть определена при помощи видео аналитики, встроенной в каждую камеру видеонаблюдения. В таком случае местоположение движущихся объектов определяется при помощи сенсоров, фиксирующих различные части спектра (видимые, тепловые) или датчиков. Кроме того, информация о траекториях движения объектов может быть вычислена на сервере для любой камеры системы видеонаблюдения.
В случае наличия такой информации в графическом пользовательском интерфейсе системы предусмотрен блок выбора траектории движения объекта. При помощи данного блока оператор может выбрать траекторию движения конкретного объекта и тогда система путем интерполяции автоматически рассчитывает положения вычисленных областей, заслоняющих объект, на всем интервале его нахождения в видео с минимальным количеством опорных областей.
Следует отметить, что блок задания опорной области дополнительно сконфигурирован для предоставления оператору возможности редактировать вычисленные области. Например, оператор может поправить положение вычисленной области на одном или нескольких промежуточных кадрах. Предположим, что оператор отредактировал одну вычисленную область на промежуточном кадре. В результате отредактированная область также становится опорной областью и заданный первоначальными опорными областями интервал видео, таким образом, разбивается на два интервала: от первого кадра до отредактированного промежуточного кадра, и от указанного промежуточного кадра до последнего кадра. Блок интерполяции в таком случае автоматически выполняет перерасчет положений вычисленных областей на каждом промежуточном кадре внутри полученных двух интервалов исходя из новых условий все по тому же алгоритму, который уже описан выше.
В одном из частных вариантов заявленного решения оператор может добавить одну или более дополнительных опорных областей до или после уже замаскированного интервала видео. В таком случае блок интерполяции также выполнит перерасчет положений вычисленных областей в каждом из полученных интервалов.
Кроме того, если оператор по каким-то причинам решит, что одна (или несколько) из заданных им опорных областей не нужны, то для такого случая блок задания опорной области предоставляет оператору возможность удалить ненужную опорную область, при этом блок интерполяции снова выполнит перерасчет положений вычисленных областей.
После того как оператор завершил редактирование всех требуемых по его мнению заслоняющих областей и блок интерполяции автоматически рассчитал положения вычисленных областей на каждом из полученных интервалов между опорными областями, оператор может сохранить полученное измененное видео в видеоархив вместо первоначального видео посредством использования блока сохранения видео, размещенного в графическом пользовательском интерфейсе. После сохранения измененного видео, заслоняющие области (опорные и вычисленные) становятся неизменными и не удаляемыми какими-либо средствами системы видеонаблюдения и отображаются при просмотре видеоархива и при экспорте его из системы. Видео может быть экспортировано из системы в любом из известных из уровня техники форматов представления видео.
На Фиг. 3 представлен пример кадра измененного видео. В указанном кадре выбранный объект отображен в неузнаваемом виде, а именно: объект заслонен прямоугольной однотонной черной областью.
Далее будет описан пример конкретной реализации способа сокрытия объектов в видеоархиве. Для примера, на Фиг. 4 представлена блок-схема одного из вариантов реализации способа сокрытия объектов в видеоархиве.
Указанный способ содержит этапы, на которых:
(100) получают видеоданные от, по меньшей мере, одной камеры видеонаблюдения;
(200) сохраняют полученные видеоданные в видеоархив;
(300) получают от пользователей требование скрыть изображение конкретного выбранного объекта;
(400) предоставляют оператору системы возможность задавать опорную область, заслоняющую выбранный объект, причем опорная область задается на первом и на последнем кадре видео из видеоархива, на которых виден выбранный объект;
(500) автоматически рассчитывают положения вычисленных областей на промежуточных кадрах между упомянутыми первым и последним кадром видео путем интерполяции положений областей;
(600) сохраняют измененное видео в видеоархив, причем измененное видео включает опорные и вычисленные области, заслоняющие выбранный объект, на каждом его кадре в заданном интервале от первого до последнего кадра.
Следует отметить, что данный способ может быть реализован посредством использования компьютерной системой и, следовательно, может быть расширен и уточнен всеми теми же частными вариантами исполнения, которые уже были описаны выше для реализации компьютерной системы сокрытия объектов в видеоархиве.
Кроме того, варианты осуществления настоящей группы изобретений могут быть реализованы с использованием программного обеспечения, аппаратных средств, программной логики или их комбинации. В данном примере осуществления программная логика, программное обеспечение или набор инструкций хранятся на одном из различных традиционных машиночитаемых носителей, то есть на считываемом компьютером носителе данных.
В контексте данного документа «считываемым компьютером носителем данных» может быть любая среда или средства, которые могут содержать, хранить, передавать, распространять или транспортировать инструкции (команды) для их использования (исполнения) компьютерной системой, такой как компьютер. Машиночитаемый носитель может являться энергонезависимым машиночитаемым носителем данных.
При необходимости, по меньшей мере, часть различных операций, рассмотренных в описании данного решения, может быть выполнена в отличном от представленного порядке и/или одновременно друг с другом.
Хотя данное техническое решение было описано подробно в целях иллюстрации наиболее востребованных в настоящее время и предпочтительных вариантов осуществления, следует понимать, что данное изобретение не ограничивается раскрытыми вариантами осуществления и более того, предназначено для модификации и различных других комбинаций признаков из описанных вариантов осуществления. Например, следует понимать, что настоящее изобретение предполагает, что в возможной степени, один или более признаков любого варианта осуществления могут быть объединены с другим одним или более признаками любого другого варианта осуществления.