Охотник

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

Re: Охотник

Сообщение RootAdmin » 24 фев 2012, 03:42

Верно. "По мухам" довольно и 200 милливатт. А вот сведение нескол.ких лазеров с достаточной точностью - задача нетривиальная.
Дым, идущий из всех устройств в помещении предвещает появление электрика.
RootAdmin
 
Сообщения: 1725
Зарегистрирован: 07 авг 2010, 21:29
Откуда: КМВ
прог. языки: C
ФИО: Андрей

Re: Охотник

Сообщение Angel71 » 24 фев 2012, 12:28

в сравнении с задачей обнаружения мухи и непрерывное получение её точных координат эт всё мелочи жизни.
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18

Re: Охотник

Сообщение AndreiSk » 24 фев 2012, 12:48

Известно, что мухи слетаются на разные нишняки.
Можно поставить белый фон, снизу кусочек нишняка,
и следить где черная точка на белом фоне.
По ней и стрелять... 8)
Аватара пользователя
AndreiSk
 
Сообщения: 2639
Зарегистрирован: 23 апр 2009, 17:03
Откуда: Москва, Самара
прог. языки: C#

Re: Охотник

Сообщение =DeaD= » 24 фев 2012, 13:21

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

Re: Охотник

Сообщение elmot » 24 фев 2012, 13:48

лоу-тех. неприкольно.
Напомнило:
Одесса, рынок:
- Липучки от мух и от ревматизма! Покупаем липучки от мух и от ревматизма!
- Ну что Вы такое говорите? Разве ж они помогают от ревматизма?
- А от мух они помогают?
Аватара пользователя
elmot
 
Сообщения: 5691
Зарегистрирован: 10 ноя 2011, 12:02
Откуда: Turku, Finland
Skype: elmot73
прог. языки: Java и все-все=все
ФИО: Илья

Re: Охотник

Сообщение RootAdmin » 24 фев 2012, 14:50

Когда у меня было больше свободного времени - пытался сделать "лидар для бедных". Камера, в ее поле зрения точка неподвижного лазера, параллельного камере. Второй лазер - управляется двигателем. Задача - совместить две точки. По углу - определяем расстояние.
При размере базы 100мм точность определения угла резистором - никакая. :( Да и плоскость вращения уплывала - точки через пару десяток попыток разъезжались.
Дым, идущий из всех устройств в помещении предвещает появление электрика.
RootAdmin
 
Сообщения: 1725
Зарегистрирован: 07 авг 2010, 21:29
Откуда: КМВ
прог. языки: C
ФИО: Андрей

Re: Охотник

Сообщение Nesenin » 24 фев 2012, 17:00

Ага. Самое сложное это заставить машину видеть цели.

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

1)Яркость
Лазерная указка светит в потолок. освещение из окна. Прога находит самые светлые зоны. Цифрой уже обозначена найденная зона.
лазерная указка.jpg

2)Световое смещение
В моей руке игрушка. Я аккуратно шевелю пальцами (игрушкой).
На верхнем левом кадре оригинал изображения + рамка с цифрой - это найденная зона. Верхний правый это разница между 2мя кадрами. Нижний левый это работает фильтр бинарный. Нижний правый - фильтр скопления точек.
световое смещение.jpg

3)Выборка гистограммы.
Прога ищет пиксели входящие в область интересующих нас цветов.
цветовая маска.jpg


Пока возился с распознаванием все думал как легко делать определение цели самолетам. В воздухе ж нет объектов отражающих радиоволны кроме птиц. Отобрал по размерам и добавляй все что есть в область интересов. Опросил их системой радиосвязи свой\чужой, и готово!
С лазерным целеуказанием для бомб\ракет задача сводится к подбору длины волны лазера, что б не входил в спектр солнца (или освещение фонарей). На камеру соответственно вешаем фильтры всего кроме волны лазера. И почти готово (лазер светит определенным уникальным кодом чтоб ракета не спутала с чем другим).Хотя вот как конкретно мой целеуказатель таким сделать я еще не придумал.

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

Я тут заметил что мой 2ггц одноядерный AMD с архитектурой К8 надрывается и терпит крах в попытке лишь записать с вебки HD фильм 720p...
Вот поэтому на скриншотах выше настройки камеры 640х480 и никакими 30fps там и не пахнет. То есть вебка то выдает, а вот обработать сотни мегабайт данных (это ж каждый кадр 32bit RGB кодировка да через кучу фильтров прогнать просчитать)в секунду...эх

Чувствую тут впору кластер ставить с распределенными вычислениями в том числе на видеокартах :crazy:
А сколько денег надо чтоб этот вычислительный центр на колеса поставить да в огород выпустить?! Лучше наверно комп\камеры отдельно турели\машинки отдельно.

Ладно. Думаю простенькую автоматизированную турель я еще осилю. А с мобильными платформами пока буду играть на РУ. Как наиграюсь буду дальше решать какие игрушки получат финансирование, а какие нет))

К слову с китая мне едут дополнительный приемник 2.4ггц, аккумуляторы,сервоприводы, зарядник, лазер, система видео трансляции (аналоговый естесно. в комп только через плату видеозахвата можно будет завести. как в прогу картинки передать я пока хз) и прочие плюшки. приедут не скоро.
Аватара пользователя
Nesenin
 
Сообщения: 1341
Зарегистрирован: 26 янв 2012, 03:59
Откуда: Казань
прог. языки: LabVIEW
ФИО: Никита Есенин

Re: Охотник

Сообщение AndreiSk » 24 фев 2012, 17:44

Как с пикселями работаешь?
У меня 30fps 640x480 было без проблем.
Аватара пользователя
AndreiSk
 
Сообщения: 2639
Зарегистрирован: 23 апр 2009, 17:03
Откуда: Москва, Самара
прог. языки: C#

Re: Охотник

Сообщение Angel71 » 25 фев 2012, 05:06

Nesenin, k8 это не фонтан, спору нет, но основная проблема не в нём. первое что бросается в глаза это ргб32. :) 32 бита явно слишком + ргб иногда далеко не лучший выбор + у вас на скринах софтина подозрительная :roll: софтовое перемаштабирование и то, как именно делаете зават видео и вывод на экран может снижать фпс в разы. запустите профилировщик и ищите в каких местах у вас наибольшие тормоза, там и оптимизируйте. с шуткой о кластерах и куче видюшек вы слегка спешите. тормозная машина как раз наоборот может помогать писать более оптимизированный код ( :D "7 раз отмерь, один отрежь"), а самой копеечной видюшки (в идеале с опенцл, директкомпут или кудой, но и другими шейдерами тож вполне можно обойтись) легко хватит на обработку данных с нескольких камер для подобных алгоритмов.
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18

Re: Охотник

Сообщение Nesenin » 25 фев 2012, 07:54

Angel71 писал(а): + у вас на скринах софтина подозрительная :roll:

:ROFL: есть немного. сейчас расскажу. это NI LabVIEW 8.6 + vision 8.6 (см. http://www.ni.com/labview/ и http://www.ni.com/vision/ )
Со времен учебы в универе я очень к ней пристрастился, и вот почему. LabView это графическая среда разработки программ, в которой каждый графический элемент ничто иное как скомпилированный код (написанный к слову на С, либо подключенный DLL и другие плюшки). Очень забавная штука. Разработана специально для таких как я - людей не очень дружащих с программированием (текстовое представление программ мой мозг терпеть не может. написание кода для микроконтроллеров для меня сущий ад) , но имеющих желание что-то быстро наваять. И что характерно создание программ больше походит на сборку схемы. В наборе, как водится, есть куча готовых скомпилированных прог. При желании можно допилить набор, создать свою библиотеку и пр. И даже есть возможность скрыть нафиг внутреннее устройство своей новой плюшки для LabVIEW. Чем разработчики активно пользуются.
Это к вопросу о работе с пикселями. А вот хз че и как. Я просто воспользовался удобной прогой-помошником из модуля Vission. Составил схему обработки, нажал волшебную кнопку "сгенерировать код" и в окошке появились блоки. После объединения в нужную схему получается что-то вроде такого
пример кода.png

проводники это указатель куда какие данные передать. блоки,соответственно код, принимающий данные, и выдающий результат обработки.
Такой подход в программировании удобен мне, некоторым работником науки и некоторым инженерам. Применение находит в задачах построения автоматизированных научных установок, исследовательских инженерных систем. Достаточно упомянуть что большой адронный коллайдер работает под управлением софта NI.
Как можно догадаться, робототехника как и машинное зрение тоже относится к научным интересам. И тут к labVIEW уже понаделали расширений под это дело. Что касается модуля робототехники, когда я его смотрел, не нашел для себя ничего полезного (на тот момент).
А вот компания LEGO пошла дальше и заказала NI разработку адаптированного для роботов LEGO языка программирования. ага. к слову NI опять же сделали библиотеки для программирования их из под LabVIEW.

вернемся к нашим "баранам" то есть к производительности. тут есть куча способов повысить ее. Я пока просто раскапывал свои наработки из файлопомойника и ничего еще не менял.
Начнем с того что ресурсы проца поедал антивирус, 3G модем и другие процессы. Код прог оптимизировать это само собой. Определиться с настройками данных тоже еще предстоит. Может 30 fps и 32bit не нужны. Без них успеем прицелиться в спящего в кресле кота\кушающую семечки мышу\ присевшую на мед муху. Потом как водится в LabVIEW есть 2 пути запуска программ:
1) из среды разработки (как и было)
2) создание исполняемого файла exe
В старых версиях, насколько я помню, 2 вариант иногда дает выигрыш в 2 с лишним раза. Новые версии среды (уже есть 10 11)само собой имеют улучшения, включая все прелести 64 битных вычислений, распараллеливание вычислений и хз что еще.
Ну и еще...я давно думал под каким благовидным предлогом купить новый комп :D
Оказывается есть неплохой вариант сделать высокоэффективный (производительность на ват) комп с miniITX платой (на борту wifi стандарта вплоть до n) процессором i3 2100T (уменьшенная частота напряжение). с потреблением в простое 10вт :roll: или проц покруче, а лишнюю мощь, опять же, искусственно можно ограничить под желаемое потребление. Такой штуке с ноутовским аккумулятором будет по плечу и данные с kinect обрабатывать (3D карта глубины)и колесить по огороду в поиске колорадских жуков. Опять же современные возможности на ходу понижать потребление энергии дают надежду на реализацию фантазий.
(я как-то встречал на youtube видео и куда более крутых роботов)

PS тест водяной пушки. Насос автомобильный от омывателя стекол. Форсунка от бытового распылителя (для растений и прочего). Питания от 7.2В (это как 2 банки li-po аккумулятора)
SAM_0511.JPG

на 2 метра брызжет как нефиг делать. При желании, можно поднять питание, поменять форсунку.
Последний раз редактировалось Nesenin 26 фев 2012, 00:58, всего редактировалось 1 раз.
Аватара пользователя
Nesenin
 
Сообщения: 1341
Зарегистрирован: 26 янв 2012, 03:59
Откуда: Казань
прог. языки: LabVIEW
ФИО: Никита Есенин

Re: Охотник

Сообщение Angel71 » 25 фев 2012, 09:34

что-то вы совсем путаете мягкое с тёплым. при чём тут потребление в простое и энергоэффективность? тем более в простое проц далеко не самая прожорливая часть компа. с таким же успехом можно взять унылый интел атом и тешить себя наивными надеждами, что у него будет энергоэффективность выше. не морочьте себе голову этим недопроцессором и соберите нормальный комп. если вам нужна энергоэффективность, малые размеры и ваш робот будет недалеко от основного компа, то возьмите роутер и не мучайтесь.
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18

Re: Охотник

Сообщение Nesenin » 25 фев 2012, 15:52

Angel71,да нет же. ничего я не путаю. вариант с удаленным размещением мозгов утыкается в проблему передачи огромного числа данных. роутер с этим имеет большие проблемы 320х240, 10fps. Уж лучше система FPV с 420 линиями по горизонтали или 520.
Вариант с размещением мозгов на борту, требует достаточной производительности в режиме активной охоты (робот может целый день ждать когда появится кот и только 30сек использовать всю производительность для охоты),а в режиме ожидания цели не плохо бы иметь возможность входить в "спячку" с пониженным энергопотреблением и просыпаться по датчику движения.
Отсюда вытекают несколько критериев подбора мозгов:
1)достаточная производительность в режиме активной охоты
2)способность сильно понижать энергопотребление в режиме ожидания.
3)энергоэффективность во всех режимах.
энергоэффективность напрямую влияет на возможность создания достаточно умного мобильного робота. (аналогия с двигателем для вертолета. есть зависимость между развиваемой мощью весом и запасом топлива. недостаточный уровень чего либо превращает вертолет в наземный вентилятор) ПК который имеет в себе графическое ядро в ЦП, SSD накопитель и схемы питания с высоким КПД утыкается по потреблению в ЦП. Тем более в режиме активной охоты. что до выбора железа. вот интересная статья На счету — каждый ватт
intel Atom нифига не энергоэффективный.
Аватара пользователя
Nesenin
 
Сообщения: 1341
Зарегистрирован: 26 янв 2012, 03:59
Откуда: Казань
прог. языки: LabVIEW
ФИО: Никита Есенин

Re: Охотник

Сообщение Angel71 » 25 фев 2012, 20:17

роутер хорошо пробрасывает поток, сжимать с громадными разрешениями хотя бы в mjpeg на хилых процах без встрокного кодека никто и не обещал. роутеры вполне способны при 320*240 выдавать около 25fps при mjpeg сжатии. +есть проекты драйверов для openwrt и dd-wrt под различные брелоки, захватывающие и аппаратно сжимающие видео с cctv камер. первые попытки были не шибко удачными, но время то идёт. есть желание, ищите, может сейчас ситуация намного лучше.
все эти ваши пунктики про потребление как раз ставят жирные крестики на 2100t.
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18

Re: Охотник

Сообщение Nesenin » 25 фев 2012, 21:33

Angel71, я ориентируюсь на опыт AndreiSk
Вот из его темы forum35/topic8555.html
Внутри бортовой ПК (mini-itx плата под Core2Duo 2.66ГГц, 4Гб RAM, 30Гб SSD, wifi)
и камера Surveyor, соединенная по USB. Windows XP x64 как RTOS
Питается от LiPo 4400mAh (3S1P), где то на два часа.

и
внутри Zotac H55 ITX, Core i5 660, 3.33ГГц, 4Гб RAM, HDD, WiFi шел в комплекте
M3-ATX как стабилизатор от LiPo 3S2P 10Ач, хватает ее на 3 часа где-то
.

Я ведь рассчитываю постепенно наращивать возможности роботов. Если изначально выбрать ПК, то со временем можно сделать такое:


оба используют платформу на intel Atom и кучу открытого софта(весь под x86 архитектуру), на который разработчики любезно предоставили ссылки. Почему бы не использовать наработки сообщества?

как сделать то же самое на роутере я не знаю, поэтому использовать не буду.
Аватара пользователя
Nesenin
 
Сообщения: 1341
Зарегистрирован: 26 янв 2012, 03:59
Откуда: Казань
прог. языки: LabVIEW
ФИО: Никита Есенин

Re: Охотник

Сообщение AndreiSk » 25 фев 2012, 21:44

Кстати, несколько особняком стоят платы для mobile cpu.
На мой взгляд, это было самым оптимальным решением сейчас.
http://forum.ixbt.com/topic.cgi?id=9:64561-18#594
Комп до сих пор жив, используется как очень тихий системничек.
Пока не дошли руки проапгрейдить робота.

Атом, как правильно заметил Angel71, может быть не сильно
хорошим вариантом для обработки видео.
Аватара пользователя
AndreiSk
 
Сообщения: 2639
Зарегистрирован: 23 апр 2009, 17:03
Откуда: Москва, Самара
прог. языки: C#

Пред.След.

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

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

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