Red de Respuestas Legales - Derecho de bienes - ¿Sistema de detección de flujo de tráfico basado en visión artificial?

¿Sistema de detección de flujo de tráfico basado en visión artificial?

1. Introducción

Con el crecimiento de la población y la creciente presión del tráfico, los sistemas de transporte inteligentes se han convertido en un tema candente en los últimos años. La detección del flujo de tráfico es una parte básica del transporte inteligente y juega un papel importante en el sistema. Actualmente existen muchos métodos para detectar el flujo de tráfico, como el método del dispositivo de inducción electromagnética, el método de detección ultrasónica de información del flujo de tráfico, etc. De hecho, la velocidad y el tipo de vehículos en movimiento siempre cambian, por lo que son comunes problemas como señales reflejadas inestables y grandes errores de medición. En comparación con los métodos anteriores, los métodos de detección del flujo de tráfico basados ​​en video tienen muchas ventajas: 1. Extraer información confiable de imágenes de video para completar el monitoreo del tráfico vial y mejorar la automatización de carreteras y vehículos. 2. Las cámaras instaladas en los sistemas de vigilancia del tráfico son más económicas y menos destructivas que otros sensores. 3. Se instalan muchas cámaras en el sistema de tráfico real para controlar el tráfico, lo que puede matar dos pájaros de un tiro.

Los métodos tradicionales de detección de vídeo existentes se basan en ordenadores industriales, sus algoritmos han madurado y se han formado productos relacionados. Pero también hay algunas deficiencias: 1. Dado que las CPU generales no tienen multiplicadores de hardware dedicados, es difícil lograr el procesamiento de imágenes en tiempo real. 2. Es una computadora industrial general, que ejecuta el sistema Windows y el costo es alto. Siempre preste atención a si la máquina falla, si el sistema está infectado con virus y cómo controlar las actualizaciones de parches del sistema. Con base en los dos puntos anteriores, este artículo propone una solución de reconocimiento de imágenes integrada basada en TMS320DM642 (en lo sucesivo, DM642) para resolver los problemas existentes.

2. El principio y composición del sistema de detección del flujo de tráfico.

2.1 Principio de funcionamiento del sistema de detección de flujo de tráfico

El sistema de detección de flujo de tráfico consta de recopilación de vídeo, procesamiento de señales de vídeo digital de flujo de tráfico, algoritmos de detección de flujo de tráfico en diferentes entornos y flujo de tráfico. composición de salida del resultado de la detección. El chip central de adquisición de imágenes digitales es TVP5150, que puede convertir señales de vídeo analógicas en señales de vídeo digitales. El DM642 ejecuta algoritmos de imágenes para procesar digitalmente las imágenes recopiladas. El algoritmo de detección de video digital del flujo de tráfico utiliza principalmente el método mejorado de diferencia de cuadros para la detección de movimiento durante el día y el método de detección de luz durante la noche. Según el carril, las imágenes de la autopista recopiladas se dividen en cuatro partes, cada una de las cuales corresponde a un carril. En cada canal se colocan bobinas virtuales (refiriéndose a las áreas de detección rectangulares en la imagen, denominadas colectivamente bobinas virtuales). Cuando un automóvil pasa sobre una bobina virtual, los valores de los píxeles en la bobina virtual cambian. De acuerdo con este cambio, el puerto de E/S de control genera pulsos correspondientes para cada carril y luego envía los pulsos al semáforo de la carretera para controlar los semáforos, logrando así el propósito del transporte inteligente. Al mismo tiempo, la información del flujo de tráfico se puede transmitir al centro de seguimiento a través de la red.

2.2 Hardware del sistema de detección de flujo de tráfico

DM642 es un chip de procesamiento de señal digital especialmente diseñado por Texas Instruments para entrada y salida de vídeo multicanal. Sus poderosas capacidades informáticas se basan en la estructura de palabras de instrucción ultralargas de alto rendimiento de segunda generación, que puede ejecutar ocho instrucciones en paralelo, lo que hace que el chip sea ideal para el procesamiento de imágenes digitales. Teniendo en cuenta los requisitos de trabajo reales y la estabilidad del sistema, la frecuencia principal del DM642 se establece en 600 MHz. De acuerdo con el entorno de aplicación real y las necesidades de los sistemas integrados, el sistema no solo amplía la parte de almacenamiento necesaria y la parte de captura y reproducción de vídeo, sino que también amplía principalmente las funciones de E/S digital multicanal, puerto serie asíncrono e interfaz de red. , que facilita la comunicación entre el sistema y el mundo exterior. Los objetos de hardware específicos se muestran en la Figura 1. La explicación es la siguiente: 1. SDRAM externa, capacidad 4M×64 bits; 2. Flash extendido, capacidad 4M×8 bits; 3. 2 canales de entrada de vídeo analógico estándar PAL/NTSC (lado CVBS o S), 1 canal de Salida de vídeo analógica estándar PAL/NTSC; 4. Ampliar 8 puertos de E/S digitales a través de CPLD para generar información sobre el flujo de tráfico en el carril; 5. 2 interfaces UART, que se pueden configurar con interfaces estándar RS232/RS422/RS485; -Circuito de vigilancia RTC del reloj de tiempo; interfaz Ethernet estándar de 7,10 M/100Mbase-TX.

La composición del sistema se muestra en la Figura 2.

En la figura, TMS320DM642 expande la parte de la memoria externa a través del bus EMIF de 64 bits de ancho, incluidos 32 m bytes de DRAM síncrona, que se utiliza para almacenar códigos de usuario y datos de imágenes durante el tiempo de ejecución real. 4M FLASH se utiliza para almacenar el gestor de arranque y las aplicaciones de usuario. Al inicio, el código y los datos en Flash se cargan en la memoria (SDRAM) y los parámetros de configuración de la bobina virtual del usuario también se pueden almacenar en FLASH. El ancho de datos de SDRAM es de 64 bits y el ancho de datos de FLASH es de 8 bits, que corresponden a los espacios CE0 y CE1 de TMS320DM642 respectivamente. Asimismo, UART y CPLD también están conectados al DM642 a través del bus EMIF. UART se utiliza para ampliar el puerto serie y en este sistema se puede utilizar para ampliar la interfaz RS232. CPLD se utiliza para implementar la lógica de enlace entre FLASH y UART y para expandir las E / S digitales generales. Para facilitar la implementación del software, estas dos partes también están conectadas al espacio CE1 de DM642 y sus registros internos son parte del. Espacio de almacenamiento CE1.

2.3 Parte de recopilación y salida de vídeo

Para recopilar información sobre el flujo de tráfico en las intersecciones, este sistema está diseñado con dos entradas de vídeo analógico. El sistema convierte la señal de video analógica recopilada por la cámara de TVP5150 en una transmisión de video digital de acuerdo con el estándar ITU-RBT.656 y envía la señal de sincronización integrada a VP1 y VP2 de DM642. Las señales de sincronización horizontal y de sincronización de campo de la imagen están integradas en las señales de base de tiempo EAV y SAV en el flujo de datos de video. El puerto de video solo requiere el reloj de muestreo de video y la señal de habilitación de muestreo. DM642 puede realizar la adquisición continua de tres cuadros de imágenes de video digital a través de FIFO mientras procesa un cuadro de imagen, los otros dos cachés también pueden realizar la adquisición cíclica de imágenes, resolviendo la contradicción entre la adquisición de video de velocidad constante y el procesamiento de imágenes de velocidad variable. Este sistema ha ampliado una salida de vídeo para reproducción local. Esta parte de la función se puede eliminar después de la depuración del sistema. La salida de vídeo la implementa el chip SAA7121 de Philips. SAA7121 convierte la señal de vídeo digital del puerto VP0 del DM642 en una señal analógica PAL (50 Hz) o NTSC (60 Hz) y la envía a la salida del puerto de vídeo externo.

3. Parte del software

3.1 Algoritmo de estadísticas de tráfico

Debido a los grandes cambios en la intensidad de la luz de la carretera durante el día y la noche, se requiere una mayor adaptabilidad del algoritmo. propuesto. Para obtener información sobre el flujo de tráfico durante el día, todo el algoritmo procesa el día y la noche por separado. El programa cambia automáticamente entre los dos algoritmos según las diferentes condiciones de iluminación en ese momento, garantizando así el entorno de ejecución de todo el algoritmo.

Seleccione 3.1.1 bobina virtual;

La selección de la bobina virtual está relacionada con la precisión y velocidad del algoritmo de detección, y también se ve afectada por la altura e inclinación de instalación de la cámara. como la profundidad de campo de la cámara. En general, la bobina virtual está cerca de la parte inferior de la imagen y la distancia entre vehículos es grande para facilitar la detección. Cuanto mayor sea la bobina virtual, mayor será la precisión relativa de la detección y más tardará el algoritmo correspondiente. Debido a que todo el sistema tiene que adaptarse a varias intersecciones y carreteras, la elección de las bobinas virtuales queda en manos del usuario. Desarrollamos software para PC usando VC6.0 y los usuarios usan este software para configurar el tamaño y la posición de la bobina virtual en cada canal a través del puerto serie.

3.1.2 El intervalo de tiempo entre cuadros de detección adyacentes:

Debido a que todo el sistema tiene que comunicarse con la señal, el tiempo total que necesitamos para procesar las imágenes en cada carretera no puede exceder los 0,25 segundos. Aquí, elija un intervalo de fotograma de 0,125 segundos.

3.1.3 Algoritmo de detección de flujo de tráfico www.kaifa.com/html/jswz

Debido a que el algoritmo de detección de flujo de tráfico diurno ya está muy maduro en computadoras industriales, no iré en detalles aquí. La visibilidad de la carretera es relativamente baja por la noche y el algoritmo identifica principalmente las luces de los automóviles. Por la noche, el brillo de los faros es muy fuerte, siempre que se puedan detectar correctamente los faros, se podrá detectar el vehículo. La interferencia en el algoritmo proviene del reflejo de la luz de los faros en la superficie de la carretera. Después de las pruebas de simulación con Matlab, se descubrió que los puntos brillantes en la imagen binarizada son básicamente la forma de las luces del automóvil, mientras que las áreas reflectantes de la carretera divergen hacia adelante.

En consecuencia, al detectar las características de forma de los puntos brillantes en las ventanillas del automóvil, se pueden identificar las áreas reflectantes de las luces del automóvil y la superficie de la carretera. La selección del umbral para la binarización de imágenes adopta el método Otsu. En comparación con el método empírico, el método Otsu obtiene el umbral calculando la varianza y es altamente adaptable al entorno, pero también aumenta la complejidad temporal y espacial del algoritmo. La eliminación de ruido de imágenes utiliza un filtro mediano de 3*3 y hemos mejorado su algoritmo rápido y solo apunta a bobinas virtuales.

La imagen original en escala de grises de la superficie de la carretera se muestra en la Figura 3, y la Figura 4 es la imagen binaria. El área rectangular en la imagen es una bobina virtual y hay dos áreas blancas en la bobina. Determine si se trata de la luz de un automóvil según la relación de aspecto máxima (en píxeles) del área blanca. La longitud del área blanca correspondiente a la lámpara suele ser menor o igual que el ancho, como se muestra en la Figura 5. El área blanca correspondiente al reflejo de la carretera es más larga que el ancho, como se muestra en la Figura 8. El área blanca en la bobina virtual es el reflejo de la carretera.

3.2 Marco de software del sistema basado en DSP/BIOS

El entorno de desarrollo de software del sistema es CCS, utilizando el kernel DSP/BIOS proporcionado por TI y el marco de referencia de software RF5 recomendado por TI. Configure la entrada, el procesamiento, la salida y otros subprocesos a través de DSP/BIOS, y la sincronización entre estos subprocesos se realiza mediante semáforos. Al utilizar el kernel DSP/BIOS, la configuración de DSP/BIOS es simple y fácil de cambiar, lo que tiene muchas ventajas sobre los métodos tradicionales. El uso de la arquitectura de software DSP RF5 (ReferenceFramework5) acorta enormemente el tiempo de desarrollo y maximiza la portabilidad y solidez del código. La arquitectura del software consta de CSL (biblioteca de soporte de chip), DSP/BIOS y capa de controlador, capa de biblioteca de procesamiento de señales y capa estándar de algoritmo de abajo hacia arriba. Estas tres capas constituyen RF5, siendo la capa superior la capa de aplicación del usuario. Es conveniente para los usuarios modificar el código de mantenimiento y solo necesita ser modificado por la capa superior.

El controlador de entrada utiliza el controlador de clase FVID proporcionado por TI. El controlador realiza la configuración del puerto de vídeo DM642 y la configuración del chip de conversión A/D TVP5150 mediante el módulo IIC a través de los parámetros de configuración de la estructura, de modo que el TVP5150 pueda emitir el flujo de vídeo digital en formato PAL y recopilar lo recopilado. vídeo a través del FIFO del puerto de vídeo. La imagen se escribe en el área de almacenamiento especificada. Cuando se completa la recopilación de imágenes, se envía un mensaje al módulo de procesamiento a través del semáforo y la estructura del mensaje almacena la primera dirección del espacio de almacenamiento donde se encuentran los datos de la imagen. Luego, el módulo de entrada espera una respuesta del módulo de salida para continuar procesando el siguiente cuadro de imágenes. El módulo de procesamiento se encarga de ejecutar el algoritmo estadístico del flujo de tráfico. La dirección de datos de la imagen se extrae de la estructura del mensaje enviada por el módulo de entrada para el procesamiento del algoritmo de imagen, y los resultados del cálculo se envían a través del puerto de E/S extendido del CPLD y la información de monitoreo del flujo de tráfico se transmite a la máquina de señales.

3.3 Optimización del código

El programa está escrito principalmente en lenguaje C y algunos códigos centrales se compilan y optimizan para cumplir con los requisitos en tiempo real. La optimización del programa en lenguaje C afecta directamente la eficiencia del programa. El método de intercambiar espacio por tiempo se usa ampliamente en programas para mejorar la eficiencia de ejecución del código. Hay muchas formas de optimizar el código. Los métodos principales son 1. Optimización del compilador. Seleccione diferentes opciones de optimización de la compilación, como la opción -pm–OE. 2. Optimice el código escrito en lenguaje C y agregue información de instrucciones. Información indicativa de uso común como #PragmaMUST_ITERATE, etc. 3. Escriba un programa de ensamblaje lineal para mejorar la velocidad de ejecución del programa. 4. Escribir programas ensambladores para implementar la canalización de software. Se pueden utilizar muchos medios técnicos en la canalización, como gráficos de dependencia, programas de intervalos de iteración, etc. Se describe en la documentación técnica proporcionada por TI y no se repetirá aquí.

4. Análisis y resultados experimentales

Para verificar la confiabilidad del sistema de detección de flujo de tráfico, el algoritmo se trasplantó al sistema de detección y se utilizó en múltiples pasos elevados de carreteras utilizando trípodes para instalar cámaras.Se llevaron a cabo experimentos de prueba reales. Debido a que hay una cierta cantidad de peatones en el paso elevado, el paso elevado tiembla ligeramente, lo que tiene un cierto impacto en la estabilidad de la cámara. Además, el fenómeno de la conducción de vehículos provoca ciertos errores en los resultados de la detección, pero los resultados de la detección siguen siendo buenos. En la Tabla 1 se muestra un conjunto de pruebas. En el entorno natural, el tamaño de la imagen recopilada es 720×576.

Entre ellos, la hora de medición durante el día es las 3:27 p. m. y la hora de medición durante la noche es las 6:50 p. m. El clima estaba soleado y el lugar de prueba eran los dos carriles de Xueyuan Road, distrito de Haidian, Beijing. El tamaño del CCD es de 1/3 de pulgada. La distancia focal del objetivo es de 3,5 a 8 mm y la relación de apertura máxima es de 1:1,4.

Tabla 1 Resultados de la prueba de flujo de tráfico

A partir de los resultados de la detección de flujo de tráfico en la Tabla 1, podemos ver que los resultados de la detección de video durante el día son ligeramente mejores, pero la apariencia y el brillo de la luz nocturna son bastante diferentes, con ciertos errores. Sin embargo, la precisión de reconocimiento del sistema es superior al 80%. Los experimentos muestran que este método tiene una alta precisión de detección, un bajo costo de implementación y un funcionamiento confiable del sistema.

Las innovaciones del autor: 1. En el pasado, el hardware para la detección del flujo de tráfico basado en visión eran ordenadores industriales. Este artículo propone una nueva solución e introduce un sistema integrado de detección de flujo de tráfico basado en TMS320DM642. Los experimentos han demostrado que el sistema es de tamaño pequeño, de bajo costo, estable y confiable. 2. Este artículo presenta el algoritmo de detección del flujo de tráfico nocturno. El algoritmo tiene baja complejidad y velocidad de procesamiento rápida, lo que no solo puede garantizar la detección en tiempo real del flujo de tráfico, sino que también cumple con los requisitos de precisión.

Para obtener más información sobre licitaciones de ingeniería/servicios/adquisiciones y para mejorar la tasa de adjudicación de ofertas, puede hacer clic en la parte inferior del sitio web oficial de servicio al cliente para realizar una consulta gratuita: /#/? fuente=bdzd