Статья опубликована в рамках: XXVIII Международной научно-практической конференции «Научное сообщество студентов: МЕЖДИСЦИПЛИНАРНЫЕ ИССЛЕДОВАНИЯ» (Россия, г. Новосибирск, 04 сентября 2017 г.)
Наука: Информационные технологии
Скачать книгу(-и): Сборник статей конференции
дипломов
ОРГАНИЗАЦИЯ ВИДЕОПОТОКА ДЛЯ ПОДВОДНОГО АППАРАТА
АННОТАЦИЯ
В статье показана реализация системы видеопотока подводного аппарата, на базе Raspberry Pi и стандартного модуля камеры. В итоге задержка составила 200мс при разрешении 1080х720 и частоте кадров 30 в секунду.
Ключевые слова: робот, подводный аппарат, видеопоток, система видеонаблюдения, Raspberry Pi, SSH, камера.
Подводная робототехника является одной из новейших областей науки и техники. Ученые иногда шутят, что глубины Мирового океана изучены хуже, чем обратная сторона Луны. Это вполне правдивое утверждение: на сегодняшний день, по разным данным, Мировой океан изучен только на 2−5%. Развитие подводных аппаратов может избавить людей от риска, которому они могут подвергнуться при работе под водой, а также поможет в изучении и освоении подводного мира.
С помощью таких аппаратов можно будет, к примеру, изучить систему рек и водоемов, а также находящихся в условиях сложной досягаемости. Например, под ледяным панцирем Антарктиды. Еще одной сферой применения является обслуживание подводных объектов (нефте- и газопроводов).
Подводный робот - это сложный комплекс разного рода систем. Системы управления, коммуникации, наблюдения, датчиков. Основными критериями, по которым разделяют роботов это глубина работы и обитаемость аппарата. Роботы для малой глубин до 200 метров, средних глубин от 200 до 2000 метров и глубоководные свыше 2000 метров.
По обитаемости разделяяют на два больших класса: обитаемые, которые предусматривают наличие человека на борду, всевозможные батискафы, батипланы, спасательные аппараты; и необитаемые, которые в свою очередь разделяют на автономные и телеуправляемые, то есть робот, связанный с надводным судном кабелем и управляемый оператором.
Одна из наиболее важных систем подводного робота, это система видеонаблюдения, поскольку именно она передает оператору большинство полезной информации об окружающей среде аппарата и позволяет ему наиболее эффективно производить оценку обстановки и позиционирование как самого робота, так и его манипуляторов. Кроме того, система видеонаблюдения позволяет проводить поиск и обследование различных объектов, будь то трубопроводы, нефтяные вышки или поиск месторождений, или таких объектов как мины и взрывоопасные вещества.
Целью данной работы является изучение системы видеопотока для подводной робототехники, а также организация видеопотока. Для реализации поставленной цели, были определены следующие задачи:
- Выбор алгоритма проверки камеры
- Реализация видеопотока, основанного на raspivid и VLC плеере
- Организация соединения по протоколу SSH
- Разработка программы для компьютера оператора
- Проведение экспериментальных проверок
Способ организации видеопотока, основанный на raspivid и VLC плеере
Первый способ который был опробовал был с помощью стандартного инструмента "raspivid" на Rassbery, который позволяет делать захват видео. Захваченное видео с помощью VLC плеера сжамается по стандарту H264 и передаётся по протоколу rtsp. Давайте подробнее рассмотрим опции "raspivid". Это консольное приложение для захвата/записи видео с камеры.
Есть три приложения: raspistill, raspivid и raspistillyuv. Raspistill и raspistillyuv очень похожи и предназначены для захвата изображений; Raspivid предназначен для захвата видео.
Все приложения запускаются из командной. Все приложения используют компонент камеры; Raspistill использует компонент Image Encode; Raspivid использует компонент Video Encode; И raspistillyuv не использует кодировщик и отправляет YUV или RGB-выход непосредственно из компонента камеры в файл.
H.264, MPEG-4 Part 10 или AVC (Advanced Video Coding) — лицензируемый стандарт сжатия видео, предназначенный для достижения высокой степени сжатия видеопотока при сохранении высокого качества. H.264, как и все алгоритмы сжатия с потерями, уменьшает детализацию. Давайте подробнее рассмотрим, как работает данный стандарт сжатия.
Захваченное и сжатое видео передается по потоковому протоколу реального времени (Real Time Streaming Protocol, RTSP), разработанный IETF в 1998 году, является протоколом, предназначенным для использования в системах, работающих с мультимедиа данными, и позволяющий клиенту удалённо управлять потоком данных с сервера, предоставляя возможность выполнения команд, таких как «Старт», «Стоп», а также доступа по времени к файлам, расположенным на сервере. RTSP не выполняет сжатие, а также не определяет метод инкапсуляции мультимедийных данных и транспортные протоколы. Передача потоковых данных сама по себе не является частью протокола RTSP. Большинство серверов RTSP используют для этого стандартный транспортный протокол реального времени, осуществляющий передачу аудио- и видеоданных.
VLC media player - бесплатный и свободный кроссплатформенный медиаплеер и медиа платформа с открытым исходным кодом. VLC воспроизводит множество мультимедийных файлов, а также DVD, Audio CD, VCD и сетевые трансляции.
Установив и изучив официальную документацию был написан код для стрима по локальной сети:
raspivid -o - -t 0 -n | cvlc -vvv stream:///dev/stdin --sout '#rtp{sdp=rtsp://:8554/}' :demux=h264
Код приведенный выше запускает видеопоток на Raspberry,для просмотра стрима достаточно находиться в одной локальной сети и с помощью vlc плеера подключиться к стрима.
rtsp://192.168.0.67:8554/ Сетевой адрес для подключения к стриму.
Рисунок 1. Задержка видеопотока 200мс
Видеопоток осуществляется по потоковому протоколу с помощью стандарта сжатия h264, который позволяет добиться высокого разрешения при максимальном сжатии. К сожалению данный способ не оправдал ожиданий и задержка составила 2 секунды. Несмотря на самый распространённый стандарт сжатия, на протокол передачи в реальном времени такая задержка не устраивает наши требования. Изложен не полный метод. Если Вас заинтересовало или есть вопросы. Свяжитесь с автором.
Список литературы:
- Avislab Сайт для палких паяльникiв [Электронный ресурс] - режим доступа: Свободный http://www.avislab.com/blog/raspberry-pi-camera_ru/ (Дата обращения: 18.05.2017)
- Техническая документация Picamera [Электронный ресурс] - Режим доступа: Свободный hthttp://picamera.readthedocs.io/en/release-1.12/_modules/picamera/camera.html?highlight=configuration (Дата обращения: 19.05.2017)
дипломов
Оставить комментарий