Свяжитесь с нами
 

Будущее, прогнозы Автономная навигация роботов

3 февраля 2009 | Автор: oleg | Просмотров: 7892
Когда человек смотрит вдаль, то ему кажется, что параллельные прямые линии вдоль оси его зрения сходятся вдали в одной точке. Этот эффект явственно наблюдается, если смотреть вдаль на прямолинейный участок железнодорожной колеи. Такую точку называют точкой, стремящейся к нулю (vanishing point).

Данную особенность человеческого зрения широко используют для навигации роботов внутри помещений. Для камеры, “видящей” как и человеческий глаз “в перспективе”, параллельные линии вдоль оптической оси камеры тоже вдали пересекаются в такой же общей точке.

Множество параллельных линий имеется в коридорах. Это, например, углы, образованные пересечением боковых стен с полом или потолком. И, поэтому, использование точки, стремящейся к нулю, определенной из таких прямых линий может быть использовано для задания курса движения робота, который движется вдоль коридора.

Ниже показано видео движения робота, который использует сходящуюся к нулю точку изображения прямых, чтобы ориентироваться при движении вдоль коридора. Это – робот, iRobot Create американской корпорации iRobot. Он использует стандартную веб-камеру и специальную компьютерную обработку изображения, чтобы определять местонахождение стремящейся к нулю точки того, что он видит вокруг, и двигаться в направлении этой точки.

Как же робот это делает?

Первый шаг в поиске точки, стремящейся к нулю – это экстракция прямых линий из изображения. Поскольку трудно извлечь из изображения нужные прямые линии при различных условиях (изменяющееся освещение, передвигающиеся по коридору объекты, и т.п.), изображение обрабатывается при помощи алгоритма послойного фильтрования. Этот алгоритм удаляет из изображения неинформативные линии и углы.

Прямые линии, используемые для вычисления точки, стремящейся к нулю и задания направления движения робота параллельны оптической оси камеры. А в плоскости изображения, эти линии имеют некоторый угол наклона. Следовательно, имеющиеся в изображении строго вертикальные и горизонтальные линии, просто удаляются из него. Остальные линии проверяются, являются ли они линиями, сходящимися в одной точке.
Поскольку увеличение камеры не изменяется в процессе движения робота, и оптическая ось перпендикулярна вертикальной оси помещения, точка, стремящейся к нулю, в изображении имеет вертикальную координату, близкую к половине высоты изображения. Этот простой тест позволяет оценить истинность вычисленной стремящейся к нулю точки.

А как же использовать стремящуюся к нулю точку для корректирования направления движения робота?

Когда робот движется по прямой линии, параллельно стенам коридора, горизонтальная координата стремящейся к нулю точки в изображении находится близко к центру изображения. Если, вдруг, робот, по каким либо причинам изменил направление движения, горизонтальная координата стремящейся к нулю точки тоже отклониться от центрального положения. В данном случае, установленный в роботе контроллер изменит скорости вращения колес, чтобы вернуть робота на требуемый курс движения.

Смотрите видео.

Такой способ навигации может быть вполне успешно применен в простых ситуациях, например, для чистки полов в длинных коридорах общественных зданий.

Однако, для полноценной навигации внутри помещения, использования одного этого способа явно недостаточно. Если длина помещения слишком маленькая, то эффект видения “в перспективе” практически не проявляет себя. Соответственно, стремящаяся к нулю точка не может быть корректно вычислена.

Использовался доклад: CSCi 5980 Project Report, Pratap Tokekar, http://www.tc.umn.edu/~tokek001/docs/csci5980Report.pdf

Мы еще рассмотрим эту тему подробнее, узнаем, какие еще существуют способы навигации роботов. Об этом Вы сможете прочесть в моих последующих статьях.

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Добавление комментария

Имя:*
E-Mail:*
Введите два слова, показанных на изображении: *