Диссертация (1149687), страница 10
Текст из файла (страница 10)
3.4). Если же ошибкав начальном приближении большая, то алгоритм на первых итерациях сходился к истинной траектории, после чего продолжал ее отслеживание (рис. 3.5).Параметры были выбраны следующие:Γ̂0 = 1,1; = 0,1.63Рисунок 3.2 — Истинное значение глубины (черная сплошная линия) и оценки нашегометода (серая пунктирная линия) для стационарного случая без помех.Рисунок 3.3 — Стационарный случай с помехой .64Рисунок 3.4 — Пример истинной траектории (сплошная линия) и оценокалгоритма для простого случая без движения точки и малой ошибки вначальном приближении.Рисунок 3.5 — Аналогичные условия Рис.
3.4, но с большой ошибкойначального приближения.65Наиболее интересным сценарием для тестирования является случай, когда точка и камера движутся в одном направлении (рис. 3.8). В таких условияхстандартные методы для определения положения объекта не могут быть применены. Был рассмотрен случай, когда = = (0,5; 0; 0) .На рис. 3.6 показано среднее значение ошибки оценки обратной глубинывместе с ее дисперсией, подсчитанные повых условиях (для= 0,001).1000запускам алгоритма в одинако-Также на рис. 3.7 показан график ошибки оценок (1) / (3) , иллюстрирующий тот факт, что алгоритм также успешно справ-ляется с задачей оценки этой величины.
Начальное приближение в тестах быловыбраноΓ̂0 = 0,2.Анализ графиков показывает, что даже в таком сложномслучае алгоритму удается производить оценки, сходящиеся к истинной траектории движения точки. Параметр для разных вариантов выбирался в зависи-мости от характера движения объекта таким образом, чтобы результирующаяточность была примерно одинаковой, а скорость сходимости была достаточнобыстрой.
Поэтому в случае статического объектавыбирался большим (дляувеличения скорости сходимости), а в случае движущегося объекта малым (дляобеспечение желаемой точности). При практическом применении метода наобходимо пользоваться аналогичными соображениями.3.6.3Использование фильтра Калмана для улучшения результатовДля улучшения результатов работы алгоритмов, было также опробованоиспользование предсказаний фильтра Калмана в качестве входных данных дляописаных методов.
Для описания движения наблюдаемой точки была взятапростая линейная модель: = −1 + −1 .66Рисунок 3.6 — Доверительные интервалы с отклонениемРисунок 3.7 — Средняя ошибка оценки (1) / (3) .3 .67Рисунок 3.8 — Пример траектории в случае движения точки.С такой моделью в качестве состояния в фильтре Калмана рассматривался вектор(1)(2)(3)(1)(2)(3)( , , , , , )T ,соответствующий положению и скоростинаблюдаемого объекта.
В качестве наблюдения в фильтр Калмана подавалисьоценки, производимые алгоритмами. Таким образом в каждый момент временисхема работы общего алгоритма выглядела следующим образом:–произвести наблюдение проекции точки объекта на плоскость камеры;–произвести предсказание положения объекта при помощи фильтра Калмана и текущей оценки;–обновить оценки положения объекта на основе предсказания фильтраКалмана и наблюдаемой проекции.Такой подход был протестирован для случая одновременного движениякамеры и наблюдаемой точки. Траектория глубины объекта вместе с его оценками данным алгоритмом показана на рис. 3.9.
Видно, что оценки получаютсянесколько точнее по сравнению с результатами алгоритмов без использованияфильтра Калмана. Это также видно при многократном тестировании на гра-68Рисунок 3.9 — Пример траектории с использованием алгоритма на основефильтра Калмана.фике средней ошибки (рис. 3.10). Кроме улучшения точности оценки глубиныобъекта, фильтр Калмана положительно сказывается и на оценки других координат, что видно ни рисунке 3.11.3.7Полевой экспериментДля целей апробации также был проведен эксперимент на реальных данных.
Тестирование в полевых условиях усложняется отсутствием точной информации об истинном положении движущегося объекта, а также о внешнихпараметрах камеры. Для их получения использовался набор из статическихмаркеров известной геометрии (рис. 3.13).Эти маркеры удобны тем, что их достаточно точно можно автоматическидетектировать на изображениях, получаемых с камеры [43] (рис. 3.14). Положе-69Рисунок 3.10 — График средней ошибки алгоритма на основе фильтраКалмана вместе с отклонениеРисунок 3.11 — Оценки3 .координаты при помощи алгоритма на основефильтра Калмана.70Рисунок 3.12 — Пример объекта, используемого для калибровки камеры.Рисунок 3.13 — База маркеров, используемая для привязки положениякамеры и объекта.71Рисунок 3.14 — Пример детекции точек маркера.ние маркеров относительно друг друга было предварительно восстановлено cиспользованием методов реконструкции по нескольким фотографиям [53], которые частично описаны в предыдущих разделах, при этом использовался фотоаппарат высокого разрешения (3648×2736 пикселей) и штатив для обеспеченияболее четких изображений и, соответственно, более точных оценок положениямаркеров.
Базу маркеров можно представлять как набор точек в трехмерномпространстве (углы белых областей внутри маркера), координаты которых известны (рис. 3.15).При наличии набора трехмерных точек и набора их проекций данные оположении и ориентации камеры, при помощи которой эти проекции были получены, могут быть вычислены стандартными методами реконструкции [53].Наблюдаемый объект также был представлен в эксперименте в виде маркера(рис. 3.16).
Восстановление истинного положения объекта осуществлялось припомощи методов реконструкции, исходя из того, что маркер является плоским.72Рисунок 3.15 — Реконструированные точки маркерной базы в программеMeshLab.73Рисунок 3.16 — Кадр с маркером, представляющим собой движущийся объект.Съемка велась при дневном освещении при помощи камеры, снимающей счастотой 30Гц и разрешением1280 × 720 пикселей.
Камера держалась в руках,и для симуляции случайного движения с нулевым математическим ожиданиемпроизводились периодические колебания в разные стороны (рис. 3.17). Наблюдаемый объект также контролировался человеком и находился примерно нарасстоянии1,5мот камеры.Для оценки положения алгоритмом была выбрана одна точка на маркере, при этом ее проекция отслеживалась на изображении не с использованиемдетектора маркеров, а при помощи алгоритмов оптического потока [29] дляприближения к реальным условиям. Рассматривались два случая — статичныйобъект и движущийся объект. Результаты оценок алгоритма показаны на рис.3.18, 3.19, на которых видно, что оценки алгоритма постепенно сходятся к ис-74Рисунок 3.17 — X координата положения камеры в эксперименте.75Рисунок 3.18 — Траектории оценок глубины точки (пунктирная линия) и ееистинных значений (сплошная линия) в случае движения наблюдаемогообъекта.тинным значениям, при этом в случае неподвижного объекта это происходитнесколько быстрей.
Проведенные эксперименты показывают принципиальнуюприменимость алгоритма в реальных условиях, а также адекватность предположений об известном движении камеры и ее внутренних параметрах.76Рисунок 3.19 — Ошибка оценки глубины точки в случае статичногонаблюдаемого объекта.77ЗаключениеИтоги выполненного исследования.В результате диссертационногоисследования были решены все поставленные задачи и достигнута цель работы.Перечислим результаты проведенного исследования:1.
Разработан рандомизированный асимптотический наблюдатель обратной глубины движущегося объекта, доказана его состоятельность ипродемонстрировано его работа в условиях иммитационного моделирования.2. Предложен и исследован рандомизированный алгоритм оценки положения движущегося объекта, теоретически показана сходимость егооценок, теоретические результаты провалидированы иммитационныммоделированием и практическим экспериментом.3. Разработано программное обеспечение, позволяющее на основе видеопотока оценивать положение движущихся объектов, включающее в себя модули трехмерной реконструкции статичного окружения и оценкиположения камеры.
Реализованный комплекс программ и алгоритмовимеет модульную структуру и позволяет легкое переиспользование егокомпонент для новых исследований и приложений.Рекомендации по применению результатов работы. При применении результатов работы следует учитывать следующие аспекты.1. Точность разработанных методов, как это было показано в работе, зависит от частоты дискретизации камеры, выбранной для наблюденияза объектом. Следуют учитывать эту характеристику, как и при выборекамеры, так и при выборе размера шага в алгоритме. При использовании камеры с низкой частотой получения кадров следует увеличиватьразмер шага, и обратно, при использовании камеры с высокой частотойразмер шага можно понизить для получения более точных результатов.782.
Также при выборе размера шага необходимо учитывать расстояниемежду проекциями объекта на соседних кадрах. Так, если изображение объекта между кадрами сильно сдвигается, то размер шага нужноувеличивать.3. При применении разработанного комплекса можно регулировать скорость его работы путем корректировки параметров алгоритмов, используемых в нем. Основное время работы комплекса будут заниматьалгоритмы обнаружения и сопоставления особых точек, используемыхв процессе реконструкции статичных объектов в сцене и оценке положения камеры. Для ускорения этого этапа работы можно регулироватьчувствительность соответствующих методов, тем самым уменьшая илиувеличивая количество обрабатываемых объектов.4. Также, при использовании камер с высоким разрешением кадры, получаемые с них, можно предварительно уменьшить, что тоже приведет кускорению работы алгоритмов поиска особых точек.5.
Следует контролировать точность оценки положения камеры путем наблюдения за суммарной ошибкой перепроектирования. При ее ростеследует увеличить чувствительность алгоритмов обнаружения особыхточек, а также увеличить число рассматриваемых кандидатов при поиске соответствий между точками, изменив соответствующий параметрв алгоритме приближенного поиска.Перспективы дальнейшей разработки тематики.Перечислим перспек-тивные направления развития темы исследования.1. Разработка алгоритмов, учитывающих сразу несколько точек на наблюдаемом объекте.2. Использование рандомизации не только в положении камеры, но и, кпримеру, в ее фокусном расстоянии.3.














