# Reconocimiento de señales de tráfico

El reconocimiento de señales de tráfico es una tecnología aplicada a la nueva generación de coches de tal manera que son capaces de identificar estas señales durante la circulación. El motivo de esta tecnología es ayudar en la seguridad vial del conductor, ya que de esta manera si el conductor se encuentra cansado o no ha sido capaz de fijarse en la señal, este sistema informa al conductor de la velocidad máxima permitida en aquella vía.
Esta tecnología ha sido desarrollada por empresas como Ayonix y Continental. Apareció por primera vez a finales de 2008 sobre el nuevo diseño del BMW 7-series, y el siguiente año en el Mercedes-Benz S-Class. Actualmente, estos sistemas sólo detectan los límites de velocidad. Aunque los sistemas de la segunda generación ya detectan otras restricciones, como es el caso del Volkswagen Phaeton 2011.

## Introducción

Mediante un tratamiento digital de imágenes que captan una cámara que va grabando la carretera, un ordenador es capaz de leer una señal, interpretarla y ayudar al conductor para aumentar su seguridad o incluso ahorrarse multas por distracción. La tecnología TSR (Traffic Sign Recognition) tiene una aplicación pasiva y activa.
* Aplicación pasiva. Esta aplicación consiste en advertir al conductor mediante pictogramas, sonidos o cualquier otro tipo de señales de que está infringiendo una limitación de velocidad, que entra en zona de curvas peligrosas, peligro de nieve / hielo, etc. El conductor tiene como obligación leer todas las señales, pero puede ser de ayuda ante una distracción.
* Aplicación activa. Esta aplicación consiste en que el coche interviene para evitar un accidente. Por ejemplo, si se circula a 90 km /h y el coche lee un STOP, y no interpreta que el conductor vaya a parar, ordena a los frenos a parar el coche antes de llegar a la señal para evitar un posible accidente. Dependiendo del fabricante, esta ayuda puede ser desconectable voluntariamente o no.

## Señales de tráfico

El reconocimiento de señales de tráfico es una parte del caso general del reconocimiento de patrones. Donde el problema importante del reconocimiento de patrones es la dificultad de construir patrones característicos (plantillas). Por el contrario, las señales de tráfico se caracterizan por:
* Están hechas por colores vivos y específicos para llamar la atención del conductor.
* Son de diferentes formas geométricas (triángulos, rectángulos, círculos o elipses)
* Para cada una hay una plantilla específica.
De esta manera es más fácil desarrollar un algoritmo, ya que el equipo ya tiene un conocimiento a priori de los objetos a buscar en la imagen.

## El algoritmo

El algoritmo se divide en dos partes donde cada una de estas incluye un cierto número de pasos. La primera parte es la detección de la ubicación del centro de la señal (que se utiliza como punto de referencia). La segunda fase es la identificación de la señal buscando a partir de una imagen plantilla, ya guardada en una base de datos.

### Detección de la ubicación de la muestra de la imagen
#### Segmentación de umbral de la imagen

El primer paso es encontrar la región de interés a partir de la segmentación. En este caso la región de interés es la parte de la imagen que contiene la señal de tráfico. De esta manera obtenemos una imagen en blanco y negro.

#### Adelgazamiento y detección de bordes

Después de la segmentación de la imagen, se lleva a cabo un algoritmo de adelgazamiento. El Objetivo de este proceso es la reducción del grosor de los bordes en la imagen binaria. De este modo, conseguimos que los bordes tengan un grosor de un píxel. Esto implica que sea más fácil para el algoritmo para la detección de líneas que se hará posteriormente y además aumenta en velocidad (menos píxeles de interés).

#### Región de identificación

La región de identificación es el cálculo desde abajo a la izquierda hasta arriba a la derecha de las coordenadas de los rectángulos que incluyen las regiones de interés. De esta manera la búsqueda se centra en esta región. Entonces las regiones con un número total de píxeles menores de un cierto valor son eliminados y no se examinan en los siguientes pasos.

#### Línea de detección

A partir de la región de interés (ROI), se lleva a cabo la detección de la línea para identificar la forma, ya sea un triángulo, rectángulo, círculo o elipse. En el caso del triángulo y del rectángulo se utiliza la transformada de Hough.

#### Comprobación de la forma

Los ángulos entre las líneas ahora se pueden calcular, utilizando la línea de coeficientes de dirección privada de la verificación anterior. Si aparecen tres ángulos entre [50,70] o [-70,50] grados, entonces la forma es aceptada como un triángulo. En el otro caso el algoritmo continúa con el paso de detección del elipse.

#### Transformada de Hough para la detección de la elipse

Para la detección de la elipse el algoritmo utiliza un enfoque diferente de la Transformada de Hough, el RHT (Transformada de Hough Aleatoria). Tras la detección de un elipse, el algoritmo ejecuta una comprobación de si ésta es aceptable o no, en función de su excentricidad y el número de puntos que pertenecen a la elipse. A partir de este momento, la elipse se considera un círculo con un cierto radio.

#### Cálculo de los vértices y del centro de gravedad (triángulos y rectángulos)

Es necesario el cálculo de las coordenadas del centro de gravedad y de los vértices, ya que en los pasos siguientes se aplicará en la comparación con las plantillas (patrones). En este punto la detección de la ubicación de la señal es completa.

### Reconocimiento de la señal

Este reconocimiento se lleva a cabo con el uso de la correlación cruzada entre la región de interés encontrada en los pasos anteriores e imágenes específicas de la plantilla. Para el proceso de coincidencia, las dos imágenes deben tener la misma coordenada del sistema, de modo que a partir de las plantillas se realiza la investigación en la imagen.

#### Transformación afín (triángulo, rectángulo)

Los dos sistemas de coordenadas son diferentes por dos componentes diferentes de la traducción paralela a cada eje, puede ser de rotación angular o coeficientes de la escala. Los puntos comunes utilizados para el cálculo de los parámetros de transformación son los vértices de la forma detectada. Sus coordenadas en el sistema de plantillas (patrones) ya son conocidas. Todas las imágenes de la plantilla se transforman y las imágenes de nueva construcción tienen las mismas dimensiones con la búsqueda de imagen. El patrón se encuentra en el mismo lugar que la señal detectada.

#### Transformación por semejanza (círculo)

En el caso de una señal en forma de círculo, sólo hay un punto común, el centro, por lo tanto la transformación afín no se puede utilizar. Entonces se utiliza una transformación por semejanza. Se considera que los dos sistemas son diferentes para un coeficiente de escala (el mismo de X e Y). La escala se calcula a partir de la relación entre el radio de la señal en las dos imágenes.

#### Delimitación de la zona de búsqueda

Los píxeles fuera de la región de interés no aportan información necesaria, es por eso que se dejan en negro. Lo que interesa son los píxeles del interior de la región que incluye la señal de tráfico, entonces estos píxeles mantienen su color. En el caso del círculo, es fácil determinar si un píxel pertenece o no. Todos los píxeles con una distancia mayor que el radio se establecen como fondo.

#### Coincidencia de la correlación cruzada

Para cada píxel en la región de interés, el coeficiente de correlación cruzada entre el patrón y la búsqueda de imágenes, se calcula para cada canal de color (rojo, verde y azul). El coeficiente final es la media de los tres coeficientes RGB. El patrón con el mayor coeficiente corresponde a la señal registrado.

## Mejoras para el futuro

Basado en la experiencia adquirida en las pruebas, los aspectos que deben ser investigados más a fondo y mejorarse en el futuro son:
* Reconocimiento de los signos de una forma más compleja (octógono, forma de diamante). La forma de estos signos pueden ser detectados utilizando otra variación de la transformada de Hough, la transformada de Hough Generalizada. Puede detectar las formas en una imagen, que no necesariamente tienen que ser descritas por una ecuación matemática analítica como el triángulo o el círculo.
* Reconocimiento de los dos (o más) signos de la misma región de interés. Es posible que en algunos casos aparezcan dos o más signos en la misma región de interés. Este problema se puede tratar con cambios en la estructura del algoritmo.
* Aumento de la velocidad del algoritmo mediante la mejora de fuentes y otra vez, por los posibles cambios en su estructura.
* Incremento de la robustez de los algoritmos en los cambios de condición de luz. La representación RGB está lejos de la concepción humana del color. Por otra parte, el procesamiento digital de imágenes del modelo de color RGB tiene varias desventajas:
* Los tres componentes (R, G y B) dependen de la intensidad.
* Colores, que para un ser humano pueden ser perceptivamente cerca, no deben estar cerca el uno del otro (distancia euclídea) en RGB el espacio.
* Superficies suavemente sombreadas pueden corresponder a varios grupos en un espacio de color.

## Soluciones de mejora del reconocimiento

Estos factores indican que el umbral de color, un paso esencial para el proceso en conjunto, se ve muy afectada por los cambios de condición de luz.
Una posible solución al problema es la sustitución de los valores umbral durante la adquisición de las imágenes, fotografiando una placa de metal construida con el mismo color que las señales con las condiciones de luz actuales y medición de los nuevos umbrales.
Por otro lado, el sistema de color HSI puede ser utilizado en lugar del RGB. El modelo HSI (del inglés Hue, Saturation, Intensity: tonalidad, saturación, intensidad) es mucho menos sensible a cambios en condiciones de luz que el RGB.
Otro método es el uso de redes neuronales. Las redes neuronales son un método para el reconocimiento de patrones que recientemente comenzó a ser investigado y se asocia con la inteligencia artificial. Se simula el sistema nervioso humano y utiliza su capacidad de aprender para encontrar reconocibles las formas y objetos en las imágenes. La programación es mucho más complicada, pero también más eficaz y más rápida.

## Vehículos que utilizan el reconocimiento de señales de tráfico

* Audi A8
* BMW Serie 7
* BMW Serie 5 Gran Turismo
* BMW Serie 5
* Mercedes-Benz Clase E
* Mercedes-Benz Clase S
* Opel Insignia
* Opel Corsa
* Saab 9-5
* Volkswagen Phaeton
* Lexus GS
* Lexus LS
Marcas que ya utilizan este sistema: Audi
BMW Citroën Ford Honda Infiniti Jaguar JEEP Land Rover Lexus Mercedes Nissan Opel Peugeot Porsche Renault Toyota Volkswagen Volvo

## Bases de datos

* Detección y Reconocimiento de Señales de tránsito utilizando Matching de Chamfer
* Opel Eye
* Automatic Traffic Sign Recognition in Digital Images
* Continental Automotive Traffic Sign Recognition
* Jackrs's Papers/ney/1.TRAFFIC_SIGN_Lorsakul_ISR.pdf Traffic Sign Recognition Using Neural Network on OpenCV (enlace roto disponible en Internet Archive; véase el historial, la primera versión y la última).