[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 379: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4678: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3815)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4680: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3815)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4681: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3815)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4682: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3815)
virt2real.ru • Просмотр темы - Делаю робота "собаку" по кличке Гафк




 

Управляем чем угодно откуда угодно

Делаю робота "собаку" по кличке Гафк

Кто что сделал и кто что собирается делать

Делаю робота "собаку" по кличке Гафк

Сообщение andrewion » 12 сен 2013, 14:57

Пока ждал виртурилку, полтора месяца назад, у меня зародилась идея, сделать робота "собаку". Ну правда не совсем "собаку" в прямом смысле слова, но в некоторой степени что-то похожее на неё, в плане поведения. :D
Проект является чисто любительским, что называется "для души".
Сам проект назвал Гафк (Gafk).

Из чего состоит Гафк:
1. Поворотная голова
2. Мозг
3. Шасси


Поворотная голова
На данный момент это обычная веб-камера, которая приводится в движение при помощи 3-х сервоприводов.
Сервоприводы работают от Арудины. Сама Ардуина управляется прогой (Мозгом) от компа, через виртуальный COM-порт.


Мозг
Это прога на компе, написана она C++ и использует OpenCV для машинного зрения, т.е. того что видит Гафк со соей башки :D
Прога общается с Ардуиной и посылает ей команды по управлению сервоприводами.

Общий алгоритм работы головы Гафка таков:
1. Пробегаемся веб-камерой по горизонтали и вертикали, в поисках профиля лица
2. Если профиль лица найден, определяем в нём само лицо в фронтальном положении + запоминаем текущее положение веб-камеры в трэкинг памяти
3. Если лицо в фронтальном положении найдено, подправляем положение веб-камеры таким образом, чтобы лицо в фронтальном положении было точно по середине кадра.
4. Если лицо в фронтальном положении найдено, в нём ищем глаза
5. Если глаза найдены (а их должно быть как минимум два), то вычисляем по глазам линию отклонения от горизонтали кадра и поворачиваем веб-камеру, так, чтобы это отклонение было минимальным.
6. Держим в фокусе найденный профиль лица и стараемся его не потерять.
7. Если найденный профиль лица потеряли, то пытаемся найти профиль лица по трэкинг памяти
8. Если найденный профиль лица потеряли. а трэкинг память пуста, то возвращаемся к П.1


Шасси
Тут у меня пока точной определённости нету, ещё не знаю как Гафк будет перемещаться. У g0l'а "подсмотрел" пару вариантов:
и .
Может забью на "колёсные" варианты перемещения и сделаю что нибудь гексаподоподобное :D
Пока думаю над этими вариантами.


Что дальше?
В целом задач по проекту выше крыши. Вот часть из них:
0. Отказаться от Ардуины и веб-камеры, в пользу виртурилки (уж тут она рулит! :D )
1. Приделать гироскоп 3х осевой и акселерометр 3х осевой - для лучшей координации в просранстве
2. Приделать мозгу работу с оптическими потоками
3. На основе оптического потока, попробовать реализовать 3D видение пространства, в дальнейшем понадобится для SLAM
4. Если на основе оптического потока сделать 3D видение пространства не получится, то буду маяться со стереозрением
5. Перенести часть работы с машинный зрением с CPU на GPU. уж OpenCV это позволяет
6. Подрубить СУБД для "памяти" Мозга - что да и как, пока сам не знаю :D
7. Либо самом реализовать, либо подрубить бота для ведения диалогов, причём в устной форме - спасибо Гуглу за такую возможность :D
8. Приделать к голове "уши" - для этого будет достаточно 2-х чувствительных микрофонов типа Шорох

В общем работы по проекту Гафк много, но по маленьку делаю :)

Кому интересно, как на данный момент работает "Голова" + "Мозг", прошу глянуть видео:
Последний раз редактировалось andrewion 16 сен 2013, 11:43, всего редактировалось 1 раз.
Аватара пользователя
andrewion
 
Сообщения: 150
Зарегистрирован: 03 сен 2013, 21:46

Re: Делаю робота "собаку" по кличке Гафк

Сообщение realizator » 13 сен 2013, 00:03

Ух-х-х... Сильно задумано, и много!
Одно могу сказать - надо просто брать и делать, начиная с простейших вещей.
Если заранее продумать 10 шагов эволюции, то после первого второй и третий могут быть совсем другими. Первые-же эксперименты внесут сильные корректировки в задумки.
В общем Гафка в студию! :-)
Аватара пользователя
realizator
virt2real team
 
Сообщения: 653
Зарегистрирован: 17 фев 2012, 23:18

Re: Делаю робота "собаку" по кличке Гафк

Сообщение andrewion » 13 сен 2013, 13:26

Аватара пользователя
andrewion
 
Сообщения: 150
Зарегистрирован: 03 сен 2013, 21:46

Re: Делаю робота "собаку" по кличке Гафк

Сообщение dimitrimus » 12 окт 2013, 23:46

у меня вот, кстати, похожая задача - нужно на компе получать видео с виртурилки и передавать на обработку в opencv. Если у Вас что-то похожее уже получилось сделать - не поделитесь примером, как и что надо настроить на виртурилке и на компе, чтобы opencv "съел" этот видеопоток?
dimitrimus
 
Сообщения: 17
Зарегистрирован: 11 сен 2013, 14:35

Re: Делаю робота "собаку" по кличке Гафк

Сообщение andrewion » 13 окт 2013, 23:00

Аватара пользователя
andrewion
 
Сообщения: 150
Зарегистрирован: 03 сен 2013, 21:46

Re: Делаю робота "собаку" по кличке Гафк

Сообщение dimitrimus » 15 окт 2013, 22:37

dimitrimus
 
Сообщения: 17
Зарегистрирован: 11 сен 2013, 14:35

Re: Делаю робота "собаку" по кличке Гафк

Сообщение andrewion » 21 ноя 2013, 15:41

Давненько не писал про свой проект.
Проект потихоньку движется.
Из проделанного на данный момент:
1. Подготовка среды разработки для в2р (), при помощи которой написал сокет-сервер для управления в2р
2. Пытался подключить сервоприводы шеи робота на Attiny45, но ничего не вышло толкового (). Пришлось вешать сервы на ардуину. Само ардуину подключил к в2р как I2C slave.
3. На MSVC версии 11 написал сокет-клиента для управлением роботом.
4. Подрубил IMU сенсоры () + прикрутил AHRS алгоритм, для стабилизации камеры башки робота.
5. Реализовал способ применения gtreamer в сокет-клиенте, а точнее вывел кадры видеопотока на OpenCV ()
6. Подрубил звук ()
7. Для сборки каркаса робота, прикупил несколько детских металлических конструкторов (). Кстати, конструкторы взял прямо со клада производителя, получилось в 2 раза дешевле, чем на озоне :)

Сейчас начал баловаться с нейросетями для OpenCV, с целью распознавания объектов окружающего мира, в первую очередь лица людей, который робот видит.
В качестве способа передвижения (шасси), решил приделать Гафку четыре лапы, чтобы получился с него квадропод -
Для лап, сейчас жду с ebay сервы - в середине декабря должны прийти.

Вот как это сейчас всё выглядит:
Аватара пользователя
andrewion
 
Сообщения: 150
Зарегистрирован: 03 сен 2013, 21:46


Вернуться в Проекты на базе Виртурилки

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

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

cron