logo
OpenMV
Cámara de inicio
Aplicaciones
Almacenar
AI
Canales de Venta
Apoyo
OpenMVOpenMV
EscudosEscudos
LenteLente
RobóticaRobótica
LibroLibro
VideoVideo
DescargarDescargar
DocumentosDocumentos
ForoForo
OpenMV.ioOpenMV.io
GitHubGitHub

Detección de puntos objetivo mediante redes neuronales entrenadas por OpenMV – Reconocimiento de señales de tráfico en entornos reales de carretera

Existen dos tareas muy comunes de inteligencia artificial en el ámbito visual: la clasificación y la detección de objetos.

Categoría:Determinar a qué categoría pertenece la imagen, por ejemplo, si es un gato o un perro.

Detección de objetos:Se utiliza para localizar la posición, la cantidad y las dimensiones de múltiples objetos distintos en una imagen.

En tutoriales en vídeo anteriores, explicamos cómo utilizar OpenMV4 Plus para entrenar en línea redes neuronales destinadas a la clasificación de distintos objetos; dicha funcionalidad permite determinar en tiempo real si una imagen capturada dentro del campo de visión de OpenMV corresponde a un objeto determinado, por ejemplo, si una persona lleva mascarilla. Sin embargo, no es posible obtener las coordenadas de posición de la cara o de la mascarilla, ni tampoco el número total de caras detectadas.

Dado que la detección de objetos es mucho más compleja y requiere una carga computacional mucho mayor que la clasificación, es muy poco frecuente en el ámbito de los microcontroladores. La unidad de control principal de OpenMV es el MCU STM32H7; actualmente, hemos incorporado una nueva funcionalidad en nuestros dispositivos SingTown que permite ejecutar tareas similares a la detección de objetos directamente en microcontroladores, con un rendimiento muy destacado.

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

Hoy les explicaremosEntrenamiento para la detección de señales de tráfico en entornos reales de calles y carreteras, detectando las señales de tráfico presentes en nuestras vías reales.por ejemplo, prohibición de bocinas, prohibición de estacionamiento y límite de velocidad de 80 km/h, en lugar de un entorno de laboratorio sin interferencias.

Puede consultar todo el contenido del proyecto, incluyendo todo el código y los modelos, en la siguiente dirección: https://book.openmv.cc/project/traffic-sign.html

Como es bien sabido, el entorno real es extremadamente complejo, especialmente el entorno vial, donde existen numerosas interferencias. Capturamos imágenes de señales de tráfico en entornos reales mediante dispositivos como teléfonos móviles y entrenamos el modelo utilizando el sitio web en línea EdgeImpulse de nuestro socio OpenMV, etiquetando aproximadamente 270 imágenes. El tiempo de entrenamiento fue únicamente de 10 minutos, logrando una precisión del modelo expresada en puntuación F1 del 92 %; además, la tasa de fotogramas de ejecución del modelo en OpenMV alcanzó los 10 fotogramas por segundo, lo que garantiza un funcionamiento muy fluido y una alta precisión.

Los usuarios pueden entrenar la detección de cualquier objetivo deseado siguiendo nuestros tutoriales en vídeo, como distintos dígitos, diversas frutas, diferentes señales, piezas variadas o incluso cualquier objeto irregular específico; asimismo, pueden entrenar el sistema para identificar la cantidad, las coordenadas y el nombre de la categoría del objeto específico.

Atención:Este tutorial en vídeo explica la función de detección de puntos objetivo mediante redes neuronales, compatible tanto con OpenMV4 H7 Plus como con OpenMV4 H7, ya que los modelos entrenados de detección de puntos objetivo FOMO son de reducido tamaño, ofrecen excelentes resultados y ocupan tan solo decenas de kilobytes; por lo tanto, aunque la memoria de ejecución de OpenMV4 H7 sea menor que la de la versión Plus, también es posible entrenar un modelo ligeramente más pequeño para su ejecución en OpenMV4.

A continuación se presenta una breve introducción al principio:

La principal decisión de diseño de la detección de puntos objetivo FOMO en OpenMV se basa en la idea de que muchos problemas de detección de objetos no requieren realmente el tamaño de los objetos, sino únicamente su posición en la imagen. Una vez que conocemos la posición del objeto, podemos realizar operaciones posteriores, como controlar un vehículo mediante OpenMV para que se desplace hacia el objetivo detectado, hacer que un dron aterrice en un punto específico o controlar un brazo robótico para que agarre un objeto objetivo determinado.

El modelo FOMO es un modelo diseñado específicamente por EdgeImpulse para entornos de microcontroladores; a diferencia de la detección habitual de objetos, este modelo solo puede detectar la posición y el número de múltiples objetos, pero no puede obtener sus dimensiones exactas.

El principio subyacente del modelo FOMO es muy sencillo y flexible. En primer lugar, divide la imagen en bloques de 8×8 píxeles. Si la imagen tiene una resolución de 96×96, se obtiene una cuadrícula de 12×12 celdas; si la imagen tiene una resolución de 360×360, se obtiene una cuadrícula de 40×40 celdas. A continuación, ejecuta de forma independiente una clasificación de imágenes en cada celda.

En comparación con YOLO V5 o MobileNet SSD, FOMO ofrece un rendimiento significativamente superior en la detección de una gran cantidad de objetos pequeños. La detección de puntos objetivo mediante FOMO es 30 veces más rápida que con MobileNet SSD.

Si los objetos que se van a detectar tienen tamaños similares, por ejemplo, si las señales que desea identificar tienen dimensiones prácticamente uniformes y no varían considerablemente entre sí (como ocurriría al comparar un objeto muy grande con otro muy pequeño), el rendimiento de FOMO será mejor.

OpenMV utiliza EdgeImpulse para entrenar en línea redes neuronales destinadas a la detección de objetos, lo cual comprende principalmente los siguientes pasos: captura y carga del conjunto de datos de imágenes, etiquetado de los objetos, entrenamiento, prueba del modelo y despliegue.

* Recopilación del conjunto de datos de imágenes: captura de imágenes de objetos específicos en los entornos reales en los que se llevará a cabo la identificación. Las imágenes reales se recopilan en los mismos entornos en los que se realizará la identificación; así, el entorno real de entrenamiento y el entorno real de detección son esencialmente idénticos, lo que permite obtener mejores resultados.

* Etiquetado de objetivos: delimitar cada objetivo que debe detectarse en nuestro conjunto de datos y asignarle su nombre correspondiente, con el fin de facilitar el entrenamiento posterior, así como la detección de la ubicación y el nombre de los objetivos.

* Modelo de entrenamiento: tras completar la anotación, se lleva a cabo el entrenamiento del modelo con los parámetros de la red neuronal convolucional diseñados por nosotros.

* Modelo de prueba: realizamos pruebas con el modelo entrenado; si los resultados no son satisfactorios, ampliamos conjuntamente el conjunto de entrenamiento o ajustamos los parámetros de entrenamiento y continuamos el entrenamiento hasta obtener un modelo satisfactorio.

*Implementación: simplemente copie los archivos del modelo entrenado en la unidad USB integrada de OpenMV y ejecute el modelo.

A continuación se muestra el procedimiento concreto:

01. Recopilación y carga del conjunto de datos de imágenes

Primero, accedemos al sitio web edgeimpulse.com, seleccionamos «Iniciar sesión», introducimos el nombre del nuevo proyecto y elegimos «Imágenes» — «Clasificar múltiples objetos».

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

II. Seleccione la imagen para subirla. Existen varios métodos para obtener el conjunto de datos de imágenes:

1. Capturar imágenes en tiempo real mediante el IDE de OpenMV. Utilice la herramienta «Editor de conjuntos de datos» incluida en el IDE de OpenMV para crear un nuevo conjunto de datos y capturar imágenes en tiempo real; para más detalles, consulte nuestro tutorial en vídeo anterior sobre clasificación de objetos y reconocimiento de mascarillas.

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

2. Imágenes descargadas desde Internet o tomadas directamente con un teléfono móvil. Lo ideal es que coincidan con el entorno real en el que se realizará la detección. Hemos preparado entre cuatrocientas y quinientas imágenes de señales de tráfico, como «Estacionamiento prohibido», «Bocina prohibida» y «Límite de velocidad: 80 km/h», todas capturadas en carreteras reales. Este conjunto de datos está disponible para su descarga en nuestro repositorio de GitHub y en nuestro sitio web de tutoriales.

02. Objetivo de la anotación

Se deben cargar aproximadamente 100 imágenes por categoría; una vez finalizada la carga de las imágenes, se procede a su anotación, indicando tanto la ubicación como la categoría de los objetos que se desean identificar.

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

03. Entrenamiento del modelo

Configure los parámetros del entrenamiento: cambie la resolución a 128 × 128 y seleccione todos los parámetros predeterminados; a continuación, haga clic en «Guardar».

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

Generar características; los tres colores representan respectivamente tres marcas.

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

Configurar los parámetros de entrenamiento para la detección de objetos. El número predeterminado de épocas de entrenamiento es 60, la tasa de aprendizaje es 0,001 y la proporción del conjunto de validación es del 20 %. Seleccione la casilla de verificación para el aumento de datos. Para el modelo de aprendizaje por transferencia, podemos elegir como predeterminado MobileNetV2 0,35 o MobileNetV2 0,1. (Nota: no se puede utilizar SSD, ya que SSD no es compatible con OpenMV.)

Seleccione «Iniciar entrenamiento». Tras completar el entrenamiento, el modelo de red neuronal obtenido presenta una puntuación F1 del 91,2 %, por lo que podemos guardar la versión actual.

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

Seleccione el almacenamiento, complete su descripción y seleccione Guardar.

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

04. Implementación del modelo

Exporte el archivo del modelo entrenado. Solo es necesario exportar la biblioteca; seleccione OpenMV y haga clic en Build para iniciar la implementación y exportación del modelo.

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

Descargará automáticamente el modelo que hemos exportado; aquí se muestra el modelo entrenado con nuestras 300 imágenes, con lo que finaliza completamente el proceso de entrenamiento.

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

05. Ejecutar el modelo

Ejecutar el modelo en OpenMV:

Conecte la OpenMV Plus, guarde los tres archivos entrenados en la unidad flash integrada de la OpenMV y abra el archivo ei_object_detection.py en el IDE de OpenMV. Haga clic en «Ejecutar»; los resultados de la ejecución se mostrarán en la terminal serie.

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

Esta función también es compatible con OpenMV4. Dado que OpenMV4 no dispone de SDRAM externa y tiene menos memoria, podemos reducir el tamaño del modelo para que sea compatible con OpenMV4.

Existen dos métodos para reducir el tamaño del modelo:

Uno. Reducir la resolución de entrenamiento, cambiando la resolución de 128 × 128 a 96 × 96.

II. Modificar el modelo de aprendizaje por transferencia utilizado, sustituyendo MobileNetV2 0,35 por MobileNetV2 0,1.

Finalmente, coloque el nuevo archivo entrenado en la OpenMV4 para ejecutarlo.

Este es nuestro tutorial sobre la detección de puntos objetivo. ¡Esperamos con interés sus resultados!

Artículos relacionados

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

Centinela de IA basado en OpenMV: recordatorio automático cuando las instalaciones críticas no están cerradas

Detecta automáticamente si la puerta de un lugar clave permanece abierta durante un tiempo prolongado y emite una alerta oportuna.

越界识别

Alerta ante la entrada no autorizada de personas; OpenMV interpreta la «sensación de límite de seguridad».

Detección de comportamientos de cruce de líneas virtuales por personas o equipos.

占道经营识别

Llega el «gestor urbano inteligente»: sistema automático de reconocimiento de ocupación ilegal de vías públicas basado en OpenMV

Identificación automática de actividades comerciales que ocupan vías públicas, lo que facilita la gestión urbana cotidiana.

煤气罐违规摆放识别

¿Cilindros de gas colocados de forma inadecuada? Utilice OpenMV para activar automáticamente alertas de peligro

Detección automática de ubicaciones inadecuadas de los cilindros de gas, identificando con antelación los riesgos de seguridad relacionados con el gas.

绝缘手套佩戴识别

¿Trabajo en tensión sin guantes aislantes? ¡OpenMV emite una alerta inmediata!

Reconocimiento automático de si el personal operativo lleva guantes aislantes, para facilitar la realización segura de las tareas.

铝板缺陷识别

Utilización de la cámara inteligente OpenMV para la detección en tiempo real de defectos en la superficie de las láminas de aluminio

Detección en línea de defectos en la superficie de las láminas de aluminio, como rayaduras y abolladuras, para apoyar el control de calidad.

Categorías populares

Idioma y región
Copyright © 2025 星瞳科技SingTown
粤ICP备17045162号