roboforum.ru

Технический форум по робототехнике.
Текущее время: 23 ноя 2024, 17:51

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 470 ]  На страницу Пред.  1 ... 23, 24, 25, 26, 27, 28, 29 ... 32  След.
Автор Сообщение
 Заголовок сообщения: Re: Робот DemoVisionRobot с техническим зрением
СообщениеДобавлено: 06 июн 2010, 13:31 
Не в сети
Аватара пользователя

Зарегистрирован: 08 мар 2010, 20:19
Сообщения: 22
Откуда: Херсон
прог. языки: C++, Delphi, ASM, Си
ФИО: Шульга Алексей
Я тут немного не в теме, но хочу сказать, смотря на видео, что с одной камерой ничего путного не получится.
Я бы заюзал две камеры и сделал управление по такому алгоритму:
1) Находим объект на обоих камерах
2)С помощью датчиков на манипуляторе определяем текущие сгибы суставов
3)На основе данных о суставах (длина и угол поворота) делаем микромодель мира относительно некой центральной точки(например, центра основания робо-руки)
4)Вычисляем положение объекта относительно камер
5)Привязываем положение камер к микромодели
6)Вычисляем абсолютное положение объекта относительнео центральной точки
7)Инверсной кинематикой высчитываем конечное состояние суставов
8)Делаем проверочку на предмет отсутсвия на "пути" преград и если все ок, то включаем серваки и поехали!


Кстати, по поводу трекинга шара если известно что он не будет слишком быстро двигаться, то советую применить боле "интелектуальный" алгоритм поиска- сначала искать ближе к тому месту, где он был раньше. Вот мысля пришла :D

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

_________________
Смотри в корень!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот DemoVisionRobot с техническим зрением
СообщениеДобавлено: 06 июн 2010, 14:13 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
Цитата:
что с одной камерой ничего путного не получится

"ты просто не умееш их готовить" :crazy: 8) пораскинь сам знаешь чем, над тем, что размер шара можно знать заранее.
нейронки это круто, ну раз уж бионикой интересуешься, то может уже сразу замахнёшся на реализацию тысячь слоёв для предобработки и всех микродвижений камерой? а если серьёзно - оооочень громадное количество вычислений в сети с отношениями многиеи ко многим. даже новые soho`вские 6ти ядерные phenom`ы (кста оч даже недорогие) легко загнутся, пытаясь столько обрабатывать. полезно уже задуматься над использованием opencl. у ати нормально с ним работать можно уже начиная с бюджетной 5000й серии (50-60$)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот DemoVisionRobot с техническим зрением
СообщениеДобавлено: 06 июн 2010, 15:05 
Не в сети
Аватара пользователя

Зарегистрирован: 04 дек 2008, 22:44
Сообщения: 4363
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович
У меня такое ощущение что распознает шарик оно замечательно - неверно определяет расстояние до него

_________________
if(!Operate) Read(pDatasheet);


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот DemoVisionRobot с техническим зрением
СообщениеДобавлено: 06 июн 2010, 19:49 
Не в сети
Аватара пользователя

Зарегистрирован: 08 мар 2010, 20:19
Сообщения: 22
Откуда: Херсон
прог. языки: C++, Delphi, ASM, Си
ФИО: Шульга Алексей
Цитата:
пораскинь сам знаешь чем, над тем, что размер шара можно знать заранее.

Ну, я думаю тут одним шариком не ограничуться- будут проблемы с сложными фигурами да и шарами разных размеров.
Цитата:
, ну раз уж бионикой интересуешься

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

Это слишком.

Кстати, интересный факт: Разрешение глаза человек- 125 МПикселей, но из самого глаза нервных волокон выходит намного меньше - около миллиона, то есть сетчатка "сжимает" информацию в 125 раз. Кстати, для того что бы возбудить палочку иногда достаточно 1-3 фотона. Это так, маленькое лирическое отступление =)


Кстати, скоро я в в журнале программист http://www.procoder.info/ (я являюсь его создателем(совместно с друзьями- программистами) и главным редактором) хочу опубликовать серию статей касающегося зрению и ИНС.

_________________
Смотри в корень!


Последний раз редактировалось Levsha128 06 июн 2010, 20:14, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот DemoVisionRobot с техническим зрением
СообщениеДобавлено: 06 июн 2010, 19:51 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2009, 10:44
Сообщения: 353
Откуда: Омск
Skype: artymen1
ФИО: Артем Константинович
Ну вот мою задачу вполне рационально было бы реализовывать на нейронной сети, но для меня это было слишком черезчур :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот DemoVisionRobot с техническим зрением
СообщениеДобавлено: 06 июн 2010, 21:22 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
Levsha128, я не про "слои" как таковые писал. :pardon: просто хз, как назвать всё это разнообразие из различных типов нейронов, групп, путей, полей, ...
Levsha128 писал(а):
Кстати, интересный факт: Разрешение глаза человек- 125 МПикселей, но из самого глаза нервных волокон выходит намного меньше - около миллиона, то есть сетчатка "сжимает" информацию в 125 раз.

:oops: а накука больше? в этом же весь смысл предобработки (для подобного вычислительные шейдеры имхо в самый раз). +микродвижения глаз, вообще много инфы добавляется


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот DemoVisionRobot с техническим зрением
СообщениеДобавлено: 07 июн 2010, 11:52 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2009, 10:44
Сообщения: 353
Откуда: Омск
Skype: artymen1
ФИО: Артем Константинович
Что твориться в голове у моего киборга, когда он творит продемонстрированное на видео ?
А вот что. Привожу часть кода с интеллектуального уровня управления:
Код:
/* Распознаем объект */
      ct_recognize();
      if (ct_object.found) {
/* Следим за объектом */
         /* Кинематика... */
         determine_object_coords(-(((float)(ct_object.centerX-2))-((float)(IMG_WIDTH))/2.0), -(((float)(ct_object.centerY))-((float)(IMG_HEIGHT))/2.0), ct_object.size);
         bool try_catch = object_in_capture_zone();
         update_servo_pos();
         determine_grip_position(distA, q1a, q2a, q3a, Xn, Yn, Zn);
         next_position(Xn, Yn, Zn, q1a, q2a, q3a, try_catch);

         uint8_t result = reverse_objective(distA, Xn, Yn, Zn, q1, q2, q3);
         switch (result) {
            case RO_OK:      // если объект достижим
               if (try_catch) {   // и если он находится в зоне захвата, то
                  if (grip_catch()) {   // дико кидаемся на него, цапаем, и если сцапали, то
                     reverse_objective(a3, X_BASKET, Y_BASKET, Z_BASKET+35.0, q1, q2, q3);   // вычисляем кинематику для движения на корзину
                     disable_movement_shaper();   // отключаем шейпер (ну а че медлить)
                     move_grip();   // молнией мчимся в корзину
                     init_ms_timer();   // заново инициализируем таймер, т.к. он юзался раньше шейпером
                     wait_ms(1000);      // путь до корзины большой, подождем :)
                     grip_release();      // отпускаем шарик... или палец бедолаги-оператора :D
                     return;         // ну вот и все, the end ;)
                  } else {      // ну а если не удалось сцапать, то
                     grip_release();      // разжимаем наши смертельные челюсти
                     disable_movement_shaper();   // отключаем шейпер
                     init_ms_timer();
                     wait_ms(400);      // ждем, пока массивные зубы вытащатся из окровавленной плоти пальца оператора
                     q2 = q2a;      // возвращаемся в засаду, откуда накинулись
                     q3 = q3a;
                     enable_movement_shaper();   // включаем шейпер, торопитсья некуда, продолжаем охоту....
                  }
               }
               break;
            case RO_TOOFAR:   // если объект далеко, то
               target_orientation(Xn, Yn, Zn, q1, q2, q3);   // тянемся, тянемся до него, авось удастся порвать цепи и вырваться %)
               break;
         }

         move_grip();   // че-то там выше навычисляли, двигаемся туды...
      }

:D


Последний раз редактировалось Vooon 07 июн 2010, 13:43, всего редактировалось 1 раз.
[code=cpp]!!!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот DemoVisionRobot с техническим зрением
СообщениеДобавлено: 07 июн 2010, 12:06 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
А отдельно отлаживал "где мячик?", "хватание" и "тянемся"?
Я так понимаю самое проблемное - это "где мячик"?

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот DemoVisionRobot с техническим зрением
СообщениеДобавлено: 07 июн 2010, 12:25 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2009, 10:44
Сообщения: 353
Откуда: Омск
Skype: artymen1
ФИО: Артем Константинович
Да, все верно. "хватание" и "тянемся" я сделал за несколько часов. "где мячик" я отдельно отлаживал последние два месяца, решение этой задачи представлено в самой первой функции приведенного кода :) Этот участок кода я написал за 10 мин., когда все низкоуровневые операции были отлажены по-отдельности.


Последний раз редактировалось artymen 07 июн 2010, 12:36, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот DemoVisionRobot с техническим зрением
СообщениеДобавлено: 07 июн 2010, 12:33 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Был ли проведен анализ причин погрешностей вычисления координат? Только неправильное выделение контура мячика на картинке?

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот DemoVisionRobot с техническим зрением
СообщениеДобавлено: 07 июн 2010, 12:37 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2009, 10:44
Сообщения: 353
Откуда: Омск
Skype: artymen1
ФИО: Артем Константинович
Никакого анализа не было проведено :D Могу лишь сказать, что причин погрешностей дохрена, оттого все так плохо и работает.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот DemoVisionRobot с техническим зрением
СообщениеДобавлено: 07 июн 2010, 12:49 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Вот ничего себе :)

А как же Divide-et-Empera?

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот DemoVisionRobot с техническим зрением
СообщениеДобавлено: 08 июн 2010, 16:27 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2009, 10:44
Сообщения: 353
Откуда: Омск
Skype: artymen1
ФИО: Артем Константинович
ну от разделения я бы не получил большой власти ни над одной из них в отдельности


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот DemoVisionRobot с техническим зрением
СообщениеДобавлено: 08 июн 2010, 16:54 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Наверное мне уже нет смысла детально описывать как можно было производить отладку и доводку? :)

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Робот DemoVisionRobot с техническим зрением
СообщениеДобавлено: 08 июн 2010, 17:36 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2009, 10:44
Сообщения: 353
Откуда: Омск
Skype: artymen1
ФИО: Артем Константинович
Почему же. Мне было бы интересно, т.к. я, обладая умением вникнуть в мельчайшие технические детали, понять суть вещей, принцип работы, совершенно не имею общих навыков работы над проектами, как то: методики программирования, рациональные подходы к решению задач, организация слаженной структуры программы, эффективная отладка и т.п.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 470 ]  На страницу Пред.  1 ... 23, 24, 25, 26, 27, 28, 29 ... 32  След.

Часовой пояс: UTC + 4 часа


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO