Computación y Sistemas Vol. 3 No.4 pp. 274 -286 @ 2000, CIC -IPN. ISSN 1405-5546 Impreso en México Optimización de una Medida Tridimensionales a Partir de Semejanza de Invariantes para Objetos y Transformaciones Hermilo Sánchez Departamento en Ciencias de la Computación Instituto de Investigaciones en Matemáticas Aplicadas y en Sistemas Universidad Nacional Autónoma de México Apdo. Postal 20- 726 Admon. No.20. Delegación Alvaro Obregón. CP: 01000. Ciudad Universitaria, D.F. México herssan@cic2.iimas.unam.mx Artículo recibido elB de noviembre. 1999: acevtado el2 de marzo. 2000 Resumen 1 Uno de /os prob/emas actua/es dentro de visión por computadora es e/ reconocimiento de /a forma de /os objetos o figuras tridimensiona/es. En éste trabajo se propone /a optimización de un método para /ograr este objetivo. Para e//o se uti/izan ros invariantes y /a teoría de gráficas que permiten //evar a cabo /a transformación de objetos irregu/ares de representación binaria y medir su semejanza. Para obtener e/ parecido se presentan cuatro invariantes para objetos tridimensiona/es; se obtiene e/ trabajo mínimo en su transformación a/ usar /a teoría de gráficas. En /a parte de asignación óptima y, como parte importante de/ reconocimjento después de/ cá/cu/o de invariantes, se presenta e/ a/goritmo húngaro, que permite hacer dicha transformación de manera óptima y obtener así una buena medida de semejanza. Palabras clave: Medida de semejanza, slgoritmo húngaro, invariantes, momentos centrales, gráficas bipartitas, camino extendido, trabajo, ceros independientes, apareo óptimo. Introducción El objetivo del presente trabajo es optimizar una medida de semejanza de objetos o figuras tridimensionales irregulares. El gasto o trabajo realizado en medir la semejanza de las figuras debe ser el menor posible. Para representar a nuestras figuras tridimensionales, se emplea la voxelizaciónl. Como parte del proceso de reconocimiento de la forma, a través de la medida de similitud, se propone utilizar cuatro invariantes bajo transformaciones de traslación, cambio de escala y rotación. Para ello se hace un estudio de los momentos centrales. De esta manera se verá que el cálculo de los invariantes así como la transformación de los objetos permitirá obtener una medida de semejanza óptima. Sobre el reconocimiento de la forma de objetos tridimensionales, hasta ahora han existido algunos autores que han aplicado diferentes técnicas para lograr su propósito, tales como Besl(1988), Besl & lain(1985), lain (1989), Boyse (1979), Brooks (1983) y Dickinson, Pentland & Rosenfeld (1992), entre otros, quienes basan sus métodos de reconocimiento en el uso de primitivas, es decir, ciertas figuras geométricas que sirven como unidades para conformar a los objetos, tales como conos, conos truncados, cilindros, elipsoides, etc. Otro tipo de técnica que se ha utilizado para representar la superficie de un sólido, es a través de curvas digitales (lonas and Kiryati, 1997). Sobre descripción de IRepresentar a un objeto mediante voxels. Un voxel es un elemento de volumen representado por el vector: [propiedades, posición] donde las propiedades son las características del voxel, tales como brillo, color, intensidad, densidad, etc. La posición esta dado por las coordenadas espaciales (x,y,z). Ver Ballard & Brown(1982). Hermilo Sánchez: Optimización de una Medida de Semejanza superficie de cuerpos sólidos a través de propiedades de invariancia se puede ver a Cohen & Wang (1994). Sin embargo el método planteado en este trabajo se basa en las ideas iniciadas por Bribiesca (1995), quien defme una métrica y una medida de similitud, susceptibles de aplicarse para la transformación de figuras tridimensionales irregulares y no solo figuras regulares, como lo han venido haciendo los autores anteriores. En este artículo se logra optimizar el método de Bribiesca. para Objetos Tridimensionales... Los momentos centrales son invariantes bajo translación al tener la siguiente transformación de coordenadas: x' = x + a y' = y + 13 de los Invariantes = .u ' (p+q)/2+1 Interpretación de loS Invariantes 2.1 (3) 7 Los momentos dados por la siguiente relación: .Upq 2 Teoría con a y 13constantes J.lpq .u (p+q)/2 con p + q = 3,4, Considérese un objeto geométrico S en el espacio X. Se supone un grupo de transformaciones admisibles G que actúa en el espacio X. Un invariante escalar de un objeto S es una cantidad que no cambia su valor cuando el objeto S sufre cualquiera de las transformaciones admisibles (tales como una rotación, traslación o bien cambio de escala). Supóngase que el objeto S tiene invariantes escalares Il,I2,...,In. Considérese S'. Si S' se obtiene al transformar apropiadamente al objeto S usando transformaciones admisibles, los valores de estos invariantes escalares deben ser idénticos. Sin embargó, en general, lo contrario no es cierto. Para ello se necesita la siguiente definición. Definición: se dice que un conjunto de invariantes es una base invariante si la coincidencia de invariantes escalares para dos objetos implica la existencia de una transformación admisible que mapea uno al otro (Kanatani, 1990). Se sigue, entonces, que para transformar a dos objetos es necesario calcular primero sus invariantes. (4) donde .u = 1/ p(x,y) dxdy (5) son invariantes bajo cambio de escala al tener la siguiente transfonnación de coordenadas: x'=ax y'=ay (6) con a constante 2.3 Momentos Invariantes Ortogonales rotación transformaciones Bajo se tiene: ortogonales o de x (7) y 2.2 Momentos Centrales Sea p ( x, y) ~ o una función real y acotada, definida en una región !Jí'. Los momentos (p+q) se definen como: bidimensionales x I/xPy(jp mpq de orden dxdy I) 91 Por otro lado, los momentos centrales bidimensionales .Upqse definen como: .Upq = II (x-I';)P (y -1J)q p (x, y) dxdy 91 (2) donde p,q ~ E N = m¡Jmoo, 11 = mol /m, y Con el álgebra de invariantes, se llega a los 7 invariantes ortogonales, los cuales fueron dados por primera vez por Hu (1962): tjJl = .U20+ .UO2, tjJ2 = (.u20 -.UO2)2 + 4.u112 . tjJ3 = (.U30-3.u12)2 + (3.u21- .UO3)2. tjJ4 = (.u30 + .U12J2+ (.u21 + .UO3)2. tjJ5 = (.U30-3 .u12J (.u30 + .U12)[(.u30 + .U12J2- (8) 3<1121 + .uo3;2] + (3.u21- .UO3)(.U21 -.UO3) [ (.u30 + .u12J2 -(.u21 + .UO3)2], tjJ6 = (.U20 -.uo2J [ (.u30 + .U12J2 -(.u21 + .UO3)2] + 4.ull (.U30 + .U12) (.U21+ .UO3). Hermilo Sánchez: Optimización de una Medida de Semejanza para Objetos rjJ7 = (3.u21 -.UOJJ (.U30 + .U12J[(u30 + .U12J2-3(u21 + .UO3)2]-(u30 -3.u12J (u21 + .UO3)[3(u30 + .U12J2- Tridimensionales... Al considerar esta transfonnación utilizarlas en (12), se llega a que (u21 + .uo3;2], , 'Upqr Los momentos invariantes ortogonales absolutos, dados por (8) pueden utilizarse directamente para identificar un patrón independientemente de la posición y cambio de escala. -p+q+r+3 -a Si p = q = r = O, tenemos de coordenadas y 'Upqr,. que .u ' ooo=aJ Sea .uOOO = .u, entonces, .uOOO de (15) y (16) se tiene el siguiente invariante nonnalizado: Análisis 2.4 .u pqr Los momentos centrales en tres dimensiones se puede definir como I1pqr = .u ' (p+q+r)/3+1 11 (p+q+r)/3+ 1 , con p + q + r = 3,4, .Upqr = II/ ( x-.;) P( y -17) q( z -c;)r p ( x,y,z ) dxdydz, 9l donde p,q,r N. (9) Sea p(x,y,z)=l, pues aquí no importarán las características de la imagen, tales como sus intensidades de brillo, de color, etc. sino solo la posición de los voxels. La ecuación anterior se reduce a J.lpqr = /ff (x-~)P(y -17)q( z -t;)r dxdydz, (10) !Ji donde p.q,r N . El cual es invariante bajo cambios de escala. (Ver Figura 1 y el apéndice, donde se muestran los valores numéricos calculados de los invariantes en traslación y cambio de escala, asi como el centro de masa de cada objeto). .Ningún autor hasta ahora ha deducido invariantes en 3-D utilizando el método de Hu. .Se propondrá en este artículo utilizar los centros de masa y los ejes mayores de los objetos (que pasen por el centro de masa) como los invariantes bajo rotación. En el caso discreto, la ecuación anterior se puede escribir como Jlpqr = LLL (11) --9 ( Xi-; )P( Yj -17)q( zk -I;" )r ~Xi~Yj~Zk. -9::: xyz Si se piensa en los voxels como cubos de lado unitario, entonces Axj=Ayj=Azk=l. Así que la ecuación anterior queda simplemente .Upqr = LLL xyz la cual siguiente como ( xi-I;)P( es invariante Y) -1] )q( zk -t;y, bajo traslación, (12) al considerar transformación: con a, 13 y y constantes. Bajo de escala se utiliza b) la (13) siguiente transformación: x' =ax y' =ay z' =az. la 9 x' = x + a y' = y + 13 z' = z + y. cambio a) con a constante (14) Figura 1: a) Al aplicar una traslación sobre la figura (un nueve), los momentos centrales se mantienen invariantes. b) Al aplicar un cambio en la escala, la ec. 4) se mantiene invariante (ver apéndice para valores numéricos). Hermilo Sánchez: Optimización 3 , Gráficas Bipartitas y de una Medida de Semejanza Asignación 3.6 para Objetos Tridimensionales... Problema de Asignación Óptima Optima A continuación se presenta una introducción a la teoría de gráficas para enseguida estudiar el algoritmo húngaro, base de la optimización de la medida de semejanza, propuesto por Bribiesca (1995). 3.1 Teoría de Gráficas Una gráfica es un conjunto fmito, no vacío, compuesto de un conjunto de vértices V. Sea E el conjunto de parejas (aristas) de la forma {u,v}. Una gráfica puede defmirse simplemente a través de los conjuntos V y E como G = G(v; E) (Chartrand, 1985). 3.2 Pesos en las Aristas Existe un método llamado método Húngaro (Bondy, 1976) (que es el método clásico), que pu~de encontrar apareos perfectos. El problema de Asignación Óptima que se considerará consiste en que la suma de las distancias que los voxels que conforman a un objeto tienen que recorrer, para transformarlo en otro objeto, sea la menor de todas las posibilidades. Sea una gráfica bipartita pesada completa con bipartición (X;}), donde X={xl' x2, ...,xJ, y = {Y¡'Y2'...'YJ. El conjunto X puede representar al conjunto de voxels de un objeto a transformar Y el conjunto Ya los voxels del objeto transformado. Las aristas {Xi.Yj} tienen un peso Wjj = W(XiYJ. En esta gráfica pesada, se debe encontrar un apareo perfecto de peso mínimo, es decir, un Apareo Óptimo. x A cada arista de una gráfica G, se asocia un número real w(e), al cual se llamará su peso. En este sentido a G se le llama gráfica pesada. Si H es una subgráfica de o, el peso w(H) de H es la suma de los pesos de las aristas de H: ¿ w(e), donde )y¡ X¡ eEE(H). Cuando se desea que la suma de los pesos de las aristas que conforman una subgráfica H sea la menor, esta subgráfica debe ser conectada y acíclica. .En este caso se obtiene un spanning tree de peso mínimo. El peso mínimo de una gráfica es aquel tal que w(H) = ¿ w(e) sea el menor de todas las subgráficas conectadas de o. 3.4 y X2 x )y 3 Y3 Gráficas Bipartitas X4( Una gráfica G(V,E) es bipartita si existe una partición de los vértices en dos conjuntos U y V, tales que si (u, v) está enEimplicaqueuEU 3.5 2 Figura 2: Un apareo óptimo, dado por las aristas remarcadas en y vEV(oalrevés). Apareo Sea M ~ E un subconjunto de aristas de la gráfica G, el cual es llamado apareo en G si cada uno de sus vértices son adyacentes a, a lo más, una arista de M. Se dice que un apareo M satura a un vértice v, que sea extremo de una arista en M, entonces v está saturado si alguna arista de M es adyacente a v, de otra forma, ves no saturado. Si todos los vértices de G son M-saturados, el apareo M esperfecto. Sea M un apareo en G, un camino alternante en G es un camino cuyas aristas están alternativamente en E\M y en M. Un camino extendido es un camino alternante cuyo inicio y final no están saturados. y+ negro. Bondy y Murty (1976), presentan un algoritmo que resuelve el problema de asignación al encontrar un apareo óptimo de peso máximo. Gould encuentra el apareo óptimo de peso mínimo basado en el a[goritmo húngaro. 3.7 Algoritmo Húngaro Sea el peso de un apareo M dado por W(M) = L w(e), eEM. Una solución óptima es un apareo perfecto con W(M) como mínimo. I. Se representa a la gráfica bipartita en forma de matriz de tamaño n x n, U = [Wij]. 2. Minimizar la matriz de la siguiente manera: Hermilo Sánchez: Optimización de una Medida de Semejanza -Elegir el valor más pequefio de cada renglón y restarlo a ese renglón. -Elegir el valor más pequefio de cada columna y restarlo a esa columna. 3. Al encontrar n ceros independientes, esto es, se etiquetan n ceros, tales que no haya otro cero (etiquetado) en el renglón y columna. Se seleccionan los números correspondientes a estos ceros en la matriz como solución. 4. Sin embargo, la gráfica inicial puede ser tal que al minimizarla por primera vez no se puedan encontrar n ceros independientes. Entonces, se marcan los renglones y/o columnas que contengan ceros. La idea es "cubrir" todos los ceros (se utilizará el menor número de líneas posibles para marcar los ceros). 5. Encontrar el número más pequefio, min, que esté en la submatriz, es decir que no esté en ninguno de los renglones o columas marcados. 6. a) Restar min a las columnas y renglones de la stiÉmatriz. b) Sumar min a los pesos que están doblemente marcados. 7. Enseguida una función (o rutina) checa si se pueden encontrar n ceros independientes. Si es así, el algoritmo termina satisfactoriamente y se llega a un apareo óptimo. Si no, se va otra vez al paso 4. 8. Se suman los valores que estaban en la matriz original en la posición de los ceros independientes de la última matriz modificada, obteniendo el valor buscado W(M). IZI El algoritmo presentado en este capítulo y que soluciona el probl~ma de encontrar el peso mínimo en la transformación de los objetos se conoce como algoritmo Húngaro. La versión original (en la que no se habla de marcar los ceros como lo hace Gould, 1988) se debe a Konig (1931) y Egerváry (1931). Una forma de implementar el algoritmo anterior de manera eficiente es utilizando e11lamadoÁrbol Húngaro. para Objetos TridimensionaJes... XI( XI0--0YI ) Y2 X2 ~ ) XJ YJ X~ y~ ~YI X2~Y2 v b) a) Figura 3: a) Gráfica bipartita con vértices adyaoentes que representan los ceros de la matriz. b) Gráfica con un apareo arbitrario elegido. 2.- Se toma un vértice raíz x de la gráfica bipartita. 3.- A partir de este vértice raíz se van buscando todos los caminos altemantes posibles. 4.- Se repite el paso anterior con los vértices x's para los que las y's estaban saturadas. 5.- Si alguna y no encuentra su respectiva x para ser saturada. entonces se ha encontrado un camino extendido. 6.- Si hay otra x que no esté saturada (raíz) regresar a 3. De lo contrario se detiene el programa y se construye un nuevo apareo M al usar el camino extendido. en el que se intercambian las x adyacentes a las y's que no estaban en el apareo M anterior por un apareo nuevo (M). y viceversa. se sacan del apareo anterior la x-y que se encontraban bajo M. De esta manera se ha encontrado un apareo perfecto. es decir un apareo óptimo. 7.- Si nunca se encontró el camino extendido. regresar al paso 1. En la figura 4 se muestra que el camino dado por X4.Y2.X2.y4 es el camino extendido buscado. camino extendido / 3.8 Árbol Húngaro Una vez que se aplica el algoritmo Húngaro a la matriz original, queda una matriz con posibles ceros independientes, para buscarlos, se procede a construir al llamado árbol húngaro, y posteriormente se busca el llamado camino húngaro dado por un camino extendido. J X2 Y2 ~ Y3 Y2 '0 Figura 4. Árbol Así, el nuevo ~ y X4 1.- Para construir el árbol húngaro se visitan los ceros de la matriz y se elige un apareo cualquiera. La figura 3 a) muestra el apareo obtenido a partir de los ceros encontrados y la figura 3 b) la elección de un apareo arbitrario. X3 X21 apareo X4 X4 húngaro y camino extendido. queda como en la figura 5 Hermilo Sánchez: Optimización de una Medida de Semejanza " w = L Si = D i=1 Transformación Otro de un Objeto a (en unidades de trabajo ) Por tanto, el valor numérico del trabajo será, en artículo, igual a la distancia total recorrida. En general no debe ser cierto, sin embargo para el propósito de artículo esto no traerá consecuencias negativas. Para encontrar el trabajo al transformar dos objetos este esto este A y B: En este capítulo se defmirá un concepto 'muy importante, el trabajo. Debido a que en la transformación de un objeto a otro se tienen qu~ mover voxels, entonces se debe realizar un cierto trabajo al hacer dicha operación, Se verá que el valor numérico del trabajo total (por haber movido los voxeIs en la transformación) coincide numéricamente con la distancia recorrida total de los voxels involucrados en la transformación. 4.1 Tridimensionales. Sea Fi (la fuerza para mover los voxels) constante e igual a 1 (un Newton o una dina, por ejemplo). Por el momento no importará la masa de los voxels o la fricción que podría "obstaculizar" su movimiento. De manera que el trabajo total para transformar a los dos objetos será: XI0--0YI 4 para Objetos Trabajo Requerido para Transformar a los Objetos 1.- Se superponen los dos objetos A y B. Esto es, una vez que son invariantes en escala (mismo número de voxels, todos del mismo tamaño) se hace una traslación de los objetos de manera que coincidan sus centros de masa y sus ejes de simetría. Al llevar a cabo la superposición, existen voxels que son comunes a los dos objetos. Se debe considerar a los conjuntos Ia<r,c,k) e Ib(r,c,k) (donde (r,c,k) son las coordenadas cartesianas de los voxels) que representan la imagen binaria 3-D de los cuerpos A y B respectivamente. La superposición de los objetos, se define como la imagen binaria dada por el conjunto Is(c,r,k) = IA(r,c,k) n IB(r,c,k) En la transformación, cada voxel se mueve de la posición X(Xl'X2'XJ) a la posición Y(YI'Y2'YJ)' lo que requiere de un trabajo realizado. De la física clásica el trabajo dW se define como 2.- Voxels positivos. Voxels negativos. Enseguida se mueven los voxels del objeto A que no ocupan la posición respectiva en el objeto B. En términos de la imagen binaria 3-D se mueve: dW = Fds Ip(c,r,k) = IA(r,c,k) \ IB(r,c,k) El trabajo total para transformar a los objetos es Ip(c,r,k) Donde F; es la fuerza aplicada a cada voxel para moverlo una distancia Si' Así, se puede construir una métrica para II W = L FiSi i=1 transformar un objeto A en un objeto B (W(A -+- B»: W(A ~ B) = W(B~ A), W(A ~ B) ~ O, W(A ~ B) = ° <:::> A = B, y W(A~C)~ W(A~B)+ W(B~C). representa a loS voxels positivos. Los voxels negativos están d~dos por IMc,r,k) = IB(r,c,k) \ IA(r,c,k) 3.- Se aplica el algoritmo húngaro para mover los voxels (de manera que el trabajo realizado en ello sea el mínimo). Se supondrá que al mover los voxels en la transformación de los objetos, la fuerza empleada al hacerlo es constante e igual a una unidad de fuerza (por ejemplo una dina o un newton). El método usado en este trabajo, considera una gráfica G bipartita con bipartición (Ip,IN) donde Ip = {ip),ip2'...'ip.} e IN = {iNl'iN2,...,iN.}. Hermilo Sánchez: 4.2 Optimización de una Medida de Semejanza para Objetos Tridimensionales... Medida de Semejanza El i-ésimo voxel recorrerá una distancia euclidiana Si = d(Ai,BJ al moverse del objeto A al objeto B. Aquí, Aj es la posición del voxel positivo i, y Bj la posición del voxel negativo correspondiente. De esta manera se puede definir la Medida de Semejanza como: Una vez que se han encontrado los invariantes (10 cual es una parte crucial en el reconocimiento de la fQrma, pues debemos construir una base invariante como se dijo en la secc. 2.1, esto es, no se puede transformar sin antes haber calculado los invariantes) se procederá a transformar a los objetos. La figura 6 muestra a los objetos utilizados para realizar las siguientes transformaciones: A ~ B, A ~ C, B ~C,D~EyF~G. II D = LLd(Ai,~j) i;1 o A E II Las tablas I y 2 muestran los resultados de haber realizado las transformaciones entre los objetos de la figura 6 en la forma que se muestra en las figuras 7, 8 Y. 9. En estas figuras aparecen las transformaciones en forma progresiva. j;1 s c 2 E F Transforn1ación Voxels comunes G Figura 6: Siete objetos diferentes a transformar una vez que son invariantes bajo traslación, cambio de escala y rotación A-+B 24 8 A~C 28 4 B~C 24 8 D~E 75 12 F~G 75 Tabla Número de voxels positivos Puesto que se ha considerado trabajo 1otal numéricamente a la fuerza Voxels a mover D igual comunes a ambos objetos y voxels a mover en cada transformación. a 1, el a transfonnar los objetos coincidirá con la desemejanza de los objetos. 4.3 Trabajo Realizado al Transformar Objetos y Medida de Semejanza. 12 los Los objetos se hicieron invariantes en traslación, cambio de escala, centro de masa y los ejes de simetría principales que pasan por el centro, de masa. (ver los valores numéricos en .el apéndice). Ello permitirá dar una medida de semejanza óptima. Los objetos a transformar deben tener la misma información (mismo número de voxels) lo que representa invariancia en escala; sus centros de masa deben coincidir después de una translación y por último se deben alinear sus ejes de simetría. .Cabe aclarar que fueron suficientes a lo más dos ejes perpendiculares que pas!ifan por el centro de masa. Además se alinearon de manera que el número de voxels a mover fuese el menor posible. Se hace una comparación entre el método empleado en este artículo y el utilizado por Bribiesca (1995). El método de Bribiesca (1995) se basa en recorrer primero los voxels más cercanos y luego los más lejanos. En términos de gráficas pesadas bipartitas, significa encontrar un apareo tal que primero se apareen los vértices cuyas aristas son de menor peso, y luego, en orden creciente, los de mayor peso, hasta tener un apareo completo. Lo anterior claramente no da un apareo óptimo, es decir, no se obtiene la menor distancia recorrida por los voxels. En este trabajo se optimiza la medida de semejanza propuesta por Bribiesca(1995). Se puede observar que el trabajo realizado al hacer las transformaciones empleando el método de Bribiesca (1995) es mayor o igual que el trabajo realizado al emplear el método Húngaro. Hermilo Sánchez: Optimización de una Medida de Semejanza Discusión 5 Como se puede observar, el número de voxels a mover no excede los 12. ¿Qué sucede si queremos transformar el robot en el primer avión? Ello significaría mover 58 voxels. ¿Qué pasa si aumentamos la definición o el tamatlo de los objetos? ¿por qué no transformamos algunos de estos casos? Un estudio de la forma de cómo trabaja el algoritmo implementado, nos permite ver por qué no se pudo aplicar el método a transformaciones en las que el número de voxels a mover excede a 12. Se ha llegado a los siguientes resultados y razones: .El método planteado e implementado para el reconocimiento de objetos es consistente con la teoría y los métodos propuestos por la literatura, tal como puede verse en Bondy (1976) y Gould (1988). .No se tiene ningún problema con los inv~riantes de translación y cambio de escala, pues la aplicación de estos puede hacerse con un número relativamente grande de voxels (más de 3000). El problema aparece cuando se aplica el algoritmo húngaro. Ello sucede cuando, en el transcurso de la búsqueda de los ceros independientes, se llega a una etapa de la matriz como la presentada en la figura 10. para Objetos Tridimensionales.. Como se puede observar, ya no es posible trabajar con una submatriz que pemlita buscar los] O ceros ihdependientes. Sin embargo, al hacerlo personalmente usando un cierto criterio, uno cubriría los ceros de la manera en que se muestra en la figura 12. En ella podemos observar que se ha empleado una línea más para poder marcar todos los ceros y así seguir buscando los ceros independientes,.. o , A,. A", "~I "~~ "!~ n.1 O "" n" ",. D.~ "" "le "., "'8 ",~ n "!1 ".v "., ".. ".7 O "iR O ni 19 n" I\ nil ni~ n" n n,. ",' n" ",~ O n.. "."'v ",' I\ ",~ ",'v O n., n.n n.n n.,n "61 "6~ "6~ n "6~ n "6' "68 "6~ n618 A,. A,. O A,J 881 Q 88J 884 88) 8.0 "7' "7. "7J ",' A" I\ "'u A" "'V Q ",' O "'7 "'.U 8.. Q Q "'U "7~ I\ o A¡V¿ A¡V" AIU't A¡V;) A¡VOA.Vf A,vo A¡V" O Figura II: Matriz con todos sus ceros marcados con el mínimo número (10) de renglones y/o columnas. /" o nl2 n13 n14 n 15 n16 n17 nl8 n19 O n21 n22 n23 n24 O n26 n27 n28 n29 O n31 O n38 O n310 n41 n42 O n51 n52 n53 O n61 n62 n63 O n71 n72 O n74 ns1 U DS3 DS4 DS5 D9l D92 D93 D94 O O D1O2 D1O3 Dl04 n33 n34 n35 n44 n36 n45 n55 n37 n46 O n65 O n75 O n49 n410 n57 n58 n59 n51O n67 n68 n69 n610 n76 n77 O DS6 U DS~ U D97 D9S D99 O D1O7 DIOS D1O9 O D96 DlO5 n47 D1O6 n79 n710 " " U \ Figura 10: Matriz de 10xl0 en la que nij ~ Q ./ A la cual todavía no se le pueden extraer sus lO ceros independientes. A través del método empleado aquí para encontrar los ceros independientes, usando las ideas de Gould (1988), los renglones y columnas a marcar quedan como se muestra en la figura 11. Figura 12: Matriz con todos sus ceros marcados con 11 renglones y/o columnas permitiendo que quede una submatriz. Ningún ejemplos caso como el experimentales. de la figura 12 sucedió en los Hermilo 6 Sánchez: Optimización de una Medida Conclusiones Para lograr .el propósito de encontrar una medida de semejanza óptima, se vio que son suficientes y adecuados sólo 4 invariantes a encontrar en objetos tridimensionales a diferencia de los siete que deduce Hu (1962). Para transformar a los objetos se implementó el Algoritmo Húngaro, aplicándose a algunos ejemplos. En la sección 4 se muestra que el trabajo realizado en la transformación de los objetos a través del método empleado en este articulo, siempre es menor o igual que el utilizado por Bribiesca en (1995). Con lo anterior se tiene entonces que: con teoria de invariantes y con Algoritmo Húngaro se obtiene una medida de semejanza óptima entre objetos. Por lo tanto, se ha resuelto un problema que Bribiesca plantea en (1995) para optimizar una medida de similitud o semejanza de figuras tridimensionales. En realidad tal reconocimiento se hizo para objetos pequeños, como los planteados en la sección 4. Debido a la discusión dada en la sección 5 se concluye que el método de Gould planteado en 1988 no es consistente, y que el problema de elaborar un algoritmo que resuelva encontrar un apareo óptimo (para encontrar el trabajo mínimo) y asi poder transformar objetos de gran resolución sigue abierto. Sin embargo se considera que el método aqui planteado, basado en los invariantes y en el concepto de trabajo, es una buena línea de investigación que puede llevar a diferentes aplicaciones. 7 Trabajo para Objetos Tridimensionales... expresadas para el mejoramiento del mismo. También quiero agradecer al Dr. Ernesto Bribiesca por sus comentarios y consejos durante la realización de esta investigación. Referencias Ballard, D. H. & Brown, C. M. Computer Vision. Prentice Hall, Ennglewood Cliffs, New Jersey (1982). Bondy, J. A. and Murty, U.S.R. Graph Theory with Applications. Departrnent of Combinatorics and Optimization, University of Waterloo, Ontario, Canada. 1976. Boyse, J. W ., Data Structure for Solid mode11er, NFS Workshop on the Representation on Three-Dimensiona1 Objects, University of Pennsy1vania 1979. Besl P .J., Surfaces in range image Understanding. New York Springer. 338 pp. 1988. 1988. Besl, P. Recognition, Bribiesca and Jain, R Three-dimensional ACM Comput. Surv. 17(1).75-145 E., Measuring Progresive Transformations. 1995. pp. 1-13. 3-D Shape Object (1985). Similarity Pattem Recognition, Using vol 29, futuro Respecto a los invariantes, un trabajo posterior debe plantear un algoritmo para automatizar la búsqueda de los ejes mayores y rotar los objetos de manera de transformar objetos grandes o de gran resolución. Con ello se reforzará la idea de si los 4 invariantes encontrados hasta ahora son suficientes para establecer nuestra medida de similitud o tal vez podrían ser superados. Hasta ahora el cálculo de los invariantes de rotación, sobre todo los ejes de simetría, no ha representado problema, debido al relativo pequeño número de voxels de los ejemplos expuestos. Un trabajo posterior debe atacar el problema de marcar correctamente los ceros de la matriz. Tal trabajo debe encontrar un algoritmo que "sepa decidir" cómo marcar todos los ceros sin llegar a marcar todos los renglones (o columnas). 8 de Semejanza Brooks R., Model Based 3-0 Interpretations of 2-0 Images, IEEE Trans. Pattem Anal. Mach. Intell. 5(2), 1983. pp 140-150. Cohen, F. and Wang, J. Part I: Modeling images curves using invariant 3D object curve models a path to 3D recognition and shape estimation from image contours, IEEE Trans. Patem Analysis Mach. Intell. PAMI-16(1), 112, 1994. Chartrand, Publications Gary 1985. Introductory Graph Teory, Dover Dickinson S. J., Pentland A. P. and Rosenfeld A., From Volumes lo Views: an aproach lo 3-D Objecl Recognilion. CVGIP: Image Understanding 55,1992, pp 130-154. Egerváry, J., Matrixok Kombinatorikus Tulajdonságairól. Mathematika és Fizikai Lápok, vol 38 1931, pp 16-28. Agradecimientos Quiero agradecer a los revisores por sus acertados comentarios acerca del trabajo, así como las sugerencias Gould, R., Graph Theory, Benjarnin/Curnrnings Publishing Ernory University, Cornpany, Inc. 1988 The Hermilo Sánchez: Optimización de una Medida de Semejanza Bu M. K., Visual Pattern Recognition by Moment Invariants. lRE, vol 8, Feb 1962, pp 179- 187. Jain K., Fundamentals of Digital Image Processing. Prentice Hall Information and System Sciences Series. Thomas Kailath, series Editor. 1989, pp 569. Jonas, A. and Kiryati, Schemes for 3-D Curves, N., Digital Representations Pattem Recognition. 30, 1817- 1827,1997. para Objetos Tridimensionales... o o 0.408875 0 J.lO3=O J.l13=O J.l04=13398 J.l14=O Objeto B Invariancia traslación en ~oo=32 O ~10=O Kanatani K., Understanding, Group of Theoretical Methods in Image 1990, Springer -Verlag. 0.117188 ~20=120 0 ~30=O 0.020325 ~40=666 Konig, D., Graphs and Matrices (Hungarian). Mat. Fig. Lapok, vo138, 1931, pp 26-30. 0 ~01=O -0.058594 ~11=-60 0 ~21=O Apéndice ~31=-375 -0.011444 ~02=448 0.4375 0 ~12=O 0.048218 ~22=1580 Valores de los lnvariantes en traslación y cambio de escala de las figuras dadas en el artículo. Se han encontrado los momentos hasta cuarto orden. Para los objetos que representan caracteres numéricos se calcularon invariantes bidimensionales por estar formados por una sola capa. Para el resto se calcularon invariantes tridimensionales. Invariancia en cambio de escala (esc1) 1 0 ~03=O ~13=-765 -0.023346 ~04=12190 0.372009 Objeto C Invariancia en traslación Invariancia en cambio de escala (esc1) .Upq Sea escl = .u (p+q)/2+1 y .Upqr esc2 = A 1.100=32 Invariancia en cambio de escala (esc1) 1 1.110=0 O Invariancia traslación 1.120=160 1.130=0 1.140=958 en 0.15625 0 0.029236 1.101=0 0 1.111=0 0 1.121=0 0 1.131=0 0 1.102=528 1.112=0 1.122=2090 1 Jl10=O o Jl20=136.875 0.133667 Jl30=-66.796875 -0.065231 Jl40=814.990417 0.024872 JlO1=0 Jl (p+q+r)/3+1 Objeto Jloo=32 0.515625 0 0.063782 0 Jl11=23.125 0.022583 Jl21=-23.203125 -0.022659 Jl31=159.509277 0.004868 JlO2=504.875 0.493042 Jl12=-91.796875 Jl22= 1948.927856 -0.089645 JlO3=411.796875 0.402145 Jl13=81.697189 Jl04=13422.617188 0.002493 Objeto 0.059477 0.409626 D Invariancia en traslación Invariancia en cambio de escala (esc3) ~ooo=87 ~1oo=9.536743e-O7 1 1.096177e-08 ~2oo=1528.413818 17.567975 ~3oo=-386.004822 -0.050998 Hermilo Sánchez: Optimización de una Medida de Semejanza para Objetos /.l4oo=48168.535156 6.363923 ~201=68.729927 0.00908 /.lo1o=4.48226ge-05 5.152034e-07 ~3o1=162.995163 0.021535 /.l11o=-88.413803 -1.016251 -0.024206 ~o11=53.977005 ~111=37. 770649 0.620425 /.l21o=-183.213135 /.l31o=-2332.521973 -0.308168 ~211=1206.491577 0.159399 /.lo2o=517.747131 5.951116 ~o21=172.693817 0.022816 /.l12o=107.466461 0.014198 ~121=175.771103 0.023223 /.l22o=8633.792969 1.140678 0.124446 /.lo3o=-111.198029 -0.014691 ~o31=941.933594 ~oo2=42 .436775 /.l13o=-1112.552002 -0.146988 ~1o2=19.03594 0.002515 /.lo4o=6954.779297 /.lOO1 =-2. 9563ge-05 0.91885 ~2o2=836.585876 0.110528 -3.39815e-07 ~o12=130.287491 0.017213 /.l1o1=31.482759 0.361871 ~112=78.796211 0.01041 /.l2o1=3.01742 0.000399 ~o22=598.626648 0.079089 /.l3o1=669.666077 0.088475 ~oo3=78.399796 0.010358 /.lo11=71.183899 0.818206 ~103=61.977261 0.008188 /.l111=82.959579 0.01096 ~o13~314.50766 0.041552 /.l211=1167.696045 0.154273 ~004=204.0616 0.02696 /.lo21=192.381516 0.025417 /.l121=368.438812 0.048677 Objeto /.lo31=1214.243896 0.160423 /.loo2=60.229862 0.692297 Invariancia traslación /.l1o2=47.426472 0.006266 /.l2o2=935.522705 0.123599 ~ooo=87 /.lo12=169.04863 0.022334 ~1oo=-8.58306ge-06 /.l11~=164.73587 0.021765 ~2oo=1522.482666 /.lo22=762.975403 0.100803 ~3oo=-23.772869 /.loo3=99.210197 0.013107 ~4oo=47126.816406 /.l1o3=110.579216 0.014609 ~o1o=2.0504e-05 /.lo13=405.54953 0.05358 ~110=137.655167 /.loo4=271.552673 0.035877 ~210=129.255722 en ~o2o=791.103333 E Invariancia traslación en ~ooo=87 Invariancia en cambio de escala (esc3) ~120=-216.197586 1 ~o3o=-400.223724 ~220=13638.788086 ~1oo=9.536743e-06 1.096177e-07 ~130=2740.707764 ~2oo=1518.988159 17.459634 ~o4o=14045.150391 ~3oo=80.621407 0.010652 ~001=-1.239777e-05 ~4oo=48938.09375 6.465596 ~101=-15.655175 ~201=-21.370535 ~o1o=-3.051758e-05 -3.507768e-07 ~110=-91.091957 -1.047034 ~301=-256.250793 ~210=-120.584312 -0.015931 ~011=-116.103523 ~310=-1875.03479 -0.247726 ~111=158.415817 ~o2o=479.264404 5.508786 ~211=-2118.086182 ~120=142.235382 0.018792 ~021=167.936356 ~220=8013.384766 ~o3o=61. 720974 1.058711 ~121=-247.996201 0.008154 ~031=-2068.522217 ~130=-946.156433 -0.125004 ~oo2=32.436764 ~o4o=5868.976563 ~oo1=-5.722046e-06 ~101=6.747128 0.00499 0.487779 F ~310=2458.357666 Objeto Tridimensionales.. 0.775397 ~102=-31.001989 -6.577064e-08 ~202=543.349426 0.077553 ~012=-21.338438 Invariancia en cambio de escala (esc3) 1 -9.865596e-08 17.499801 -0.003141 6.226294 2.356781e-07 1.582243 0.017077 0.324793 9.093142 -0.028564 1.801927 -0.052877 0.362096 1.855615 -1.425031 e-07 -0.179945 -0.002823 -0.033855 -1.334523 0.02093 -0.279837 0.022187 -0.032765 -0.273289 0.372836 -0.004096 0.071786 -0.002819 ~ Hermilo Sánchez: Optimización de una Medida 1.1112=80.559418 0.010643 1.1022=487.449677 0.064401 1.1003=0.874878 0.OC0116 1.1103=-22.834366 -0.003017 1.1013=-118.999275 -0.015722 1.1113=163.780533 0.021638 de Semejanza para Objetos B C D E F G Tridimensionales... (613,0) (6,3,0) (5, 7,1 ) (517,1) (5,3,2) (5,3,2) 0.00423 1.1004=32.01799 Nota: un cálculo preciso del centro de masa arroja valores reales, pero como se consideran figuras discretas, sÓlo se ha tomado la parte entera de dicho cálculo. Objeto G Invariancia traslacion en ~000=87 ~100=4.291534e-06 ~2oo=1587.057373 ~3óo=-123.841103 ~400=51552.738281 ~o1o=-2.861023e-05 ~110=-248.758621 ~210=-491.359375 ~310=-9814.264648 ~o2o=830.413696 ~120=-114.583534 ~220=14094.620117 ~o3o=210.970352 ~130=-3527.358887 ~040=15086.31 0547 ~001=3.71933e-05 ~101=17.632189 ~201=5.036937 ~301=932.001526 ~011=-100.34481 ~111=112.930664 ~211=-2104.812256 ~021=90.547813 ~121=441.249573 ~031=-1549.250488 ~002=33. 95401 ~102=-22.936455 ~202=647 .508423 ~012=3.248519 ~112=-106.402809 ~003=0.342679 ~103=16.022408 ~013=-99.961685 ~004=33.923798 Figura A Invariancia en cambio de escala (esc3) 1 4.932798e-08 18.242039 -0.016362 6.811037 -3.288532e-07 -2.859294 -0.064917 -1.29664 9.544985 -0.015139 1.862151 0.027873 -0.466027 1.993171 4.275092e-07 0.202669 0.000665 0.123134 -1.153389 0.01492 -0.278083 0.011963 0.058297 -0.204684 0.390276 -0.00303 0.085547 0.000429 -0.014058 4.527398e-05 0.002117 -0.013207 0.004482 Centro de Masa (6,3,0) Hermilo Sánchez Cruz. Nació en la Ciudad de México. Actualmente es estudiante del doctorado en Ciencia e Ingeniería en Computación de la Universidad Nacional Autónoma de México, con sede en el Instituto de Investigaciones en Matemáticas Aplicadas y en Sistemas. Obtuvo el grado de Físico en la Facultad de Ciencias de la UNAM; en abril de 1995, el grado de maestro en Ciencias de la Computación en febrero de 1998, a través de la Unidad Académica de los Ciclos Profesional y de Posgrado del CCH. Sus áreas de interés son: Visión por Computadora y Reconocimiento de Patrones.