Автономный квадрокоптер

Ваши интересы, хобби.
adiagnost
Автор темы
Сообщения: 873
Зарегистрирован: 04 май 2015, 15:46
Пол: мужской
Благодарил (а): 2 раза
Поблагодарили: 189 раз

Автономный квадрокоптер

#61

Непрочитанное сообщение adiagnost » 04 мар 2019, 07:25

Ещё используем минитепловизор (матрица 8х8). Баночка с водой имитирует разогретый движок :) .
На двух картинках - вид с камеры (чередующийся для наладки с предобработанным цветовым фильтром на желтую метку кадром) и вид с тепловизора. Дополнительный фактор для распознавания.
Кстати, для интерполяции в более-менее "нормальную" тепловую картинку (а не 8х8) пришлось применить фильтр Ланцоша...
https://www.youtube.com/watch?v=kUKDmtVScmk

Завтра состоится вебинар (бесплатный) для школьников по Ардуино в 18:00, кому интересно - пусть дети посмотрят:
http://mega-talant.com/school/webinar/vebinar-arduino-dlya-nachinayuschih-volshebnikov-vvedenie-v-arduino

adiagnost
Автор темы
Сообщения: 873
Зарегистрирован: 04 май 2015, 15:46
Пол: мужской
Благодарил (а): 2 раза
Поблагодарили: 189 раз

Автономный квадрокоптер

#62

Непрочитанное сообщение adiagnost » 05 сен 2019, 06:15

Осенью состоится региональный отбор ежегодного конкурса-фестиваля Робофест. Пока сроки не определены, но, думаю, как и в прошлые года - в ноябре. В Москве (отобранные на региональном уровне) - в марте 2020.
Сейчас приобрели новую карбоновую раму, надо все срочно перекидывать на неё и отлаживаться.
Организаторы посоветовали принять участие в двух номинациях - "Инженерный проект" и "AeroNet".
И, так как условия этих конкурсов сильно ограничены (например, полет не выше 2 м по четко установленным правилам, и т.д.), примем ещё участие в показательных выступлениях вне конкурса - это для тех, у кого аппараты ещё много чего умеют... :)
У нас примерная программа показательных - 1. Целеописание и целеуказание на старте (будет указано в каком районе, что искать и что делать, режим подлета и поиска).
2. Автономный (неуправляемый) полет к району поиска в заданном режиме.
3. Поиск целей (у нас будет несколько моделей танков, так как разрешенная высота для показательных - не более 3 м, придется "масштабировать", да и реальные танки мы, пожалуй, не найдем :) а также масштабные фигурки "танкистов") Будут заданы также параметры целей - кроме того, что "танк", ещё и его температура, а на одном из танков разведем небольшой "костерчик" из свечек.
4. Выполнение задачи - спозиционироваться над целью и произвести задействование первого отцепа - короче, сбросить "куль" с водой и потушить "пожар". После этого, среди разбросанных рядом с танком фигурок найти "живого" танкиста (с температурой выше окружающей среды - опять, кроме распознавания образов и объектов нейросетью, задействуется тепловизор), спозиционироваться и задействовать второе устройство - минилебедку с мощным магнитом на конце (у "танкиста пояс металлический :) "). Поднять на борт (спасти наконец-то, рядового Райена), улететь к точке старта.. 8) ...

adiagnost
Автор темы
Сообщения: 873
Зарегистрирован: 04 май 2015, 15:46
Пол: мужской
Благодарил (а): 2 раза
Поблагодарили: 189 раз

Автономный квадрокоптер

#63

Непрочитанное сообщение adiagnost » 05 сен 2019, 07:29

Устройство 1 (отцеп) уже есть и интегрирован, лебедка на базе сервопривода есть, но пока не интегрирована.
Возможно, на региональном уровне достаточно обойтись без "спасения рядового" :) (если не успеем).
А в Москве покажем "по-полной"...

Аватара пользователя
Дионис
Сообщения: 30692
Зарегистрирован: 15 сен 2013, 16:04
Пол: мужской
Езжу на: двустоповый опорно-двигательный аппарат
Благодарил (а): 14334 раза
Поблагодарили: 2449 раз
Контактная информация:

Автономный квадрокоптер

#64

Непрочитанное сообщение Дионис » 05 сен 2019, 22:47

adiagnost писал(а):Источник цитаты А в Москве покажем "по-полной"...

Настрой у Вас прямо таки боевой, на победу. :good: Молодцы.
У меня нет принципов — приспособляемость ко всему вот мой принцип.
У меня нет закона — самосохранение мой закон.
У меня нет ни жизни, ни смерти — вечность для меня жизнь и смерть.

adiagnost
Автор темы
Сообщения: 873
Зарегистрирован: 04 май 2015, 15:46
Пол: мужской
Благодарил (а): 2 раза
Поблагодарили: 189 раз

Автономный квадрокоптер

#65

Непрочитанное сообщение adiagnost » 13 дек 2019, 10:03

Региональный отбор состоится в январе 2020 - http://russianrobotics.ru/activities/otkrytyy-regionalnyy-robototekhnicheskiy-festival-robofest-rostov-na-donu-5307/
Кстати, об ИИ – увлеклись тут верхним уровнем (в плане встраиваемых бортовых систем с малым потреблением). Да так, что приобрели помимо RPi3 (Raspberry Pi 3 - миникомп) + NSC (Neural Computer Stick – аппаратный ускоритель нейросетей), ещё и новые RPi4 + NCS2, связка которых производительнее на порядок(до 1 ТФлопс против 100 ГФлопс при том же потреблении). А также на подходе Jetson Nano от Nvidia с граф. камнем на 128 ядер CUDA с заявленными 472 ГФлопса и китайский NCS с заявленными аж 4 Tops (правда, неясно, что китайцы вкладывают в терра-опсы - в смысле какая точность имеется ввиду). В марте 2020 начнутся массовые продажи ещё одной интересной штуки от нвидиа – более дешевой разновидности их легендарного Ксавьера адаптированной для встраиваемых систем – Jetson Xavier NX. Там уже 384 ядра для вычислений на GPGPU, 21 Tops (причем, Ops-ы «честные» - INT8, в чем сильно сомневаюсь в случае с китайским ускорителем). Но, и цена ксавьера соответствующая - $399 (в отличие от решений миникомп + ускоритель, чья цена колеблется $100-150), и пока можно лишь оформить уведомление о начале продаж на сайте производителя, что мы и сделали.
Это «в развитие» - для «роя» дронов. Итого – будет 5 встраиваемых систем с нейросетями – 3 на ускорителях (2 Intel и 1 китайский), 2 от nVidia с вычислениями на GPU CUDA (Nano и Xavier NX). Из них один из мощных вариантов на 1,5 ТФлопс – Rpi4 + NCS2 связаны гигабитным eth с Jetson Nano. Это все находится на борту 1 дрона. Система - 2 камеры, стереозрение, ИИ. Целевая скорость обработки кадров (ну и всего программного цикла) – 15-20 fps (кадров в секунду) по Object Detection на кадрах от 400 х 400.
Далее – дрон №2 - Orange Pi + NCS связаны с RPi3+ NCS1 по 100 Мбит-ному eth. Производительность сложно указать из-за китайского девайса, так что – по факту (думаю, не меньше 1 ТФлопс). 2 камеры, стереозрение, ИИ. Целевая скорость обработки кадров – та же.
Дрон №3 – Jetson Xavier NX – 5-7 ТФлопс. Ксавьер позволяет те же кадры (выше) обрабатывать со скоростью до 250-300 fps, поддерживает до 6 камер и столько же нейросетей, соответственно, даже для 6 камер скорость обработки будет значительно выше 20 fps.
Пока же у нас в наличии – Rpi3, значительно более мощная RPi4, NCS1, значительно более мощный NCS2, «кучка» всяких Orange Pi, где-то на подходи от Али Jetson Nano и китайский NCS. Пока тестим что есть, учимся обучать сети, копим денюжку на Jetson Xavier NX 8) .

adiagnost
Автор темы
Сообщения: 873
Зарегистрирован: 04 май 2015, 15:46
Пол: мужской
Благодарил (а): 2 раза
Поблагодарили: 189 раз

Автономный квадрокоптер

#66

Непрочитанное сообщение adiagnost » 13 дек 2019, 11:49

Вот обзорная статейка про джетсон нано:
https://cnews.ru/news/top/2019-03-19_nvidia_vypustila_moshchnyj_iikompyuter_za_99_razmerom
Примечательна тем, что имеется упоминание о корале - ускорителе от гугл. Там тже заявляют вроде неплохо - 0,8 ТФлопс.
Однако сравнительные тесты Корал + Гугловский миникомп, Ускоритель Интел + Распберри и Джетсон Нано по работе нейросетей показывают превосходство в разы решения от Нвидиа над "оппонентами". Хотя "чисто" по заявленным характеристикам 0,5 ТФлопс у нвидиа, 0,8 - у гугл, 1,0 - распи+интел.
Пока не понимаю до конца, почему так... :shock:
Получим Нано - обязательно проведем различные сравнительные тесты...

adiagnost
Автор темы
Сообщения: 873
Зарегистрирован: 04 май 2015, 15:46
Пол: мужской
Благодарил (а): 2 раза
Поблагодарили: 189 раз

Автономный квадрокоптер

#67

Непрочитанное сообщение adiagnost » 14 дек 2019, 08:17

Справедливости ради, надо отметить и отечественного производителя - НПО Модуль.
У них тоже есть разработки, в том числе, нейронных процессоров, на которые потрачено (государственных, естественно) 2 млрд. руб. Тоже с большим пафосом в свое время это обставлялось - "Роснано, ВТБ, Ростех, все дела"...
Вроде, на первый взгляд, все "выглядит вполне пристойно" - 512 ГФлопс по Float32 (128 по двойной точности), поддержка линуксоидных ОС и известных нейропакетов..
Но есть и вопросы -
- потребление - только самого процессора - 35 Вт (а ещё и обвязка, думаю, в итоге готовое решение никак не менее 50 Вт, а это уже сомнительно для встраиваемых систем);
- на вопросы отвечают крайне неохотно, кое-как удалось выяснить стоимость процессора - около 4,5 тыр. (+ обвязка, с работой, думаю, ещё раза в два больше);
- сомнительна заявленная поддержка ОС и пакетов в полной мере, ни на один вопрос об этом НИКАКОГО ответа не получено;
- производство не локализовано, а находится... в Тайване! :D
- как говорится - "делайте выводы сами" - бабла-то нехило потрачено.. :)
Процессор:
https://www.module.ru/catalog/micro/sbis_1879vm8ya/
Модуль на его базе:
https://www.module.ru/catalog/resources/module_ms1275/

adiagnost
Автор темы
Сообщения: 873
Зарегистрирован: 04 май 2015, 15:46
Пол: мужской
Благодарил (а): 2 раза
Поблагодарили: 189 раз

Автономный квадрокоптер

#68

Непрочитанное сообщение adiagnost » 14 дек 2019, 20:20

Что-то пока с RPi4 и NCS2 не получается скорость более 5 fps. Правда, это на разрешении 512х512. Можно, в принципе, и до 300х300. Скорость обработки почти линейно увеличится раза в 3. Но все равно пока не ясно, в чем дело. Должно быть минимум, раза в 2 поболя..
На выставке задача будет поработать с автомобилями - определение координат, цвета.
В этом плане проблем нет:
out2.jpg

adiagnost
Автор темы
Сообщения: 873
Зарегистрирован: 04 май 2015, 15:46
Пол: мужской
Благодарил (а): 2 раза
Поблагодарили: 189 раз

Автономный квадрокоптер

#69

Непрочитанное сообщение adiagnost » 14 дек 2019, 20:49

или вот (на одиночном кадре есть неотмеченные авто):
out.jpg

adiagnost
Автор темы
Сообщения: 873
Зарегистрирован: 04 май 2015, 15:46
Пол: мужской
Благодарил (а): 2 раза
Поблагодарили: 189 раз

Автономный квадрокоптер

#70

Непрочитанное сообщение adiagnost » 14 дек 2019, 21:16

надо будет подучить сетку - с перекрытием переднего плана авто не определилось! :)
out4.jpg

adiagnost
Автор темы
Сообщения: 873
Зарегистрирован: 04 май 2015, 15:46
Пол: мужской
Благодарил (а): 2 раза
Поблагодарили: 189 раз

Автономный квадрокоптер

#71

Непрочитанное сообщение adiagnost » 14 дек 2019, 21:51

проверим на "массовость" - сеть позволяет контролировать одновременно до 200 объектов в кадре.
"Смешались в кучу кони, люди..." :D
out5.jpg

adiagnost
Автор темы
Сообщения: 873
Зарегистрирован: 04 май 2015, 15:46
Пол: мужской
Благодарил (а): 2 раза
Поблагодарили: 189 раз

Автономный квадрокоптер

#72

Непрочитанное сообщение adiagnost » 15 дек 2019, 10:02

Большой проблемой является нехватка обучающего материала для нейросетей. Вот, допустим, у нас сейчас используется "переобученная" с MobileNetV2 сетка. Чтобы её "доучить" до вида с высоты (под углами от 10 до 80 град., ну, то есть, примерно как будет видеть камера дрона), необходимо либо постоянно летать, причем над характерными объектами и снимать это все дело для формирования данных к обучению, либо "дергать" с нета картинки и видео. Постоянно летать и снимать - не вариант, - можно месяцами только этим заниматься, да и то - без гарантии приемлемой ошибочности. Поэтому - пока второй вариант. Но тоже - сильно "не быстрый" :)
Кстати, вот как выглядят RPi3 и RPi4 с подключенными ускорителями:
IMG_20191215_093602.jpg

У 4-ой малины пришлось ставить радиатор раз в 8 более того, что на 3-ей, все равно разогревается нехило до 70-75 град. при 100% загрузке, но хоть в троттлинг не впадает и ладно.. :)
Возвращаясь к обучению - есть спец. ПО, которое трансформирует 1 фото в десятки (а то и сотни) "искаженных" именно для обучения НС.
Интересная ситуация получилась - если один объект перекрывает другой по классификации объект, то задний - не распознается (чего нет в случае перекрытия однотипными объектами).
Это видно, например, на одном из предыдущих фото на автовыставке, где "person" перекрывает "vehicle".
А на этом - наоборот - авто перекрыл человека, и он не распознался (в нижней части фото):
out5.jpg


Отправлено спустя 57 минут 45 секунд:
Рассуждая о нейросетях, можно сказать, что никакого "чуда", как многим хотелось бы в это верить, в них нет :) .
Сильно упрощенно, можно представить нейросети некими фильтрами по определенным условиям.
Ну, такое маленькое "полу- чудо", это то, что эти самые условия современные нейросети формируют сами автоматически в процессе обучения (и в этом -то и заключается основная заслуга разработчиков - в создании такой программной конструкции "автоматической методики обучения"). То есть, нам надо только нагружать данными и говорить, что на всех снимках условные "котики". Сеть сама разгребет на признаки, выявит между ними корреляции и запомнит их в виде ядер и параметров для каждого уровня абстракции. Качество этой проработки будет зависеть от количства и разнотипности обучающих данных, характера самой задачи, топологии сети, количества ядер (фильтров) и параметров и проч. Настолько многомерные данные, что задача является нетривиальной, как минимум.
Надо сказать, что до настоящего момента нет никакой общей мат. модели нейронных сетей. Какие-то частности, безусловно, описаны, но вот в общем - даже спорят на уровне маститых специалиство - возможно ли это в принципе.
Вот и получается, что сети строятся в основном методом "научного тыка" под более-менее конкретную задачу - "а давай-ка тут свяжем эти слои обратной связью, - вдруг лучше будет?.." Связали - лучше не стало (или стало :) )
Поэтому, в настоящее время все скатилось к тому, что мировые соревнования, скажем, по распознаванию изображений, выигрывают те группы и коллективы, у которых тупо больше ресурсов для такого вот своеобразного "перебора вариантов".
По сути, сети изначально абсолютно все равно с какими задачами, и, соответственно, типами данных работать. Ту же мобайлнет, что будем использовать для object detection, мы могли бы, к примеру, использовать и для распознавания речи, для игры в те же игры и проч. Все дело в обучении.. :)

adiagnost
Автор темы
Сообщения: 873
Зарегистрирован: 04 май 2015, 15:46
Пол: мужской
Благодарил (а): 2 раза
Поблагодарили: 189 раз

Автономный квадрокоптер

#73

Непрочитанное сообщение adiagnost » 15 дек 2019, 12:58

Часто отождествляют понятия нейросетей (НС) и искусственного интеллекта (ИИ), что, как минимум, некорректно.
Абсолютное большинство НС используется только для некой первичной обработки данных (можно сравнить с органами чувств человека, но никак не мозгами).
В нашем случае - это органы зрения, которые, как бы включают условно "глаза" и первичную (рефлекторную) обработку, которая выполняет классификацию объекта, определение его места в пространстве, простейшие внешние данные (например, цвет). Это все происходит у человека без "напряжения" мозгов, а на уровне первичных рефлексов. Дальше это все передается в мозг для последующей обработки.
Так и в случае с нашей НС. Для неё каждый последующий кадр никак не связан с предыдущим. Увязать их в единую логическую временную цепочку - дело "мозгов" верхнего уровня. Это также может быть нейросеть, на вход котоой подаются все данные о распознанных объектах, в соответствии с которыми производится обработка верхнего уровня, и тогда она уже составляет, как минимум, часть ИИ (я не говорю сейчас о "сильном и слабом ИИ" и прочих "высших" материях). А могут быть и относительно простые четкие алгоритмы, если общая задача позволяет.
Относительно нашей конкретной задачи (я не про выставку - там вообще все просто), - нам необходимо, коротко говоря, - выполнить задачу в условиях противодействия.
До этого, когда у нас работала сетка тензорфло, она могла только классифицировать объекты (больше не позволяли ресурсы связки RPi3 + NCS), а вот находить распознанные объекты на кадре приходилось, в основном четкими алгоритмами OpenCV. Сейчас в этом плане - другое дело, - можно запускать гораздо более продвинутые сети с детекцией объектов, или, например, с сегментацией..
Хоть наша задача по максимуму формализована, но также требует значительной обработки. Например, - цель движется, необходимо определить вектор направления, скорость движения и проч. подобные данные. Для этого необходимо анализировать уже, как минимум, несколько последних кадро (стек). Затем определить, насколько угрожающая общая обстановка, (если сильно - то что предпринять, чтобы все-таки выпонить задачу, но остаться "целым" и проч.) У нас "как-то" с этим справляются прямые алгоритмы, но при "сильно формализованной задаче".
Конечно, можно нагрузить для этих задач также сеть, однако, пока даже нет представления, каким образом обучать сеть на такого рода алгоритмы (это я ещё не говорю об обучающих данных)...

Аватара пользователя
Дионис
Сообщения: 30692
Зарегистрирован: 15 сен 2013, 16:04
Пол: мужской
Езжу на: двустоповый опорно-двигательный аппарат
Благодарил (а): 14334 раза
Поблагодарили: 2449 раз
Контактная информация:

Автономный квадрокоптер

#74

Непрочитанное сообщение Дионис » 15 дек 2019, 16:03

adiagnost писал(а):Источник цитаты о сути, сети изначально абсолютно все равно с какими задачами, и, соответственно, типами данных работать. Ту же мобайлнет, что будем использовать для object detection, мы могли бы, к примеру, использовать и для распознавания речи, для игры в те же игры и проч. Все дело в обучении..

надо использовать это для испытаний систем обучения, до того как давать детям. Например ЕГЭ на нейросетях испытать
У меня нет принципов — приспособляемость ко всему вот мой принцип.
У меня нет закона — самосохранение мой закон.
У меня нет ни жизни, ни смерти — вечность для меня жизнь и смерть.

adiagnost
Автор темы
Сообщения: 873
Зарегистрирован: 04 май 2015, 15:46
Пол: мужской
Благодарил (а): 2 раза
Поблагодарили: 189 раз

Автономный квадрокоптер

#75

Непрочитанное сообщение adiagnost » 15 дек 2019, 17:01

Дионис писал(а):
adiagnost писал(а):Источник цитаты о сути, сети изначально абсолютно все равно с какими задачами, и, соответственно, типами данных работать. Ту же мобайлнет, что будем использовать для object detection, мы могли бы, к примеру, использовать и для распознавания речи, для игры в те же игры и проч. Все дело в обучении..

надо использовать это для испытаний систем обучения, до того как давать детям. Например ЕГЭ на нейросетях испытать


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


Вернуться в «Увлечения»