[OpenCV robots #1] Recognition of colored objects. Line movement and target designation | Orange pi
Вставка
- Опубліковано 19 чер 2022
- Pam-pam-pam, I've been gone for a long time, but I didn't give up the channel :) While I'm working on other projects, I rolled out a continuation of the epic about robots and openCV.
This time, we will talk about the recognition of colored objects by the robot, will force the robot to chase them, and also go on target designation to the laser, well, to the heap, let it ride along the line. And all this is one algorithm!
I also remind you that a platform (a piece of a board) with a webcam and an orange pi zero on board acts as an experimental robot. It is loaded with Linux and a web server that outputs all the results of video processing through openCV to a web page.
More about it in the video: • Простой робот с камеро...
New python scripts and samples for the robot to work with openCV: codeberg.org/TrashRobotics/Ro...
Old scripts (and arduino code) where the robot can be controlled via a web page: codeberg.org/TrashRobotics/CVbot - Наука та технологія
Вот это понимаю контент! Спасибо. Самому захотелось расчехлить питона погонять с шариком
Чего
Аэаххахахахаха
Ждём продолжения. Не останавливайтесь, у вас хорошо получается.
Контент огнище. Рекомендации ютуба - работайте так дальше, мне нравится
Бро, шикарнейшие видосы, от души! Без воды, всё по делу. Ну и отдельная благодарочка за добрый юмор!
Привет! Занимаюсь CV и ML давно, случайно наткнулся на канал. Хорошо объясняешь, продолжай! Хороший контент
Отлично, иронично и содержательно! Не останавливайся! Спасибо!
случайно youtube предложил видео посмотреть с этого канала и я залип. Лайк, подписка и ждём новые видео. Классная тема OpenCV
Чувак, это очень круто! Особенно подача, очень интересно и весело, продолжай в том же духе!
Отличный контент, удачи и развития каналу!
как же круто преподносится материал!! спасибо!! ждем продолжение!!!
ух класс !! + Лайк смотрим ! Все зашли видео !
Красавчик! первый раз гляжу твоё видео! С ходу подписался. Подача материала просто супер!
Как же долго я это искал спасибо вам большое 👍👍👍
Робот-кот это нормально.
А вот робот-менеджер это финал!
Красавчик ваще. Это ж пипец как интересно.
Побольше бы таких как ты блогеров
Молодец, очень интересно и познавательно. Я сейчас вот знакомлюсь с Pi Zero, тоже делаю робота, но немного другого. Но тоже использую машинное зрение. Буду с нетерпением ждать дальнейших выпусков в этом направлении
это просто а**нно. спасибо что делишься такой интересной информацией!
Привет! Отличное видео! Ждём робота с нейронными сетями!
Очень интересно! Ждём продолжения с использованием нейросетей и гусеничной платформы с видеокартой на борту )
Отличное видео, особенно понравился момент с "Робот-котом") ХАПХАПХ смеялся 30 минут)😍
лайк и коммент за видос и подписка за ослика с морковкой в конце))). или наоборот)
Супер! Спасибо!
are you crazy? insane!
Отличное видео!
иронично😂😂😂
Вау, спаибо большое!!
класс!
Отлично!
Очень интересно
супер контент, я видео себе прям сохранил
хз как постоянным зрителям, для меня это просто охренеть. как раз купил набор с 4-мя шаговыми двигателями и планирую автоматизировать по работе процесс один... а тут чел робота за шариком гоняет... о х р е н е т ь ?) охренеть!)
в конце - это ж морковка для ослика
Годно!))
это какие то чудеса и магия)
огонь!
давай еще больше про OpenCV на апельсинках!
Моё почтение
Крутой проект. Подписка :)
Будут проекты на полноценном компьютерном зрении?
Сам думаю дронов собирать с openCV, тема очень нравится.
Таки Иронично)))
🔥🔥🔥🔥🔥
А вот за код спасибо !
Будет ли продолжение? Например перевод на два двигателя и спереди свободное колёсико из под мебели, какие нибудь улучшали для робота, например какой нибудь простенький лидар что бы если предмет закатился под шкаф но робот его видит, он не летел врезаться, а остановился перед шкафом/тумбой и всякие такие штучки, вообще интересно будет какое то подобие искусственного интеллекта
проще для такого hc-sr04 исползовать. Лидар лучше для построения карты помещения оставить
Hola! Gracias por compartir el código 👍
good :)
Всего пару строк кода и все! До чего техника дошла
Афтар жги ещё. Очень хорошая подача и видеоряд. Не останавливайся!!
Доброго дня, все супер, есть вопрос, видео по разбор алгоритм поиска по шаблону будет? Спасибо.
Привет , отличное видео как раз искал человека который внятно обьянит как сделать поиск обьекта , кст как тебе идея сделать робота для пропалывания огорода? Очень бы помог многим кто у бабушки в деревне на огороде. И еще не пользовался ли ты библиотекой mediapipe?
Привет, спасибо) Робот садовник-огородник в планах на следующий год или через год, как получится. Идеи есть не только для прополки, но и для посадки, сбора и т.д. Делать буду, когда появится возможность выделить немного лишних средств и времени на платформу + манипулятор. Думаю ее делать на базе моторов стеклоочистителей или дворников. Из них же и сервы сделать попробую.
Про mediapipe слышал, но не пользовался, обычно сам всю цепочку собирал: gstreamer + opencv + tensorflow. Надо глянуть, что за зверь)
Блин, мужики, прям все мои идеи в одном месте, робот по прополке тоже есть и был идеей, хотел газовую горелку примости к роборуке ))), фигачить под корешок.
Смотрю эти видео с ближайшим прицелом на создание автоматической газонокосилки. Автор продолжай! Я тупой на 50%, как раз объяснения на мой уровень.
🥰🤩💥💯👍👏
Две камеры, и будет дистанция до цели)
А можно чтобы он двигался на звук. Например, хлопнул в ладоши он развернулся на звук
Какой язык для кодинга использовался в видео?
Хорошо, да или да, нужен ли Raspberry Pi для этого проекта? Поддерживает ли Orange Pi Zero 2 opencv?
а вот если задача искать на изображении контуры с белым цветом (возможно слегка желтоватым). нужно предподготовить фотографии с листами бумаги, для дальнейшего распознавания текста. пытался переводить в градации серого, но отделить изначально светло жёлтый стол стол от белой бумаги не получалось, по чёрно-белому представлению это был одинаково белый цвет.
Ох... ну тут задача зависит от того: насколько вы хотите запариться, и насколько результат должен быть отказоустойчив. Если по лайту, то да, сначала просто отделять бумагу от стола по цвету, а не по градациям серого, в результате получите маску, которую наложите на изначальное изображение (уберете все светложелтое с него). Потом переводите в градации серого и распознаете уже текст (хотя, в таком случае, можно просто отделить черный текст, но если нужна предподготовка, то окей).
Можно и сложнее: искать прямоугольники (листы) по шаблону или ключевым точкам, делать преобразования, если листы сфотканы криво и т.д. Развлекаться можно долго :) главное освещение хорошее сделать, оно всегда кстати.
Посмотрев видео, стало интересно, что за вебкамера на аппарате?
Не могли бы вы указать модель, её характеристики?
это камера из линейки Canyon CNS-CWC5 на али они от 940 рублей в днс они от 3к разрешение 2мп 1080р 30fps
Hahahahahahahaha aли жао ми је на крају малог робота који покушава да yхвati светлост као пас који јури свој реп :)
вроде все просто, но почему даже не возникало желание у меня такое делать?!
а для принтера в видео, какой пластик юзается?
тут PLA, а так PLA и PETG
@@trashrobotics у меня типа такой же принтер. и вроде пластик PETG, но он плохо приливает к поверхности, хотя если прилип то уже сложновато оторвать, не могу понять что не так, уже и температуру от 190 до 230 поднимаю, и температуру стола от 50 да 80, скорость печать на старте 25, рабочая 50, а пластик часто плохо соединяется.
автор, давай лазерную пушку, отстреливающую мух!!!!)))
сразу сорян за глупый вопрос - в видео только IP и порт нужно ввести, а в описании еще и последовательный порт, а как узнать какой?)
Последовательный порт используется для связи с ардуинкой (она выступает в качестве драйвера моторов). Если вы запускаете точно такого же робота как в видео (по железу и подключению), то его при запуске программы можно просто не указывать. По умолчанию будет выбран нулевой порт (/dev/ttyUSB0).
Eсли у вас подключен единственный usb-ttl преобразователь, то программа будет использовать его. Однако, через модификатор *-s* можно указать другой порт, если, например, вы используете на роботе несколько преобразователей и нужно выбрать один из них или если вы используете аппаратный UART.
@@trashrobotics воу, спасибо за подробный ответ. и в целом за видео, вдохновился, буду делать, жду железо из китая
А что если на основе бинарного компьютерного зрения сделать робота который бы ориентировался в пространстве)
Нет, не просто так исторически сложилось. Просто вы не в курсе истории. Потому лучше вам просто сказать - я не знаю почему, но так есть.
Вообще-то, я знаю, почему так вышло). "Просто вы не в курсе истории." История.../исторически сложилось, это одно и то же, как бы😁 Не понимаю суть претензии. Это же не было сказано в негативном ключе. И если учесть, что сейчас представление RGB возведено в ряд стандарта, то выбор в openCV BGR, в свое время, сейчас представляется как и тянущийся легаси, который уже так просто не изменить. Так что да, исторически сложилось)
@@trashrobotics Это не легаси, это особенность работы процессора с памятью. И более того они, процессоры, и сейчас так делают потому что это их естественная особенность. Особенность эта появилась на заре развития вычислительной техники и обработки видеоинформации как ее части. Просто новодельные АПИ прячут эту внутреннюю реализацию выставляя наружу интерфесы в том виде каком они считают удобно конечному пользователю.
доброго времени. есть идеи как заставить апельсинку с ардуинкой общаться по uart1 или 2 ? по uart0 который отдельно выведен все норм а по гребенке не хотит зараза. и да ждем продолжения я уже 2 платформы под это дело собрал.
В armbian-config еще надо включить uart1 и uart2, чтоб их использовать. uart0 для использования не рекомендую, он все же для консольного общения с апельсином зарезервирован. Про OpenCV будет или через проект или через два) Сейчас фрезер делаю и мастерскую утепляю перед зимой)
@@trashrobotics в конфиге включил конечно, не помогает. когда на uart0 чтото висит она еще грузится через раз, и с правами доступа к нему проблемы. фрезер тоже хорошо.
Я собрал робот-пылесоса и столкнулся с такой проблемой, что он иногда не видит ножки у табуреток. Датчики приближения представляют собой 8 ик светодиодов и 8 ик фотодиодов. Чтобы не влиял уровень освещенности они работают по такому алгоритму. Светодиоды выключены > считываем через АЦП значения каждого фотодиода > запоминаем значения > включаем светодиоды > считываем > сравниваем с предыдущими значениями, и если где-то большое расхождение, то значит впереди препятствие. Работает не плохо, но иногда не видит тонкие предметы. Дак вот в чём вопрос. Можно ли отслеживать препятствия при помощи камеры или может двух камер?
да, можно двумя камерами, стереопарой называется. Лучше сразу брать камеры объединенные на одном модуле. По двум изображениям строится карта глубины и по ней определяете расстояние до объектов.
@@trashrobotics , о, класс ! Это на опен сv можно реализовать ?
docs.opencv.org/4.x/dd/d53/tutorial_py_depthmap.html
@@trashrobotics , ого, спасибо !
Скрипт из первого видоса работает, а вот из второго чот ругается и не показывает изображение с камеры(
Error on request:
Traceback (most recent call last):
File "/home/pi/.local/lib/python3.7/site-packages/werkzeug/serving.py", line 335, in run_wsgi
execute(self.server.app)
File "/home/pi/.local/lib/python3.7/site-packages/werkzeug/serving.py", line 324, in execute
for data in application_iter:
File "/home/pi/.local/lib/python3.7/site-packages/werkzeug/wsgi.py", line 500, in __next__
return self._next()
File "/home/pi/.local/lib/python3.7/site-packages/werkzeug/wrappers/response.py", line 50, in _iter_encoded
for item in iterable:
File "app.py", line 49, in getFramesGenerator
cv2.CHAIN_APPROX_NONE) # получаем контуры выделенных областей
ValueError: too many values to unpack (expected 2)
Hello.... can you make mobile browser accelerometer controlled robot using nodejs...
Hello, do you mean gesture control using the accelerometer on the phone? Or browser control of a robot that uses an accelerometer (for example, a balancing robot or other mobile robot)?
@@trashrobotics a robot that can be controlled using mobile phones inbuilt accelerometer ..... For example a node server running on a single board computer ( orange pi) ...that can be accessed from mobile browser... (Tilt the phone and robot should move )
I'm going to do this kind of thing in the future, but a little more hard. Robot control using a gesture interface with an accelerometer + gyroscope or through a camera and opencv
@@trashrobotics I did it using javascript and html + php but I want to make it with nodejs... because I have older raspberry Pi zero w with less ram and processing power ..also may I know your name please.......
(using phone accelerometer not opencv or camera)
Хммм... А можно выкинуть эту virgin плоскую камеру и прихерачить ему chad 3д зрение с каким-нибудь кинектом или типа того? Чтоб робот распознавал рельеф и, ну, например, не упал бы со стола?
Вроде, инструментов разработчика на кинект целое море в интернете. Правда, не уверен, что это всё реально можно приспособить на такие маленькие мозги
можно, но оперативки нужно много, минимум 8гб но такие разбори стоят от 20к и выше я видел пару подобных проэктов на англоязычных каналах самодельщиков, кода там очень много и нужно очень хорошо знать python чтоб чтобы переделать под свои задачи.
Бостон дайнемикс нервно курит в сторонке.
Запустил пример demo_objtracking.py.В качестве мишени просто красный круг. Программа не видит его.Нужна обязательно лазерная указка?
Извините, невнимательность. Разобрался