изображений Параметры обработатки следующих Изображения и параметры их обработатки Передать изображение / часть изображения Матрицы вращения, векторы смещения Параметры обработки следующих изображений Архитектура предполагает функционирование системы в режимах настройки и слежения. Режим настройки предназначен для оценки быстродействия и точности различных методов обработки изображений с целью выбора наиболее подходящих методов с учётом аппаратных конфигураций, особенностей освещения и требований пользователей. В режиме слежения используются методы, обеспечивающие функционирование системы в режиме реального времени с оптимальной точностью реконструкции. Модули ОСС Трекинг и взаимосвязь между ними представлены на Рис. 1.
Во второй главе рассматриваются математические модели и алгоритмы, на основе которых работают модули ОСС Трекинг, а именно алгоритмы поиска образов маркеров на изображении, алгоритмы поиска соответствующих точек, алгоритмы трехмерной реконструкции координат маркеров, алгоритмы расчёта положения и ориентации объектов в пространстве и управляющие алгоритмы.
Наиболее часто используемыми маркерами в системах слежения являются отражающие маркеры и светодиоды. В зависимости от формы маркеров, их образами на изображениях могут быть круги или, в общем случае, эллипсы. Существующие алгоритмы обнаружения эллипсов на изображениях, основанные на высокоуровневой обработке изображений (например, вычисление параметров эллипса на основе анализа его граничных точек) требуют очень большого количества вычислений и не подходят для режима реального времени. Алгоритмы оценки параметров эллипса с помощью анализа точек, принадлежащих его границам, требуют применения итеративных методов, что приводит к тому, что необходимое количество операций с плавающей точкой составляет несколько тысяч. В работе предлагается улучшенный комбинированный алгоритм, основанный на анализе длин параллельных хорд образов маркеров и яркостей точек, принадлежащих образам. Данный алгоритм использует тот факт, что линия, проходящая через середины параллельных хорд эллипса, проходит также через его центр и является его диаметром.
После того, как найдены две параллельные хорды, может быть определена линия, проходящая через их середины, которая и будет являться его диаметром. Более точный алгоритм основан на выделении хорд, принадлежащих эллипсу на основе анализа изменений их длин и центров, аппроксимации квадратов длин хорд эллипса квадратичным многочленом, вычислении параметров многочлена с помощью метода наименьших квадратов и последующем вычислении параметров эллипса. В случае если образ маркера не является эллипсом, центр образа маркера можно вычислить на основе анализа яркостей всех его точек. К преимуществам алгоритма относится высокая скорость выполнения (требуется несколько десятков операций с плавающей точкой), возможность определения взаимно перекрываемых или неполностью видимых эллипсов, возможность быстрой оценки параметров эллипса по нескольким хордам. Схема работы алгоритма поиска образов маркеров показана на Рис. 2.
Вычисление параметров Определение Выбор хорд, Вычисление многочлена, длин хорд принадлежащих да возможно аппроксимирусветового пятна эллипсу ющего длину хорд эллипса Оценка центра прямоугольника нет с учетом яркости Грубая оценка Определение Вычисление параметров центра светового параметров эллипса пятна эллипса Рис. 2. Схема работы алгоритма поиска образов маркеров.
Основными источниками искажений изображения, получаемого камерой, являются геометрические аберрации (дисторсии) Ч радиальные и тангенциальные искажения объектива. Наличие дисторсий приводит к изменению линейного увеличения по полю зрения объектива и различному смещению точек снимаемого объекта относительно их идеальных позиций. Причинами искажений являются конструктивные особенности оптики или ошибки при её сборке. Величины поправок дисторсий могут быть описаны с помощью коэффициентов уравнений, характеризующих дисторсии; эти коэффициенты могут быть определены в процессе калибровки камер и использованы для компенсации искажений. После того, как центры образов маркеров вычислены, следует вычислить их неискажённые координаты с учётом известных коэффициентов дисторсий.
Для того чтобы найти соответствующие маркеру неискажённые центры его образов на изображениях разных камер, можно вычислить так называемые эпиполярные линии. Эпиполярная линия e2 камеры C2 Ч это проекция луча, соединяющего точку M с её образом m1 на плоскости изображения камеры C1 на плоскость изображения камеры C2. Образ точки M на плоскости изображения камеры C2 теоретически должен лежать на этой линии, однако фактические погрешности могут приводить к тому, что она будет лежать рядом с этой линией. Если известны внутренние параметры (такие как оптический центр, фокусное расстояние и др.) и внешние параметры (описывающие положение камеры в некоторой системе координат) камер, то уравнение эпиполярной линии в плоскости камеры C2 может быть получено в аналитическом виде как функция параметров камер и координат m1. Таким образом, для определения соответствующих точек следует вычислить расстояния до эпиполярной линии для всех анализируемых точек плоскости камеры C2 и использовать точку, имеющую наименьшее расстояние до линии в качестве наилучшего кандидата. Если в системе имеется больше двух камер, в плоскости камеры C2 может быть вычислены дополнительные эпиполярные линии.
В этом случае в качестве наилучшего кандидата следует использовать точку, имеющую наименьшее расстояние до точки пересечения эпиполярных линий.
Задачу реконструкции трёхмерных координат точки M по её образам mi в плоскостях изображений i камер можно свести к решению системы линейных уравнений. Проективное преобразование в гомогенных координатах записывается следующим образом: m = PM, где M Ч координаты точки в мировой системе координат (X, Y, Z, T)T, m Ч координаты образа точки в плоскости изображения камеры (U, V, S)T, а P Ч матрица проективного преобразования, зависящая от внешних и внутренних параметров камеры. Для вычисления координаты точки M нужно решить систему уравнений вида AM = b при условии M = (x, y, z, 1)T, где A и b Ч матрицы, элементы которых являются функциями Pi и mi. С помощью метода наименьших квадратов решение может быть получено в аналитическом виде: M = (ATA)-1ATb; решение верно, если ранг матрицы A полный. С вычислительной точки зрения правильно решать систему уравнений с помощью вспомогательного сингулярного разложения матрицы A с последующей итеративной минимизацией разницы ||mi - mibp||2, где mibp Ч проекция найденной в предыдущем шаге точки M, вычисленная по уравнению проективного преобразования.
Оценить точность и устойчивость реконструкции можно теоретически и экспериментально. Теоретический способ основан на вычислении ковариационной матрицы, связывающей ошибки определения 2D координат с ошибками определения 3D координат, с помощью дифференцирования решения, полученного выше, по частным производным. Экспериментальный способ, предлагаемый в работе, основан на измерении ошибки реконструированного расстояния между двумя жёстко закреплёнными маркерами, добавлении нормально распределенного шума к исходным данным и вычислении выходных данных. Область неопределенности реконструкции можно оценить, проецируя условные векторы направлений на плоскости изображения камер и реконструируя их образы с учетом ошибок в плоскости изображений камер.
Разница между оригинальным и реконструированным вектором и будет являться характеристикой области неопределенности. Можно разделить исследуемый объём на объёмы небольшого размера, для каждого из которых вычислить средние ошибку и устойчивость реконструкции для разных пар камер. В зависимости от требований пользователей и условий работы, информация о локальной точности реконструкции может быть использована для оптимизации точности или времени выполнения цикла реконструкции. Схема работы алгоритма реконструкции показана на Рис. 3.
После того, как произведена реконструкция всех образов маркеров, следует определить принадлежность маркеров различным объектам и вычислить их положение и ориентацию в пространстве. Так как расстояния между маркерами отслеживаемых объектов известны, можно вычислить таблицу евклидовых расстояний между реконструированными образами маркеров и на основе анализа этой таблицы определить маркеры, принадлежащие различным объектам. По координатам трёх и более маркеров, реконструированных в системе координат системы слежения (Mi), известных в локальной системе координат (Ni) и принадлежащих одному объекту, можно вычислить его положение (вектор смещения T) и ориентацию (матрицу вращения R) в про странстве с помощью метода минимизации функции ошибки e(R,T) = i=1N ||Mi - NiR -T||2 на основе сингулярной декомпозиции кросс-ковариационной матрицы множеств точек Mi и Ni. Кроме того, в работе предложен алгоритм контроля шести степеней свобод для объекта с двумя маркерами, закреплёнными на концах двух перпендикулярных осей, на основе анализа смещений маркеров.
Сообщить об нет ошибке Имеются Использовать альтернативы да альтернативы для реконструкции Инициализация да Решить нет соответствуюОшибка щие системы обратного уравнений для проецирования оптимальных велика да конфигураций камер нет Решить системы Определить уравнений для всех Предсказать оптимальную конфигураций следующее конфигурацию камер с учетом положение для следующего локальной точности маркера кадра реконструкции Рис. 3. Схема работы алгоритма реконструкции в режиме оптимизации времени выполнения цикла реконструкции.
Управляющий алгоритм ОСС Трекинг работает в режимах настройки и слежения. В режиме слежения в течение первых нескольких секунд производится инициализация, во время которой вычисляется уровень шума на изображениях, определяются начальные положения отслеживаемых объектов на основе полного анализа изображений со всех камер и точной реконструкции.
Кроме того, оцениваются скорости движения объектов и их образов, в результате чего определяются наиболее вероятные области появления образов маркеров на следующем кадре. В дальнейшем поиск производится, прежде всего, в наиболее вероятных областях появления образов, которые обновляются для каждого кадра в зависимости от скорости движения маркеров.
Алгоритмы, описанные выше, были реализованы в виде объектноориентированных классов на языке программирования С++.
В третьей главе описывается процесс интеграции разработанных программных модулей с оборудованием и программным обеспечением установок ВО; приводятся результаты анализа работы системы; описывается использование разработанных модулей в задаче трёхмерной реконструкции поверхностей объектов.
В качестве аппаратного обеспечения системы слежения была выбрана оптическая система камер и светодиодов. Три монохромные камеры были подключены к фреймграбберу, обеспечивающему синхронизованное получение изображений и соединённому с персональным компьютером по шине PCI. Чтобы уменьшить влияние окружающего освещения на работу системы, был выбран инфракрасный канал работы светодиодов и камеры, чувствительные в инфракрасном диапазоне. Устройства для слежения представляли собой группу из трех светодиодов, монтируемую на очки, указку с тремя светодиодами и устройство с одним светодиодом и портом синхронизации для измерений задержки.
Для передачи реконструируемых положений устройств приложениям виртуального окружения были созданы программные модули на основе архитектуры клиент-сервер. Серверная часть была интегрирована с программными модулями ОСС Трекинг, а клиентская часть и работала как один из модулей программного комплекса ВО. Схема программно-аппаратной интеграции представлена на Рис. 4. Интерфейс программного комплекса (ПК) Трекинг представлен на Рис. 5.
Калибровка камер проводилась в два этапа с помощью калибровочной цели, которая представляла собой куб с распределёнными внутри него на специальных рёбрах точками с известными координатами. На первом этапе вычислялись внутренние параметры камеры, а именно фокусное расстояние, коэффициенты радиального искажения, центр радиального искажения, масштабные коэффициенты. На втором этапе вычислялись внешние параметры камеры Ч параметры смещения и вращения. Качество калибровки оценивалось по нескольким параметрам: вычислялась нормализованная ошибка калибровки, являющаяся отношением поперечной погрешности реконструкции к среднеквадратичной ошибке оцифровывающего шума, а также вычислялись ошибки в плоскости изображения и пространственные ошибки.
Наиболее важными параметрами, характеризующими систему слежения, являются точность, скорость реакции системы и рабочая область. Для определения точности было измерено среднеквадратичное отклонение реконструированного расстояния между двумя жестко закрепленными диодами. Точность реконструкции, измеренная на расстоянии 150 см, не превышала 2 мм. Рабочее расстояние между пользователем и камерами составляло от 50 до 300 см. Частота обновления системы определялась частотой обновления фреймграббера и составляла около 25 Гц. Запаздывание системы показывает, насколько быстро система слежения реагирует на действия пользователя. Общее запаздывание системы складывается из следующих задержек: задержка регистрации сигнала от излучателей камерами, задержка при передаче фреймграббером изображений программному обеспечению, задержка при обработке изображений и реконструкции позиции и ориентации, задержка данных при передаче их по сети пользовательскому приложению. Для измерения полной задержки автором использовался специально разработанный алгоритм. Триггер со светодиодом соединялся с одним из входов осциллографа. С другим входом осциллографа соединялся последовательный порт компьютера, на котором работал модуль ПК Трекинг, принимающий данные и который генерировал сигнал при получении реконструированных данных. По разнице между импульсами определялась общая задержка системы, составившая около 60 мс. Кроме того, были измерены производительность и точность работы системы для разных режимов оптимизации. Было показано, что оптимизация точности позволяет ускорить процесс определения реконструированных положений устройств в 2.5 раза без потери точности, а оптимизация времени выполнения - в 6.6 раз, однако с увеличением ошибки реконструкции в 1.4 раза.
Программный комплекс Трекинг Установка ВО Приложения ВО Модуль интеграции с программным комплексом ВО Модули получения и Камера обработки зрительных данных Устройства с Камера Фреймграббер маркерами Пользователький Камера интерфейс Рис. 4. Схема интеграции программного комплекса Трекинг с оборудованием и ПО виртуального окружения.
Рис. 5. Интерфейс программного комплекса Трекинг.
Pages: | 1 | 2 | 3 | Книги по разным темам