Проекты

Система обработки видеопотока и данных положения в пространстве «ARGUS»

Работа призёра открытой городской научно-практической конференции «Курчатовский проект – от знаний к практике, от практики к результату» в секции «Метод» среди работ учащихся 10−11 классов

Направление работы: Информационные технологии, Программирование
Авторы работы: ГБОУ Школа № 1534
Предметы: Физика, Математика, Информатика
Классы: 10 класс
Мероприятия: Открытая городская научно-практическая конференция «Курчатовский проект – от знаний к практике, от практики к результату» 2020 года

Актуальность

Система разработана в интересах МЧС для организации поисково-спасательных работ на водной поверхности.

Благодаря своей универсальности может применяться для поиска любых объектов по заранее заданным параметрам и может быть установлена на любой носитель.

Цель

Организация обработки видеопотока и данных положения носителя бортовой аппаратной части системы в пространстве на наземном оборудовании, с использованием самообучающейся нейронной сети.

Оснащение и оборудование, использованное при создании работы

  • Arduino Nano 3.0 2шт.
  • Logitech C270
  • GPS модуль
  • IMU-9 сенсор
  • Датчик давления
  • Raspberry PI-4
  • Корпус
  • Компьютеры с ОС LINUX
  • Arduino IDE
  • Python
  • OpenCV

Описание

Для осуществления проекта автор использовал в качестве бортового компьютера плату Raspberry PI4. При ее малых размерах она имеет характеристики, сравнимые с характеристиками среднего ноутбука: 4-Ядерный процессор, 4 ГБ ОЗУ. В качестве вспомогательных контроллеров автор использовал Arduino nano – достаточно известные контроллеры. Они справляются со своей задачей про относительно небольших размерах. Платы Arduino и RPI связаны между собой интерфейсом USB, RPI и обрабатывающий компьютер первоначально связаны проводом ethernet, далее было установлено беспроводное соединение.

В качестве операционной системы автор выбрал OC Linux – не требовательная к характеристикам система с обширными возможностями в настройке. Сложная в начале работы, но, впоследствии, после соответствующей настройки, ставшая очень удобной для разработки, она позволила настраивать автору параметры соединений и давала полный доступ к ресурсам для наших программ.

В качестве контролируемых параметров были выбраны: высота, направление, скорость полета, а также положение в гео-координатах. Они позволили автору узнавать крен, тонгаж и курс прототипа носителя. Чтобы узнать высоту автор использовал датчик давления, а для посадки – более точный лазерный дальномер. Аналогично лазерный дальномер используется для определения расстояния до объекта. Так же установлен GPS трекер – позволяет нам узнать координаты прототипа носителя.

Передача данных между вспомогательными контроллерами и бортовым компьютером осуществляется через COM порт. Затем данные передаются от бортового ПК на обрабатывающий ПК методом socket. О структуре проекта расскажу чуть позже.

Logitech C270 – хорошая веб камера за свою цену. Имеет разрешение 720p – достаточное для распознавания объектов. К сожалению по непонятной мне причине использовать это разрешение не удалось – в движении картинка сильно смазывалась, делая полет невозможным. По этому вместо разрешение 1280*720 я использовал 640 * 480 – оно оказалась самым оптимальным.

На этапе разработки передачи видео автор столкнулся с проблемой: в локальной сети видеопоток передавался без проблем, в глобальной же долго не удавалось настроить передачу.  Для локальной сети – хватало утилиты Motion, для приема и обработки автор использовал OpenCv в Python, собственно этот язык я и взял за основной. Для использования глобальной сети – понадобилось приобрести статический IP адрес, но таким образом мы узнаем IP только одного устройства, по этому motion пришлось заменить на собственную программу передачи видео, которая встроилась в основную программу обработки. Сейчас продолжается решение этой задачи.

Результаты работы/выводы

В процессе работ нами получен действующий прототип системы распознавания, работающий в локальной сети из двух компьютеров. Возможность использовать беспроводную сеть сделает проект мобильным. Система способна получать данные о положении в пространстве, так же производится успешное распознавание лиц с определенной вероятностью. Создан достаточно удобный для работы графический интерфейс. Создана платформа для размещения проекта, проведены успешные тесты проекта. Также разработан план дальнейших работ по совершенствованию проекта и расширению его функциональных возможностей.

Перспективы использования результатов работы

М2 – будущая модификация проекта. Оптимизация работы и разработка обратной связи позволят расширить возможности программы

  • Создание приложения, удобного для использования.
  • Подключение базы данных с различными классификаторами (поиск не только лиц, но и например марок машин).
  • Установка беспроводной связи между устройствами.
  • Возможность управления носителем с помощью ПК пользователя.

 

Награды/достижения (в каких конкурсах и с какими результатами выставлялась ранее эта работа)

Конференция Силаэдер, Наука для жизни, Курчатовский проект, Инженеры будущего.

Мнение автора

«Наш проект может применяться в  широком  диапазоне – от поисковых задач до охранных функций. Созданный с использованием локальной сети система может быть переведена на глобальную сеть. Вероятность распознавания лиц зависит от разрешения камеры – чем выше разрешение – тем больше точность, таким образом – программа работает успешно, а погрешность распознавания – аппаратная проблема. Аналогичная ситуация с погрешностью в точности датчиков телеметрии, она зависит от качества датчика. В итоге мы достигли своей цели, создан действующий прототип системы распознавания объектов и бортовой телеметрии с использованием самообучающейся нейронной сети»