3.- Métodos desarrollados. -...

23
Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 1 3.- Métodos desarrollados. En la aplicación que estamos desarrollando tenemos que analizar, mediante tratamiento digital de imágenes, los haces de cruce proyectados sobre una pantalla blanca. Es decir, se toman fotos de la proyección del haz sobre la pantalla para su posterior análisis. Es importante destacar la diferencia de este método respecto a la medida reglamentaria, en la que la célula fotoeléctrica recibe la luz directamente desde la fuente, no proyectada en ninguna pantalla. 3.0.- Pre-tratamiento de las imágenes Lo primero que tenemos que hacer tras capturar la imagen, es prepararla para nuestro análisis. Fundamentalmente el objetivo en este caso es quedarnos sólo con la región que nos interesa y descartar el resto, ya que todo lo que no nos sirve lo único que hará será ralentizar los cálculos y meter ruido pudiendo afectar a los resultados. Por ejemplo, en la figura 11 se muestra una imagen tomada de un cruce, en la que se indica la región de interés: Fig. 11: Región de interés de un haz de cruce. Como se ve, hay muchas zonas de la imagen que deberían eliminarse para agilizar cálculos y para poder tratar la imagen adecuadamente. Incluso las áreas iluminadas por el haz, a la derecha y a la izquierda, no son interesantes pues estarían fuera del campo que marca la

Transcript of 3.- Métodos desarrollados. -...

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 1

3.- Métodos desarrollados.

En la aplicación que estamos desarrollando tenemos que analizar, mediante tratamiento

digital de imágenes, los haces de cruce proyectados sobre una pantalla blanca. Es decir, se

toman fotos de la proyección del haz sobre la pantalla para su posterior análisis. Es importante

destacar la diferencia de este método respecto a la medida reglamentaria, en la que la célula

fotoeléctrica recibe la luz directamente desde la fuente, no proyectada en ninguna pantalla.

3.0.- Pre-tratamiento de las imágenes

Lo primero que tenemos que hacer tras capturar la imagen, es prepararla para nuestro análisis.

Fundamentalmente el objetivo en este caso es quedarnos sólo con la región que nos interesa y

descartar el resto, ya que todo lo que no nos sirve lo único que hará será ralentizar los cálculos

y meter ruido pudiendo afectar a los resultados. Por ejemplo, en la figura 11 se muestra una

imagen tomada de un cruce, en la que se indica la región de interés:

Fig. 11: Región de interés de un haz de cruce.

Como se ve, hay muchas zonas de la imagen que deberían eliminarse para agilizar cálculos y

para poder tratar la imagen adecuadamente. Incluso las áreas iluminadas por el haz, a la

derecha y a la izquierda, no son interesantes pues estarían fuera del campo que marca la

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 2

reglamentación, porque estas áreas iluminan zonas están fuera de los límites de la carretera

cuando se proyectan en un coche.

Como las imágenes están rodeadas de zonas oscuras no iluminadas, aislar la región de interés

del resto es sencillo. En nuestro caso, nos hemos ayudado de la función ‘histc’, que devuelve el

número de elementos de una fila o columna que están comprendidos en un rango de valores

de intensidad determinados. Descartaremos todas las filas y columnas que no tengan un

número mínimo de píxeles con una intensidad mínima. Hemos utilizado expresiones del tipo:

if histc(Anorm(xini,:,1),0.2:0.1:1)<10 then …

Es decir, que si el número de píxeles en la fila xini con intensidad superior a 0.2, es menor a 10,

entonces esa fila la descartaremos.

3.1.- Colorimetría del Haz de Cruce

Como se ha comentado anteriormente, el color del haz de cruce de un faro de automóvil tiene

que estar acotado entre unos límites, de forma que no tienda excesivamente al rojo o al

amarillo, pero tampoco a cualquier otro color.

Según la reglamentación, el color se debe medir con unas células fotoeléctricas especiales

calibradas, situadas a 10m de distancia de la fuente de luz. La célula recibe directamente la luz

de la fuente, y caracteriza el color. Si nos fijamos, cuando estamos conduciendo realmente es

así como percibimos el color de las luces de los coches a nuestro alrededor, es decir mirando

directamente a la fuente de luz.

Fig. 12: Esquema básico de funcionamiento de un colorímetro.

Sin embargo, en nuestro caso queremos caracterizar el color de un haz de cruce a partir de una

imagen tomada de la proyección de la fuente de luz en una pantalla. Es decir, no medimos

mirando hacia la fuente de luz, sino mirando a su proyección en una pantalla. Además, en

nuestro caso interviene una cámara que obtiene una imagen y la almacena en un formato

determinado, y nuestro análisis se hará a partir de esa imagen. Por eso, para caracterizar

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 3

convenientemente el color, lo primero es elegir las condiciones de medida necesarias así como

un espacio de color adecuado.

Un modelo o espacio de color es una fórmula matemática abstracta que describe cómo se

representan los colores. El objetivo de un modelo de color es facilitar la especificación de los

colores de una forma normalizada y aceptada genéricamente. En esencia, un modelo de color

es la especificación de un sistema de coordenadas tridimensional, y de un subespacio de este

sistema en el que cada color quede representado por un único punto.

La CIE (Comisión Internacional de la Iluminación) es la autoridad internacional en cuestiones de

luz, iluminación, color, y espacios de color. La CIE estableció en los años 30 una serie de

normas para los diferentes espacios de color que representan el espectro visible. Gracias a

estas normas, podemos hacer comparaciones entre los diversos espacios de color de los

visores y dispositivos.

Dentro de todos los espacios de color existentes, nos centraremos especialmente en dos, por

sus características y por los medios de captura utilizados: El espacio RGB y el XYZ.

3.1.1.- Espacio de Color RGB

El Espacio de color RGB, es un modelo basado en la síntesis aditiva, con el que es posible

representar un color mediante la mezcla por adición de los tres colores luz primarios Rojo

(Red), Verde (Green) y Azul (Blue). Cada color estará entonces representado por la adición o

mezcla de los colores primarios en distintas proporciones. Dependiendo de la proporción de

cada color primario, obtendremos unos colores u otros.

Figura 13: Modelo de síntesis aditiva

Para indicar con qué proporción mezclamos los colores, se asigna un rango de valores que

suele ser de 0 a 255, por lo que cada color estaría representado por un byte.

Para los tres colores primarios, el rojo, el verde y el azul, uno de los tres canales está en su

valor máximo y los otros dos a cero:

• Rojo (255, 0, 0)

• Verde (0, 255, 0)

• Azul (0, 0, 255)

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 4

Cuando los tres colores primarios se mezclan en la misma proporción, obtenemos el gris, que

será tendente al blanco si los valores están próximos al máximo de intensidad, o al negro si los

valores se acercan a cero.

Por todo lo anterior, el conjunto de todos los colores se suele representar en un cubo, donde

cada color es un punto en la superficie o interior de este cubo. La escala de grises se presenta

en la diagonal blanco-negro, como se ilustra en la figura 14:

Fig. 14: Esquemas representativos del espacio de color RGB.

Por tanto, podemos decir que una imagen RGB está representada por la superposición de tres

matrices, una para los valores del Rojo (R), otra para los valores del Verde (G) y otra para el

Azul (B). Dicho de otra forma, para una imagen RGB tenemos una matriz tridimensional en el

que cada pixel de la imagen, está representado por la combinación de los valores de los tres

coeficientes almacenados en cada capa de la matriz tridimensional.

La principal característica de este espacio de color es que es dependiente del dispositivo. Es

decir, que unos mismos valores de los colores primarios pueden dar lugar a colores diferentes

en diferentes dispositivos.

El motivo por el que nos fijamos en este espacio de color es porque el dispositivo de captura

que utilizaremos estará basado en él. En realidad las imágenes serán capturadas por la cámara

digital almacenándola en un archivo de acuerdo a un subespacio de color, llamado sRGB ,

derivado del RGB. A partir de la imagen, tendremos que ser capaces de analizar el color de

forma que los resultados de correlen en cierta medida con los obtenidos con el método

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 5

reglamentario a partir de células fotoeléctricas. En el apartado 3.1.1.2 se comentan las

particularidades del subespacio de color sRGB.

3.1.1.2.- Espacio de Color sRGB (standard RGB)

La mayoría de las cámaras digitales están basadas en este espacio de color. Fue creado en

cooperación por Hewlett-Packard y Microsoft Corporation hacia 1996, en un intento de

estandarizar la gestión del color en los sistemas operativos y su representación en los

periféricos y a través de Internet. Como hemos dicho, los espacios de color RGB son

dependientes del dispositivo, por eso la idea fue crear un estándar RGB compatible y que diera

una calidad suficiente minimizando la carga de cómputo y de transmisión de los colores

independientemente del fabricante de los dispositivos, evitando en ese caso perder tiempo en

conversiones entre espacios de color. Está basado en el espacio de color calibrado RGB de los

monitores CRT (tubos catódicos).

La gama de colores que es capaz de representar (denominado gamut) está algo limitado, por

eso las cámaras profesionales permiten optar por otro espacio de color que permite un gamut

más amplio como es el Adobe RGB, creado en el año 1998. Para nuestra aplicación no obstante

todas las imágenes serán tomadas en el subespacio sRGB.

3.1.2.- Espacio de Color XYZ

La CIE desarrolló el sistema de color XYZ o estándar. El espacio de color CIE 1931, es el nombre

de uno de los primeros espacios de color definidos matemáticamente. Fue establecido en

1931, por la Comission Internacionale de l´Eclairage (CIE), basándose en una serie de

experimentos realizados a finales de los años 1920; sus resultados experimentales fueron

incluidos en la especificación CIE RGB, del cual se derivó la especificación de 1931. Con él se

definieron con precisión los tres colores primarios de la síntesis aditiva de color, a partir de los

cuales pueden crearse todos los demás. En la actualidad, este sistema se sigue usando como

referencia para definir los colores que percibe el ojo humano y otros espacios de color.

Mientras el modelo RGB se basa en colores primarios aditivos, por el contrario, el CIE-XYZ se

basa en tres primarios imaginarios con caracterización espectral (X, Y, y Z), que son los que

representan el color (ondas electromagnéticas). Estos se combinan para formar todos los

colores visibles. En este modelo, Y significa luminosidad; Z es aproximadamente igual al

estímulo de azul, y X es una mezcla tendiente a la curva de sensibilidad del rojo.

En este caso, una imagen representada en este espacio de color estará formada de nuevo por

tres matrices bidimensionales, o una tridimensional, en la que una capa almacena los valores

de la X, Y y Z. Y de estas tres matrices, nos fijaremos especialmente en la matriz Y, ya que como

hemos comentado representa la luminosidad o iluminancia de la imagen representada, que es

precisamente la característica de la imagen más importante para nosotros de cara a su

caracterización.

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes

Para representar de forma eficaz la figura tridimensional en un gráfico bidimensional, la CIE

transformó el espacio tridimensional del color en dos dimensiones artificiales de color o

cromaticidad, y una de intensidad

a través de dos parámetros derivados

Las coordenadas de cromaticidad x e y, unidas

xyY. De esta forma, x y y son coordenadas de proyección, y los colores del diagrama de

cromaticidad forman parte de una región del plano de proyección.

diagrama de cromaticidad CIE x

Fig. 15: Diagrama de cromaticidad xyY, basado en el espacio de color XYZ

Nos fijamos en este espacio de color por varios motivos. El primero es que este espacio de

color no es dependiente del dispositivo de representación o de captura. El segundo es

componente Y refleja la iluminancia que incide en una superficie determinada

precisamente lo que nosotros tendremos en nuestro sistema

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes

Para representar de forma eficaz la figura tridimensional en un gráfico bidimensional, la CIE

transformó el espacio tridimensional del color en dos dimensiones artificiales de color o

cromaticidad, y una de intensidad o brillo. La cromaticidad de un color se determina por tanto

a través de dos parámetros derivados x e y, dos de los tres valores normalizados X, Y y Z:

� � �� � � � �

� � �� � � � �

� � �� � � � � � 1 � �

Las coordenadas de cromaticidad x e y, unidas al brillo o intensidad Y conforman el espacio CIE

son coordenadas de proyección, y los colores del diagrama de

cromaticidad forman parte de una región del plano de proyección. En la figura

diagrama de cromaticidad CIE xyY:

Fig. 15: Diagrama de cromaticidad xyY, basado en el espacio de color XYZ

Nos fijamos en este espacio de color por varios motivos. El primero es que este espacio de

color no es dependiente del dispositivo de representación o de captura. El segundo es

componente Y refleja la iluminancia que incide en una superficie determinada

precisamente lo que nosotros tendremos en nuestro sistema. Por último, las especificaciones

Página 6

Para representar de forma eficaz la figura tridimensional en un gráfico bidimensional, la CIE

transformó el espacio tridimensional del color en dos dimensiones artificiales de color o

La cromaticidad de un color se determina por tanto

, dos de los tres valores normalizados X, Y y Z:

conforman el espacio CIE

son coordenadas de proyección, y los colores del diagrama de

En la figura 15 se muestra el

Fig. 15: Diagrama de cromaticidad xyY, basado en el espacio de color XYZ

Nos fijamos en este espacio de color por varios motivos. El primero es que este espacio de

color no es dependiente del dispositivo de representación o de captura. El segundo es que la

componente Y refleja la iluminancia que incide en una superficie determinada, que es

Por último, las especificaciones

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 7

de los clientes para el color del haz de cruce de los faros, vienen siempre representadas en el

diagrama CIE xyY.

En la figura 16 pueden verse en blanco los límites típicos de color permitidos para un haz de

cruce según el diagrama CIELab:

Fig. 16: Diagrama de cromaticidad xyY con límites de color permitidos por la reglamentación.

Por tanto, el primer paso es transformar nuestra imagen al espacio de color XYZ, ya que nos

servirá en los siguientes pasos de nuestro análisis, y con estas componentes podemos obtener

las coordenadas en el diagrama CIELab.

3.2.- Transformación entre Espacios de Color

Una vez descritos los espacios de color de interés en nuestro trabajo, tenemos que buscar la

forma de transformar la imagen que obtenemos de la cámara digital, en el espacio de color

sRGB, al espacio de color XYZ que es el que utilizaremos para todos los análisis posteriores.

Como se acaba de comentar, el valor de la Y representa la iluminancia de la imagen. Por eso

nos fijaremos especialmente en esta matriz.

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 8

Podemos obtener las matrices XYZ a través de las sRGB mediante una transformación lineal.

Pero la matriz de transformación entre coordenadas depende de algunos factores. Quizá el

más importante es el iluminante a utilizar.

Un iluminante estándar es una fuente de luz teórica con una distribución espectral de

potencia específica. Dependiendo de la fuente de luz, tenemos una distribución energética en

función de la longitud de onda. Esto es importante de cara a la percepción de los colores, por

eso es necesario escoger el iluminante adecuado a la hora de hacer algunos cálculos relativos a

la colorimetría. Hay una serie de iluminantes estándares definidos, en función del tipo de

fuente de luz al que intentan describir.

Los iluminantes más conocidos son los de la serie D, que intentan representar la distribución

de la luz de día. Dentro de la serie D, tenemos varios iluminantes en función de la temperatura

de color de la fuente que se quiere describir. Por ejemplo el iluminante D65, intenta

representar las condiciones medias de iluminación en un mediodía en Europa Occidental.

Su temperatura de color media es de 6.504 Kelvin. Cualquier fuente luminosa cuya curva de

distribución espectral se corresponda suficientemente con los datos de D65 se denomina una

fuente D65, y la luz que emite se homologa como D65.

En nuestro caso concreto, asumimos que las imágenes de los haces de cruce proyectados en la

pantalla se tomarán en un entorno de oscuridad, sin otra fuente de luz que no sea el propio

faro, para no alterar ni los valores, ni la distribución ni el color del haz de cruce. Por tanto la

única fuente de luz que interviene en las imágenes es la del faro que estamos midiendo y el

iluminante a considerar deberá tener esto en cuenta.

Ahora bien, los faros actuales suelen tener distintas fuentes de iluminación, a saber lámparas

Halógenas, lámparas Xenón y Diodos LED. Como es obvio, cada una de estas funciones tendrá

una distribución diferente a las otras, por lo que quedará definida por un iluminante concreto.

Para este estudio nos centraremos en los haces de cruce proyectados por lámparas halógenas,

pero por supuesto los resultados serían aplicables a otras fuentes, siempre que se considere el

iluminante más adecuado. Teniendo en nuestra fuente de luz halógena, el iluminante más

adecuado para nuestros cálculos es el A:

Este iluminante fue definido en 1931, y es un intento de describir la iluminación de una típica

bombilla de filamento incandescente. Su temperatura de color media es de 2.856 Kelvin.

Cualquier fuente luminosa cuya curva de distribución espectral se corresponda

suficientemente con los datos del iluminante CIE A se considera una fuente A, y la luz que

emite se homologa como A.

La distribución espectral energética del iluminante A se muestra en la figura 17:

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 9

Fig. 17: Distribución espectral energética del Iluminante A.

Según el método aplicado por G. Hoffmann [5], y considerando que el iluminante más

adecuado en nuestro caso es el A, tenemos que la matriz de transformación para pasar del

espacio sRGB al espacio XYZ es la siguiente:

����� � �0.7518 0.2766 0.07010.2715 0.7247 0.00370.0000 0.0089 0.3469� ∙ �����

Veamos en la figura 18 un ejemplo concreto de una imagen capturada por una cámara digital,

junto a las tres componentes XYZ obtenidas a partir de la matriz de transformación anterior:

Fig. 18: Imagen de un haz de cruce e imágenes asociadas X, Y, y Z

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 10

3.3.- Ángulos del Haz de cruce

Como ya se ha explicado, se pretende conocer los ángulos respecto a la horizontal que

determinan el límite de claroscuro del haz de cruce, ya que unos ángulos fuera de los límites

permitidos, hacen que el sistema de iluminación no sea apto. Para el control de estos ángulos,

se podrían plantear diversas alternativas basadas en algoritmos de detección de bordes, y

luego calcular las pendientes de esos bordes. Sin embargo, en este caso se ha planteado la

utilización de bancos de filtros de Gabor.

Los filtros de Gabor nacen como una aplicación específica del análisis de señales con

wavelets. Los filtros de Gabor pueden servir como excelentes filtros paso de banda para

señales unidimensionales (por ejemplo: señales de voz), pero también tienen numerosas

aplicaciones en señales de dos dimensiones, como por ejemplo para el análisis de texturas en

imágenes.

Un filtro Gabor puede definirse como una sinusoidal plana (con una frecuencia y

orientación determinadas) modulada por una señal envolvente Gaussiana.

En la figura 19 se ilustra el concepto para el caso unidimensional

Fig. 19: La señal (c) surge del producto de una señal senoidal (a) con una envolvente gaussiana (b).

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 11

En el caso bidimensional:

( , ) ( , ) ( , )h x y s x y g x y= (1)

Donde ( , )s x y es una sinusoidal compleja, conocida como portadora, definida como

0 02 ( )( , ) j u x v ys x y e π− += (2)

Y ( , )g x y es una Gaussiana bidimensional, conocida como envolvente,

2 2

2 2

1( )

21( , )

2x y

x y

g x y e σ σ

πσ

− +

= (3)

Por tanto, un filtro de Gabor se podría expresar como:

2 2

2 20 0

1( )

2 2 ( )( , ) x y

x y

j u x v yh x y e eσ σ π− +

− += (4)

El caso bidimensional podría representarse como en la figura 20:

Fig. 20: Señal portadora sinusoidal real y la misma señal bajo la envolvente Gaussiana.

Si pasamos al dominio de la frecuencia, la convolución de ambas señales resultaría,

aplicando el teorema del mismo nombre, en:

2 20 0

2 2 2 2 2 2 20 0

( ) ( )12 ( ) ( ) 21

( , ) 22

x y u v

u u v vu u v v

x yu v

H u v e eπ σ σ σ σπσ σ

πσ σ

− −− + − − + − = =

(5)

Donde,

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 12

1

2ux

σπσ

= (9)

1

2vy

σπσ

= (6)

Es decir, como se esperaba, en el dominio de la frecuencia un filtro de Gabor equivale

a desplazar la envolvente Gaussiana a 0 0( , )u v , es decir a una distancia de 2 20 0u v+ desde el

origen, y con una orientación de 1 0

0

tanu

v−

.

En las anteriores ecuaciones, 0 0( , )u v se refieren a la frecuencia central espacial del

filtro de Gabor. Los parámetros ,x yσ σ son las desviaciones estándar de la envolvente

Gaussiana a lo largo de las direcciones X e Y, y determinan el ancho del banda del filtro.

Resumiendo, hemos visto que en el dominio del tiempo una Wavelet de Gabor es el

resultado de modular una señal senoidal con una envolvente gaussiana. En el dominio de la

frecuencia, por las propiedades de la transformada de Fourier, esta señal equivale a la

envolvente gaussiana desplazada a la frecuencia central de la señal senoidal. Es decir, estamos

ante un filtro paso de banda.

Si extendemos este concepto a dos dimensiones, tenemos otra propiedad de la

wavelet de Gabor, que es el ángulo de orientación. Por tanto, si ahora pasáramos una señal

bidimensional por un filtro de este tipo, estaríamos filtrando dicha señal por partida doble, un

filtrado en frecuencia y otro según la orientación. Este concepto aplicado a una imagen digital,

no sólo filtrará dicha imagen según las frecuencias encontradas, usualmente asociadas a

contornos, sino que además filtrará esos contornos según su inclinación.

De esta manera, si creamos un banco de filtros en el que la orientación de cada uno de ellos

difiere un grado del anterior y del posterior, podríamos detectar las dos líneas de los haces de

cruce (Horizontal y Rotación), con una precisión de 1º.

Veamos un ejemplo:

Si creamos un banco de filtro con tamaño de ventana 32x32, con orientaciones que van desde

los 0º a los 5º, y de los 16º a los 20º (figs. 21 y 22):

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 13

Fig. 21: Filtro de tipo Gabor, con inclinación de 0º

Fig. 22: Banco de Filtros de Gabor

Y ahora pasamos la imagen del cruce por el banco de filtros (fig. 23):

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 14

Fig. 23: Haz de cruce típico

Representamos el resultado de pasar por el primer filtro, el que tiene ángulo 0º (fig. 24):

Fig. 24: Salida obtenida al pasar la imagen original Y por uno de los filtros del banco, en concreto por el

de 0º de rotación.

Tras analizar los resultados de todo el banco de filtros y quedarnos con las inclinaciones para

los que la salida del filtro es máxima, obtenemos el siguiente vector (fig. 25), en el que se

indica la inclinación de cada punto de la línea de claroscuro hallado:

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 15

Fig. 25: En el eje y se observa la inclinación en grados máxima para cada punto del corte de luz

Dicho de otra forma, obtenemos para cada pixel de la línea de claroscuro el valor del ángulo

para el que la salida del filtro tiene el valor máximo.

En la figura 25 se puede observar que en la zona de la horizontal, los valores obtenidos son

mayoritariamente de 1º, mientras que en la zona de la rotación tenemos valores que van

desde los 12º hasta los 15º.

Con este vector, podremos calcular la línea de la horizontal y la de la rotación, y por tanto

obtener el ángulo de cada una de ellas.

Fig. 26: En Línea de cruce detectada cogiendo los puntos en los que la salida del banco de filtros es

máxima

3.3.1.- Otras consideraciones

El principal problema al que nos enfrentamos al utilizar un banco de filtros es el coste

computacional. Pasar una imagen por un filtro de Gabor de un tamaño medio, tiene ya de por

sí una carga apreciable. Si este proceso debe repetirse de forma recursiva, con orientaciones

que van de los cero grados hasta los veinte, que es el rango en el que nos tendremos que

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 16

mover, el coste computacional sería demasiado alto para una aplicación que hipotéticamente

debería funcionar en tiempo real, a cadencias de más de 100 piezas por hora.

Por ejemplo, supongamos una imagen de un haz de cruce con un tamaño de 379x1025 pixeles,

y queremos utilizar un banco de filtros adecuado para este tipo de análisis, con las siguientes

características:

- Tamaño de la ventana de filtrado: 121x121 pixeles (fig. 27).

Fig. 27: Ejemplo de Filtro de Gabor

- Número de orientaciones del banco de filtros: 20.

- Número de frecuencias del banco de filtros: 2.

Entonces, utilizando los comandos de MATLAB ‘tic;’ y ‘toc;’ obtenemos que el tiempo total de

cálculo rondaría los 100 segundos.

Obviamente, este tiempo de cálculo no es factible para un tipo de aplicación en tiempo real

como el que pretendemos diseñar. Sí podría ser admisible para análisis de piezas individuales,

en un banco de laboratorio, pero no para una producción serie.

Este primer problema para el uso de los filtros de Gabor, hacía necesaria plantear alternativas

para reducir al máximo el tiempo de proceso. Sin embargo, cualquiera de estas alternativas

traería como consecuencia una pérdida en la* precisión de las medidas y de los resultados.

Habrá que llegar por tanto a un equilibrio razonable entre un tiempo de cálculo admisible y

una precisión mínima que asegure unos resultados fiables.

Por tanto, en una primera aproximación, las alternativas que permitirían una reducción del

tiempo de proceso del filtrado podrían ser:

1) Limitar el tamaño máximo de las imágenes a analizar: Obviamente, un menor

tamaño de la imagen resta precisión a los resultados, y además los filtros del banco

deberán ser diseñados en consecuencia.

Veamos algunos ejemplos a partir de la imagen inicial de 379x1025 pixeles

considerada anteriormente:

½ del tamaño original (190x513): 33 segundos aproximadamente.

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 17

¼ del tamaño original (95x257): 10 segundos aproximadamente.

Como vemos, el tiempo de cálculo se reduce considerablemente. Sin embargo,

habrá que ver si esta reducción del tamaño de la imagen no perjudica

excesivamente a la precisión de los resultados del análisis.

2) Limitar el tamaño de la ventana de los filtros de Gabor: En este caso tenemos la

limitación del ancho de banda del filtro.

Este ancho de banda tendrá que diseñarse en función de la señal a analizar. Es

decir, en función del ancho de la respuesta en frecuencia de la imagen a analizar,

que a su vez dependerá de la anchura del límite de claroscuro, que es el área de

interés para este algoritmo. Por tanto se podría reducir el tamaño de la ventana de

filtrado pero con la limitación del ancho de banda de la envolvente gaussiana en el

dominio espacial (siendo al mismo tiempo el ancho de banda en el dominio

frecuencial). Si utilizamos una ventana de 32x32 píxeles, tenemos:

32x32: 5,5 segundos aproximadamente.

3) Reducir el número de filtros por los que pasar la imagen, eliminando algunos

ángulos que de antemano se supone no aparecerán en las imágenes. Por ejemplo,

si la horizontal no está en el rango de 0º a 5º, entonces ya sabemos que la pieza es

defectuosa, y en ese caso no importaría ya el valor exacto del ángulo. Sin embargo,

descartamos esta opción porque en la inmensa mayoría de los casos, las piezas

tendrán valores aceptables, por lo que al final el proceso sería doble, si se verifica

que están en un rango ok y después tenemos que calcular el ángulo exacto.

3.4.- Gradiente del Haz

Una medida importante que caracteriza un haz de cruce es el valor del Gradiente o

Nitidez del corte. Podemos decir que es una medida de la anchura de la línea de claroscuro del

haz de cruce, y es importante porque si es demasiado ancho, podemos deslumbrar a otros

usuarios de la carretera mientras conducimos, y si es demasiado estrecho, es decir una línea

de claroscuro muy nítida, tampoco es recomendable porque entonces el conductor puede

sufrir fatiga visual al ver proyectado sobre la carretera un haz con un límite demasiado

pronunciado. En la reglamentación se define la medida de la nitidez o gradiente de la siguiente

manera:

N=MAX[log(E(i))-log(E(i+1))] Delta(E)=E(i+1)-E(i)=0.1º Pasos: 0.01º

Según lo anterior, vemos que necesitamos hacer medidas en diferentes posiciones del haz de

cruce, en posiciones angulares relativas a la posición de la fuente de luz y a la posición del

punto HV. Por eso primero vamos a hacer una introducción sobre la geometría del haz de

cruce y la metodología para tomar las referencias adecuadas y medir en los puntos correctos.

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes

3.4.1.- Geometría del Haz de cruce a partir de Imágenes digitales

Supongamos que tenemos el sistema

Fig. 28: Esquema básico del sistema de medición y análisis de haces de cruce utilizando tratamiento de

Supongamos también que la reglamentación nos dice que tenemos que medir el color de un

punto situado un 1% a la derecha del punto

A veces, esta distancia nos la pueden dar en grados en lugar de porcentaje. Obviamente 1%

equivaldrá a:

tan � �

La cuestión es: ¿cómo sabremos en la imagen cuánto movernos lo equivalente a un 1%, o a

0,57º?

Por tanto, cuando utilizamos imágenes digitales para el análisis de los haces de cruce,

que buscar un método para poder movernos por la imagen y así poder medir en las posiciones

necesarias del haz. Lo ideal sería que ese método fuera independiente del sistema de captura y

de la distancia D. Para eso se ha desarrollado un método en el que tenemos que

principalmente:

- Posición del Punto HV.

- Resolución de la imagen.

Cálculo del Punto HV

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes

Geometría del Haz de cruce a partir de Imágenes digitales

Supongamos que tenemos el sistema mostrado en la figura 28:

Fig. 28: Esquema básico del sistema de medición y análisis de haces de cruce utilizando tratamiento de

imágenes

Supongamos también que la reglamentación nos dice que tenemos que medir el color de un

punto situado un 1% a la derecha del punto HV. En ese caso, teniendo en cuenta que D=25m:

�100 → 1" → # $ → # � " ∙ 1

100 � 0,25&

A veces, esta distancia nos la pueden dar en grados en lugar de porcentaje. Obviamente 1%

� #" ; � � tan() #

" � tan() 0,2525 � 0,573°

remos en la imagen cuánto movernos lo equivalente a un 1%, o a

Por tanto, cuando utilizamos imágenes digitales para el análisis de los haces de cruce,

buscar un método para poder movernos por la imagen y así poder medir en las posiciones

necesarias del haz. Lo ideal sería que ese método fuera independiente del sistema de captura y

. Para eso se ha desarrollado un método en el que tenemos que

Posición del Punto HV.

de la imagen.

Página 18

Geometría del Haz de cruce a partir de Imágenes digitales

Fig. 28: Esquema básico del sistema de medición y análisis de haces de cruce utilizando tratamiento de

Supongamos también que la reglamentación nos dice que tenemos que medir el color de un

HV. En ese caso, teniendo en cuenta que D=25m:

A veces, esta distancia nos la pueden dar en grados en lugar de porcentaje. Obviamente 1%

remos en la imagen cuánto movernos lo equivalente a un 1%, o a

Por tanto, cuando utilizamos imágenes digitales para el análisis de los haces de cruce, tenemos

buscar un método para poder movernos por la imagen y así poder medir en las posiciones

necesarias del haz. Lo ideal sería que ese método fuera independiente del sistema de captura y

. Para eso se ha desarrollado un método en el que tenemos que conocer

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes

A partir de los resultados obtenidos anteriormente cuando se calculaba la inclinación de la

horizontal y de la pendiente del Haz de Cruce utilizando los filtros de Gabor, resulta sencillo

calcular la posición del punto HV

horizontal y la rotación.

Primero se calcula el punto del corte para cada columna de la imagen tomada

Fig. 29: Representación de uno de los resultados obtenidos

Esta nube de puntos se obtiene como un resultado secundario del análisis de gabor,

nos será útil para calcular el punto HV

Utilizando la función de MATLAB

ajusta a la nube de puntos en

calculamos el punto en el que las dos rectas obtenidas se cruzan, entonces habremos obtenido

el punto HV.

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes

A partir de los resultados obtenidos anteriormente cuando se calculaba la inclinación de la

horizontal y de la pendiente del Haz de Cruce utilizando los filtros de Gabor, resulta sencillo

calcular la posición del punto HV como la intersección de las dos líneas que representan la

Primero se calcula el punto del corte para cada columna de la imagen tomada

Representación de uno de los resultados obtenidos tras pasar por el banco de filtros

Esta nube de puntos se obtiene como un resultado secundario del análisis de gabor,

nos será útil para calcular el punto HV.

ATLAB ‘polyfit’ con grado 1, podremos calcular la recta

ajusta a la nube de puntos en cada zona, descartando los extremos laterales. Si ahora

calculamos el punto en el que las dos rectas obtenidas se cruzan, entonces habremos obtenido

Página 19

A partir de los resultados obtenidos anteriormente cuando se calculaba la inclinación de la

horizontal y de la pendiente del Haz de Cruce utilizando los filtros de Gabor, resulta sencillo

de las dos líneas que representan la

Primero se calcula el punto del corte para cada columna de la imagen tomada (fig.29):

tras pasar por el banco de filtros

Esta nube de puntos se obtiene como un resultado secundario del análisis de gabor, y ahora

calcular la recta que mejor se

cada zona, descartando los extremos laterales. Si ahora

calculamos el punto en el que las dos rectas obtenidas se cruzan, entonces habremos obtenido

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 20

Una vez obtenida la posición del punto HV, tenemos que saber cómo desplazarnos por la

imagen, ya que la reglamentación nos dará los movimientos en grados o en porcentaje, y

nosotros tenemos una imagen en la que nos podemos mover pixel a pixel.

Resolución de la imagen

Como se ha dicho, la mejor forma sería hacer un procedimiento para movernos por la imagen

que fuera independiente al mismo tiempo del dispositivo de captura y de la distancia de éste a

la pantalla donde se proyecta el haz de cruce. Para ello lo mejor es tomar una medida de

referencia en la pantalla en la que se proyecta el haz, pintando por ejemplo dos marcas

separadas 2cm la una de la otra (fig. 30). De esa forma, una vez tomada la imagen se detectan

los dos puntos dibujados en la pantalla, y se calcula el número de píxeles que hay en esos dos

centímetros. Así sabremos cuántos píxeles tenemos que desplazarnos si sabemos los

centímetros o los grados respecto al punto HV donde tenemos que medir.

Fig. 30: Puntos dibujados en la pantalla, separados 2cm, para que el cálculo de la resolución de la

imagen sea independiente del dispositivo de captura.

Es decir, si por ejemplo tenemos 78 píxeles entre los dos puntos dibujados, tenemos 39 px/cm,

por lo que si necesitamos medir un punto situado 2º a la derecha del punto V, primero

calculamos la distancia equivalente en la pantalla mediante la tangente (fig. 28), y entonces

sabremos los píxeles que tendremos que desplazarnos.

3.5.- Homogeneidad del Haz de Cruce

Uno de los problemas de calidad que frecuentemente aparecen en los faros es la aparición de

defectos superficiales en las superficies ópticas metalizadas que son las que reflejan la luz de

las lámparas y la dirigen hacia las zonas adecuadas.

El proceso de inyección y metalizado no asegura que el 100% de la producción esté libre de

defectos superficiales, que lo que provocan es puntos negros proyectados sobre la carretera,

que pueden perjudicar los valores de la malla fotométrica, que pueden ser molestos para el

conductor, y son un problema estético que suelen rechazar los clientes.

Estos defectos se podrían observar a simple vista por el operario durante el proceso de

montaje, sin embargo dejamos en manos del operario el detectarlo, y además decidir si el

defecto es suficientemente importante como para desechar la pieza, o si por el contrario el

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 21

defecto no será apreciado por el usuario final. Por eso se hace útil buscar una forma

automática y sencilla de detectar este tipo de defectos superficiales en el haz de cruce.

Para ello, se ha desarrollado una función auxiliar llamada ‘homogeneidad’, a la que se le pasa

una imagen como entrada, y que devolverá un 1 si la imagen se considera homogénea, y un 0

si detecta alguna inhomogeneidad. También da como resultado una imagen en la que se marca

la posición del defecto o defectos de la pieza.

La función está basada en una función de MatLab llamada ‘stdfilt’.

Esta función devuelve una matriz en la que cada elemento contiene el valor de la desviación

estándar de los 3x3 píxeles alrededor del píxel que estamos analizando de la imagen de

entrada. Cuando la imagen es homogénea, la desviación estándar de píxeles cercanos es

pequeña. Sin embargo, si tenemos un pequeño spot oscuro en mitad de la zona iluminada,

entonces en esa área las desviaciones estándar de los grupos de 3x3 píxeles serán mayores.

A partir de este resultado, podemos comparar los valores de esa matriz con un umbral que

definimos en función del tamaño del defecto que queramos detectar.

3.6.- Posición del Máximo del cruce

Para calcular el máximo del cruce creamos la función ‘maxicruce.m’. Esta función se basa en la

función MatLab max, que calcula el valor máximo de un vector, o el máximo en una de las

dimensiones si se trata de una matriz. También devuelve el índice en el que se encuentra ese

máximo.

Como en casi todas las funciones desarrolladas, trabajamos con la matriz Y. Esta matriz se

normalizó por lo que los valores están comprendidos entre 0 y 1.

Por otro lado, al tratar con imágenes con valores de intensidad grandes, muy probablemente

nos encontremos con muchos píxeles saturados, de forma que tengan un valor máximo, en

este caso 1. Esto hace que la función max no nos sea útil porque es seguro que habrá muchos

píxeles al máximo valor de intensidad.

A pesar de esta problemática, hay que decir que habiendo comprobado previamente que el

haz de cruce es homogéneo, en ese caso podríamos asumir que el máximo se encontrará en la

mitad de la región de píxeles saturados.

Es decir, supongamos el siguiente cruce en el que los píxeles de la zona central del haz de

cruce están saturados (fig. 31):

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 22

Fig. 31: Ejemplo de imagen de un haz de cruce, en el que toda la zona central tiene los píxeles con valor

máximo.

Calcular el punto máximo real del haz de cruce no sería posible en esta situación. Pero

analicemos la imagen con más detalle. Si discretizamos los valores de la imagen con la función

de ‘grayslice’ de MatLab en, por ejemplo 16 valores diferentes, obtenemos lo siguiente (fig.

32):

Fig. 32: Imagen anterior (fig. ) discretizada en 16 valores.

En esta imagen se observa que la concentración de máxima intensidad está en una zona muy

determinada del haz de cruce, que por otro lado es como debe ser. Por tanto, es posible

asumir que el máximo estará situado en el punto central de la región de máxima intensidad. Y

eso es lo que asumiremos a la hora de analizar la posición del máximo (fig. 33):

Fig. 33: Detalle y punto elegido asumiendo la homogeneidad del haz.

Análisis de Haces de Cruce mediante Tratamiento Digital de Imágenes Página 23