Собрал своего первого робота на базе Raspberry Pi. Управление через сеть(TCP). Софт написан на Java(серверная часть) и C#(клиентская). В планах добавить в консоль управления уровень заряда аккумулятора, скорость, углы наклона и ускорения. Более навороченное управление двигателями. Буду рисовать прямо на изображении с камеры(аля зрение терминатора)Ничего не тупит как у многих на видео в youtube. На глаз FPS 25-30. Аккумулятора хватает часа на 3 беспрерывных покатушек. Так же планируется добавить возможность крутить камерой с помощью сервопривода или шагового двигателя. Ну и многое другое. Если интересно, то выложу еще фото и список используемых компонентов.
Ничего не тупит как у многих на видео в youtube. На глаз FPS 25-30
Точно? И задержек нет? Вижу, что используете обычную веб-камеру. Как видео обрабатывается? Разрешение, кодирование?
Точно . Разрешение 640х480 и 320х240. Не имеет значения для FPS, по крайней мере на глаз. Кадры получаю с помощью библиотеки v4l и java обертку для нее. Кадры получаю в jpeg формате. Все остальное написано мною. Свой протокол передачи данных и т.д... Все на java и C#(на стороне ПК). Могу попробовать снять видео. Может и есть задержка, но я ее не замечаю. Все прям как в прямом эфире
Добавлено спустя 10 минут 24 секунды:
Странно что на видео заметна небольшая задержка. В реале ее не заметно Хммм... Может и ролики поэтому у всех тупят
Последний раз редактировалось gppsoft 09 апр 2014, 16:03, всего редактировалось 2 раз(а).
gppsoft писал(а):Может и есть задержка, но я ее не замечаю. Все прям как в прямом эфире
так не бывает
задержка проверяется просто открываешь сайт типа http://secundomer-online.ru/stopwach-timer-seconds.html и размещаешь на мониторе окно с видеопотоком от камеры рядом с бегающими цифрами на сайте. соответсно камерой робота снимаешь цифры секундомера.
нажимаешь PrtScn и на скриншоте смотришь две цифры, на сайте и на видео. одна цифра - другая = задержка передачи сигнала на ПК
вопрос просто достаточно актуальный на форуме интересно сравнить относительно задержки камеры на роутерах. есть ли практический смысл в Pi для технчисекого зрения или один фиг всё печально
gppsoft писал(а):Может и есть задержка, но я ее не замечаю. Все прям как в прямом эфире
так не бывает
задержка проверяется просто открываешь сайт типа http://secundomer-online.ru/stopwach-timer-seconds.html и размещаешь на мониторе окно с видеопотоком от камеры рядом с бегающими цифрами на сайте. соответсно камерой робота снимаешь цифры секундомера.
нажимаешь PrtScn и на скриншоте смотришь две цифры, на сайте и на видео. одна цифра - другая = задержка передачи сигнала на ПК
вопрос просто достаточно актуальный на форуме интересно сравнить относительно задержки камеры на роутерах. есть ли практический смысл в Pi для технчисекого зрения или один фиг всё печально
djung писал(а):А можно на код поглядеть? Как сервера так и клиента.
К сожалению пока нет. Я являюсь еще автором одного проекта из которого взяты наработки протокола. В целях безопасности пользователей не могу предоставить исходники. Могу лишь сказать что здесь ничего сложного. Протокол основан на json в данном случае(робот) я даже не шифрую пакеты. Картинка получается в jpeg переводится в base64, упаковывается в пакет и отправляется. Это я еще не оптимизировал даже передачу изображения
Belya писал(а):задержка приемлемая, для меня тоже все отлично:)
Ну на глаз человеческий я практически не замечаю. Если не вглядываться параноидально. По крайней мере у меня работает гораздо быстрее чем на роликах с подобным роботом на базе RPi.
Возможно на перекодирование в base64 (чтобы в json) много тратится. Попробуйте с сервера слать массив байтов, съэкономите ЦП ресурсы. Если еще на RPi крутится серверная часть, которая выводит картинку на экран того же RPi, то тоже можно убрать.