СПОСОБ ОПРЕДЕЛЕНИЯ РАССТОЯНИЯ ДО ОБЪЕКТА ПРИ ПОМОЩИ КАМЕРЫ (ВАРИАНТЫ)
METHOD OF DISTANCE TO OBJECT DETERMINING BY MEANS OF CAMERA (VERSIONS)

ОБЛАСТЬ ТЕХНИКИ
Данное изобретение относится к системам и способам измерения расстояния до удаленных объектов при помощи видеосенсора (камеры).
УРОВЕНЬ ТЕХНИКИ
Известны способы и системы определения расстояния до удаленного объекта.
Известна группа систем и способов, использующие для определения расстояния до объекта т.н. лидары. Лидар (транслитерация LIDAR англ. Light Detection and Ranging - световое обнаружение и определение дальности) - технология получения и обработки информации об удаленных объектах с помощью активных оптических систем, использующих явления отражения света и его рассеяния в прозрачных и полупрозрачных средах. Недостатками данных решений является необходимость использовать дополнительное оборудование, что удорожает конструкцию и не всегда возможно в условиях уже смонтированных систем видеонаблюдения.
Из уровня техники известен способ определения расстояния до объекта при помощи оптического прибора (например, бинокля) или «на глаз», «Снайпер. Методологическая подготовка», А.Ф. Домненко. - Ростов н/Д.: Феникс, 2006. - 176 с.: ил. Недостатком данного способа является невозможность его применения в существующих системах видеонаблюдения и видеомониторинга.
Известно техническое решение патент РФ 2470376, «Способ определения расстояния от видеокамеры измерителя скорости до транспортного средства (варианты)», заявитель ООО «Технологии Распознавания», опубл. 20.12.2012. Группа изобретений относится к контрольно-измерительной технике и может применяться для определения расстояния до движущегося транспортного средства (ТС). На пути движения ТС размещают видеокамеру, при появлении ТС в зоне контроля фиксируют видеокадр с изображением пластины с государственным регистрационным знаком (ГРЗ) на ТС. Производят распознавание символов ГРЗ, по которым определяют тип пластины ГРЗ. Измеряют координаты точек (вершин) углов изображения пластины ГРЗ в системе координат видеокадра, определяют геометрические размеры изображения пластины ГРЗ на видеокадре в пикселях. В заявленной группе изобретений измеряется расстояние до определенной точки ТС, а именно до центра пластины ГРЗ, независимо от высоты установки видеокамеры над автодорогой. Кроме того, обеспечивается определение высоты подвеса пластины ГРЗ над дорогой. Применение группы изобретений позволяет повысить вероятность идентификации ТС при обнаружении нарушения скоростного режима.
Недостатком данного технического решения является необходимость точной привязки камеры к ее местоположению и получаемому с нее изображению, а также предварительного измерения параметров взаимного расположения видеокамеры и ее зоны контроля в плоскости дороги: высоту подвеса камеры над дорогой, расстояние от точки проекции видеокамеры на дорогу до начала зоны контроля и т.д., что трудно реализуемо при большой удаленности объектов.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Данное изобретение направлено на устранение недостатков, присущих известным техническим решениям.
Техническим результатом данного изобретения является обеспечение универсального способа определения расстояния с помощью видеокамеры до удаленных объектов за счет исключения необходимости предварительной настройки камеры относительно зоны ее установки.
Согласно первому варианту, способ определения расстояния при помощи камеры, включает следующие шаги: получают по крайней мере один видеокадр и калибровочные характеристики камеры, далее выделяют и вводят размеры по крайней мере одного объекта, расстояние до которого необходимо измерить, затем определяют расстояние до по крайней мере одного выделенного объекта на основании калибровочных характеристик камеры.
В некоторых вариантах реализации, калибровочные характеристики камеры могут включать:
- Фокусное расстояние
- Коэффициенты дисторсии
- Размер и соотношение сторон пикселя
- Положение сенсора камеры относительно оптической оси
- Данные о разрешении изображения.
В некоторых вариантах реализации, калибровочные характеристики камеры могут включать:
- обзор камеры по вертикали,
- соотношение сторон,
- разрешение.
В некоторых вариантах реализации, калибровочные характеристики вводятся пользователем.
В некоторых вариантах реализации, калибровочные характеристики получают с камеры.
В некоторых вариантах реализации, калибровочные характеристики получают из специального справочника на основании информации о камере.
В некоторых вариантах реализации, калибровочные характеристики измеряют с помощью специализированных тестов.
В некоторых вариантах реализации, для повышения точности определения расстояния, используют несколько кадров с последующим усреднением и статистическим анализом информации.
В некоторых вариантах реализации, выделение объекта происходит автоматически, при помощи видеоаналитики.
В некоторых вариантах реализации, выделение объекта осуществляется вручную пользователем.
В некоторых вариантах реализации, размеры объекта определяются автоматически, на основании базы данных объектов и их размеров.
В некоторых вариантах реализации, размеры объекта задаются вручную.
В некоторых вариантах реализации, выделение объекта задается с помощью пользовательского инструмента путем выделения начальной и конечной точки координат по оси х объекта с указанием размера объекта по данной оси.
В некоторых вариантах реализации, выделение объекта задается с помощью пользовательского инструмента путем выделения начальной и конечной точки координат х, у объекта с указанием размеров объекта по указанным осям.
В некоторых вариантах реализации, для увеличения точности, определяются три размера объекта - по осям х, у, z в декартовой системе координат.
В некоторых вариантах реализации, выделение объекта задается с помощью прямоугольника с заданием метрических размеров объекта.
Согласно второму варианту, способ определения расстояния при помощи камеры, включает следующие шаги: получают по крайней мере, два видеокадра с задержкой и алибровочные характеристики камеры, выделяют по крайней мере один объект, расстояние, до которого необходимо измерить, и формируют его модель движения, затем определяют расстояние до объекта, на основании модели движения объекта и ориентации камеры, фокусного расстояния и дополнительных калибровочных характеристик камеры.
В некоторых вариантах реализации, калибровочные характеристики камеры могут включать:
- Коэффициенты дисторсии
- Размер и соотношение сторон пикселя
- Положение сенсора камеры относительно оптической оси
- Данные о разрешении изображения.
В некоторых вариантах реализации, калибровочные характеристики камеры могут включать:
- Обзор камеры по вертикали
- Соотношение сторон кадра
- Разрешение матрицы в пикселях.
В некоторых вариантах реализации, калибровочные характеристики вводятся пользователем.
В некоторых вариантах реализации, фокусное расстояние и дополнительные калибровочные характеристики вводятся пользователем.
В некоторых вариантах реализации, фокусное расстояние и дополнительные калибровочные характеристики получают с камеры.
В некоторых вариантах реализации, фокусное расстояние и дополнительные калибровочные характеристики получают из справочника калибровочных характеристик, на основании информации о камере.
В некоторых вариантах реализации, фокусное расстояние и дополнительные калибровочные характеристики измеряют с помощью калибровочных тестов.
В некоторых вариантах реализации, задержка задается предварительно, на этапе настройки.
В некоторых вариантах реализации, задержка определяется динамически, по факту пиксельного смещения объекта на видеокадре.
В некоторых вариантах реализации, выделение объекта происходит автоматически, при помощи видеоаналитики.
В некоторых вариантах реализации, выделение объекта осуществляется вручную пользователем.
В некоторых вариантах реализации, для объектов, не имеющих постоянную форму, видеоаналитика определяет векторы направления движения различных частей объекта.
В некоторых вариантах реализации, модель движения объекта включает метеорологические сведения.
В некоторых вариантах реализации, модель движения объекта выбирается из базы моделей и уточняется на основании данных о движении объекта и/или внешних условий.
В некоторых вариантах реализации, векторы направления движения различных частей объекта сопоставляются с предустановленными моделями движения, в зависимости от внешних условий и уточняется на основании текущих данных.
В одном из вариантов реализации, способ согласно первому варианту может быть реализован в виде системы определения расстояния, включающей:
Устройство фото и/или видеофиксации, одно или более устройство обработки команд, одно или более устройство хранения данных, одну или более программ, где одна или более программ хранятся на одном или более устройстве хранения данных и исполняются на одном и более устройстве обработки команд, причем одна или более программ включает инструкции для реализации способа согласно первому и/или второму варианту.
В качестве устройства фото и/или видеофиксации может быть фотокамера, выполненная с возможностью съемки видео и/или последовательности фотоснимков, или видеокамера.
ПОДРОБНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Здесь и далее будут описаны термины, используемые в заявке.
Камера - фото/видеокамера или любой другой фото-видеофиксирующий элемент, с оптической системой.
Фокусное расстояние/фокальное расстояние (англ. focal length) - физическая характеристика оптической системы. Для центрированной оптической системы, состоящей из сферических поверхностей, описывает способность собирать лучи в одну точку при условии, что эти лучи идут из бесконечности параллельным пучком параллельно оптической оси /1/.
Фокусное расстояние объектива - это расстояние от его оптического центра до матрицы фотоаппарата или видеокамеры /1/.
Дисторсия (от лат. distorsio, distortio - искривление) - аберрация оптических систем, при которой линейное увеличение изменяется по полю зрения. При этом нарушается подобие между объектом и его изображением /1/.
Искажения, вызванные дисторсией линз, определяются /2/:
r
r
1..n
2
2
1/2
где (Δx, Δy) - отклонение пиксела изображения от ее истинного положения - положения, которое занимала бы точка при отсутствии дисторсии, k - коэффициенты дисторсии, постоянные для фиксированной конфигурации оптической системы фотоаппарата, r=(x+y) - расстояние от центра кадра до точки с координатами (х, у).
Разрешение камеры - количество элементов (пикселей) в матрице камеры, обычно по двум осям.
Размер матрицы - физический размер матрицы видеокамеры, обычно измеряется в дюймах и задается диагональю и соотношением сторон.
Калибровка камеры - это задача получения внутренних и внешних параметров камеры (т.н. калибровочных параметров) по отснятым ей фотографиям или видео. Угловой размер - это угол между линиями, соединяющими диаметрально противоположные точки измеряемого объекта и глаз наблюдателя, или точку расположения камеры. Для объекта - это угол, под которым наблюдаются объект из определенной точки (2 крайние точки объекта), в случае сложного объекта, сложной формы, объект может быть описан несколькими угловыми размерами (высота, ширина, длина и т.д.).
Объект - искомый наблюдаемый объект, в случае сложного объекта объектом может быть принята его часть
Угловое смещение (размер углового смещения или угловой размер смещения объекта) - угол между двумя точками нахождения объекта (например, его центра или фронта) в разные моменты времени.
Метрический размер - для объекта расстояние между крайними точками объекта в системе измерения длины (расстояния), в случае сложного объекта может быть описан несколькими размерами (высота, длина и т.д.).
Метрическое смещение (размер метрического смещения или метрический размер смещения) - расстояние между точками нахождения объекта (центра, фронта и др.) в различные моменты времени.
Данное изобретение в различных своих вариантах осуществления может быть выполнено в виде способа, в т.ч. реализуемого на компьютере, в виде системы или машиночитаемого носителя, содержащего инструкции для выполнения вышеупомянутого способа.
В данном изобретении под системой подразумевается компьютерная система, ЭВМ (электронно-вычислительная машина), ЧПУ (числовое программное управление), ПЛК (программируемый логический контроллер), компьютеризированные системы управления и любые другие устройства, способные выполнять заданную, четко определенную последовательность операций (действий, инструкций).
Под устройством обработки команд подразумевается электронный блок либо интегральная схема (микропроцессор), исполняющая машинные инструкции (программы). Устройство обработки команд считывает и выполняет машинные инструкции (программы) с одного или более устройства хранения данных. В роли устройства хранения данных могут выступать, но, не ограничиваясь, жесткие диски (HDD), флеш-память, ПЗУ (постоянное запоминающее устройство), твердотельные накопители (SSD), оптические приводы.
Программа - последовательность инструкций, предназначенных для исполнения устройством управления вычислительной машины или устройством обработки команд.
Согласно первому варианту, способ определения расстояния до объекта с помощью камеры включает следующие шаги:
Получают по крайней мере один видеокадр и дополнительные калибровочные характеристики камеры. В качестве кадра будем понимать по крайней мере один видео- или фотокадр (изображение) полученный с фото- или видеокамеры. В некоторых вариантах реализации, для повышения точности определения расстояния, используют несколько кадров с последующим усреднением и статистическим анализом информации.
Калибровочные характеристики камеры, в зависимости от производителя и необходимого уровня точности результатов, могут включать, но не ограничиваясь:
- Коэффициенты дисторсии
- Размер и соотношение сторон пикселя
- Положение сенсора камеры относительно оптической оси
- Данные о разрешении изображения
Также калибровочные характеристики могут быть выражены в виде комбинации нескольких вышеупомянутых параметров.
В одном из вариантов реализации, калибровочная характеристика камеры может включать обзор камеры по вертикали (например, 3 градуса), соотношение сторон (например, 4/3) и разрешение (например, 800×600). В этом случае можно определить угол, пользуясь простым приближением (если обзор по вертикали 3 градуса, а количество пикселей 800, то получаем,что в одном пикселе 3/800=0,00375 градуса и по вертикали и по горизонтали).
Калибровочные характеристики, в различных вариантах реализации, могут вводиться пользователем, получаться с камеры или справочника калибровочных характеристик, на основании информации о камере, а также измеряться с помощью калибровочных тестов.
Выделяют и вводят размеры по крайней мере одного объекта, расстояние до которого необходимо измерить.
Выделение объекта (определение его размеров в пикселях или пиксельных размеров) может происходить автоматически, при помощи видеоаналитики (системы компьютерного зрения) или вручную пользователем.
Размеры объекта могут определяться автоматически, на основании базы данных объектов и их размеров, с учетом распознавания объекта, произведенного видеоаналитикой /1/ или задаваться пользователем вручную. Размер объекта задается, предпочтительно, в метрической или иной системе измерения.
В одном из вариантов реализации, выделение объекта задается с помощью специализированного инструмента пользователя (например,«линейка») путем выделения начальной и конечной точки координат по оси х объекта с указанием размера объекта по данной оси.
Инструмент пользователя представляет собой графический способ выделения объекта, при котором, с помощью устройств ввода, поверх объекта накладывается (рисуется) линия, соединяющая начальную и конечную точкикоординат по одной из осей х, у.
В одном из вариантов реализации, выделение объекта задается с помощью инструмента пользователя путем выделения начальной и конечной точки координат х, у объекта с указанием размеров объекта по указанным осям.
В одном из вариантов реализации, необходимый объект выделяется с помощью прямоугольника с заданием метрических размеров объекта (ширины, высоты).
В некоторых вариантах реализации, для увеличения точности определяются три размера объекта - по осям х, у, z в декартовой системе координат.
Определяют угловые размеры объекта
Угловые размеры объекта получают на основе пиксельных размеров заданных пользователем или определенных автоматически.
1p
1p
2p
2p
Пусть задан объект с 2-мя точками с координатами образа на изображении (x, y) и (x, y) соответственно. Проводим процедуру нормализации каждой точки:
х
у
где с, с - координаты центра оптической оси в пикселях, f - фокусное расстояние в пикселях, s - соотношение сторон пикселя, k - вектор коэффициентов дисторсии.
Процедура Normalize /3/ переводит координаты изображения в систему координат фокальной плоскости с учетом искажений, вносимых дисторсией, положением сенсора камеры и соотношением сторон пикселя
1n
1n
2n
2n
где U - процедура компенсации дисторсии, которая по точке находит ее местоположение при отсутствии дисторсии. Получаем (x, y) и (x, y) соответственно.
Получаем угловые размеры объекта по формуле
Как видно, калибровочная характеристика камеры позволяет определить для заданного размера, указанного на изображении, угловой размер объекта.
Определяют расстояние до по крайней мере одного вышеуказанного выделенного объекта на основании его метрических и угловых размеров.
На основе данных о разрешении изображения, угле обзора камеры, полученных пиксельных размерах объекта, рассчитывают дальность.
Зная угловой и метрический размер объекта (который задан пользователем или получен из базы), можно посчитать расстояние до объекта. В некоторых вариантах реализации, расстояние до объекта определяется следующим образом: , где r - искомое расстояние до объекта, М - заданный метрический размер объекта, а - определенный из калибровочной характеристики (которая связывает угол прихода луча изображения и пиксель на изображении) и выделенного на изображении отрезка в пикселях угловой размер видимого объекта.
Согласно второму варианту, способ определения расстояния до объекта с помощью камеры включает следующие шаги.
Получают по крайней мере два видеокадра с задержкой, фокусное расстояние и дополнительные калибровочные характеристики камеры.
Дополнительные калибровочные характеристики камеры, в зависимости от производителя и необходимого уровня точности результатов, могут включать, но не ограничиваясь:
- Коэффициенты дисторсии
- Размер и соотношение сторон пикселя
- Положение сенсора камеры относительно оптической оси
- Данные о разрешении изображения.
Также калибровочные характеристики могут быть выражены в виде комбинации нескольких вышеупомянутых параметров.
В одном из вариантов реализации, калибровочная характеристика камеры может включать обзор камеры по вертикали (например, 3 Градуса), соотношение сторон кадра (например, 4/3) и разрешение матрицы в пикселях (например, 800×600). В этом случае можно определить угол, пользуясь простым приближением (если обзор по вертикали 3 градуса, а количество пикселей 800, то получаем, что в одном пикселе 3/800=0,00375 градуса и по вертикали и по горизонтали).
Калибровочные характеристики, в различных вариантах реализации, могут вводиться пользователем, получаться с камеры или справочника калибровочных характеристик на основании информации о камере, а также измеряться с помощью калибровочных тестов.
В общем случае, с камеры постоянно получают видеопоток, при этом на первом видеокадре определяют объект, до которого хотят измерить расстояние, классифицируют объект, далее в зависимости от типа объекта выбирают время задержки, затем выбирают второй кадр с учетом задержки, на котором также выделяют этот объект.
В некоторых вариантах реализации задержка определяется динамически, по факту пиксельного смещения объекта на видеокадре.
В некоторых вариантах реализации, задержка задается предварительно при настройке системы.
В некоторых вариантах реализации, получают по крайней мере два видеокадра, отличающихся расположением объекта.
Выделяют, по крайней мере, один объект, расстояние до которого необходимо измерить, и формируют модель его движения.
На видеокадрах выделяют объект, расстояние до которого необходимо измерить, и на основании информации об изменении местоположения и/или размеров объекта, а также с учетом типа объекта и внешних погодных и других условий, формируют модель движения объекта, описывающую его поведение во времени.
В некоторых вариантах реализации, под моделью движения объекта будем понимать характеристики движения объекта. В самом простом случае - это линейное движение.
Например, для объекта человек может быть выбрана модель, описывающая скорость его движения, равную 5 км/ч.
Выделение объекта может происходить автоматически, при помощи видеоаналитики (системы компьютерного зрения) или вручную пользователем.
При ручном выделении пользователь выделяет объект на по крайней мере двух видеокадрах, полученных с задержкой.
У сложных объектов, не имеющих постоянной формы (например, дым, облако газа и т.д.), разные части объекта могут иметь различный характер движения (например, некоторая часть дыма может некоторое время двигаться против ветра из-за различных турбулентностей), что также учитывается при построении модели движения.
В случае сложных объектов, в ручном режиме (например, при определении расстояния до объекта «дым») пользователь на нескольких (по крайней мере двух) соседних кадрах указывает направление смещения общего фронта дыма, который связан со скоростью ветра и направлением ветра относительно наблюдения.
В автоматическом режиме для объектов, не имеющих постоянной формы, видеоаналитика определяет т.н. «облако» движения, причем для разных частей движения определяется вектор направления (здесь и далее под «облаком» будем подразумевать множество частей (точек) объекта, меняющих свое положение во времени, для которых определяются вектора движения, рис. 2).
В различных вариантах реализации, определенное на видеокадрах «облако» движения сопоставляется с предустановленными моделями движения, в зависимости от внешних условий (например, ветра) и уточняется на основании текущих данных.
Так, например, для дыма, может выбираться модель движения, наиболее вероятная для текущих погодных условий. Также для дыма можно рассмотреть общую ситуацию, когда в автоматическом режиме, в дыме обнаруживаются отдельные элементы, далее определяется движение каждого элемента между видеокадрами и получается облако движения, причем у каждого элемента этого облака будет свой вектор. В модель (также может быть база предустановленных моделей) могут быть заложены различные облака движения (для разных типов объекта - дым, облако газа и т.д.) для разной скорости ветра и размера пожара (в случае дыма), т.к. чем больше пожар, тем больше будет скорость по вертикальной компоненте; чем больше ветер, тем больше скорость по горизонтальной компоненте.
В некоторых вариантах реализации, модель движения объекта включает метеорологические сведения.
Определяют расстояние до объекта на основании модели движения объекта, ориентации камеры, фокусного расстояния и дополнительных калибровочных характеристик камеры.
Пусть точка А - расположение камеры (рис. 1), В - точка расположения объекта, до которого определяется расстояние. Вектор v характеризует реальное (видимое наблюдателем) направление движения объекта В, вектор r - имеет длину, равную расстоянию от точки наблюдения А до объекта В, и направление из точки расположения объекта в точку наблюдателя (для достаточно удаленных объектов и небольших углов обзора, направление этого вектора совпадет с направлением обзора камеры), 1 - плоскость расположения матрицы (т.е. плоскость проекции, на которой формируется изображение). Тогда метрическое смещение положения объекта можно выразить формулой
m=t·v·cos b,
где m - искомое метрическое смещение, t - задержка между кадрами (время движения), v - модуль скорости движения объекта, например, в метрах в секунду, b - угол между вектором движения и плоскостью проекции изображения.
Найденное метрическое смещение используется как метрический размер, с помощью которого можно найти расстояние до подвижного объекта.
Далее необходимо получить угловое движение, смещение из угловых координат.
1p
1p
2р
2р
Пусть объект на разных изображениях находится в координатах (x,y) и (х,у) соответственно. Проводим процедуру нормализации каждой точки:
n
n
n
n
x
y
(x,y)=Normalize(x,y,c,c,f,s,k),
x
у
где c, с - координаты центра оптической оси в пикселях, f - фокусное расстояние в пикселях, s - соотношение сторон пикселя, k - вектор коэффициентов дисторсии. Процедура Normalize переводит координаты изображения в систему координат фокальной плоскости с учетом искажений, вносимых дисторсией, положением сенсора камеры и соотношением сторон пикселя:
1n
1n
2n
2n
где U - процедура компенсации дисторсии, которая по точке находит ее местоположение при отсутствии дисторсии. Получаем (x,y) и (x,y) соответственно.
Получаем угловое смещение объекта по формуле
Зная угловое и метрическое смещение объекта, можно посчитать расстояние до объекта. В некоторых вариантах реализации расстояние до объекта определяется следующим образом:
где r - искомое расстояние до объекта, М - рассчитанное метрическое смещение объекта на плоскости расположения матрицы объектива, а - определенный из калибровочной характеристики (которая связывает угол прихода луча изображения и пиксель на изображении) и выделенного на изображении отрезка видимого движения объекта.
ВАРИАНТЫ РЕАЛИЗАЦИИ
Ниже будет описан вариант реализации согласно первому способу с использованием видеоаналитики.
Получают по крайней мере один видеокадр и калибровочные характеристики камеры;
Предположим, что даны следующие калибровочные характеристики камеры:
х
у
Положение сенсора камеры относительно оптической оси задано точкой прохождения оптической оси через матрицу (сенсор): с=960 рх, с=540 рх.
Фокусное расстояние: f=26575 рх (задано в пикселях).
Соотношение сторон пикселя s=1.05, (вертикального к горизонтальному).
1
Коэффициент дисторсии k = -0.122, коэффициенты при более высоких степенях считаем равными нулю.
Выделяют и вводят размеры, по крайней мере, одного объекта, расстояние до которого необходимо измерить.
Видеоаналитика определяет появление объекта, до которого необходимо определить расстояние. Допустим, на кадре появился объект автомобиль. Видеоаналитика распознает на кадре автомобиль, далее в базе данных объектов производится поиск размера указанного объекта. Определяется, что средняя длина автомобиля составляет 4 м на изображении, при этом направление наблюдения автомобиля перпендикулярно машине (длина отображается без проекционных искажений).
Определяют расстояние до по крайней мере одного выделенного объекта на основании калибровочных характеристик камеры.
Определяют угловые размеры объекта.
1
1
2
2
Пусть отмечены 2 точки на изображении: x=100, y=700, х=100, у=705.
После процедуры Normalize:
n
n1
n2
n2
x1=-860,11; y=168,02; x=-860,11, y=173,27.
Находим угловой размер объекта а=0.01°.
Определив угловые размеры объекта и используя данные о его метрических размерах, вычисляют расстояние по формуле  и получают 22918 м, что и является искомым расстоянием до объекта.
Ниже будет описан вариант реализации согласно второму варианту.
Получают по крайней мере два видеокадра с предустановленной задержкой и калибровочные характеристики камеры
Предположим, что даны следующие калибровочные характеристики камеры:
Положение сенсора камеры относительно оптической оси задано точкой прохождения оптической оси через матрицу (сенсор): сх=960 рх, су=540 рх.
Фокусное расстояние: f=26575 рх (задано в пикселях).
Соотношение сторон пикселя s=1.05 (вертикального к горизонтальному).
1
Коэффициент дисторсии k = -0.122, коэффициенты при более высоких степенях считаем равными нулю.
Время задержки между кадрами равно 0,1 секундам.
Выделяют по крайней мере один объект, расстояние до которого необходимо измерить и формируют его модель;
Обнаруживают на 2-х изображениях движущийся объект и отмечают его местоположение на обоих изображения.
Пусть скорость движения объекта равна 4 м/с, угол между вектором скорости движения и плоскостью проекции изображения равен 45 градусов, тогда метрическое смещение любой точки (при достаточно малом движении) будет равна m=0,1·4·∗cos 45°, и составит 0,28 м, что является метрическим размером, который используется для определения расстояния до объекта.
Определяют расстояние до объекта, на основании модели объекта и ориентации камеры.
1
1
2
2
Пусть отмечены 2 точки на изображении: x=100, y=700, х=105, у=708.
После процедуры Normalize:
n
n1
n2
n2
x1=-860,11; y=168,02; x=-855,11, y=176,42.
Вычисляем угловое движение, соответствующее точкам на изображении.
Находим угол смещения объекта а=0,02°, определяя угловой размер, по смещению
объекта на кадрах.
Получив угловое смещение (0,02°) объекта и определив его метрическое смещение (0,28 м), определяем расстояние до объекта на основании формулы , получаем расстояние 658 м.
ЛИТЕРАТУРА
1. «Компьютерное зрение. Современный подход». Дэвид А. Форсайт, Джин Понс, Издательство: Вильяме, 2004 г., 928 с.: с ил.
2. Duane С. Brown "Decentering distortion of lenses", 1966, Photogrammetric Engineering, volume 32, number 3, pages 444-462.
3. OpenCV - Open Source Computer Vision online documentation http://docs.opencv.org/index.html.