Автономная навигация робота

Здесь расположены обсуждения и проекты, которые с точки зрения администрации форума представляют наибольший интерес.
Правила форума
В этом форуме новые темы не создаются, однако обсуждение допустимо.

Re: Автономная навигация робота

Сообщение EDV » 28 авг 2009, 14:08

Виталий писал(а):Самое интересное, что feature detector обычно очень хорошо параллелиться.

Как пример вот короткое видео.


Очень бы хотелось иметь такую примочку к камере, которая обеспечивает аппаратную очистку изображения + feature detection.


Эх, если бы все изображения были бы только такими контрастными, роботы, наверное, давно уже научились бы видеть (в ролике просто идеальные условия для поиска “Feature points”). Вот только бывают и полутоновые изображения с плохим контрастом (облака к примеру), высокочастотные текстуры (зелень на деревьях, гравий) и там будет посложнее...
Аватара пользователя
EDV
 
Сообщения: 1016
Зарегистрирован: 06 июн 2007, 15:19
Откуда: Украина, Лисичанск
ФИО: Дмитрий Еремеев

Re: Автономная навигация робота

Сообщение Виталий » 28 авг 2009, 19:08

Для них тоже есть хорошие feature points. Кроме того в данной работе ключевое не это, а то, что они обрабатывают картинку на ПЛИС.
Все новости о моих проектах http://savethebest.ru
Аватара пользователя
Виталий
 
Сообщения: 2114
Зарегистрирован: 08 окт 2004, 16:43
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий

Re: Автономная навигация робота

Сообщение Duhas » 28 авг 2009, 21:43

поиск "фич" на сколько я, не вникающий сильно во все это, знаю довольно "стандартный" процесс.. вот когда у них что-то типа AVM от EDV заработает, тогда молодцы.. я вообще не понимаю как можно при наличии возможностей, а на сколько я знаю за бугром они у многих студентов есть.. у нас с этим куда туже, можно не делать подобных вещей...
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Re: Автономная навигация робота

Сообщение Виталий » 28 авг 2009, 22:20

Я как сильно вникающий скажу. У них все это уже сделано.
Все новости о моих проектах http://savethebest.ru
Аватара пользователя
Виталий
 
Сообщения: 2114
Зарегистрирован: 08 окт 2004, 16:43
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий

Re: Автономная навигация робота

Сообщение Duhas » 29 авг 2009, 09:34

на ПЛИС?
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Re: Автономная навигация робота

Сообщение Виталий » 29 авг 2009, 09:36

На ПЛИС разве что для военных.
Есть вообще чисто оптические реализации.
Все новости о моих проектах http://savethebest.ru
Аватара пользователя
Виталий
 
Сообщения: 2114
Зарегистрирован: 08 окт 2004, 16:43
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий

Re: Автономная навигация робота

Сообщение EDV » 31 авг 2009, 08:39

Идея: Location tree

Создаём AVM для хранения в качестве ассоциации двух координат (P[0], P[1]) в формате float.

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

Демонстрационная версия с исходными текстами:
http://edv-detail.narod.ru/Navigator_Tool_Kit.zip

Вложения
lt1.PNG
Аватара пользователя
EDV
 
Сообщения: 1016
Зарегистрирован: 06 июн 2007, 15:19
Откуда: Украина, Лисичанск
ФИО: Дмитрий Еремеев

Re: Автономная навигация робота

Сообщение =DeaD= » 31 авг 2009, 08:45

2EDV: А чего бы сначала с обычным SLAM'ом не побаловаться? Оно хоть погрешность уменьшает со временем, а тут этого не ожидается вроде?
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Автономная навигация робота

Сообщение EDV » 31 авг 2009, 09:13

А ссылку на литературу можно?
Аватара пользователя
EDV
 
Сообщения: 1016
Зарегистрирован: 06 июн 2007, 15:19
Откуда: Украина, Лисичанск
ФИО: Дмитрий Еремеев

Re: Автономная навигация робота

Сообщение =DeaD= » 31 авг 2009, 09:21

Ну простейший SLAM - это калман, в который в качестве искомых переменных вставляют координаты маяков и робота. А в качестве результатов измерений - координаты маяков.

Добавлено спустя 50 секунд:
Про калмана я тут в нашу вику перевел статейку: [[Фильтр Калмана]]

Добавлено спустя 1 минуту 38 секунд:
По самому SLAM-у вот тут я насобирал инфу: viewtopic.php?f=6&t=6190

Извиняюсь что сам всё в основном советами пока помогаю :( - с электроникой вроде более менее разделались, чтобы массовость обеспечить, сейчас за механику возьмёмся, но это вроде быстро, так что скоро и до ПО доберемся.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Автономная навигация робота

Сообщение EDV » 31 авг 2009, 09:31

=DeaD= писал(а):...в качестве искомых переменных вставляют координаты маяков...


А как эти самые координаты маяков (локационные координаты) получить из экранных координат?

Я пока что этот вопрос не достаточно хорошо проработал. В "Navigator tool kit" просто набросок (заготовка) лежит, для дальнейших экспериментов.

Так что если знаете как, поделитесь опытом.
Аватара пользователя
EDV
 
Сообщения: 1016
Зарегистрирован: 06 июн 2007, 15:19
Откуда: Украина, Лисичанск
ФИО: Дмитрий Еремеев

Re: Автономная навигация робота

Сообщение =DeaD= » 31 авг 2009, 09:54

2EDV: Направление на маяк известно из 1 кадра (просто по расположению его в кадре), а расстояние до него известно из отношения масштабов на 2 кадрах, сделанных в разных точках пути, но в принципе в Калмана вроде можно и чисто направления скармливать.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Автономная навигация робота

Сообщение Baster » 11 сен 2009, 15:15

Предлагаю простое решение проблемы того, что один и тот же обьект может распознаваться в разных ситуациях по-разному. Ну и пусть распознает по-разному. Обьяснение следующее. Просто получится, что один обьект исчезнет и на его месте может появиться другой или не появиться. Все нормально. С нами происходит то же самое на самом деле. По сути развитие разума в том и состоит, чтобы увидеть еще больше. Так что это не проблема, а направление развития искусственного интелекта, как впрочем и нашего с вами. Думаю именно с этим вы все время и будете работать, т.е. развивать способность робота располнавать одно и тоже в разном. Сразу признаюсь, что я не программист. Эта конференция меня интересует с чисто философской точки зрения и признаюсь, что здесь при решении порою мелких но практических задач, можно понять об устройстве мироздания гораздо больше, чем при абстрактных размышлениях о высших материях. Если другие участники не против, и если будут еще мысли, я буду их здесь высказывать. Удачи. :)
Baster
 
Сообщения: 1
Зарегистрирован: 11 сен 2009, 14:55
Откуда: Луганская обл.

Re: Автономная навигация робота

Сообщение EDV » 18 сен 2009, 09:54

Разработал алгоритм определения текущего местоположения, основанный на классификации контрастных пятен. Вкратце, смысл следующий: ищем контрастные участки изображения, которые выделяются на общем фоне. Присваиваем каждому из них идентификатор соответствующий их размеру и соотношению сторон прямоугольной области и формируем строку идентификаторов (цепочка идентификаторов областей присутствующих на изображении). Просматриваем список ранее сохранённых строк идентификаторов. Если не находим входную строку, то добавляем её в список с текущим индексом местоположения.

Демонстрационная версия с исходными текстами:
http://edv-detail.narod.ru/Navigator_Tool_Kit.zip
Navigator_Tool_Kit\samples\LocationSearching

Решение задачи навигации пока что мне видится следующим образом:
1. Определяем текущее местоположение с помощью классификации контрастных пятен (точка, где мы находимся).
2. Ищем вокруг визуальные маяки с помощью AVM (точка, куда мы можем отправиться).

Примерно так (находимся 2 идём к 3):



Теперь планирую заняться алгоритмом определения глобального движения в кадре, для замеров перемещения робота от одной точки к другой.
Последний раз редактировалось EDV 21 сен 2009, 08:46, всего редактировалось 1 раз.
Аватара пользователя
EDV
 
Сообщения: 1016
Зарегистрирован: 06 июн 2007, 15:19
Откуда: Украина, Лисичанск
ФИО: Дмитрий Еремеев

Re: Автономная навигация робота

Сообщение EdGull » 18 сен 2009, 09:57

а на МК например на ARM9 это переносится?
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Пред.След.

Вернуться в Золотой фонд

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 4