Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Промышленные технологии

Надежное обнаружение и слежение БПЛА через ИИ и компьютерное зрение

Аннотация

С развитием технологий безопасность становится главной проблемой. Экспоненциально растущая доступность дронов создает серьезные угрозы. Использование БПЛА (беспилотных летательных аппаратов) резко выросло за последние годы. Предлагаемое решение: сначала обнаружить БПЛА, затем отслеживать его траекторию.

Для обнаружения объектов глубокие алгоритмы компьютерного зрения крайне эффективны. Входные данные обрабатываются YOLO — нейросетью для обнаружения и слежения объектов в реальном времени.

2.1 Понимание концепции БПЛА

По теме «Обнаружение и слежение БПЛА с помощью компьютерного зрения», БПЛА (беспилотный летательный аппарат) — это 항공ное судно без пилота, управляемое дистанционно или бортовыми компьютерами. Надежное обнаружение и слежение БПЛА через ИИ и компьютерное зрение

БПЛА используются в мирных целях: сельское хозяйство, научные исследования, прогноз погоды, доставка грузов, поисково-спасательные операции, здравоохранение. А также в военных: атаки, ракетные удары, целевое поражение.

2.2 Что такое компьютерное зрение?

Компьютерное зрение — область информатики, позволяющая компьютерам «видеть», идентифицировать и обрабатывать изображения как человеческое зрение, выдавая осмысленный результат. Применяется везде:

2.3 Техники обработки изображений

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

Варианты использования обработки изображений

2.4 Программные требования

3. Алгоритмы обнаружения объектов

Существует много алгоритмов. Основные:

Таблица 3.1: Сравнение алгоритмов обнаружения

Алгоритм Описание Сильные стороны Слабые стороны
Viola-Jones (Пол Вайола и Майкл Джонс, 2001) Лица и объекты в реальном времени. Анализ подрегионов, поиск специфических признаков (Haar-like features). Робастность, высокий процент обнаружения, разные классификаторы для разных областей, скорость, хорошо находит края и линии. Не обнаруживает повернутые лица, чувствителен к освещению, не работает с движущимися объектами.
CNN (Кунихико Фукусима, 1980) Биологически вдохновенная иерархическая модель. Глубокое обучение: вход — изображение, обучаемые веса и смещения для объектов, дифференциация между ними. Признаки определяются обучением (больше свободы), единая классификация на всё изображение, матричные операции, высокая точность. Требует большой датасет, дорого вычислительно.
YOLO (You Only Look Once) Детектор в реальном времени. Нейросеть делит изображение на сетку S×S, строит ограничивающие рамки, предсказывает вероятности для каждой. Использует регрессию. Множественные объекты на одном кадре, реальное время, сверхбыстро, высокая производительность, нет ложных срабатываний на фоне. Один объект на ячейку сетки, приоритет скорости над точностью.
SSD (Single Shot Detector) Один проход для обнаружения множества объектов. Для реального времени. Состоит из backbone и SSD head. Высокое вычислительное время, высокая точность, умеренный компромисс точность/скорость. Хуже на маленьких объектах, end-to-end детекция медленная, вычислительно затратна.

Выбран YOLO — очень быстр для реального времени. Делит изображение на S×S сетку, строит рамки, предсказывает вероятности. Алгоритмы в таблице 4.4.

3.1 Алгоритм слежения

После обнаружения — слежение. Если объект — воздушный змей или птица — слежение не нужно. Если дрон — цель отслеживается.

Много алгоритмов трекинга, но снова выбран YOLO: быстрый, точный, следит до выхода цели из поля зрения камеры.

4. Реализация предложенного дизайна

Шаги запуска проекта на ПО.

4.1 Начальный этап

  1. Обработка изображений требует хороший CPU/GPU. Выбираем CPU. Установка Anaconda с сайта (см. рис. 4.1). Надежное обнаружение и слежение БПЛА через ИИ и компьютерное зрение
  2. После установки Anaconda Navigator — создание окружения через диалог окружения, выбор версии Python.
  3. Установка Spyder (удобный IDE). Затем OpenCV: pip install cv2. Надежное обнаружение и слежение БПЛА через ИИ и компьютерное зрение

4.2 Подготовка датасета

  1. Сбор множества изображений воздушных объектов: дроны, птицы, самолеты, вертолеты, змеи, шары.

Важно: Датасет — не просто картинки. Нужна разметка: имена объектов и координаты (bounding boxes) на каждом изображении. Для этого используется ПО LabelImg, конвертирующее разметку в текстовые файлы (YOLO формат). См. рис. 4.6.

  1. Все изображения и .txt файлы упаковываются в ZIP. Создается файл имен классов (obj.names).

Надежное обнаружение и слежение БПЛА через ИИ и компьютерное зрение

4.3 Конфигурация YOLO

  1. Установка Darknet с YOLO v3.
  2. Создание папки в darknet/data с изображениями и .txt файлами датасета.
  3. Создание кастомного .cfg файла: модификация YOLO v3 cfg — batch, subdivisions, max_batches относительно классов и steps.
  4. При вводе числа классов — изменение сверточного слоя перед YOLO. Установка random=1. Параметры cfg в Таблице 4.1.

Таблица 4.1: Параметры CFG

Имя Описание
BatchКоличество изображений и меток в прямом проходе для вычисления градиента и обновления весов через обратное распространение.
SubdivisionsBatch делится на блоки, изображения в блоке запускаются параллельно.
Steps500,1000: корректировка learning rate после 500 и 1000 батчей.
Layers (Filters)Число сверточных ядер в слое.
Layers (Random)В YOLO слоях. Если 1 — дата-аугментация: ресайз изображений на разные размеры каждые несколько батчей для обобщения по размерам объектов.
  1. Создание кастомной папки объекта через data/obj.names — имена классов для обнаружения (дроны, БПЛА, птицы, змеи...).
  2. В obj.data: число классов, train.txt, valid, names, папка weights. Надежное обнаружение и слежение БПЛА через ИИ и компьютерное зрение
  3. В train.txt — пути и имена всех обучающих изображений. Надежное обнаружение и слежение БПЛА через ИИ и компьютерное зрение

4.4 Обучение YOLO на вашем датасете

Обучение кастомного датасета через Darknet. Клонирование и включение Darknet, включение OpenCV. Используя ZIP, .cfg, .names, obj.data, train.txt — конфигурация сети для обучения YOLO v3, подсчет итераций.

После тысяч итераций (~2 часа на CPU) — обученный датасет готов к интеграции, показывая среднюю потерю (loss).

4.5 Тестирование кода на изображении и видео

После обучения — тест на обученных весах (YOLO weights). 4 класса в данном случае.

Пробуем YOLO на разных весах. Большие веса = выше точность, но ниже FPS. Видео с БПЛА, птицами — вход для кода. Все объекты успешно обнаружены и отслежены с метками, FPS и порогом.

Реальное время: веб-камера, запуск дрона в поле зрения — вывод «Detection And Tracking Of UAV».

Надежное обнаружение и слежение БПЛА через ИИ и компьютерное зрение

Промышленные технологии

  1. Датчик движения SmartThings на компьютерном зрении с Raspberry Pi 3
  2. Интеграция Microsoft Kinect с Raspberry Pi для детекции людей в реальном времени на роботе Sonbi
  3. Как роботизированное зрение улучшает автоматизацию: ключевые преимущества и приложения
  4. Топ-4 выгоды умного детектирования утечек для безопасности зданий и экономии
  5. Почему IoT-детекция утечек воды Biz4Intellia повышает промышленную эффективность — 5 ключевых преимуществ
  6. Семь проверенных способов, как компьютерное зрение повышает эффективность и экономит затраты
  7. Революция в промышленности 4.0: как компьютерное зрение движет умное производство
  8. Передовые высоковысотные БПЛА для точного метеорологического мониторинга
  9. Предотвращение теплового искажения изображения в линейно-сканирующих камерах машинного зрения
  10. Mastercam Урок 7: Управление изображениями и создание траекторий инструмента