Применение корреляции в робототехническом зрении: навигация в пространстве
Определение положения робота в пространстве без применения для этого маяков. Использование информации о расстоянии до объектов для определения собственного положения в помещении. Применение дальномеров для построения карты окружающего пространства.
Рубрика | Коммуникации, связь, цифровые приборы и радиоэлектроника |
Вид | статья |
Язык | русский |
Дата добавления | 27.02.2019 |
Размер файла | 40,8 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Применение корреляции в робототехническом зрении: навигация в пространстве
Киселев К.О.
Для нормального функционирования роботов, способных самостоятельно передвигаться, необходимы методы определения текущего места расположения. Так решение задачи о перемещении в указанную точку становится невозможным, если отсутствует информация о том, где сейчас находится робот. Часто для определения положения применяется измерение расстояний, пройденных роботом и маяки (световые, звуковые или радио). При этом первый метод оказывается неработоспособен при частом перемещении из-за накапливающейся ошибки, а использование маяков требует предварительного оборудования помещения.
Предлагаемый способ заключается в применении дальномеров (ультразвуковых, лазерных или радиолокационных) для построения карты окружающего пространства. В дальнейшем эта карта сопоставляется с имеющейся картой помещения для получения текущего положения.
Исходными данными для работы являются: матрицаM - план помещения(размером MaЧNa) и массив измерений дальномера.
Матрица плана помещения представляет собой двумерный массив точек, каждая из которых может иметь одно из 3-х значений:
ac - свободное пространство
aп - известные препятствия(стены, предметы мебели и пр.)
aн - неисследованное пространство
Массив измерений дальномера представляет собой набор точек (li, бi) - расстояния li до объекта в направлении угла бi. При этом масштаб li должен совпадать с масштабом плана помещения. По этим данным строится матрица T образа помещения.
Необходимо иметь переменную б0 - угол ориентации робота в помещении. При расчете положения обрабатываются несколько вариантов значения этого угла, если имеется информация о его предыдущем значении и максимально возможном изменении, либо перебираются все варианты от 0 до 360о с шагом Дб. Рассмотрим второй случай, тогда б0n=n*360/Дб, где n -целое число, такое, что 0a0n<360o.
Определяетсяlmax- максимальное из расстоянийli, округленное до целого числа вверх. Матрица Tn будет иметь размер MЧN, где N=M=2*(lmax+2).
Зададим начало координат в точке (x0, y0) где x0=y0=lmax+2. Зададим каждому элементу матрицы значение aн.
Зададим значениеaсдля всех точек матрицы Тn, лежащих на прямой между точками (x0, y0) и (x0+li*cos(б0n+ai); y0+li*sin(б0n+ai)). Для точки (x0+li*cos(б0n+ai); y0+li*sin(б0n+ai)) матрицы Т зададим значение ап. Если известна погрешность измерения расстояния ±Дl, то имеет смысл заполнить значениями aп ячейки между точками (x0+(li-Дl)*cos(б0n+ai); y0+(li-Дl)*sin(б0n+ai)) и (x0+(li+Дl)*cos(б0n+ai); y0+(li+Дl)*sin(б0n+ai)). При этом изначально следует принять значение lmax=max(li)+Дl.
В результате получим n матриц Tn. Вычислив ВКФ матрицы M с каждой из матриц Tn, получим n матриц Cn - коэффициентов корреляции матриц Tn и M при различных взаимоположениях. Исходя из свойств коэффициента корреляции известно, что он принимает максимальное значение, когда данные на входе идентичны. И чем меньше расстояние между векторами на входе, тем выше значение коэффициента корреляции. Учитывая выражение, определяющее значение Cn(k,p)[1]:
Составим требования к значениям констант ас, ан, ап:
Если нет данных о какой-либо точке, то эта точка не должна воздействовать на значение Cn(k,p), поэтому:
ан*ас=ан*ап=ан*ан=0 (1)
Несовпадение значений в какой-либо точке должно приводить к снижению Cn(k,p), поэтому:
ан*ас<0 (2)
Совпадение значений в какой либо точке должно приводить к возрастанию Cn(k,p), поэтому:
ан*ан=ас*ас>0 (3)
Из условия (3) следует, что числа ас, ан, ап - действительные, из условия (1) aн=0, из условия (2) следует, что ас, и ап отличны от нуля и имеют противоположные знаки.
Набор матриц Сn можно представить как трехмерную матрицу С размером nx(M+Ma-1)x(N+Na-1). Найдя максимум в этой матрице получим его координаты: (аc, xc, yc).
ac - информация о угле б0 поворота робота в пространстве:
б0=ac*360/Дб
По xc, yc рассчитывают положение робота на карте по формулам:
x=x0+Ma-xc+1
y=y0+Na-yc+1
Тогда робот находится в точке M(x,y) и установлен в направлении б0. Эти координаты полностью описывают положение робота на плоскости, чего вполне достаточно для роботов, работающих внутри помещений.
Аналогичным образом возможно и определение координат в трехмерном пространстве. Входными данными при этом будет набор векторов (li,иi,цi) в трехмерной сферической системе координат, матрица M так же должна быть трехмерной.
При реализации алгоритма имеет смысл корректировать размер матриц Tn для увеличения быстродействия, т.к. если lmax значительно превосходит среднее расстояние до окружающих объектов, то значительная часть матрицы Tn останется заполненной aн и не будет принимать участия в расчете, однако размер Cn и объем расчетов при этом окажется выше необходимого. Вычисление корреляции так же эффективнее реализуется не по определению, а при помощи двумерного БПФ[3].
Проиллюстрируем работу метода моделированием в Matlab.
а б
Рисунок. 1. а - изображение карты тестового помещения, б - изображение карты тестового помещения для получения набора векторов (li, бi).
На рис. 1 белым обозначены области, заполненные ac, черным - aп. Карта рис.1а будет использоваться для расчета, эта карта хранится в памяти робота, используется в качестве матрицы M. Карта на рис. 1б имитирует наличие необозначенных в памяти робота препятствий: стульев, ног людей, мусорных урн и т.п.
При моделировании робот помещается в тестовую точку с произвольными координатами(при условии, что точка свободна) и произвольным углом б0, измеряется расстояние до предметов вокруг по карте рис. 1б с шагом 3,6о. Расчет угла ведется с разрешением Дб=1о(n=360). Так же на расстояние до предметов действует шум с нормальным распределением. Используется алгоритм с вычислением корреляции с помощью БПФ по оптимизированной карте. Размер матрицы M 200x200. Расчет производился для 10 случаев, при этом каждый раз робот устанавливался в новую точку, не связанную с предыдущим расчетом. Результаты представлены в табл. 1.
Таблица 1. Результаты моделирования
№ |
б0, рад. |
б0, рад. вычисл. |
Х |
Х выч. |
Y |
Y выч. |
Время расчета, с. |
Ошибка б0, рад. |
Ошибка X |
Ошибка Y |
|
1 |
1.8812 |
1.885 |
187 |
187 |
15 |
15 |
942 |
0.0038 |
0 |
0 |
|
2 |
0.5225 |
0.5236 |
30 |
30 |
175 |
175 |
575 |
0.0011 |
0 |
0 |
|
3 |
3.1297 |
3.1241 |
173 |
173 |
94 |
94 |
866 |
0.0056 |
0 |
0 |
|
4 |
1.0738 |
1.0821 |
69 |
69 |
58 |
58 |
844 |
0.0083 |
0 |
0 |
|
5 |
5.1389 |
5.1487 |
181 |
181 |
188 |
188 |
501 |
0.0098 |
0 |
0 |
|
6 |
3.4681 |
3.4732 |
167 |
167 |
103 |
102 |
503 |
0.0051 |
0 |
1 |
|
7 |
0.5715 |
0.576 |
162 |
162 |
93 |
93 |
780 |
0.0045 |
0 |
0 |
|
8 |
5.5558 |
5.5501 |
63 |
63 |
81 |
81 |
468 |
0.0057 |
0 |
0 |
|
9 |
2.1229 |
2.1293 |
30 |
30 |
171 |
171 |
599 |
0.0064 |
0 |
0 |
|
10 |
5.2929 |
5.2883 |
105 |
105 |
45 |
45 |
893 |
0.0046 |
0 |
0 |
|
Макс. |
942 |
0.0098 |
0 |
1 |
Из результатов видим стабильную работу алгоритма. Погрешность расчета координат: ±1, максимальная ошибка измерения угла 0,0098 рад = 0,56о, что меньше разрешения расчета. Главным недостатком алгоритма является его значительная вычислительная емкость: расчет одного тестового случая занимает до 16 минут на процессоре AMDAthlonx64 2.2 ГГц.
Для сокращения времени расчета эффективно уменьшение разрешения расчета угла или поиск угла из некоторого диапазона, определяемого внешними устройствами, например, электронным магнитометром, используемым в качестве компаса.
Для обеспечения работоспособности алгоритма единственным требованием к дальномеру является минимальный апертурный угол. Этому требованию соответствует применение лазерных дальномеров. УЗ дальномеры обычно имеют апетрурный угол шире 10о, поэтому они сильно искажают данные измерений и не позволяют добиться высокой точности позиционирования без применения дополнительных мер.
Чувствительность алгоритма задается с помощью значений ап и ас. Корреляционный максимум имеет наиболее острый пик при ап=-ас. Однако такое сочетание параметров при обнаружении не отмеченных на карте объектов может приводить к ошибкам. Поэтому в некоторых случаях имеет смысл ас задавать равныман, а ап>0.
Так же в случае наличия на карте областей с одинаковым расположением препятствий, наличии какой-либо симметрии алгоритм оказывается не работоспособным без информации о предыдущем положении, т.к. возникает 2 и более корреляционных максимумов.
Разработанный метод позволяет получить информацию о положении робота на хранящейся в памяти карте, не имея предварительных данных о положении. Так же в процессе работы карта может дополняться и корректироваться, основываясь на показаниях дальномеров. Удачным вариантом применения алгоритма станет первоначальный расчет положения при включении робота, когда нет предварительных данных о его положении. Включение обычно производится в неподвижном состоянии, поэтому к сроку окончания расчета данные будут актуальны. Производительность может быть заметно увеличена применением технологий вычисления на GPU (Вычисление 8388608 отсчетов FFT:GPU: 0.085с, CPU: 92.851c[2]).
Литература
робот помещение дальномер
1. Гансалес Р., Вудс Р. Цифровая обработка изображений. М., Техносфера, 2005.1012 с.
2. Вычисление БПФ на GPU с использованием Java и CUDA, http://blog.eqlbin.ru/2011/08/gpu-java-cuda.html.
3. Гансалес Р., Вудс Р., Эддинс С. Цифровая обработка изображений в среде MATLAB. М., Техносфера, 2006. 615 с.
Размещено на Allbest.ru
Подобные документы
Понятие чип-карты, ее значение и применение для санкционированного доступа к информации, распространение на современном этапе и принцип действия. Порядок создания "фальшивой" чип-карты и сферы ее применения, методика и этапы программирования карт.
реферат [69,9 K], добавлен 09.05.2009Понятие и внутренняя структура модели устройства в пространстве состояний как известного способа описания линейных устройств. Принципы и этапы ее построения в форме пространства и передаточной функции. Нелинейные устройства обработки аналоговых сигналов.
реферат [70,5 K], добавлен 21.08.2015Изучение истории появления спутниковой навигации. Исследование принципов работы GPS в околоземном пространстве. Анализ особенностей технической реализации и применения системы. Наземные станции контроля космического сегмента. GPS приемники и навигаторы.
презентация [2,2 M], добавлен 08.06.2016Обнаружение и точное определение положения объектов с помощью радиоволн, их свойства. Понятие и история развития, принцип действия пассивной и активной радиолокации. Создание радара и схема работы радиолокатора. Классификация радаров и их применение.
презентация [3,6 M], добавлен 12.04.2012Термины и определения теории автоматики. Автоматизированные системы. Структура САУ, типовая схема и применение в производственном цикле. Классификация элементов автоматических систем. Свойства объектов регулирования. Функции разгона переходного процесса.
презентация [1,4 M], добавлен 05.05.2014Фотоэлектрические датчики положения, характеристика, сфера применения, принцип их работы. Ультразвуковые измерители с цифровым и аналоговым выходами, их преимущества. Индуктивные датчики положения и перемещения, принцип измерений, схема подключения.
курсовая работа [2,1 M], добавлен 25.04.2014Устройство общих схем организации радиосвязи. Характеристика радиосистемы передачи информации, в которой сигналы электросвязи передаются посредством радиоволн в открытом пространстве. Особенности распространения и области применения декаметровых волн.
реферат [1,3 M], добавлен 10.07.2010Анализ компьютерного моделирования электрических схем и электродинамических характеристик привода. Разработка заказных интегральных схем драйвера электродвигателя. Описания устройства контроля положения привода в пространстве, расчет основных узлов.
курсовая работа [3,6 M], добавлен 26.12.2011Радиосвязь как передача и прием информации с помощью радиоволн, распространяющихся в пространстве без проводов, ее разновидности и сферы практического применения на сегодня. Физические основы телевизионной передачи изображений. История изобретения радио.
презентация [427,9 K], добавлен 23.04.2013Обзор применения импульсных дальномеров-высотомеров на основе полупроводниковых лазеров для контроля объектов подстилающей поверхности. Методы повышения точности временной фиксации принимаемого сигнала. Расчет безопасности лазерного высотомера ДЛ-5.
дипломная работа [1,2 M], добавлен 14.03.2016