Современные достижения в области систем навигации роботов в помещениях без специального оборудования
Ермакова А, НИУ Высшая
Аннотация
В данной статье описываются заметные достижения современной робототехники в области разработки систем навигации роботов в помещениях с отсутствием специального оборудования или опознавательных знаков при том что роботы не оснащены системой GPS. Внимание уделяется как описанию возможных алгоритмов выбора роботом пути так и датчикам позволяющим определять положение робота в пространстве. В статье будет рассмотрены также основные принципы работы датчиков или камер помогающих роботам определят положение в пространстве. Одна из целей данной статьи провести зависимости между характером помещения где должен ориентироваться робот с системами датчиков, используемых роботом для получения информации об окружающем пространстве и алгоритмами используемыми для определения направления движения.
1 Введение
С развитием микроэлектроники значительно расширился ряд задач выполнение которых роботами повысит качество выподнения работ, эффективность их выполнения или позволит в целом достичь целей казалось бы недостижимых еще 5 или 6 лет назад.
Одно из очень перспективных но в то же время опасных направлений для расширения ареала использования роботов это медицина, неразрушаюзая диагностика, строительство или операции в областях трудно или недоступных человеку всдедствии отсутствия кислорода, высокого уровня радиации, низких или высоких температур.
2 Наиболее известные алгоритмы системы позиционирования и навигации роботов, базирующиеся на техническом зрении
Один из наиболее распространенных алгоритмов использоемых роботами оснащенными стерео камерами это метод известный как трансфер ( разработан в Оксфорде). Объекты локализуются в конусах проведенных отно-
школа экономики, МИЭМ сительно осей базовых линий обзора камеры. Изменеие расстояния до зараннее запомненных предметов предметов позволяется роботу определить насколько его положение в пространстве изменилось. Ориентирование производиться с помощью 2 стерео камер. [1]
Другим методом является принцип «свободного пространства». «Свободное пространство» это триангулярное пространство перед камерой и изначально зафиксированные предметы (вертексы). При перемещении робота предметы зафиксированные во время начала движения держаться в фокусе камеры. «Свободное пространство» в этом случае изменяется. В это же время определается другое «свободное пространство» оборазованное как конус относительно другой оси камеры. Если несколько «свободных пространств» пересекаются мжду собой и в этих свободных пространствах нет фиксированных объектов то это и будет найденных путем для объезда препятствий. Ориентирование прозводится только с помощью как минимум двух стерео камер. [1]
Метод Дэвисона основан также на использовании стерео камер. В кратце робот составляет матрицу предметов изначально заснятых на стерео камеру. Вторая матрица ковариант-ная содежит возможные неточности в измерениях сделанных первой матрицей. Фильтры Кальмана используются для обновления ко-вариантной матриц содержащей возможные погрешности в определении расстояния до объекта. Предметы сохраняются как небольшие рисунки (15 на 15 точек). Изображения заносяться в матрицу если оно присутствует на обоих камерах. Если изображение пропадает после того как робот сдвинулся с места оно удаляется из матриц. Между препятствиями робот перемещается по заданному алгоритму, сверяя свое положение измеряя дистанцию относительно объектов находящихся в памяти робота. Обхождение препятствий невозможно при использовании этого алгоритма. [1]
3 Некоторые известные разработки роботов, базирующиеся на использовании активного зрения.
Одна из известных разработок роботов способных самостоятельно ориентироваться в пространстве полагающегося на стерео камеры Spot Mini. Робот предназначен для выполнения различных операций в домашних условиях. Для получения информации об окружающем мире Spot Mini использует стерео камеры, камеры с восприятием глубины сцены и интегральная навигационная платформа. Другая известная разработка Zenbo Asus. Робот разработанный как компаньон и помощник по дому. Робот оснащен стерео камерами в том числе камерой для распознавания человеческих эмоций.
Данные роботы полагаются на видеокамеры как источник информации о внешнем мире.
Особенности промещений где данные роботы используется это полная невозможность предугадать размер и форму помещения, положение предметов в пространстве и наличие преодолеваемых препятствий таких как лестницы и двери. В то же время домашние условия очень вероятно наличие источников света, относительно небольшая влажность и наличие различных цветов в окраске предметов и относительно небольшое пространство.
4 Математические модели, позволяющие написать программное обеспечение для ориентирования роботов
в пространстве с использованием системы активного зрения
Одно из часто используемых математических инструментов это однородные координаты. Однородные координаты это способ унифицированного представления геометрических точек в пространстве включая бесконечно удаленные точки. Краткое описание принципа однородных кординат следующее. Пусть на плоскости заданы 2 числа a и w. Запомним значение числа a и будет изменять значение числа w. При изменении числа w отношение a/w будет изменяться обратнопро-порционально. Если же w = 0 то отношение a/w будет бесконечно. Т.е. точка будет удалена на бесконечнное расстояние. Это позволяет представлять точка в трехмерном пространстве через координаты (wx, wy, w). При
этом если w=0 точка находится на бесконечном удалении в пространстве. Для представление векторов в пространстве используются матрицы с координатами представленные следующим образом. Двумерный вектор в однородных координатах записывается в виде ^У '"^О. где Число № называется масштабным множителем. Для того, чтобы из вектора, записанного в однородных координатах получить вектор в обычных координатах необходимо разделить первые две координаты на третью: (™х/у»,уку(х,у Д)
В общем случае осуществляется переход
от я-мсрного пространства к +1). мерному. Это преобразование не единственное. Обратное преобразование называется проекцией однородных координат*.
Рассмотрим некоторые свойства однородных координат. Некоторые точки, неопределенные в п-мерном пространстве, становятся вполне определенными при переходе к однородным координатам. Например, однородный
вектор в трехмерном пространстве
соответствует бесконечно удаленной точке г = сп. Поскольку в однородных координатах эту точку можно представить в виде при в—э-о, то в трехмерном
пространстве это соответствует точке
Рассмотрим точку трехмерного пространства Если представить эту точку как однородное представление точки двумерного пространства, то ее координаты будут (а !С,Ы с) Сравнивая эти координаты со вторым видом формул, выведенных для центральной перспективной проекции, легко заметить, что двумерное представление точки
с координатамивыглядит как ее проекция на плоскость г = 1, как показано на рис. 1.
Рис. 1. Проекция точки кость г ;
(я А с) = 1
на плос-
Аналогично, рассматривая применение однородных координат для векторов трехмерного пространства, можно представить трехмерное пространство как проекцию четырехмерного пространства на гиперплоскость м? = 1, если
(*> У,?)—> (-юс,ууу,-и>г,-н>)=
В однородных координатах преобразование центральной перспективы можно определить матричной операцией. Эта матрица записывается в виде:
= р
к 0 0 0
0 к 0 0
0 0 0 1
0 0 0 к
Покажем, что эта матрица определяет преобразование точки объекта, заданной в однородных координатах, в точку перспективной проекции (также в однородных координатах).
Пусть р ~ - точка в трехмерном
пространстве. Ее однородное представле-
ч = умножим уна Р:
ние
\Р
= [Ь: /(
= \юкх,\\?ку + ¿г)] =
г + Лт),0Д]
2 +
к\ку!{2
Теперь точки двумерного пространства будут описываться трехэлементными вектор-строками, поэтому и матрицы преобразований, на которые будет умножаться вектор точки, будут иметь размеры 3'3. Запишем
матричное преобразование операции переноса для однородных координат:
[х'?1у'д]=[х?1
1 0 0
0 1 0
В, в, 1
При последовательном переносе точки Р в
I м
точку Р и затем в точку Р компоненты суммарного вектора переноса являются суммами соответствующих компонент последовательных векторов переноса. Рассмотрим, каковы будут элементы матрицы суммарного перено-
Пусть
р" =р - т{в\,ву)
Подставив первое уравнение во второе получаем р" -р-т{пх,пу).т{п^г>у)
Матричное произведение т.е. суммарный перенос равен произведению соответствующих матриц переноса.
1 0 0 1 0 0 1
0 1 0 0 1 0 = 0
1 в х Оу 1 вх+в
Запишем матричный вид операции масштабирования.
0 0
X ,у' Д 0 в, 0
0 0 1
Определим
матрицу
О О
О
у О
масштабирования
о"
0
1
Так же, как последовательные переносы являются аддитивными, покажем, что последовательные масштабирования будут мультипликативными.
в
Для операции поворота матричный вид будет такой:
Cos ос Sin ос 0
Д - Sin а Cosa 0
0 0 1
Определим матрицу
Cosa Sin а
поворота
- Sin a Cosa 0 0
Аналогично двум предыдущим случаям, покажем, что матрица поворота остается таковой при последовательных поворотах.
Cosa Sin а 0
R{ajR{ß) =
Sina Cosa 0 0 0 1
' Cosß Sinß 0 -Sinß Cosß 0 0 0 1
а + ßt 0
\а+ ß ) 0
0 1
Таким образом, доказано, что два, а значит и любое количество последовательных поворотов можно записать в виде одной матрицы суммарного поворота. Также легко заметить что любая последовательность операций, включающая в себя перенос, масштабирование и вращение в однородных координатах,
может быть представлена одной матрицей, которая является произведением матриц данных операций.
Рассмотрим, каким образом с помощью композиции матричных преобразований можно получить одно общее результирующее преобразование. Для этого будем использовать матрицы Т, 8 и Я. С вычислительной точки зрения гораздо проще и быстрее применять матрицу уже готового преобразования вместо того, чтобы применять их последовательно одну за другой. К точке более эффективно применять одно результирующее преобразование, чем ряд преобразований друг за другом.
Для примера рассмотрим задачу поворота объекта на плоскости относительно некоторой произвольной точки Ра. Пока мы умеем поворачивать объекты только вокруг начала координат. Но можно представить эту задачу как последовательность шагов, на каждом из которых будет применяться только элементарная операция: перенос, масштабирование или вращение.
Вот эта последовательность элементарных преобразований (рис. 2):
Перенос, при котором точка ро переходит в начало координат.
Поворот на заданный угол.
Перенос, при котором точка из начала координат возвращается в первоначальное положение Ро .
Рис. 2. Последовательность преобразований при
повороте объекта вокруг точки Ра = С* о »У о ) на угол а.
Точка Ра = (*о > Уо ). Первый перенос производится на вектор х О >~У 0 ], а обратный перенос на вектор * У о 1. [2]
6 Описание работы системы
объемного зрения (стерео камер)
Работа системы объемного зрения похожа на работу человеческих глаз. Стереосистма активного зрения состоит из 2 камер. Левая
камера и правая камера находяться на некотором расстоянии друг от друга и получают различные изображения. Главные зрительные оси камер пересекаются. Областью наиболее точного восприятие изображения является часть простанства находящаяся в пересечении конусов обзора двух камер.
Рис.3 скрещение осей координат камер
Относительно собственных систем координат камеры смещены вдоль оси X на рас- Рис. 3. Пересечение полей зрения в системе камер 2/ (Ь правая и )2/ (-Ь - левая. Камеры повернуты вокруг оси У на угол (а )2/ - правая камера и на )2/ (-а - левая. Каждая камера имеет слепые зоны - области пространства, точки в которых не регистрируются ни в одной из камер стереоскопической системы. Наиболее значимой является слепая зона непосредственно перед системой камер, между объективами. Расстояние до различных точек пространства определяется по резкости изображения полученного камерой и определяется по следующей формуле
где Я1 - передняя граница резко изображаемого пространства, м; Я2 - задняя граница резко изображаемого пространства, м; Я -расстояние, на которое производится наводка на резкость, м; f - абсолютное фокусное расстояние объектива, м; К - число диафрагмы (знаме- натель относительного отверстия объектива, в расчете принят равным 8); ъ -диаметр диска размытости (принимается равным 0,03-0,05 мм), м. Таким образом, глубина резко изображаемого пространства определя-
ется разностью между задней и передней границами резкости: Р = Я2 — Я1.
В плоскостях двух камер формируется два различных ихображения. Получение трехмерных координат достигается по следующей формуле:
/ -(х1 + х2)-(Ь-2- / ■ 5111(^/2}]
X = ■
2 ■ ((/1 + л! ■ ,т2) ■ Я!ща-) + / ■ со^ог) ■ (х\ - х2))'
где X, Ъ и У координаты точки, х1, у1, ъ1 -координаты точки в системе координат одной камеры, х2, у2, ъ2 - координаты точки в системе координат второй камеры, f - фокусное расстояние камер, альфа - угол скрещивания камер. [3]
7 Некоторые известные разработки роботов, базирующиеся на использовании активного зрения и дополнительных датчиков
На сегодняшний день одним из наиболее эффективных, популярных и исследуемых методов решения задачи ОЛИК является графовый подход. Этот метод относится ко второй категории, то есть использует все измерения, полученные роботом, на каждом шаге алгоритма. Рассмотрим его подробнее. Основой графового подхода является объединение данных, получаемых роботом в "позы". Каждая поза содержит информацию, которую робот собрал в течение некоторого промежутка времени, когда он двигался около какой-то точки территории. Фактически, каждая поза является локальной картой, построенной роботом. Поскольку на коротких промежутках времени при интегрировании показаний датчиков не накапливается большой ошибки, то информация, содержащаяся на таких локальных картах, является достаточно точной. Каждая поза соответствует вершине графа, ребрами же соединены те вершины (позы), для которых существует оценка их взаимного положения, записанная в виде вероятностого распределения с известным матожиданием и матрицей ковариаций. Оценка взаимного положения может быть получена как путем ин-
тегрирования показаний инерциальных датчиков, так и путем ассоциирования визуальных данных. После оптимизация графа известны оценки координат каждой из поз, и на основе множества локальных карт интегрируется единая глобальная карта.
8 Наиболее известные алгоритмы системы позиционирования и навигации роботов, базирующиеся на использовании дальномеров
Фирма Evolution Robotics предложила технологию, которая позволяет роботу ориентироваться в окружающей среде при помощи колесных датчиков и веб-камеры. Система, называемая "системой одновременной визуальной локализации и позиционирования (visual simultaneous localization and mapping, VSLAM), составляет карту окрестностей по расстоянию и направлению движения колес робота, а также по объектам, распознаваемым посредством камеры и программного обеспечения. [4] Впоследствии робот ориентируется по этим данным. При первом путешествии по помещению система "обучается", а затем корректирует карту в соответствии с изменениями в расстановке предметов. Работа известного роботов-пылесосов основывается на использовании лазерных дальномеров.
Список использованной литературы
1. Robotics Navigation by active stereo vision - Joss Knight Report N OUEL2220/000 University of Oxford
2. Однородные координаты - статья Алексей Игнатенко
Rovust Place recongnition with Stereo Cameras
- article Cesar Cadena, Dorian G ' alvez-L ' opez, Fabio Ramos, Juan D. Tard ' os and Jos ' e Neira
3. Оптимизация параметров системы технического зрения на базе трех камер -И В. Егоров, Д.В. Лачугин. уДк 001.57
4. Разработка моделей картирования и патрулирования коллективом беспилотных наземных роботов, использующих тхническое зрение и эхолокацию. Специальность 05.13.18
— Математическое моделирование, численные методы и комплексы программ Диссертация на соискание учёной степени кандидата технических наук