logo
OpenMV
Домашняя камера
Приложения
Магазин
AI
Каналы продаж
Поддерживать
OpenMVOpenMV
ЩитыЩиты
ОбъективОбъектив
РобототехникаРобототехника
КнигаКнига
ВидеоВидео
СкачатьСкачать
ДокументыДокументы
ФорумФорум
OpenMV.ioOpenMV.io
ГитхабГитхаб

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

В области компьютерного зрения искусственный интеллект решает две весьма распространённые задачи: классификация и обнаружение объектов.

Категория:Определение категории изображения, например, относится ли оно к категории «кошка» или «собака».

Обнаружение объектов:Для определения местоположения, количества и размеров нескольких различных объектов на изображении.

В предыдущих видеоруководствах мы объяснили, как использовать OpenMV4 Plus для онлайн-обучения нейронной сети с целью классификации различных объектов. Данное решение позволяет в реальном времени определять, присутствует ли в поле зрения OpenMV изображение конкретного объекта, например, надета ли маска на лицо. Однако оно не позволяет выводить координаты расположения лица или маски, а также количество обнаруженных лиц.

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

交通标志识别教程-多个目标的识别

Сегодня мы расскажем вамОбучение демонстрирует обнаружение дорожных знаков в реальных дорожных условиях, выявляя дорожные знаки на наших реальных дорогахнапример, запрет на подачу звуковых сигналов, запрет на стоянку, ограничение скорости до 80 км/ч и т. д., а не лабораторная среда без помех.

Весь проект, включая весь код и модели, можно просмотреть по следующему адресу: https://book.openmv.cc/project/traffic-sign.html

Как известно, реальные условия чрезвычайно сложны, особенно дорожная обстановка, где присутствует множество помех. Мы использовали смартфоны и другие устройства для сбора изображений дорожных знаков в реальных условиях, а затем обучили модель на онлайн-платформе EdgeImpulse нашего партнёра OpenMV: было размечено примерно 270 изображений, а время обучения составило всего 10 минут. Точность полученной модели по метрике F1 достигает 92 %, а частота кадров при её работе на платформе OpenMV составляет 10 кадров в секунду, что обеспечивает как высокую плавность, так и высокую точность.

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

Внимание:В этом видеоруководстве объясняется функция обнаружения целевых точек с использованием нейронных сетей, которая поддерживается как OpenMV4 H7 Plus, так и OpenMV4 H7. Обученная модель обнаружения целевых точек FOMO имеет небольшой объём, высокую эффективность и занимает всего несколько десятков килобайт. Даже при том, что объём оперативной памяти OpenMV4 H7 меньше, чем у версии Plus, мы можем обучить немного более компактную модель для её работы на платформе OpenMV4.

Ниже приводится краткое описание принципа работы:

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

Модель FOMO — это модель, специально разработанная EdgeImpulse для среды микроконтроллеров; в отличие от обычных моделей обнаружения объектов она способна определять только положение и количество объектов, но не их точные размеры.

Основной принцип модели FOMO чрезвычайно прост и гибок. Сначала изображение разбивается на блоки размером 8×8 пикселей. Для изображения с разрешением 96×96 получается сетка размером 12×12 ячеек; для изображения с разрешением 360×360 — сетка размером 40×40 ячеек. Затем к каждой ячейке независимо применяется классификация изображений.

По сравнению с YOLO V5 или MobileNet SSD FOMO демонстрирует значительно более высокую эффективность при обнаружении большого количества мелких объектов. Обнаружение целевых точек с помощью FOMO в 30 раз быстрее, чем с помощью MobileNet SSD.

Если объекты, подлежащие обнаружению, имеют схожие размеры — например, распознаваемые маркеры практически одинаковы по габаритам, а не представляют собой одновременно чрезвычайно крупный и чрезвычайно мелкий объекты, — эффективность FOMO будет выше.

Для обучения нейронной сети с целью обнаружения целевых объектов в OpenMV используется онлайн-платформа EdgeImpulse, что включает следующие основные этапы: сбор и загрузка набора изображений, разметка целевых объектов, обучение модели, тестирование модели, развертывание модели.

* Сбор набора изображений: фотографирование и сбор изображений конкретных объектов в тех реальных условиях, в которых они будут распознаваться. Изображения собираются в тех же условиях, в которых будет осуществляться распознавание; реальная среда обучения и реальная среда обнаружения практически совпадают, что обеспечивает лучшие результаты.

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

* Обучение модели: после завершения разметки выполняется обучение модели с использованием параметров свёрточной нейронной сети, разработанных нами.

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

*Развертывание: Для запуска достаточно поместить обученный файл модели во встроенный USB-накопитель OpenMV.

Ниже приведена демонстрация конкретного процесса:

01. Сбор и загрузка набора изображений

1. Во-первых, войдите на сайт edgeimpulse.com, выберите «Войти», введите название нового проекта и выберите «Изображения» → «Классификация нескольких объектов».

交通标志识别教程-新建项目.

II. Выберите изображение для загрузки. Существует несколько способов получения набора данных изображений:

1. Реальное время захвата изображений с помощью OpenMV IDE. Используйте инструмент «Редактор наборов данных», встроенный в OpenMV IDE, чтобы создать новый набор данных и выполнять захват изображений в реальном времени; подробную информацию см. в нашем предыдущем видеоруководстве по классификации объектов и распознаванию масок.

交通标志识别教程-.实时采集图像

2. Изображения, загруженные из сети или сделанные непосредственно на мобильное устройство. Предпочтительно, чтобы они соответствовали реальным условиям, в которых проводится ваша проверка. Мы подготовили набор из четырёх-пятисот изображений дорожных знаков «Стоянка запрещена», «Сигнал запрещён» и «Ограничение скорости — 80 км/ч». Каждое изображение было получено непосредственно на реальных дорогах. Данный набор данных доступен для скачивания на нашем сайте GitHub и на сайте с обучающими материалами.

02. Обозначение целевых объектов

Для каждой категории загружается около 100 изображений; после завершения загрузки изображений выполняется их аннотирование, в ходе которого указываются местоположение и категория объектов, подлежащих распознаванию.

交通标志识别教程-上传图片
交通标志识别教程-标记物体

03. Обучение модели

Настройте параметры обучения: измените разрешение на 128 × 128; все остальные параметры оставьте по умолчанию и нажмите «Сохранить».

交通标志识别教程-训练模型1.

Создание функций: три цвета соответствуют трём маркерам.

交通标志识别教程-训练模型2

Настройте параметры обучения для задачи обнаружения объектов. Количество эпох обучения по умолчанию составляет 60, скорость обучения — 0,001, доля проверочного набора данных — 20 %. Активируйте аугментацию данных. В качестве модели для трансферного обучения можно выбрать модель MobileNetV2 0,35 или MobileNetV2 0,1 по умолчанию. Примечание: использование SSD недопустимо, поскольку данная архитектура не поддерживается на платформе OpenMV.

Выберите «Начать обучение». После завершения обучения значение метрики F1 для полученной нейронной сети составит 91,2 %. Мы можем сохранить текущую версию.

交通标志识别教程-训练模型3

Выберите хранилище, введите описание и нажмите «Сохранить».

交通标志识别教程-训练模型4

04. Развертывание модели

Экспортируйте файл обученной модели. Достаточно экспортировать только библиотеку: выберите OpenMV и нажмите Build — начнётся развертывание и экспорт модели.

交通标志识别教程-部署模型1

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

交通标志识别教程-部署模型2

05. Запуск модели

Запуск модели на OpenMV:

Подключите OpenMV Plus, сохраните три обученных файла во встроенный USB-накопитель OpenMV и откройте файл ei_object_detection.py в среде разработки OpenMV IDE. Нажмите кнопку запуска; результаты выполнения отобразятся в последовательном терминале.

交通标志识别教程-运行模型1
交通标志识别教程-运行模型2

Эта функция также работает на плате OpenMV4. Поскольку на плате OpenMV4 отсутствует внешняя микросхема SDRAM, объём оперативной памяти меньше; поэтому мы можем уменьшить размер модели, чтобы обеспечить её работу на плате OpenMV4.

Существует два способа уменьшить объем модели:

1. Уменьшить разрешение при обучении, изменив разрешение с 128×128 на 96×96.

II. Изменение используемой модели переносного обучения: замена MobileNetV2 0.35 на MobileNetV2 0.1.

В заключение, обученный новый файл следует поместить в OpenMV4 для выполнения.

Выше приведено руководство по обнаружению целевых точек. С нетерпением ожидаем ваших результатов!

Похожие статьи

机房/配电房/单元门敞开识别

ИИ-сторож на базе OpenMV: автоматическое уведомление о незакрытых объектах в ключевых местах

Автоматически определяет, не оставалась ли дверь в ключевых местах открытой в течение длительного времени, и своевременно уведомляет об этом.

越界识别

Срабатывание тревоги при выходе человека за пределы зоны: OpenMV демонстрирует «чувство безопасности границы»

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

占道经营识别

Появилась система «ИИ-инспектор по городскому хозяйству»: автоматическая система распознавания несанкционированной торговли на основе платформы OpenMV

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

煤气罐违规摆放识别

Неправильное размещение газовых баллонов? Используйте OpenMV для автоматической активации предупреждения об опасности

Автоматическое распознавание несанкционированных мест размещения газовых баллонов и своевременное выявление потенциальных угроз безопасности при использовании газа.

绝缘手套佩戴识别

Выполняете работы под напряжением без диэлектрических перчаток? OpenMV немедленно подаст сигнал тревоги!

Автоматическое распознавание того, надевают ли рабочие изолирующие перчатки, для обеспечения безопасного выполнения работ.

铝板缺陷识别

Использование интеллектуальной камеры OpenMV для распознавания дефектов на поверхности алюминиевых листов в режиме реального времени

Онлайн-идентификация дефектов на поверхности алюминиевых листов, таких как царапины и вмятины, для поддержки контроля качества.

Популярные категории

Язык и регион
Copyright © 2025 星瞳科技SingTown
粤ICP备17045162号