Você está na página 1de 5

Sistema de visin por computador para control industrial

M.Corbaln
Dpt.E.E. EUPM. 08240 Manresa (Barcelona). UPC. E-mail: corbalan@eel.upc.es

Resumen
En los seres humanos casi el 80% de la informacin que recibimos del mundo exterior es a travs del sistema visual. Si se desea sustituir un operador humano en una tarea de control industrial por un sistema de visin artificial se tiene que hablar de sensores pticos que sern los ojos del sistema. Sin embargo, la visin humana es un proceso complejo. Aunque el acto de ver parece sencillo por la eficiencia y rapidez con que lo realiza el sistema visual humano, sabemos lo extraordinariamente complicado que resulta este proceso. En este trabajo nos proponemos elaborar un programa para medir el color pxel a pxel de una muestra mediante un sistema de visin por computador para control industrial Dado que se suple a un operador humano utilizaremos como sistema de representacin del color el sistema XYZ o su equivalente (x, y, Y) y el sistema CIELAB.

algoritmos. La parte ms crtica suele hallarse en el nivel algortmico, pues los algoritmos estn limitados tanto por problemas de computacin como por el soporte fsico disponible. En este sentido, resulta de gran ayuda conocer las propiedades, capacidades y limitaciones del soporte material, ya sean las neuronas o los circuitos electrnicos. El sistema propuesto, que incorpora el software (llamado Medicolor), sirve para medir el color de un objeto con resolucin de pixel. Una aplicacin del sistema propuesto sera la inspeccin o control del color. Esta tarea en muchas industrias se realiza mediante inspeccin visual de operarios comparando la muestra a medir con una referencia. Requieren de un entrenamiento y experiencia para tratar de ser lo ms repetitivos posibles y deben descansar a menudo para no cansar la vista, ya que dicho cansancio podra conducir a errores. Nuestro objetivo es automatizar estas tareas de inspeccin con lo que aseguramos la repetitividad y un funcionamiento continuado. Los sistemas de representacin del color que utilizan como estndar en la operacin de comparacin se calculan a partir de los valores triestmulos. Por ello, con el sistema propuesto pretendemos medir los valores triestmulos del producto de color y sus coordenadas CIELAB.

1. Introduccin
La visin artificial tuvo sus comienzos hace ms de 30 aos. En el momento en el que los computadores digitales se hicieron suficientemente potentes y adquirieron una forma ms compacta, se pens en utilizar informacin obtenida por stas ltimas para dotar de ojos al ordenador. Evidentemente, la tarea no es tan sencilla como se pens en un principio. Sin embargo, se han logrado grandes avances y en la actualidad sistemas de visin artificial de muy difcil ndole se aplican a tareas tan diversas como la orientacin de msiles o la deteccin y reconocimiento de imgenes en fotografas areas o ilustraciones mdicas. Igualmente, la visin artificial tiene importantes aplicaciones industriales, sobretodo en lo que se refiere a la automatizacin de las labores de inspeccin y clasificacin de objetos, as como en el control de mquinas, especialmente robots, con realimentacin visual. Desde el punto de vista del procesamiento de la informacin (sea por el cerebro o por un ordenador), este problema puede plantearse en muchos niveles: el nivel de computacin, es decir, las tareas del cmputo que debe llevar a cabo un sistema visual; el nivel algortmico, es decir, la sucesin de pasos que conseguirn ejecutar la tarea; y el nivel material o de soporte fsico, es decir las neuronas o circuitos electrnicos que podrn realizar los

2. Colorimetra. Coordenadas CIELAB.


Si el sistema visual no fuera capaz de detectar las radiaciones electromagnticas a una pequea regin del espectro electromagntico (la llamada regin del visible que va aproximadamente de 400 a 700 nm), no sera posible reconocer los distintos colores que se perciben en la vida real. Se puede decir que el sistema visual realiza un anlisis espectral en tiempo real de la luz que le llega y como lo integra no puede clasificar el estmulo por longitudes de onda. De acuerdo con la Comisin Internacional de la Iluminacin (CIE), el color percibido se define como el aspecto de la percepcin visual mediante el cual un observador puede distinguir entre dos campos del mismo tamao, forma y textura basndose en las diferencias en la composicin espectral de las radiaciones relacionadas con la observacin. El objetivo de la colorimetra es introducir un mtodo de medida del color que permita asignar una magnitud mesurable a cada uno de los atributos perceptivos y, adems, determinar el color mediante nmeros que

53

permitan su especificacin en un espacio de representacin. La CIE introdujo en 1931 el sistema RGB, y con l, el sistema XYZ para la representacin del color (X, Y y Z son los valores triestmulos). El color estndar CIE est basado en los colores primarios imaginarios XYZ, que no existen fsicamente. stos son completamente tericos e independientes de dispositivos dependientes de gamas de color, como el RGB o CMYK. Sin embargo, se han seleccionado estos colores primarios virtuales, para que todos los colores puedan ser percibidos por el "falso" ojo humano dentro de su espacio de color. El sistema XYZ est basado en las curvas de respuesta de los tres receptores de color del ojo (observador patrn). stos difieren ligeramente de persona a persona, pero la CIE ha definido un observador estndar en el que la respuesta espectral corresponde ms o menos a la respuesta media de la poblacin. Los tres colores primarios del sistema de referencia CIE XYZ se hallan en un modelo espacial con coordenadas X, Y y Z que tiene aspecto de un tringulo cromtico. Se distinguen dos observadores patrn, CIE-1931 (observador de 2) y el CIE-1964 (observador de 10). Para muchas aplicaciones industriales es conveniente utilizar el observador patrn suplementario CIE-1964, puesto que los tamaos de las muestras que se utilizan son superiores a 4. La precisin de la igualacin de color depende del tamao del test y por ello el observador de 10 describe en este caso con mayor precisin las observaciones visuales. Los valores triestmulos (X, Y, Z) vienen dados por:

Y L *=116 Y0

16,

1 1 X 3 Y 3 a *=500 , X 0 Y0

(2)

13 13 Y Z b *=200 , Y0 Z 0 donde X0, Y0, Z0 son los valores triestmulos del blanco de referencia. Las magnitudes L*, a*, y b* son adimensionales y se definen en funcin del tipo de estmulo y del blanco de referencia para tratar de simular a los observadores reales. Esto es, una superficie blanca lo parece con cualquier iluminante gracias a la adaptacin cromtica y en este sistema de representacin le corresponden las mismas coordenadas CIELAB, independientemente del iluminante utilizado. Esto no es as en el diagrama (x,y) donde una superficie blanca con diferentes iluminantes tendra unas coordenadas de cromaticidad distintas. La coordenada L* recibe el nombre de luminancia y (a*, b*) son las coordenadas colorimtricas que forman un plano perpendicular a la luminancia, siendo, a su vez, perpendiculares entre s. El corte del eje L* con los planos que forman a* y b* son los puntos acromticos. En el eje a*, para valores positivos se va del punto acromtico a los rojos, para valores negativos se va hacia los verdes. En el eje b*, para valores positivos se va del punto acromtico al amarillo, para valores negativos se va hacia los azules. Hemos escogido medir el color utilizando las coordenadas CIELAB porque la mayora de frmulas interesantes de diferencia de color se basan en ellas. El sistema CIELAB a menudo se utiliza en tareas de control de calidad de productos de color. En estos casos, el color del producto se localiza en el espacio CIELAB, para lo que es necesario poder medir esas coordenadas, y se compara con el color del producto estndar. Se miden las diferencias de color entre la muestra producida y el estndar comparndose con las tolerancias admitidas por el cliente para saber si el color del producto es aceptable y pasa el control de calidad. A partir de las coordenadas a* y b* del sistema CIELAB (2) se pueden definir dos magnitudes colorimtricas C* y h* dadas por:

Y = ()S() y()d, Z = ()S() z ()d,


X = ()S() x ()d,

(1)

siendo () la reflectancia espectral de la muestra de color, S() la distribucin espectral de la fuente de luz utilizada y x (), y() y z () las funciones de mezcla que caracterizan al observador patrn. Un problema del sistema de color XYZ, es que las diferencias colorimtricas entre los colores individuales no se corresponden con las diferencias de color percibidas. El sistema L*a*b* (CIE 1976) fue desarrollado con dos objetivos: tener un sistema de medida fcil, que se corresponda con el sistema de color Munsell y que fuese un sistema donde las variaciones de luminancia y cromaticidad fuesen uniformes [1]. Adems el sistema CIELAB fu adoptado tambin como norma UNE. En la colorimetra tradicional, las coordenadas de color del sistema CIELAB se calculan a partir de los valores triestmulos del color (XYZ), esto es para muestras no oscuras son [1]:

C *=(a * 2 +b * 2 ) 2 , h *=arctg(b * / a*).

(3)

C* es el croma y toma el valor 0 para estmulos acromticos. h* es el tono y vara entre 0 y 3600; para valores acromticos h* es una magnitud indefinida. Ambos trminos (C*, h*) definen la cromaticidad del color de un estmulo y junto con la luminancia L* determinan las coordenadas cilndricas del espacio CIELAB.

54

3. Determinacin experimental de las componentes R, G y B


El proceso de la visin, como procesamiento de informacin, comienza tanto para una persona como para un ordenador con una matriz o tabla de niveles de gris, es decir, una representacin punto a punto de la intensidad de luz de la imagen generada por un retculo de detectores. En el caso del sistema visual humano, la imagen la forma el sistema ptico del ojo y la matriz de puntos el mosaico de fotorreceptores de la retina. En un sistema artificial la imagen la forma la ptica de la cmara y la matriz de puntos su mosaico de detectores. Obsrvese que los procesos son hasta ahora completamente anlogos y que, sin embargo, el medio material que los lleva a cabo es completamente diferente. Cuando queremos digitalizar una imagen en color su contenido depende del iluminante, de la seal analgica RGB proporcionada por la cmara y del proceso de conversin de la seal analgica a digital. Plantearse qu iluminacin de los objetos se utiliza es fundamental para resolver algunos problemas de inspeccin artificial. El contenido de la seal analgica depende de la cmara de vdeo que se utilice, esto es, depende de su arquitectura de descomposicin tricromtica RGB, filtros, nmero de sistemas captadores de imagen, de su sensibilidad, resolucin, relacin seal/ruido, etc. En la conversin de la seal analgica a digital es posible modificar la seal captada a travs de la tarjeta digitalizadora mediante el programa de captacin. En dicha conversin se varan dos parmetros, la ganancia (gain) y la compensacin (offset), que permiten cambiar el contraste y el brillo de la imagen que se ha captado [2]. Adems, las cmaras disponen del circuito denominado balance del blanco que trata de compensar las variaciones que se registran cuando se capta con fuentes de luz diferentes [3]. El sistema de captacin y digitalizacin propuesto esta compuesto por: la cabina de iluminacin Verivide CAC 120; la cmara en color Sony DXC-930P; la tarjeta digitalizadora Matrox Meteor-II/Multi-Channel; y un ordenador. La cabina CAC 120 es una cabina de comparacin de muestras de color y dispone de los iluminantes estndares: D65 (luz de da), TL84 (F11, luz fluorescente), F (luz incandescente) y UV (luz ultravioleta). La cmara tiene tres filtros dicroicos, tres sensores CCD proporcionando tres canales o salida analgicas RGB. La tarjeta digitalizadora admite el formato RGB, digitaliza cada canal R, G y B en 8-bits, tiene una transmisin de datos de 130 MSPS, dispone del control de gain y offset independientemente en los tres canales R, G y B. El ordenador utilizado es Pentium III a 500 MHz y 64 MB de RAM, admite los sistema operativos Windows 95/98 NT y tiene conexin a bus PCI (tarjeta digitalizadora). En la fig.1 se muestra como se captan las muestras de color. Las 40 muestras captadas forman parte de la coleccin The Munsell Book of Color que contiene 1150 muestras diferentes. El blanco de referencia utilizado es el modelo RS-3 Reflectance Standard.

Fig. 1. Sistema de captacin.

4. Determinacin de los valores triestmulos XYZ a partir de los valores RGB obtenidos con la cmara 3CCD
El programa Medicolor determinar las coordenadas CIELAB de una muestra de color iluminada por una fuente de luz dada, a partir de los valores de las componentes R, G y B proporcionados por la cmara CCD. Segn hemos visto en el apartado anterior, tericamente para determinar las coordenadas CIELAB primero tenemos que obtener los valores triestmulos X, Y y Z de la muestra. Segn la ecuacin (1) necesitamos conocer la reflectancia espectral de la muestra de color; sin embargo, nosotros partimos nicamente de la tres componentes R, G y B que nos proporciona la cmara y con esa informacin no podemos reconstruir la reflectancia espectral de la muestra. Por tanto, vamos a describir el procedimiento alternativo que permitir obtener los valores triestmulos X, Y y Z a partir de los valores R, G y B dados por la cmara y que incorpora el programa Medicolor. El mtodo implementado en el programa Medicolor fue propuesto inicialmente por Simpson y Jansen [4] y desarrollado por Corbaln y otros [5]. Se basa en el hecho que tanto la respuesta espectral de los sensores de la cmara como las funciones de mezcla del observador patrn tienen el mismo nmero de funciones de banda limitada. Por tanto, para cada sensor i de la cmara, el producto de la respuesta espectral del sensor Ri() por la distribucin espectral de la fuente de luz S() se corresponde, usando un modelo lineal, con el producto de las funciones de mezcla del observador patrn hj() por la distribucin espectral de la fuente de luz [4]. Esto es, podemos escribir
S( )R i ( ) = a ijS()h j (),
j=1 3

i = R , G, B

(4)

donde aij son constantes que se obtienen por ajuste de mnimos cuadrados. Queremos que los coeficientes aij estn lo ms ajustados posibles a las condiciones de captacin por lo que el programa Medicolor contiene la posibilidad de tener en cuenta la distribucin espectral de la fuente de luz como en (4). Asimismo, pueden haber casos en los que no haga falta tanta precisin por lo que el

55

programa tambin tiene la opcin de calcular los coeficientes aij sin tener en cuenta la fuente de luz. Para aplicar la tcnica de ajuste basada en la aproximacin de mnimos cuadrados minimizamos la funcin f() que est definida por

lo que permite determinar los valores triestmulos X, Y y Z de una muestra a partir de los valores R, G y B obtenidos experimentalmente mediante la cmara CCD en color. Tomamos como hj() el observador colorimtrico CIE 1964 [1], Ri() la respuesta espectral de los sensores de la cmara Sony DXC-930P y dos fuentes de luz de la cabina de comparacin, D65 y TL84. Aplicando el mtodo expuesto obtenemos para cada una de las dos fuentes de luz consideradas las matrices de transformacin A-1 siguientes: - para la luz de da (D65):

f i ()=[ i () i ()] , i =1,2,3


2

(5)

donde i ()=S()R i (), i ()= a ij b j ,


j=1 3

(6)

con b j =S()h j (). Disponemos de las curvas de respuesta espectral Ri() de la cmara y de las curvas que definen las funciones de mezcla hj() discretizadas cada 5 nm desde 400 a 700 nm, por lo que podemos rescribir estas respuestas como vectores que tienen cada uno de ellos N componentes H i =(S(1 )R i (1 ),...,S( N )R i ( N )), H H 3 (7) i = a ij b j ,
H b j =(S(1 )h j (1 ),..., S( N )h j ( N )).
j=1

X DL 1.36 0.27 0.35 R DL YDL = 0.79 0.94 0.11 G DL . Z 0.07 0.06 2.02 B DL DL - para la luz fluorescente (TL84): X F 1.28 0.46 0.37 R F YF = 0.67 1.06 0.08 G F , Z 0.02 0.01 2.12 B F F

(12)

(13)

En ese caso, puede escribirse la funcin fi como un producto escalar. Desarrollando el producto escalar y sustituyendo los vectores resulta
3 3 3 H H H H H H f i = i i 2 a ij ( i b j ) + a ij a ik (b j b k ). j=1 j=1 k =1

(8)

Comparando las ecuaciones (12) y (13) podemos apreciar cmo no existen grandes diferencias en los valores numricos de las matrices que representan las transformaciones calculadas para las dos fuentes de luz. Dada la semejanza que se observa entre las matrices, estudiaremos los efectos derivados de la utilizacin de una nica matriz independiente de la fuente de luz. Esto sera semejante a considerar el equienergtico en la expresin (4) para lo que se obtendra X s 1.33 0.27 0.34 R s Ys = 0.77 0.94 0.11 G s . Z 0.03 0.04 1.95 B s s (14)

Si definimos una matriz (33) G con los elementos gjk = H H b j b k (comnmente llamada una matriz Gram simtrica), H un vector (31) A i con elementos [ai]j (coeficientes de H H H inters) y un vector (31) N i con elementos [ni]j= i b j , la ecuacin (8) puede rescribirse en forma matricial como H H H H H H f i = i i 2A iT N i + A iT G A i , (9)
donde el superndice T indica la traspuesta. Para encontrar el mnimo de la funcin fi, se calcula la derivada parcial H de fi respecto de A i , se iguala a cero y la solucin para H A i vale H H A i =G -1 N i . (10) El proceso indicado en la ecuacin (10) se repite para las respuestas de los tres sensores rojo (R1()), verde (R2()) y azul (R3()) a fin de generar todos los coeficientes aij. H Una vez determinada la matriz A i se calcula su inversa, es decir, X = A -1 R. (11)

El subndice s se refiere a la fuente de luz genrica que se utiliza al captar. La transformacin de la ecuacin no se diferencia sustancialmente en sus coeficientes de las transformaciones lineales encontradas cuando se tiene en cuenta las fuentes de luz en el ajuste, ecuaciones (12) y (13). Por tanto, creemos que es una buena propuesta si se quieren obtener de forma automtica las coordenadas XYZ y las CIELAB a partir de las RGB proporcionadas por una cmara en color, es decir, sin tener que cambiar los valores de la matriz al cambiar el iluminante siempre que se traten de fuentes de luz blanca. Evidentemente, las transformaciones en cuyo ajuste se ha incorporado la distribucin espectral del iluminante con el que se capta (ecuaciones (12) y (13)) son especficas para cada iluminante y, por tanto, es de esperar que sean ms precisas. Por tanto, la utilizacin de unas u otras depender de la aplicacin para la que se desea saber las coordenadas de color. Los resultados que acabamos de obtener representados por las tres transformaciones lineales pueden ser de utilidad general, tanto en colorimetra como en otras reas como puede ser en procesado de imagen.

56

6. Conclusiones
Se ha presentado de forma resumida qu es un sistema de visin por computador y se ha aplicado a un caso concreto para medicin del color de forma automatizada. Se ha mostrado cual es el objetivo de la colorimetra y que se entiende por observador patrn. Se ha comentado que imitar las tareas del sistema visual humano no es evidente ni fcil de realizar. Sin embargo, lo que es ms fcil es intentar imitar al observador patrn y para ello se debe saber calcular los valores triestmulos. Se ha propuesto un mtodo que permita calcular los valores triestmulos XYZ a partir de los valores RGB obtenidos con la cmara 3CCD mediante una transformacin lineal. Concretamente se han propuesto tres transformaciones lineales: dos son especficas para la luz del da y la luz fluorescente, respectivamente; y una es genrica para cualquier fuente de luz blanca convencional. Con la ltima propuesta se pretende obtener de forma automtica las coordenadas XYZ sin tener que cambiar los valores de la transformacin lineal cada vez que cambia la fuente de luz blanca. Por tanto, se puede medir el color mediante sistemas colorimtricos como el sistema XYZ o el CIELAB. Este ltimo es ampliamente utilizado cuando se desea medir diferencias de color entre pares de muestras para comparar por ejemplo, tintados en empresas textiles, de plsticos, del automvil, etc. Incluir la medicin de diferencias de color sera el siguiente paso a realizar.

6. Agradecimientos
Por ltimo agradecer a Daniel Gilabert por la elaboracin del programa y la toma de resultados.

Referencias
[1] G.Wyszecki and W.S.Stiles, Color Science. Concepts and
Methods, Quantitative Data and Formulae, John Wiley & Sons, Inc., 1982. [2] M.Corbaln,M.S.Milln,M.J.Yzuel,Color image acquisition by charge-coupled device cameras in polychromatic pattern recognition, Opt.Eng. 35, 1996, pp.754-760 [3] M.Corbaln, M.S.Milln, and M.J.Yzuel, Analysis of the compensanting mechanism of a colour CCD camera for changes of light, Proc.SPIE., 3409, 1996, pp. 456-466. [4] M.L.Simpson and J.F.Jansen, Imaging colorimetry: a new approach," Appl.Opt. 30, 1991, 4666-4671. [5] M.Corbaln,M.S.Milln,M.J.Yzuel,Color measurement in standard CIELAB coordinates using a 3CCD camera: correction for the influence of the light source, Opt.Eng. 39, 2000, pp.1470-1476

57

Você também pode gostar