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 de redes neuronales entrenadas por OpenMV – Reconocimiento de señales de tránsito en entornos viales reales

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 objetivos:Se utiliza para encontrar la ubicación, la cantidad y las dimensiones de múltiples objetos distintos en una imagen.

En tutoriales en video anteriores, explicamos cómo utilizar OpenMV4 Plus para entrenar en línea redes neuronales destinadas a la clasificación de distintos objetos. Esta función permite determinar en tiempo real si una imagen capturada por la cámara de OpenMV corresponde a un objeto específico, como por ejemplo si una persona lleva mascarilla; sin embargo, no proporciona 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 significativamente mayor que la clasificación, es muy poco común en el ámbito de los microcontroladores. La unidad de control principal de OpenMV es el MCU STM32H7; actualmente, hemos incorporado una nueva función en OpenMV que permite ejecutar tareas similares a la detección de objetos directamente en microcontroladores, con un rendimiento excepcional.

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

Hoy les explicaremosEntrenamiento que demuestra la detección de señales de tránsito en entornos reales de carreteras, detectando las señales de tránsito presentes en nuestras vías realespor 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 ver todo el contenido del proyecto en la siguiente dirección, que incluye todo el código y los modelos: https://book.openmv.cc/project/traffic-sign.html

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

Los usuarios pueden entrenar cualquier objeto que deseen detectar siguiendo nuestros tutoriales en video, como distintos dígitos, diversas frutas, diferentes marcadores, piezas variadas o incluso cualquier objeto irregular específico, entre otros; con ello se logra identificar la cantidad, las coordenadas y el nombre de la categoría del objeto específico.

Nota:Este tutorial en video sobre la función de detección de puntos objetivo mediante redes neuronales no solo es compatible con la OpenMV4 H7 Plus, sino también con la OpenMV4 H7, ya que los modelos entrenados de detección de puntos objetivo FOMO son pequeños, ofrecen un excelente rendimiento y ocupan solo decenas de kilobytes; incluso si la memoria de ejecución de la OpenMV4 H7 es menor que la de la versión Plus, aún podemos entrenar un modelo ligeramente más pequeño para ejecutarlo en la OpenMV4.

A continuación, se presenta una breve explicación del principio:

Las principales decisiones de diseño de la detección de puntos objetivo FOMO en OpenMV se basan en la idea de que muchos problemas de detección de objetos no requieren realmente el tamaño de los objetos, sino únicamente su ubicación en la imagen. Una vez que conocemos la ubicación de los objetos, podemos realizar operaciones posteriores, como controlar un vehículo para que se desplace hacia el objetivo detectado mediante OpenMV, 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 de objetos convencional, este modelo solo puede detectar la ubicación y la cantidad de múltiples objetos, pero no puede obtener sus dimensiones exactas.

El principio subyacente del modelo FOMO es muy sencillo y flexible. Primero 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. Luego, ejecuta de forma independiente la clasificación de imágenes en cada celda.

En comparación con YOLO V5 o MobileNet SSD, FOMO presenta un rendimiento significativamente superior en la detección de una gran cantidad de objetos pequeños. La detección de puntos objetivo de FOMO es 30 veces más rápida que la de 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 iguales y no varían considerablemente entre un objeto muy grande y otro muy pequeño, el rendimiento de FOMO será mejor.

OpenMV utiliza EdgeImpulse para entrenar en línea una red neuronal destinada a la detección de puntos objetivo, lo cual comprende principalmente los siguientes pasos: captura y carga del conjunto de datos de imágenes, etiquetado de los objetivos, entrenamiento, prueba del modelo y despliegue.

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

* Etiquetado de objetivos: delimitar cada objetivo que se debe detectar en nuestro conjunto de datos y asignarle el 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: una vez finalizada la anotación, se entrena el modelo según los parámetros de la red neuronal convolucional diseñada por nosotros.

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

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

A continuación, se muestra el procedimiento específico:

01. Recopilar y cargar el conjunto de datos de imágenes

I. En primer lugar, inicie sesión en el sitio web edgeimpulse.com, seleccione «Iniciar sesión», ingrese el nombre del nuevo proyecto y seleccione «Imágenes» → «Clasificar múltiples objetos»

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

II. Seleccione la imagen para cargarla. 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 obtener más detalles, consulte nuestro tutorial en video anterior sobre clasificación de objetos y detección 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ánsito, como «Estacionamiento prohibido», «Bocina prohibida» y «Límite de velocidad: 80 km/h», todas capturadas en vías 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 cargadas las imágenes, se procede a su anotación, indicando la ubicación y la categoría de los objetos que se desean identificar.

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

03. Entrenar el modelo

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

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

Generar funciones; los tres colores representan respectivamente las 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 aumentar los datos. Para el modelo de aprendizaje por transferencia, puede elegir MobileNetV2 0,35 o MobileNetV2 0,1, ambos predeterminados. (Nota: no se puede utilizar SSD, ya que SSD no es compatible con OpenMV.)

Seleccione Iniciar entrenamiento. Una vez finalizado el entrenamiento, el modelo de red neuronal obtenido tendrá una puntuación F1 del 91,2 %; podemos guardar esta 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 exportamos. Aquí se muestra el modelo entrenado con nuestras 300 imágenes, con lo cual concluye por completo nuestro 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 USB 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 funcione en OpenMV4.

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

1. Reduzca la resolución de entrenamiento, cambiando la resolución de 128 × 128 a 96 × 96.

II. Modificar el modelo de aprendizaje por transferencia utilizado, cambiando MobileNetV2 0.35 a MobileNetV2 0.1.

Finalmente, coloque el nuevo archivo entrenado en la OpenMV4 y ejecútelo.

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 los lugares clave no están cerrados

Detecta automáticamente si las puertas de lugares clave permanecen abiertas durante un tiempo prolongado y emite una alerta oportuna.

越界识别

Alerta inmediata ante la invasión de personal; OpenMV interpreta la «sensación de límites de seguridad».

Identifica comportamientos de cruces de líneas de advertencia virtuales por parte de personas o equipos.

占道经营识别

¡Llegó el «agente de control urbano con IA»! 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 cotidiana de las ciudades.

煤气罐违规摆放识别

¿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 para identificar anticipadamente riesgos de seguridad relacionados con el gas.

绝缘手套佩戴识别

¿No usó guantes aislantes durante el trabajo con corriente? ¡OpenMV emite una alerta inmediata!

Identifica automáticamente si el personal que realiza las tareas lleva guantes aislantes, lo que contribuye a garantizar la seguridad durante las operaciones.

铝板缺陷识别

Utilice la cámara inteligente OpenMV para identificar en tiempo real los defectos en la superficie de las láminas de aluminio

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

Categorías populares

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