6. Боргуль А. С., Зименко К. А., Маргун А. А. Биотехническая система управления устройством реабилитации // I Всеросс. конгресс молодых ученых, III сессия „Интеллектуальные системы управления и обработки информации". СПб, 2012.
7. Ohnishi K., Weir R. F., Kuiken T. A. Neural machine interfaces for controlling multifunctional powered upper-limb prostheses // Expert Rev. Med. Devices. 2007. Vol. 4. P. 43—53.
Сведения об авторах
Александр Сергеевич Боргуль — студент; Санкт-Петербургский национальный исследовательский
университет информационных технологий, механики и оптики, кафедра систем управления и информатики; E-mail: borgulalexandr@gmail.com Константин Александрович Зименко — студент; Санкт-Петербургский национальный исследовательский
университет информационных технологий, механики и оптики, кафедра систем управления и информатики; E-mail: kostyazimenko@gmail.com Алексей Анатольевич Маргун — студент; Санкт-Петербургский национальный исследовательский
университет информационных технологий, механики и оптики, кафедра систем управления и информатики; E-mail: alexeimargun@gmail.com Артем Сергеевич Кремлев — канд. техн. наук; Санкт-Петербургский национальный исследова-
тельский университет информационных технологий, механики и оптики, кафедра систем управления и информатики; доцент; E-mail: kremlev_artem@mail.ru
Рекомендована кафедрой Поступила в редакцию
систем управления и информатики 13.12.12 г.
УДК 681.5.08
А. А. Блинников, В. И. Бойков, В. В. Булатов, А. А. Кульчицкий, А. В. Спорягин
КОРРЕКЦИЯ ИСКАЖЕНИЯ ПЕРСПЕКТИВОЙ В СИСТЕМЕ ТЕХНИЧЕСКОГО ЗРЕНИЯ*
Предложен алгоритм устранения искажения в изображении, получаемом посредством системы технического зрения мобильного робота. Рассматриваемое искажение является результатом перспективной проекции пространства предметов на плоскость фотоприемной матрицы.
Ключевые слова: перспективная проекция, техническое зрение, коррекция искажений.
Введение. Системы технического зрения на базе видеокамер широко используются при управлении движением мобильных роботов. С их помощью решаются задачи локальной ориентации робота в ограниченном пространстве, обнаружения препятствий, определения расстояния до препятствия, формы препятствия и т.п. Видеокамера располагается так, что ее оптическая ось направлена не горизонтально, а под некоторым углом к горизонту. Такая ориентация видеокамеры позволяет использовать триангуляционный метод обработки изображения для анализа ближней и дальней зон прилегающего к роботу пространства [1].
Работа выполнена при финансовой поддержке ФЦП „Научные и научно-педагогические кадры инновационной России" на 2009—2013 гг. (соглашение № 14.B37.21.0659).
Видеокамера дает изображение в перспективной проекции, т.е. проекции трехмерного пространства предметов на плоскость изображения. Как известно, при такой проекции преобразованное пространство не является евклидовым, так как ортогональность осей пространства предметов не сохраняется. Это приводит к искажению форм и соотношений размеров изображения элементов сцены, усложняет вычисление численных расстояний и формы препятствий [2]. В результате решение задачи локальной ориентации робота в реальном пространстве существенно усложняется, требуется разрабатывать специальные технические приемы и методы, позволяющие восстановить взаимное расположение и форму предметов по их плоскому изображению. Наиболее известный технический прием — использование струк-туированной подсветки пространства предметов [1].
В настоящей работе для решения подобных задач предлагается использовать алгоритм нелинейного преобразования исходного изображения, устраняющий искажения перспективной проекции. При выводе алгоритма предполагается, что робот движется по горизонтальной плоскости, а параметры оптики видеокамеры, высота ее установки и угол наклона к горизонту известны.
Постановка задачи. Рассмотрим процесс формирования изображения двумерных предметов, расположенных в горизонтальной плоскости Х02 пространства предметов, посредством видеокамеры, установленной на высоте к над ней. Оптическая ось объектива видеокамеры направлена под углом а к вертикали и ортогонально плоскости фотоприемной матрицы (рис. 1). Длина отрезка в пространстве предметов, параллельного оси X и расположенного в плоскости Х02 ближе к началу координат на изображении, оказывается больше, чем длина такого же отрезка, но расположенного дальше от начала координат. Два отрезка в плоскости X0Z, параллельные оси Z, т.е. „уходящие в перспективу", на изображении получаются расположенными под углом к друг другу. Другими словами, на изображении форма фигуры на плоскости Х02 претерпевает „искажение перспективой" — геометрические размеры ее элементов зависят от координаты г расположения элементов.
Алгоритм компенсации искажений. Абстрагируясь от конкретной оптической схемы объектива, представим сформированное видеокамерой изображение как центральную проекцию пространства предметов на плоскость фотоприемной матрицы. При расположении оптической оси ортогонально плоскости фотоприемной матрицы направим ось и изображения параллельно оси Х, а ось V изображения — ортогонально оси и (см. рис. 1).
Координаты точек изображения получим с помощью методов компьютерной графики [2]. Координаты точки т, расположенной в пространстве предметов на плоскости Х02 (у=0), задаются вектором в однородных координатах т = [ х 0 г 1].
Этой точке на плоскости изображений соответствует точка ц с однородными координатами д = [и v , при этом связь между координатами задается матричным уравнением
п
|д = mS(-d)R| 2-a IS(d)P(r)С,
(1)
где S(±d) =
0 1
0 0 0 0
0 0 1
±d
RI |-a
угол
п
-a
0
sin a cos a 0
P( r) =
0 0 0 1 0
- cos a sin a 0
10 0 0 1
— матрица смещения координат вдоль оси Z на величину d;
0 0 0 1
0
0 0
— матрица разворота системы координат вокруг оси X на
0 0 0 0
0 0
— матрица центральной проекции с параметром (кон-
f
стантой) r = — sin a, d
f — расстояние от плоскости изображения до точки с схода лучей
вдоль оптической оси системы; С =
0 0
1
0 0 0 0
0 0 1
координатная матрица.
Сворачивание выражения (1) и раздельное вычисление координат точки изображения ц
дает:
(z - d) cos a
u =-, v =-Ь--. (2)
(z - d)r sin a + rd +1 (z - d)r sin a + rd + 1
Полученные выражения (2) задают нелинейные зависимости координат u и v точки на изображении от координат х и z точки в пространстве предметов. Зависимости можно линеаризовать, если в (2) положить а=п/2:
U = •
V1 =
(z - d)
(3)
М +1 М +1
Реализовать условие а=п/2 можно, либо направив видеокамеру вертикально вниз, разместив ее над точкой г = d (х=0, у=0), либо пересчитав координаты и, v точек исходного изображения в координаты и1, VI точек исправленного изображения. Так как реализация первого способа часто связана с техническими трудностями, то рассмотрим возможности второго способа.
Непосредственно из (2) и (3), исключив промежуточные переменные, нетрудно получить связь координат точек исходного и исправленного изображений:
U V cos a ,
U =-TJ--, v = --. (4)
V1r sin a +1 V1rsin a +1
На основании (4), учитывая, что a и r — константы, получим достаточно простой алгоритм формирования исправленного изображения:
V1 cos a
х
— путем последовательного перебора по строкам пикселов исправленного изображения вычисляются координаты щ, v1 для каждого пиксела;
— по равенствам (4) для каждой пары щ, v1 вычисляются соответствующие координаты u, v пиксела исходного изображения;
— если вычисленным координатам u, v соответствует реально существующий пиксел, то значение его сигнала приписывается пикселу с координатами щ, v1 исправленного изображения, в противном случае пикселу исправленного изображения приписывается сигнал уровня черного.
На рис. 2 представлен результат применения алгоритма исправления изображения тестового „шахматного поля". Исходное изображение получено при размещении видеокамеры под углом а=40° к вертикали и при ^=1600 мм (рис. 2, а). На этом изображении изначально одинаковые по размеру квадраты поля принимают различные размеры в зависимости от удаленности квадрата от видеокамеры. Применение алгоритма позволяет полностью исправить искажение перспективой и получить изображение (рис. 2, б), аналогичное наблюдаемому сверху. Особенно следует обратить внимание на сохранение резкости границ раздела „шахматных клеток" на исправленном изображении.
Рис. 2
Свойства исправленного изображения определяются параметрами используемой видеокамеры и места ее установки, однако можно выделить и общие свойства.
Свойство 1. Сохранение центра изображения. Действительно, как следует из (4), точке ^=0, v1=0 исправленного изображения соответствует единственная точка u=0, v=0 исходного изображения.
Свойство 2. Горизонтальные прямые v=const исходного изображения преобразуются в горизонтальные прямые v1=const исправленного изображения.
Свойство 3. Вертикальные прямые u=const исходного изображения преобразуются в наклонные ^ = a(u+ Ь(п) . В результате вертикальные границы исходного изображения отображаются наклонными линиями на исправленном изображении.
Свойство 4. Приращение дистанции в пространстве предметов, приходящееся на один пиксел изображения, на исправленном изображении постоянно. Данное свойство вытекает непосредственно из (3) при постоянных значениях параметров преобразования г и d.
Напомним, что выражения (4) и приведенные свойства справедливы для плоских предметов, расположенных на плоскости 7=0. Чтобы решить задачу для более общего случая, когда наблюдаемая плоскость неколлинеарна ни одной из координатных осей плоскости изображения, необходимо просто произвести афинное преобразование поворота координат вокруг оси 2 на угол, обеспечивающий соответствующую коллинеарность [2].
Для нахождения значения г необходимо воспользоваться калибровочной плоскостью с нанесенным на ней калибровочным рисунком (например, квадратами известного размера), расположенной ортогонально главной оптической оси.
Заключение. Из рис. 2 видно, что применение алгоритма коррекции изображения позволяет устранить искажения форм и соотношений размеров предметов, снимаемых видеокамерой системы технического зрения. После устранения искажений перспективной проекцией возможно наложение на изображение обычной евклидовой метрики с целью быстрого вычисления реальных размеров и дистанций в пространстве предметов. При использовании исправленного изображения решение задач локальной ориентации робота существенно упрощается.
список литературы
1. Визильтер Ю. В., Желтов С. Ю. и др. Обработка и анализ изображений в задачах машинного зрения. М.: Физматкнига, 2010. 670 с.
2. Порев В. Н. Компьютерная графика. СПб: БХВ-Петербург, 2004. 432 с.
Андрей Алексеевич Блинников
Владимир Иванович Бойков
Виталий Владимирович Булатов
Сведения об авторах
— канд. техн. наук, доцент; Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики, кафедра систем управления и информатики; E-mail: goofinator@mail.ru
— канд. техн. наук, доцент; Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики, кафедра систем управления и информатики; E-mail: viboikov@mail.ru
— Национальный минерально-сырьевой университет „Горный", кафедра автоматизации технологических процессов и производств, Санкт-Петербург; старший преподаватель;
E-mail: bulatov-vitaly@rambler.ru Александр Александрович Кульчицкий — канд. техн. наук, доцент; Национальный минерально-сырьевой
университет „Горный", кафедра автоматизации технологических процессов и производств, Санкт-Петербург; E-mail: doz-ku@rambler.ru
— аспирант; Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики, кафедра систем управления и информатики; E-mail: avsporyagin@yandex.ru
Анатолий Владимирович Спорягин
Рекомендована кафедрой систем управления и информатики
Поступила в редакцию 13.12.12 г.