УСТРОЙСТВО УМЕНЬШЕНИЯ ОШИБКИ ПОЗИЦИОНИРОВАНИЯ ДЛЯ PTZ КАМЕРЫ

ОБЛАСТЬ ТЕХНИКИ
Данное техническое решение относится к области видеонаблюдения, в частности к видеонаблюдению с использованием поворотных (PTZ) камер.
ПРЕДШЕСТВУЮЩИЙ УРОВЕНЬ ТЕХНИКИ
В настоящее время для видеонаблюдения за большими территориями используются ставшие повсеместно распространенными поворотные камеры (PTZ), представляющие собой устройство, которое поддерживает удаленное управление направлением взгляда и зумом. PTZ-камеры активно используются при проведении видеоконференций, являясь необходимым атрибутом конференц-зала или переговорной комнаты, при построении охранных систем и других систем видеонаблюдения. Вследствие их большой распространенности на данный момент, модельный ряд камер достаточно обширен, камеры обладают различными характеристиками и стоимостью.
При использовании поворотной камеры для видеонаблюдения важной характеристикой ее функционирования является ошибка позиционирования камеры, зависит от степени износа механизма, его начальной точности, калибровки камеры.
Из уровня техники известна статья [1], в которой описываются подходы, которые применяются в решении поставленной задачи.
Синха и Поллефейс предложили устройство позиционирования для PTZ-камер [2], в котором камера сначала калибруется на малом зуме, а затем внутренние параметры камеры рассчитываются при увеличении зума. Так как калибровка осуществляется дискретно от одного значения зума кдругому, применяют кусочно-линейную интерполяцию для вычисления внутренних параметров. Использование данного способа обеспечивает потребность в большом количестве шагов калибровки для смягчения шума, что значительно увеличивает время работы.
СУЩНОСТЬ
Данное техническое решение направлено на устранение недостатков, свойственных решениям, известным из уровня техники.
Техническим результатом является уменьшение ошибки и увеличение повторяемости позиционирования.
Данный технический результат достигается за счет использования промежуточных точек позиционирования, которые уменьшают эффект инерции и «перелета» необходимой позиции. При уменьшении ошибки позиционирования повышается точность позиционирования.
Еще одним техническим результатом является повторяемость результатов позиционирования. В итоге ошибка позиционирования становится систематической и одинаковой.
Устройство уменьшения ошибки позиционирования для PTZ камеры, содержащее блок определения промежуточных позиций камеры, с возможностью записи и хранения координат промежуточных позиций камеры, блок последовательного поворота PTZ-камеры, выполненный с возможностью поворота через промежуточные точки блок получения целевой позиции камеры, блок управления, причем блок управления соединен с блоком получения целевой позиции камеры, выход которого подключен к входу блока определения промежуточных позиций камеры, который подключен к входу блока управления, вход которого подключен к выходу блока последовательного поворота PTZ-камеры.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Признаки и преимущества настоящего технического решения станут очевидными из приводимого ниже подробного описания и прилагаемых чертежей, на которых:
На Фиг. 1 - приведена блок-схема устройства;
ПОДРОБНОЕ РАСКРЫТИЕ ТЕХНИЧЕСКОГО РЕШЕНИЯ
Ниже будут описаны понятия и определения, необходимые для подробного раскрытия осуществляемого технического решения.
Панорамный угол (угол прецессии, Pan) - один из углов Эйлера, описывающий поворот объекта вокруг оси Z (более подробно в источнике [9]). Данный угол соответствует повороту объекта в собственной горизонтальной плоскости.
Угол наклона (угол нутации, Tilt) - один из углов Эйлера, описывающий поворот объекта вокруг оси Y (более подробно в источнике [9]). Данный угол соответствует повороту объекта в собственной вертикальной плоскости.
Ошибка позиционирования - разница между целевой позицией камеры и фактическим положением камеры после позиционирования в целевую позицию. Выражается двумя углами: панорамным (соответствующим разнице между панорамными углами фактической и целевой позиции) и углом наклона (соответствующим разнице между углами наклона фактической и целевой позиции).
Повторяемость результата - характеристика, отражающая вероятность повторения результата эксперимента при соблюдении определенного набора начальных условий.
Повторяемость результата позиционирования - характеристика, отражающая вероятность достижения одних и тех же величин ошибки позиционирования при сохранении целевой позиции камеры и изменении исходной позиции.
В стандартном режиме позиционирования, при необходимости повернуть камеру, блок управления 101 (Фиг. 1) посылает блоку последовательного поворота PTZ-камеры 103 команду поворота из исходной позиции в целевую позицию:
1
1
1
1
1
D1
D
Er1
D
Er1
D
D
D
Где Pos(Pan;Tilt) - исходная позиция камеры, которая характеризуется панорамным углом Pan и углом наклона Tilt, Pos(Pan+Pan; Tilt+Tilt) - позиция камеры при движении камеры из точки 1 в целевую позицию, она отличается от требуемой целевой позиции Pos(Pan; Tilt) на величину ошибки позиционирования.
При этом поворот в ту же целевую позицию из другого исходного положения в общем случае приводит к другим ошибкам позиционирования:
2
2
2
D2
D
Er2
D
Er2
Pos(Pan;Tilt) - вторая начальная позиция ориентации камеры, отличающаяся от первой значениями панорамного угла и угла наклона, Pos(Pan+Pan;Tilt+Tilt) - ориентация камеры при приходе в целевую позицию из исходной позиции 2, с другими значениями ошибки по панорамному углу и углу наклона. Получившаяся позиция так же отличается от требуемого целевого направления обзора камеры.
Er
Er
При таком подходе разброс значений Pan; Tilt может достигать существенных значений, причем для камер с различными механизмами поворота ошибка будет составлять от 0,05 градуса до 0,5 градусов. Различные механизмы поворота описаны в [4].
В данном техническом решении предлагается введение, по крайней мере, одной дополнительной позиции через которую проходит камера перед достижением целевой позиции, позволяющее уменьшить ошибку позиционирования:
Аналогично предыдущему:
1
1
1
Pos(Pan; Tilt) - первая исходная позиция.
Int1
Int
Er1
Int
Er1
Pos(Pan+Pan; Tilt+Tilt) - промежуточная позиция с собственной ошибкой позиционирования при перепозиционировании из первой исходной позиции.
D1
D
MEr1
D
MEr1
Pos(Pan+Pan; Tilt+Tilt) - конечная (целевая) позиция при перепозиционировании из промежуточной позиции.
2
2
2
Pos(Pan; Tilt) - вторая исходная позиция, отличающаяся от первой исходной позиции.
Int2
Int
Er2
Int
Er2
PoS(Pan+Pan; Tilt+Tilt) - промежуточная позиция с собственной ошибкой позиционирования при перепозиционировании из второй исходной позиции.
D2
D
MEr2
D
MEr2
Pos(Pan+Pan; Tilt+Tilt) - конечная позиция при приходе из промежуточной позиции.
MEr
MEr
Т.к. в конечную точку PTZ-камера позиционируется из промежуточной точки, координаты которой в двух описываемых маршрутах движения могут отличаться не более, чем на ошибку позиционирования (от 0,05 до 0,5 градуса), конечная ошибка Pan; Tilt будет существенно меньше, и для камер с точностью позиционирования 0,05 градуса может составлять уже около 0,01 градуса.
Необходимый эффект достигается ценой некоторой потери времени, необходимого на промежуточное позиционирование и контроль установки поворотного механизма в промежуточную позицию. Однако для многих задач точность, которая достигается за счет уменьшения ошибки позиционирования, является приоритетным фактором. Кроме того, современные камеры обладают очень большой скоростью позиционирования, что сводит временные затраты на дополнительное позиционирование к минимуму.
Согласно Фиг. 1, устройство для реализации технического решения включает в себя блок управления 101. Блок управления 101 может быть сконфигурировано как клиент, сервер, мобильное устройство или любое другое вычислительное устройство, которое взаимодействует с данными в системе совместной работы. В самой базовой конфигурации блок управления 101, как правило, включает в себя, по меньшей мере, один процессор и блок хранения данных. В зависимости от точной конфигурации и типа вычислительного устройства системная память может быть энергозависимой (например, оперативное запоминающее устройство (ОЗУ, RAM)), энергонезависимой (например, постоянное запоминающее устройство (ПЗУ, ROM)) или некоторой их комбинацией. Блок хранения данных, как правило, включает в себя одну или более прикладных программ и может включать в себя данные программ.
Функциональное взаимодействие блоков происходит следующим образом:
блок управления 101 получает целевую позицию поворота PTZ-камеры с блока получения целевой позиции камеры 104;
Под целевой позицией понимается позиция камеры, задаваемая программой управления камерой или оператором. Таким образом, целевая позиция поворота PTZ-камеры передается блоку управления 101 из блока получения целевой позиции камеры 104. Сущность технического решения не зависит от способа получения целевой позиции.
блок управления 101 отправляет блоку определения промежуточных позиций 102 команду на определение, по крайней мере, одной промежуточной позиции камеры и ее координат на основе данных о целевой позиции поворота камеры;
Промежуточные позиции и их координаты блок определения промежуточных позиций 102 определяет путем проведения тестирования устройства, либо на основании представлений об конфигурации поворотного механизма камеры. При проведении тестирования для получения оптимальных параметров промежуточных точек могут использоваться алгоритмы глобальной оптимизации [6, 7, 8].
Промежуточные позиции могут быть определены через абсолютные координаты или через относительные координаты.
Количество промежуточных позиций зависит от требуемой скорости и точности позиционирования. Чем выше требуется скорость позиционирования, тем меньше должно быть промежуточных точек позиционирования, при этом, в некоторых случаях может быть достаточно одной промежуточной точки позиционирования. Также из общих соображений очевидно, что увеличение количества промежуточных точек сверх определенного предела не приведет к увеличению точности позиционирования.
Скорость и точность позиционирования могут задаваться заранее в зависимости от конкретного способа применения камеры.
В некоторых вариантах определения промежуточных точек строят автоматическую процедуру вычисления получаемой точности позиционирования при заданной скорости и наоборот, получаемой скорости позиционирования при необходимой точности.
В частном случае, тестирование с целью определения промежуточных позиций может происходить следующим образом:
1. Блок управления 101 отправляет команду блоку получения целевой позиции камеры 104 определить целевую позицию камеры случайным образом.
2. Затем блок управления 101 направляет блоку последовательного поворота PTZ-камеры 103 команду на перемещение в произвольную точку, затем сразу направляет команду возвращения блоку получения целевой позиции камеры 104 в целевую позицию по определенному алгоритму позиционирования, проводя замер точности и скорости позиционирования.
3. После чего блок управления 101 изменяет алгоритм позиционирования и снова проводит измерения точности позиционирования.
При изменении алгоритма позиционирования подразумевается как выбор другого алгоритма, так и настройка текущего действующего.
При этом могут использоваться различные стратегии изменения алгоритма позиционирования, в том числе наиболее простые. Приведем пример простой стратегии определения алгоритма позиционирования: блок управления 101 выбирает одну промежуточную позицию, отличающуюся от целевой по панорамному углу и углу наклона на величину А. Затем при помощи алгоритма глобальной оптимизации [6, 7, 8] для одномерной функции выбирают такое значение А, которое соответствует минимальной ошибке позиционирования.
Для определения ошибки позиционирования могут использоваться алгоритмы компьютерного зрения, например, реализующие выделение опорных точек на двух кадрах и определение смещения опорных точек между кадрами. Поиск опорных точек может быть произведен, как указано в источнике информации [5]. В частном случае, могут использоваться два изображения - первое, полученное в целевой точке в начальный момент времени, и второе, полученное в целевой позиции после позиционирования из промежуточной позиции. Далее эти изображения сравниваются, и определяется ошибка позиционирования.
блок управления 101 направляет команду блоку последовательного поворота PTZ-камеры 103 на последовательный поворот в целевую позицию через вышеупомянутые промежуточные позиции.
После получения целевой позиции и вычисления набора промежуточных позиций, блок управления 101 направляет команду блоку последовательного поворота PTZ-камеры 103 на последовательный поворот в целевую позицию через первую промежуточную позицию, затем, при ее наличии, во вторую, и так далее. Последним шагом будет поворот камеры в целевую позицию.
Блок управления 101 может иметь дополнительные особенности или функциональные возможности. Например, блок управления 101 может также включать в себя дополнительные модули хранения данных (съемные и несъемные), такие как, например, магнитные диски, оптические диски или лента. Компьютерные носители данных могут включать в себя энергозависимые и энергонезависимые, съемные и несъемные носители, реализованные любым способом или при помощи любой технологии для хранения информации, такой как машиночитаемые инструкции, структуры данных, программные модули или другие данные. Блок управления 101 является примером компьютерных носителей данных. Компьютерные носители данных включают в себя, но не в ограничительном смысле, оперативное запоминающее устройство (ОЗУ), постоянное запоминающее устройство (ПЗУ), электрически стираемое программируемое ПЗУ (EEPROM), флэш-память или память, выполненную по другой технологии, ПЗУ на компакт-диске (CD-ROM), универсальные цифровые диски (DVD) или другие оптические запоминающие устройства, магнитные кассеты, магнитные ленты, хранилища на магнитных дисках или другие магнитные запоминающие устройства, или любую другую среду, которая может быть использована для хранения желаемой информации и к которой может получить доступ блок управления 101.
Блок управления 101 содержит коммуникационные соединения, которые позволяют устройству связываться с другими вычислительными устройствами. Коммуникационное соединение является примером коммуникационной среды. Как правило, коммуникационная среда может быть реализована при помощи машиночитаемых инструкций, структур данных, программных модулей или других данных в модулированном информационном сигнале, таком как несущая волна, или в другом транспортном механизме, и включает в себя любую среду доставки информации. Термин «модулированный информационный сигнал» означает сигнал, одна или более из его характеристик изменены или установлены таким образом, чтобы закодировать информацию в этом сигнале. Для примера, но без ограничения, коммуникационные среды включают в себя проводные среды, такие как проводная сеть или прямое проводное соединение. Термин «машиночитаемый носитель», как употребляется в этом документе, включает в себя как носители данных, так и коммуникационные среды.
Элементы данного устройства находятся в конструктивном единстве и функциональной взаимосвязи, а их совместное использование приводит к созданию нового устройства с новой функцией. Таким образом, конструкция выполняется в жесткой конструкции, все блоки которой связаны, в любом исполнении, не влияющим на сущность технического решения.
Блоки, используемые в устройстве, могут быть реализованы с помощью электронных компонент, используемых для создания цифровых интегральных схем. Не ограничиваюсь, могут быть использоваться микросхемы, логика работы которых определяется при изготовлении, или программируемые логические интегральные схемы (ПЛИС), логика работы которых задается посредством программирования. Для программирования используются программаторы и отладочные среды, позволяющие задать желаемую структуру цифрового устройства в виде принципиальной электрической схемы или программы на специальных языках описания аппаратуры: Verilog, VHDL, AHDL и др. Альтернативой ПЛИС являются: программируемые логические контроллеры (ПЛК), базовые матричные кристаллы (БМК), требующие заводского производственного процесса для программирования; ASIC - специализированные заказные большие интегральные схемы (БИС), которые при мелкосерийном и единичном производстве существенно дороже.
Также блоки могут быть реализованы с помощью постоянных запоминающих устройств (см. Лебедев О.Н. Микросхемы памяти и их применение. - М.: Радио и связь, 1990. - 160 с.; Большие интегральные схемы запоминающих устройств: Справочник / А.Ю. Горденов и др. - М.: Радио и связь, 1990. - 288 с.).
Таким образом, реализация всех используемых блоков достигается стандартными средствами, базирующимися на классических принципах реализации основ вычислительной техники.
ПРИМЕРЫ РЕАЛИЗАЦИИ
Пусть имеется модель камеры, допускающая возможность позиционирования с различными скоростями. При этом известно, что в силу инерционности механизма, попытка позиционирования камеры в точку (Pan, Tilt) приводит к позиционированию в точку (Pan+Perr, Tilt+Terr), где (Perr, Terr) - ошибка позиционирования, величина которой зависит от скорости движения камеры в точку позиционирования, а направление зависит от вектора движения, которым обладала камера в момент достижения целевой позиции. Таким образом, позиционирование с максимальной скоростью приводит к появлению ошибки максимальной величины. Направление ошибки так же непредсказуемо, поскольку зависит от позиции, в которой камера находилась до начала позиционирования. Позиционирование с малой скоростью уменьшило бы ошибку, но многократно увеличило бы время позиционирования в случае, если начальная позиция камеры и целевая позиция существенно отличаются. В ходе тестирования возможностей поворотного механизма камеры выяснилось, что для достижения минимальной ошибки позиционирования достаточно определить одну промежуточную точку, отличающуюся от целевой позиции на один градус по панорамному углу и углу наклона и осуществлять движение из промежуточной позиции в целевую с минимальной скоростью. При этом увеличение расстояния между целевой позицией и промежуточной не приводит к уменьшению ошибки, но, естественно, приводит к увеличению времени позиционирования. В то же время, дальнейшее сокращение расстояния приводит к увеличению ошибки позиционирования. Таким образом, расстояние в один градус по двум углам является оптимальным с точки зрения уменьшения ошибки позиционирования.
Далее рассматривается пример реализации технического решения, в котором присутствует одна промежуточная точка (Pan - 1°, Tilt - 1°).
Определение промежуточной позиции (Pan - 1°, Tilt - 1°) дано в абсолютных координатах камеры, но также может быть определено в относительных координатах. При этом, если исходная позиция камеры была (Pисх, Tисх), то относительная позиция промежуточной точки будет (Pan - 1 - Рисх, Tilt - 1 - Тисх) и будет соответствовать смещению, на которое подлежит повернуть камеру для достижения промежуточной позиции. Аналогично, координаты целевой позиции относительно промежуточной позиции будут (1,1).
Предварительно, получают целевую позицию (Pan, Tilt). Далее определяют одну промежуточную позицию (Pan - 1°, Tilt - 1°), после чего поворачивают камеру с максимальной скоростью из исходной позиции в промежуточную. Из промежуточной позиции поворачивают камеру в целевую позицию с минимальной скоростью.
Результатом такой последовательности действий будет уменьшение ошибки позиционирования в целевой точке, поскольку движение в нее осуществлялось с минимальной скоростью. При этом время позиционирования вырастет несущественно, поскольку с минимальной скоростью камера двигалась лишь короткий промежуток траектории позиционирования, а именно путь в один градус по панорамному углу и углу наклона. Кроме того, направление уменьшенной ошибки будет одинаковым, поскольку вектор движения камеры в момент достижения целевой позиции будет одним и тем же, что позволит перевести ошибку в разряд систематических, учесть и таким образом полностью нивелировать.
В примере реализации с двумя промежуточными точками предварительно получают целевую позицию, после чего определяют две промежуточные позиции. Первая позиция (Pan - 1°, Tilt - 1°), вторая позиция (Pan, Tilt - 1°). Затем осуществляют позиционирование в первую промежуточную позицию с максимальной скоростью, после чего происходит позиционирование во вторую промежуточную позицию с минимальной скоростью. В итоге осуществляют позиционирование в целевую позицию с минимальной скоростью.
Специалисту в данном уровне техники, очевидно, что технический результат достигается при использовании одной промежуточной точки. При увеличении количества промежуточных точек, ошибка позиционирования уменьшается.
Кроме технического результата, описанного для способа с одной промежуточной точкой, данное устройство имеет результатом дальнейшее уменьшение ошибки позиционирования, связанное с тем, что на двух последних шагах движение осуществляется только по одному из углов и отсутствует ошибка, связанная с неточной синхронизацией приводов механизма позиционирования, осуществляющих движение по каждому из углов.
Настоящее подробное описание составлено с приведением различных не имеющих ограничительного и исчерпывающего характера вариантов осуществления. В то же время, специалистам, имеющим средний уровень компетентности в рассматриваемой области техники, очевидно, что различные замены, модификации или сочетания любых раскрытых здесь вариантов осуществления (в том числе частично) могут быть воспроизведены в пределах объема настоящего технического решения. Таким образом, подразумевается и понимается, что настоящее описание технического решения включает дополнительные варианты осуществления, суть которых не изложена здесь в явно выраженной форме. Такие варианты осуществления могут быть получены путем, например, сочетания, модификации или преобразования каких-либо действий, компонентов, элементов, свойств, аспектов, характеристик, ограничений и пр., относящихся к приведенным здесь и не имеющим ограничительного характера вариантам осуществления.
ИСПОЛЬЗУЕМЫЕ ИСТОЧНИКИ
1. «Keeping a Pan-Tilt-Zoom Camera Calibrated)), авторы: Ziyan Wu, Richard J. Radke, опубликовано: IEEE Trans. Pattern Anal. Mach. Intell. - 2013.
2. S.N. Sinha and M. Pollefeys. Pan-tilt-zoom camera calibration and high-resolution mosaic generation. Computer Vision and Image Understanding, 103(3): 170-183, Sept. 2006.
3. M. Sarkis, C. Senft, and K. Diepold. Calibrating an Automatic Zoom Camera With Moving Least Squares. IEEE Transactions on Automation Science and Engineering, 6(3): 492-503, July 2009.
4. Интернет-ресурс: http://www.aktivsb.ru/article-info1052.html
5. Компьютерное зрение современный подход Computer Vision: А Modern Approach Авторы: Дэвид А. Форсайт, Жан Понс Переводчики: А. Назаренко, И. Дорошенко Языки: Русский Издательство: Вильяме ISBN 5-8459-0542-7, 0-13-085198-1; 2004 г.
6. Стронгин Р.Г. Численные методы в многоэкстремальных задачах. "Оптимизация и исследование операций", Главная редакция физико-математической литературы издательства "Наука", М., 1978, 240 стр.
7. Пападимитриу X., Стайглиц К. Комбинаторная оптимизация: Алгоритмы и сложность. М.: Мир, 1985
8. Батищев Д.И. Генетические алгоритмы решения экстремальных задач. Под ред. Львовича Я.Е.: Учеб. пособие. Воронеж, 1995, 64 с.
9. Интернет-ресурс: https://ru.wikipedia.org/wiki/Углы_Эйлера