Как из дешевого китайского танчика сделать робоплатформу

Обсуждаем рождающиеся мысли и результаты экспериментов.

Как из дешевого китайского танчика сделать робоплатформу

Сообщение EDV » 27 апр 2009, 09:12

Доброго всем времени суток!

Я тут решил заняться экспериментами по «Автономной навигации робота» и хочу поделится своими соображениями по поводу, как сделать с наименьшими затратами (и времени и финансов) робоплатформу для подобных экспериментов. Специально для посетителей «Робофорума», я подготовил статью:

Как из дешевого китайского танчика (радиоуправляемая модель) сделать робоплатформу для проекта "Автономная навигация робота"

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

Re: Как из дешевого китайского танчика сделать робоплатформу

Сообщение =DeaD= » 27 апр 2009, 09:28

Респект! :)

Я на этой же платформе делаю, только электронику всю выкинул штатную, чтобы потом иметь возможность передавать инфу с танка с датчиков (типа ИК-дальномеров, компаса или сонаров): wiki/OR-MRBT-v2

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

Re: Как из дешевого китайского танчика сделать робоплатформу

Сообщение avr123.nm.ru » 27 апр 2009, 09:29

EDV писал(а):программы «Навигатора», которая будет управлять роботом, анализируя изображения, полученные от видеокамеры с радиопередатчиком, расположенной на робоплатформе.
Вот это интересно.
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва

Re: Как из дешевого китайского танчика сделать робоплатформу

Сообщение =DeaD= » 27 апр 2009, 09:30

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

Re: Как из дешевого китайского танчика сделать робоплатформу

Сообщение EDV » 27 апр 2009, 09:54

=DeaD= писал(а):PS: В своё время тоже думал юзать танк, как готовую платформу - но вот той же башней крутить - как понять на ПК в каком она сейчас положении? Как планируете эту задачу решать? Или будете только шасси юзать, а башню нет?


Я предполагаю, что положение башни можно вычислить, анализируя локальное и глобальное движение в кадре, с помощью «Optical flow» алгоритма.

Один из таких алгоритмов, основанный на технологии AVM, я добавил в SDK:
AVM_SDK_v0-5.zip\AVM_SDK\samples\vc6.prj\OpticalFlow\

AVM SDK v0.5 с примерами использования и тестами для сравнения
характеристик предыдущей и новой версий:
http://edv-detail.narod.ru/AVM_SDK_v0-5.zip

=DeaD= писал(а):2EDV: А вообще - предлагаю объединить усилия :wink:


Ну что же, я не против. Такие сложные задачи должен решать коллектив разработчиков, а не один человек, так будет гораздо эффективнее. Как только у меня появятся первые наработки, я планирую выложить исходные тексты программы «Навигатор» (всё кроме AVM, эта технология будет представлена в виде SDK).
Аватара пользователя
EDV
 
Сообщения: 1016
Зарегистрирован: 06 июн 2007, 15:19
Откуда: Украина, Лисичанск
ФИО: Дмитрий Еремеев

Re: Как из дешевого китайского танчика сделать робоплатформу

Сообщение =DeaD= » 27 апр 2009, 10:17

EDV писал(а):Я предполагаю, что положение башни можно вычислить, анализируя локальное и глобальное движение в кадре, с помощью «Optical flow» алгоритма.

Это означает, что крутить башней можно только в положении "стоп" - так? Иначе движение и поворот башни смешается? И анализировать снимки только начальный и конечный при повороте будешь? И в целом - не слишком ли много сложностей лишних из-за отсутствия обратной связи?

EDV писал(а):Ну что же, я не против. Такие сложные задачи должен решать коллектив разработчиков, а не один человек, так будет гораздо эффективнее. Как только у меня появятся первые наработки, я планирую выложить исходные тексты программы «Навигатор» (всё кроме AVM, эта технология будет представлена в виде SDK).

Ну я не любитель закрытого кода, однако не думаю что станет проблемой.

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

Re: Как из дешевого китайского танчика сделать робоплатформу

Сообщение EDV » 27 апр 2009, 10:37

=DeaD= писал(а):Это означает, что крутить башней можно только в положении "стоп" - так? Иначе движение и поворот башни смешается? И анализировать снимки только начальный и конечный при повороте будешь? И в целом - не слишком ли много сложностей лишних из-за отсутствия обратной связи?


На мой взгляд, если человек будет способен определить положение башни, оперируя при этом только снимками с видеокамеры, значит и программу можно будет обучить (толи по анализу движения, толи по распознаванию внешней обстановки).

=DeaD= писал(а):Ну я не любитель закрытого кода, однако не думаю что станет проблемой.

А какие задачи ставятся в первую очередь?


Задача первая: Создать приложение «Навигатор» связать его (с помощью участка общей памяти) с приложением "Драйвер управления роботом". Подключить AVM SDK, организовать режимы: обучения, слежения, и преследования объекта, используя технологию AVM. Для начала, хотя бы это сделать, в качестве теста.

=DeaD= писал(а):Какая камера планируется к использованию?


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

Re: Как из дешевого китайского танчика сделать робоплатформу

Сообщение =DeaD= » 27 апр 2009, 10:40

EDV писал(а):На мой взгляд, если человек будет способен определить положение башни, оперируя при этом только снимками с видеокамеры, значит и программу можно будет обучить (толи по анализу движения, толи по распознаванию внешней обстановки).

Мне кажется, что человек не сможет это сделать :pardon:.

EDV писал(а):Задача первая: Создать приложение «Навигатор» связать его (с помощью участка общей памяти) с приложением "Драйвер управления роботом". Подключить AVM SDK, организовать режимы: обучения, слежения, и преследования объекта, используя технологию AVM. Для начала, хотя бы это сделать, в качестве теста.

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

EDV писал(а):Для начала закреплю на корпусе модели обычную web-камеру с длинным шнуром, ну а потом планирую купить видеокамеру с радиопередатчиком и приёмником и подключить её через TV тюнер.

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

Re: Как из дешевого китайского танчика сделать робоплатформу

Сообщение Vorral » 27 апр 2009, 10:47

>Мне кажется, что человек не сможет это сделать
Может и я это каждый день в игре(Crysis) доказываю. Там можно гонять на танке. Сколько уже техники противника погубил :D
>Мажут они в движении все :( поэтому преследование и Optical-flow кажутся малость нереальными...
Важен именно алгоритм. Волков бояться в лес не ходить.
Vorral
 
Сообщения: 873
Зарегистрирован: 11 сен 2008, 17:18
Откуда: Москва
прог. языки: Delphi
ФИО: Владислав

Re: Как из дешевого китайского танчика сделать робоплатформу

Сообщение EDV » 27 апр 2009, 10:53

=DeaD= писал(а):Мне кажется, что человек не сможет это сделать :pardon:.


Ну поглядим, это уже поэкспериментировать нужно, что бы однозначно дать ответ (возможно или нет).

=DeaD= писал(а):А зачем так сложно - с помощью общей памяти? производительность чтоли не поспевает?


Ну опять, таки, нужно будет поэкспериментировать, выяснить как будет удобнее (можно, конечно, и управление роботом в приложении «Навигатора» разместить).

=DeaD= писал(а):Мажут они в движении все :( поэтому преследование и Optical-flow кажутся малость нереальными...


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

Re: Как из дешевого китайского танчика сделать робоплатформу

Сообщение Vorral » 27 апр 2009, 11:02

Мне нравится постановка задачи, так и нужно, без всяких дальномеров шарповских и МК. Видео поток содержит в себе огромное кол-во данных, нужно просто научиться с ним работать.
Vorral
 
Сообщения: 873
Зарегистрирован: 11 сен 2008, 17:18
Откуда: Москва
прог. языки: Delphi
ФИО: Владислав

Re: Как из дешевого китайского танчика сделать робоплатформу

Сообщение =DeaD= » 27 апр 2009, 11:05

Vorral писал(а):>Мне кажется, что человек не сможет это сделать
Может и я это каждый день в игре(Crysis) доказываю. Там можно гонять на танке. Сколько уже техники противника погубил :D

Ересь какая :P ты на танке можешь резко повернуть башню ровно на 50°? Или сказать в любой момент на сколько ° у тебя она повернута? То-то же!

Vorral писал(а):>Мажут они в движении все :( поэтому преследование и Optical-flow кажутся малость нереальными...
Важен именно алгоритм. Волков бояться в лес не ходить.

Алгоритмы на чем-то обкатывать надо.

Добавлено спустя 49 секунд:
EDV писал(а):Ничего страшного, TV тюнер я уже приобрёл, и одна аналоговая цветная видеокамера у меня есть. Так что попробую их использовать на первый случай…

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

Re: Как из дешевого китайского танчика сделать робоплатформу

Сообщение EDV » 27 апр 2009, 11:07

Vorral писал(а):Мне нравится постановка задачи, так и нужно, без всяких дальномеров шарповских и МК. Видео поток содержит в себе огромное кол-во данных, нужно просто научиться с ним работать.


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

Re: Как из дешевого китайского танчика сделать робоплатформу

Сообщение =DeaD= » 27 апр 2009, 11:15

EDV писал(а):Вот и я о чём, водители вон машины водят и при этом полагаются только на зрение. Значит и компьютер, в принципе научить можно.

Да-да-да, у меня тоже есть ощущение, что некоторые водители опираются только на зрение, естественный интеллект у них при этом напрочь отсутствует :crazy:

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

Re: Как из дешевого китайского танчика сделать робоплатформу

Сообщение Vorral » 27 апр 2009, 11:16

>Значит и компьютер, в принципе научить можно.
+1. Хорошо хоть кто то здесь это понимает, а не ищет отмазки типа "Мажут они в движении все". Кстати это не правда :)). Не хотел сразу говорить, потому что знаю здешних обитателей, сразу кричать начнут "видео в студию". :)
>Да-да-да, у меня тоже есть ощущение, что некоторые водители опираются только на зрение, естественный интеллект у них при этом напрочь отсутствует :crazy:
Так в чём проблема?? Хочешь сказать, что повторить принципы ЕИ невозможно, они так не логичны??

P.S. Поясню, про вебкамеры(фирма chicony). Я с ними работал через Delphi, а пока не знаю как в нём записать видеопоток, хотя сам в этом очень заинтересован. Хочу снимать стерео, а для этого нужно объединить два ракурса в один кадр и передать кодеку. Насчёт "мажут", я специально быстро махал рукой и изображение отлично визуально выглядело, никаких тормозов/искажений/смещений которые свойственны другим вебкамерам.
Последний раз редактировалось Vorral 27 апр 2009, 11:29, всего редактировалось 1 раз.
Vorral
 
Сообщения: 873
Зарегистрирован: 11 сен 2008, 17:18
Откуда: Москва
прог. языки: Delphi
ФИО: Владислав

След.

Вернуться в Идеи

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 34