APLICACION DE ALGORITMOS DE REPARACI´ ON DE...

9
APLICACI ´ ON DE ALGORITMOS DE REPARACI ´ ON DE IM ´ AGENES AL RELLENADO DE HUECOS EN MALLAS 3D Emiliano P´ erezHern´andez 1 , Santiago Salamanca Mi˜ no 2 , Antonio Ad´an Oliver 3 , Carlos Cerrada Somolinos 1 , Pilar Merch´ an Garc´ ıa 2 , In´ es Tejado Balsera 2 1 Escuela T´ ecnica Superior de Ingenier´ ıa Inform´ atica, UNED, {emiliano,ccerrada}@issi.uned.es 2 Escuela de Ingenier´ ıas Industriales, UEx, {ssalaman, pmerchan, itejbal}@unex.es 3 Escuela T´ ecnica Superior de Ingenier´ ıa Inform´ atica, UCLM, [email protected] Resumen En este trabajo se presentan los resultados experi- mentales obtenidos tras aplicar dos algoritmos de reparaci´ on o reconstrucci´ on de im´ agenes al relle- nado de huecos en mallas 3D. Para ello se ha pro- yectado la superficie sobre un plano y se ha alma- cenado en cuadr´ ıculas o p´ ıxeles de un ancho deter- minado el valor de profundidad seg´ un el eje nor- mal al plano. De esta forma se han creado “im´ age- nes” 2D que constituyen la entrada a los m´ etodos de reparaci´ on de im´ agenes. Tras el relleno se ha realizado la transformaci´ on inversa (de 2D a 3D) y se ha obtenido la superficie reparada. Para sacar conclusiones sobre los resultados de los algoritmos, los huecos han sido creados artificialmente a par- tir de una malla sin ellos y, tras el rellenado, se han comparado los datos originales con los obte- nidos por el proceso de reparaci´ on. De esta forma ha sido posible determinar cu´ al es el m´ etodo que mejor ha funcionado. Palabras clave: Reparaci´ on de im´ agenes, relleno de huecos, modelado 3D. 1. INTRODUCCI ´ ON La reconstrucci´ on 3D completa de superficies a partir de la informaci´ on geom´ etrica adquirida con esc´ aner 3D supone la realizaci´ on de varias eta- pas. Las primeras son el registro, consistente en el c´ alculo de la transformaci´ on que permite aco- plar las distintas vistas parciales adquiridas; y la fusi´ on o integraci´ on, en la que se define una ´ uni- ca representaci´on matem´atica, normalmente una malla, para toda la superficie 3D del objeto es- caneado. Tras estas etapas es necesario hacer un tratamiento de la superficie: suavizado, remallado, rellenado de huecos... Es esta ´ ultima acci´on de la que se tratar´a en este trabajo. Existen dos hechos que hacen que aparez- can huecos en una malla. El primero es que en el proceso de registro y/o integraci´ on se haya produ- cido alguna p´ erdida o redefinici´on incorrectade la malla, por ejemplo, alg´ un tri´angulo que falte por Figura 1: Malla con huecos debido a oclusiones y sombras en una malla adquirida con un esc´ aner 3D (Malla de una de las piezas del grupo escult´orico de Eneas perteneciente al Museo Nacional de Arte Romano.) definir. Este tipo de hueco no supone un proble- ma y suele rellenarse de forma directa sin tener en cuenta la informaci´ on geom´ etrica que lo rodea. El segundo hechoes la falta de informaci´ongeom´ etri- ca debido a oclusiones o sombras en los objetos. En este caso los huecos suelen ser de mayor ta- ma˜ no que los anteriores y su rellenado es mucho m´as complejo, necesitando informaci´on de la geo- metr´ ıa circundante. En la figura 1 se muestra una malla con diversos huecos debido a oclusiones y sombras. Cuando una malla se encuentra cerrada, suponien- do que no existen caras o bordes mal definidos, se dice que es herm´ etica o que es una variedad sin bordes o cerrada. Existen multitud de aplica- ciones que necesitan que la malla sea herm´ etica: sistemas de prototipado r´apido, sistemas de me- trolog´ ıa, modelos 3D para aplicaciones de visi´on por computador o para gr´aficas por computador, etc. Es por tanto de vital importancia esta fase del tratamiento de mallas. Por otro lado es una de las tareasm´as tediosasy que m´as intervenci´onhuma- na precisa. Por todo ello, la definici´on de nuevos etodos que solucionen este problema de forma ´ optima y autom´ atica es de gran importancia. Los m´ etodos de rellenos de huecos 3D se pueden

Transcript of APLICACION DE ALGORITMOS DE REPARACI´ ON DE...

Page 1: APLICACION DE ALGORITMOS DE REPARACI´ ON DE ...intranet.ceautomatica.es/old/actividades/jornadas/XXVIII/...bater´ıa de mallas 3D. 2. Transformacion3D→2D y creaci´on de la ima-gen

APLICACION DE ALGORITMOS DE REPARACION DE

IMAGENES AL RELLENADO DE HUECOS EN MALLAS 3D

Emiliano Perez Hernandez1, Santiago Salamanca Mino2, Antonio Adan Oliver3,Carlos Cerrada Somolinos1, Pilar Merchan Garcıa2, Ines Tejado Balsera2

1Escuela Tecnica Superior de Ingenierıa Informatica, UNED, {emiliano,ccerrada}@issi.uned.es2Escuela de Ingenierıas Industriales, UEx, {ssalaman, pmerchan, itejbal}@unex.es

3 Escuela Tecnica Superior de Ingenierıa Informatica, UCLM, [email protected]

Resumen

En este trabajo se presentan los resultados experi-mentales obtenidos tras aplicar dos algoritmos dereparacion o reconstruccion de imagenes al relle-nado de huecos en mallas 3D. Para ello se ha pro-yectado la superficie sobre un plano y se ha alma-cenado en cuadrıculas o pıxeles de un ancho deter-minado el valor de profundidad segun el eje nor-mal al plano. De esta forma se han creado “image-nes” 2D que constituyen la entrada a los metodosde reparacion de imagenes. Tras el relleno se harealizado la transformacion inversa (de 2D a 3D)y se ha obtenido la superficie reparada. Para sacarconclusiones sobre los resultados de los algoritmos,los huecos han sido creados artificialmente a par-tir de una malla sin ellos y, tras el rellenado, sehan comparado los datos originales con los obte-nidos por el proceso de reparacion. De esta formaha sido posible determinar cual es el metodo quemejor ha funcionado.

Palabras clave: Reparacion de imagenes, rellenode huecos, modelado 3D.

1. INTRODUCCION

La reconstruccion 3D completa de superficies apartir de la informacion geometrica adquirida conescaner 3D supone la realizacion de varias eta-pas. Las primeras son el registro, consistente enel calculo de la transformacion que permite aco-plar las distintas vistas parciales adquiridas; y lafusion o integracion, en la que se define una uni-ca representacion matematica, normalmente unamalla, para toda la superficie 3D del objeto es-caneado. Tras estas etapas es necesario hacer untratamiento de la superficie: suavizado, remallado,rellenado de huecos...

Es esta ultima accion de la que se tratara en estetrabajo. Existen dos hechos que hacen que aparez-can huecos en una malla. El primero es que en elproceso de registro y/o integracion se haya produ-cido alguna perdida o redefinicion incorrecta de lamalla, por ejemplo, algun triangulo que falte por

Figura 1: Malla con huecos debido a oclusiones ysombras en una malla adquirida con un escaner 3D(Malla de una de las piezas del grupo escultoricode Eneas perteneciente al Museo Nacional de ArteRomano.)

definir. Este tipo de hueco no supone un proble-ma y suele rellenarse de forma directa sin tener encuenta la informacion geometrica que lo rodea. Elsegundo hecho es la falta de informacion geometri-ca debido a oclusiones o sombras en los objetos.En este caso los huecos suelen ser de mayor ta-mano que los anteriores y su rellenado es muchomas complejo, necesitando informacion de la geo-metrıa circundante. En la figura 1 se muestra unamalla con diversos huecos debido a oclusiones ysombras.

Cuando una malla se encuentra cerrada, suponien-do que no existen caras o bordes mal definidos,se dice que es hermetica o que es una variedadsin bordes o cerrada. Existen multitud de aplica-ciones que necesitan que la malla sea hermetica:sistemas de prototipado rapido, sistemas de me-trologıa, modelos 3D para aplicaciones de visionpor computador o para graficas por computador,etc. Es por tanto de vital importancia esta fase deltratamiento de mallas. Por otro lado es una de lastareas mas tediosas y que mas intervencion huma-na precisa. Por todo ello, la definicion de nuevosmetodos que solucionen este problema de formaoptima y automatica es de gran importancia.

Los metodos de rellenos de huecos 3D se pueden

Page 2: APLICACION DE ALGORITMOS DE REPARACI´ ON DE ...intranet.ceautomatica.es/old/actividades/jornadas/XXVIII/...bater´ıa de mallas 3D. 2. Transformacion3D→2D y creaci´on de la ima-gen

englobar en dos categorıas:

1. Metodos en donde el relleno es un procesoimplıcito en la creacion del modelo 3D.

2. Metodos en donde el relleno es un post-proceso a la creacion del modelo 3D.

En los primeros la entrada al algoritmo son lascoordenadas 3D de la superficie del objeto sin nin-guna informacion topologica asociada. A partir deestos datos se crea una representacion (malla, Be-zier , funciones implıcitas...) que, por definicion,no presenta huecos. Por ejemplo, en [2] se empleauna funcion implıcita calculada a partir de la re-presentacion volumetrica de los datos de rango pa-ra generar la malla que representa al objeto. En [4]se presenta un metodo de aproximacion de mallassimplex, que son mallas con invariancia topologi-ca, a los datos de rango de un objeto, ası como unconjunto de operaciones topologicas que permitefusionar varias mallas y modelar cualquier tipo deobjetos de forma libre.

El segundo grupo de metodos de relleno de hue-cos es mas empleado que el primero. La razon esque de esta forma se independiza el proceso demodelado 3D del proceso de rellenado de huecos,permitiendo procedimientos de trabajo mas flexi-bles. Algunos ejemplos de estos metodos son losque se referencian a continuacion.

En [3] se presenta un metodo basado en la defi-nicion de una funcion implıcita definida en el en-torno del hueco a rellenar. Sobre ella se aplica unproceso de difusion que extiende la superficie a lolargo del volumen. Es este un metodo simple deimplementar, que genera superficies que no inter-sectan entre sı y que es eficiente en grandes mallaso de elevada resolucion ya que el algoritmo solo seaplica en las areas cercanas a los huecos. En [5] sepresenta una variante de este metodo.

Nooruddin y Turk en [9] proponen un metodo queparte de la voxelizacion de la malla para el relle-nado de huecos y reparacion de zonas mal defi-nidas (dobles paredes, caras con interseccion...).Ademas, basandose en la misma representacion,proponen un metodo que posibilita simplificar lamalla. El procedimiento resultante no permite re-llenar huecos en zonas de alta curvatura.

Wang y Oliveira en [11] toman una nube de puntoscomo datos de entrada y generan una representa-cion intermedia consistente en una malla de carastriangulares sobre la que se hace una deteccion debordes para determinar los huecos. Tras ello, setoma un grupo de puntos vecinos a esos bordesy se realiza una interpolacion mediante la tecnicaMLS (Moving Least Squares) [7].

(a) Imagenes tomadas de [10]

(b) Imagenes tomadas de [1]

Figura 2: Ejemplos de algoritmos de reparacion oreconstruccion de imagenes.

Todos los metodos que se han comentado tienenla caracterıstica de que su efectividad no es gene-ral, es decir, pueden presentar buenos resultadosen un determinado tipo de huecos y no en otros.Para solventar este problema e intentar generarun algoritmo con validez en distintas situacionesse ha decidido aplicar metodos de reparacion deimagenes a la reconstruccion de superficies. Estos,como se muestra en la figura 2, suelen proporcio-nar muy buenas soluciones en una gran diversidadde situaciones.

En este trabajo se han empleado dos algoritmos dereparacion de imagenes. El primero es de Roth yBlack [10] y en el se presenta un modelo de Mar-kov de orden superior en el que el potencial esrepresentado como un Producto de Expertos [6].El modelo ha sido entrenado empleando 2000 re-giones aleatoriamente escogidas de imagenes per-tenecientes a la base de datos de segmentacion dela Universidad de Berkeley [8] (escenas naturales,personas y edificios). El modelo, que llaman Cam-po de Expertos, puede ser empleado para diver-sas aplicaciones de vision por computador. Elloslo aplican al filtrado de ruido gaussiano en image-nes y a reparacion de imagenes. Es esta segundaaplicacion, como ya se ha comentado, la que nosinteresa. Para ello emplean un esquema de actua-lizacion en el que el valor del gradiente para lospıxeles que deben ser reconstruidos es cero. En lafigura 2 (a) se muestra el resultado de la repara-cion de imagenes con este algoritmo. Especificarque la aplicacion de este algoritmo al relleno dehuecos y mallas 3D ha sido realizado sin modificarel aprendizaje que se ha comentado previamente.

El segundo metodo que se utilizara para el relle-nado de huecos es el propuesto por Criminisi etal. [1]. Se trata en este caso de un algoritmo en el

Page 3: APLICACION DE ALGORITMOS DE REPARACI´ ON DE ...intranet.ceautomatica.es/old/actividades/jornadas/XXVIII/...bater´ıa de mallas 3D. 2. Transformacion3D→2D y creaci´on de la ima-gen

que se fusionan las dos tecnicas fundamentales derestauracion de imagenes: las tecnicas de “imageinpainting” y las tecnicas basadas en ejemplares.En el primer tipo se emplea un proceso de difu-sion basado en los modelos fısicos de transmisiondel calor y se consigue reparar imagenes de formamuy efectiva, pero con el problema de que en elcaso de que las zonas a restaurar sean amplias,el propio proceso de difusion genera borrosidad enla zona reparada. El segundo tipo trata de reparargenerando nuevas texturas mediante el muestreo yla copia de valores de color de la propia imagen areparar. El principal problema de estos algoritmoses que los bordes entre las regiones de las imagenessuelen generar copias de texturas erroneas. En lafigura 2 (b) se muestran los tipos de reparacionesposibles de realizar con el metodo comentado.

La estructura que se seguira en el trabajo es lasiguiente: en la seccion 2 se explicara el procedi-miento que se ha seguido para el rellenado de hue-cos mediante tecnicas de reparacion de imagenesy su posterior evaluacion. A continuacion, en elapartado 3 se explicara el metodo que se ha em-pleado para la transformacion de la superficie 3Da una imagen 2D. En el apartado 4 se mostraranlos resultados experimentales obtenidos. Por ulti-mo, en el apartado 5 se indicaran las conclusionesy futuras lıneas de trabajo.

2. PROCEDIMIENTO PARA EL

RELLENO DE HUECOS

MEDIANTE TECNICAS DE

REPARACION DE

IMAGENES

La hipotesis de trabajo planteada en este artıculoes que es posible rellenar huecos de superficies 3Daplicando algoritmos de reparacion de imagenessin que estos sean modificados. Para demostrar suvalidez se disenara un procedimiento que, a gran-des rasgos, es el siguiente:

1. Creacion de huecos de forma artificial en unabaterıa de mallas 3D.

2. Transformacion 3D→2D y creacion de la ima-gen de cada una de las mallas.

3. Aplicacion del algoritmo de restauracion.

4. Transformacion 2D→3D y fusion del huecoreconstruido con la malla obtenida en el paso1.

5. Comparacion de los valores de las coordena-das de los nodos reconstruidos en el paso an-terior con los de las malla original antes dehaberse realizado la ruptura.

Figura 3: Procedimiento para el relleno de huecosen superficies 3D a partir de algoritmos de repa-racion de imagenes, y su evaluacion

En el procedimiento disenado se parte de una ma-lla inicial, que se denotara M , en la que se crearanartificialmente huecos que seran los que posterior-mente se rellenaran. Esta segunda malla se deno-tara Mh. En el siguiente paso se creara una imagende rango a partir de la malla 3D Mh, es decir, seproyectara cada nodo de la malla sobre un plano yse asociara a cada pıxel un valor que sera el valorde profundidad de este. De esta manera se formauna imagen 2D, que llamaremos Ih. La imagende rango Ih constituye la entrada a los algorit-mos de restauracion de imagenes que se probaranen este trabajo y que son, como se ha indicadoen la introduccion los propuestos en [1, 10]. Laimagen reconstruida se denotara If . En el cuartopaso se realiza la transformacion inversa, es decir,se transforman los datos de aquellas zonas de If

que hayan sido reparadas (las correspondientes alos huecos rellenos), en su correspondiente malla3D, que se denotara como Mf y se fusiona con lamalla Mh, dando como malla resultante M ′. Porultimo, para verificar la bondad del metodo quese haya aplicado, se comparara M ′ con M . En lafigura 3 se muestra de forma esquematica todo elprocedimiento.

3. CREACION DE LA IMAGEN

DE RANGO

De los pasos que constituyen el procedimiento co-mentado anteriormente, el mas crıtico es el pri-mero, por lo que a continuacion se comentara conalgo de detalle.

En la transformacion 3D→2D se genera una ima-gen de rango, Ih, para cada malla, Mh que vaya aser reparada. Esta imagen no hace sino codificarla informacion de altura de los puntos 3D, respec-

Page 4: APLICACION DE ALGORITMOS DE REPARACI´ ON DE ...intranet.ceautomatica.es/old/actividades/jornadas/XXVIII/...bater´ıa de mallas 3D. 2. Transformacion3D→2D y creaci´on de la ima-gen

(a) (b)

Figura 4: El plano de proyeccion influira en la re-presentacion bidimensional de la superficie 3D. Enel caso de coger un plano como por ejemplo el mos-trado en (a) no sera posible reconstruir de formacorrecta Mh. Por el contrario, en (b) se muestraun plano desde el que sı se podra reconstruir Mh

exitosamente.

to a un plano, en niveles de grises de la imagen omapa de bits.

En esta transformacion hay que decidir dos cues-tiones fundamentales:

1. Determinacion del plano de proyeccion.

2. Determinacion de la resolucion de la imagen.

3.1. Plano de proyeccion

Lo primero que hay que decidir es el plano sobreel que se proyectara Mh. Como puede deducirse,el plano de proyeccion que se elija influira en lacapacidad de representacion que tenga la imagencon respecto a la informacion 3D. Por ejemploen la figura 4 (a) puede apreciarse una eleccionerronea del plano de proyeccion dado que coinci-den las proyecciones de dos puntos en un mismopunto del plano, es decir, da lugar a una funcionbidimensional multivaluada. Por el contrario, enla figura 4 (b) el plano de proyeccion elegido noda lugar a una situacion como la comentada.

En este trabajo se han empleado unicamente vis-tas parciales de objetos capturadas con un escaner3D. Este genera las coordenadas 3D de los verti-ces de la malla con respecto a su propio sistemade referencia S = {OXY Z}, con el eje OZ diri-gido hacia fuera del mismo, o lo que es lo mismo,formando el eje de vision del escaner 3D. Por lotanto, ante esta situacion, es inmediata la elecciondel plano XY como plano de proyeccion idoneo,que no da lugar a situaciones ambiguas como lasanteriormente mencionadas.

3.2. Resolucion de la imagen

Para determinar la resolucion de la imagen lo pri-mero que se tendra en cuenta es cual es el tamano

(a) (b) (c)

Figura 5: Proyeccion de Mh sobre el plano para lageneracion de If . Se muestran diversas resolucio-nes de imagenes. Notese que para baja resolucion(a) se pierde mucho detalle y que para alta resolu-cion (c) aparecen zonas no rellenadas. En amboscasos los algoritmos de reconstruccion no funcio-naran correctamente.

en milımetros que representara. Por lo explicadoen el apartado 3.1, si xmax e ymax son los maximosvalores de las coordenadas de los nodos ni ∈ Mh,y xmin e ymin los mınimos, el tamano que repre-sentara la imagen sera de n × m mm., en donde:

n = xmax − xmin (1)

m = ymax − ymin

Supongamos ahora que la resolucion de If esde q pıxeles por milımetro (ppmm). Entonces, eltamano de la imagen es de (n · q × m · q) pıxe-les. Por lo explicado se puede concluir que loque se esta haciendo es cuadricular el rectangu-lo del plano XY con vertices de su diagonal en(xmin, ymin) y (xmax, ymax), con cuadros de 1/qmm. de lado. Cada una de estas cuadrıculas esun pıxel de If y, por ello, se podrıa decir que el“tamano” en milımetros del pıxel es 1/q. En elpıxel (i, j) se almacenara la coordenada zi del no-do ni ∈ Mh cuyas coordenadas (xi, yi) verifiquenque:

(i − 1) /q ≤ xi < i/q (2)

(j − 1) /q ≤ yi < j/q

Es obvio que cuanta menor resolucion tenga laimagen, mayor sera el tamano en milımetros delpıxel y mayor sera el numero de nodos de Mh queverificaran la condicion (2). En este caso en el pıxelse almacenara la coordenada zi de menor valor deentre todos los nodos que verifiquen la condicion,con la consiguiente perdida de informacion en If .Por otro lado, si la resolucion es muy elevada eltamano del pıxel disminuira y puede ocurrir que

Page 5: APLICACION DE ALGORITMOS DE REPARACI´ ON DE ...intranet.ceautomatica.es/old/actividades/jornadas/XXVIII/...bater´ıa de mallas 3D. 2. Transformacion3D→2D y creaci´on de la ima-gen

Figura 6: Representacion de α frente al numero denodos perdidos para varias mallas.

existan algunos para los que ningun nodo haya ve-rificado (2), lo que supondra la aparicion de ruidoimpulsional en If . La eleccion de la resolucion es,por tanto, una decision crıtica que afectara en laetapa de aplicacion del algoritmo de reparacion y,por consiguiente, al relleno de hueco de la malla.En la figura 5 se muestran proyecciones de Mh condistintos valores de resolucion de la imagen en lasque se aprecia lo comentado.

Para la determinacion experimental de la resolu-cion se ha ido variando la anchura del pıxel 1/qde forma proporcional a la longitud media de lasaristas, dm, de la malla Mh:

1

qi

=dm

αi

(3)

donde 1/αi es el factor de proporcionalidad. Trasla proyeccion de Mh para cada valor de αi se cal-cula el numero de nodos perdidos Pi como:

Pi =∑

j∈Mh

V(k,l)j , j = 1, . . . , n (4)

en donde n es el numero de nodos de la malla Mh y

V(k,l)j es un valor que indica la existencia de nodo

perdido para el pıxel (k, l) de If , y que se definecomo:

V(k,l)j =

0Si ∃ nj , . . . , nr, . . . ∈ Mh queverifican (2) para el pıxel(k, l) y zj ≤ . . . ≤ zr ≤ . . .

1 Para cualquier otro caso

(5)

Si representamos graficamente para cada malla dela base de datos, el valor de P (en tanto por ciento)

Figura 7: Algunos de los objetos empleados en eltrabajo.

frente a 1/α podremos ver que para valores de 1/αcercanos a cero la resolucion de la imagen sera ele-vada y, por tanto, el numero de nodos perdidos,P , sera cero. A medida que vaya aumentado 1/αira aumentado P . El valor mas pequeno de 1/α enel que cambie la pendiente de la curva es el valorde la constante de proporcionalidad que interesa,ya que representa la mejor resolucion de la ima-gen para una malla dada sin apenas perdidas deinformacion ni ruido impulsional. En la imagen 6se muestra una de las graficas comentadas.

Experimentalmente, se ha determinado que unfactor de proporcionalidad 1/α = 1, 1 genera bue-nos resultados para la mayorıa de las mallas.

4. RESULTADOS

EXPERIMENTALES

Tras la reconstruccion de la imagen y su poste-rior transformacion en 3D, el paso que falta porrealizar es el de la verificacion de los resultadosobtenidos. Para ello se comparan los datos de lamalla original M con la malla reparada M ′. Estacomparacion se basa en el calculo de la distanciaeuclıdea desde los nodos de la malla M ′ a sus no-dos mas cercanos en M . Como es de esperar, estasera 0 excepto para los nodos que formen parte delrelleno de los huecos.

La base de datos que hemos empleado es de 20objetos de forma libre (en la figura 7 se muestranalgunos de ellos) que han sido capturadas con elescaner Minolta VI-300. En las mallas se han crea-do desde 2 a 6 huecos de tamano significativo, y sehan reconstruido empleando los algoritmos [10, 1].Ademas de verificar si es posible rellenar huecos enuna superficie 3D mediante algoritmos de repara-cion de imagenes, es importante dilucidar si es utilesta metodologıa. Para ello los huecos tambien hansido rellenados mediante un software comercial detratamiento de mallas y los resultados se han in-cluido en la comparacion. En la figura 8 se muestrauna imagen de todos las mallas y huecos con los

Page 6: APLICACION DE ALGORITMOS DE REPARACI´ ON DE ...intranet.ceautomatica.es/old/actividades/jornadas/XXVIII/...bater´ıa de mallas 3D. 2. Transformacion3D→2D y creaci´on de la ima-gen

Figura 8: Mallas con los huecos sobre las que seha probado los distintos algoritmos de reparacion

que se ha trabajado.

En las tablas 1 y 2 se muestran los resultadosnumericos del rellenado de los huecos. Por cadamalla se indica, en la segunda columna, la refe-rencia al algoritmo que se haya aplicado. Como seobserva, el tercer caso es el del software comercial.En la tercera columna se indica el valor medio delas distancias entre los nodos que se han redefinidopor el relleno en M ′ y los que les correspondan enM . Los resultados son muy buenos para el metodopropuesto en [10] ya que en el 75% de los casos esen el que la distancia media es menor. En el poloopuesto se encuentra el algoritmo [1], ya que enningun caso es el mejor de los tres metodos. Enel 25% restante el algoritmo comercial es el quepresenta la mejor solucion.

Se ha calculado tambien la distancia media porhuecos, es decir, se han determinado los nodos quehan rellenado cada hueco de M ′ y se ha determi-nado la distancia media en cada uno de ellos. Esteerror es mas significativo que el anterior ya queel tipo de superficie es mas homogenea por huecoque por malla. Por tanto, el algoritmo que mejorfuncione sera aquel que mejor se adapte a todotipo de superficies (superficies suaves, con cam-bios bruscos, superficies planas...). En las graficasde barras de la figura 9 se muestran representa-das, en el eje de ordenadas, la distancia media porhuecos y en el de abcisas los algoritmos de relleno:la barra de la izquierda, en azul, se correspondecon el algoritmo [10]; la del centro, en rojo, es elde [1] y la de la derecha, en verde, la del softwarecomercial. A partir de esta distancia media, en el56% de los casos el algoritmo que mejor rellena loshuecos es el [10], en el 2,67% el algoritmo de [1]y en el porcentaje restante, el 41,33%, el del soft-ware comercial. Por tanto, sigue siendo el primermetodo el que proporciona mejores resultados.

En la figura 10 se muestra una imagen en la que sevisualiza el relleno para cada uno de los algoritmosen una de la mallas de la base de datos.

5. CONCLUSIONES Y

FUTURAS LINEAS DE

TRABAJO

Se ha presentado un trabajo en el que se ha que-rido verificar si los algoritmos de reparacion deimagenes sin modificaciones podıan ser validos pa-ra la reparacion de huecos en mallas 3D.

Para ello, en primer lugar, ha sido necesario rea-lizar una transformacion de 3D a 2D que permitecrear una imagen que sea la entrada al algoritmode restauracion. Para la creacion de esta imagense ha presentado un metodo que permite calcular

Page 7: APLICACION DE ALGORITMOS DE REPARACI´ ON DE ...intranet.ceautomatica.es/old/actividades/jornadas/XXVIII/...bater´ıa de mallas 3D. 2. Transformacion3D→2D y creaci´on de la ima-gen

Tabla 1: Distancias medias entre los nodos de M ′

y M para los tres algoritmos de relleno probados.Malla Alg. de Dist.

relleno media (mm.)[10] 0,9347

persona [1] 1,5342Soft. comercial 1,1498

[10] 0,4521bebe [1] 0,6019

Soft. comercial 0,5226[10] 0,7742

conejo [1] 4,8585Soft. comercial 0,7220

[10] 0,4127cerdo [1] 0,9938

Soft. comercial 0,4575[10] 0,6400

tapa [1] 0,9855Soft. comercial 0,6949

[10] 0,7153dinosaurio [1] 2,2741

Soft. comercial 0,8207[10] 0,9653

enano [1] 1,6980Soft. comercial 0,8808

[10] 0,7045yeso [1] 2,1069

Soft. comercial 0,8516[10] 0,8029

leo [1] 2,7879Soft. comercial 1,0892

[10] 0,6166marciano [1] 2,6012

Soft. comercial 0,7571[10] 0,7113

mascara [1] 0,9590Soft. comercial 0,7526

[10] 0,5521muneca1 [1] 2,6701

Soft. comercial 0,4256[10] 0,5159

pato1 [1] 0,8566Soft. comercial 0,4512

[10] 0,4830pato2 [1] 1,0492

Soft. comercial 0,5755[10] 0,3536

peonza [1] 0,5818Soft. comercial 0,3897

[10] 0,5307muneca2 [1] 1,3913

Soft. comercial 0,5927

Tabla 2: Distancias medias entre los nodos de M ′

y M para los tres algoritmos de relleno probados(cont.).

Malla Alg. de Dist.relleno media (mm.)

[10] 0,8501perro [1] 3,6414

Soft. comercial 0,6008[10] 0,4349

tetris [1] 1,4860Soft. comercial 0,4885

[10] 0,9262dinosaurio [1] 2,0049

Soft. comercial 1,2902[10] 0,5870

vaca [1] 4,4610Soft. comercial 0,6276

cual es la resolucion optima para que en la pro-yeccion de los datos el numero de perdidas seamınimo.

Las conclusiones fundamentales son dos. En pri-mer lugar, el algoritmo de Roth [10] puede serempleado en el relleno de huecos dando resulta-dos aun mejores que los de un software comercial.Por contra, no todos los algoritmos de reparacionde imagenes son validos para el relleno de huecos.Ası el algoritmo presentado por Criminisi [1] no hafuncionado correctamente. El fallo en este segundometodo es debido a que emplea una tecnica basa-da en ejemplares que repara (rellena) generandolas nuevas texturas (en el caso de este trabajo, losnuevos valores de profundidad) mediante el mues-treo y la copia de valores de la propia imagen areparar. Quizas los algoritmos de image inpaintingsean mas adecuados en la reparacion ya que em-plean informacion local, es decir, cercana al hueco.

Las futuras lıneas de trabajo se enfocaran en laadaptacion del algoritmo [10] al rellenado de hue-cos ya que, como se ha dicho, en este trabajo nose ha modificado dicho metodo. Por ejemplo: elaprendizaje del Campo Aleatorio de Markov se harealizado con imagenes naturales que, posiblemen-te, deberıan ser cambiadas para esta nueva tarea;habra que adaptar el metodo de calculo de la ima-gen If para hacerlo valido para cualquier malla yno solo para vistas parciales; quizas sea util traba-jar con una representacion volumetrica de la mallay adaptar el algoritmo a esta nueva representa-cion...

Agradecimientos

Los autores de este trabajo quieren agradecer lasfacilidades y el apoyo de los miembros del MuseoNacional de Arte Romano (Merida, Badajoz) al

Page 8: APLICACION DE ALGORITMOS DE REPARACI´ ON DE ...intranet.ceautomatica.es/old/actividades/jornadas/XXVIII/...bater´ıa de mallas 3D. 2. Transformacion3D→2D y creaci´on de la ima-gen

Figura 9: Graficas de los errores por mallas y hue-cos.

(a)

(b)

(c)

(d)

Figura 10: En (a) se muestra la malla con los hue-cos realizados. En el resto de imagenes se muestranla distintas reparaciones. En (b) con el algoritmo[10], en (c) con el de [1] y en (d) con el rellenorealizado con el software comercial.

Page 9: APLICACION DE ALGORITMOS DE REPARACI´ ON DE ...intranet.ceautomatica.es/old/actividades/jornadas/XXVIII/...bater´ıa de mallas 3D. 2. Transformacion3D→2D y creaci´on de la ima-gen

trabajo desarrollado en el escaneo del grupo es-cultorico de Eneas.

El trabajo presentado en este artıculo ha sido fi-nanciado por el Ministerio de Educacion y Cienciay el Fondo Social Europeo mediante los proyectosDPI2006-14794-C02 y DPI2005-03769.

Referencias

[1] Antonio Criminisi, Patrick Perez, and Ken-taro Toyama. Region filling and objectremoval by exemplar-based image inpain-ting. IEEE Transactions on Image Proces-sing, 13(1):1200–1212, September 2004.

[2] Brian Curless and Marc Levoy. A volu-metric method for building complex modelsfrom range images. In Proceeding of SIG-GRAPH’96, pages 302–312. ACM, 1996.

[3] James Davis, Stephen R. Marschner, MattGarr, and Marc Levoy. Filling holes in com-plex surfaces using volumetric diffusion. InProc. of the First International Symposiumon 3D Data Processing, Visualization, andTransmission, pages 428–438, Padua, Italy,2002. IEEE.

[4] Herve Delingette. General object reconstruc-tion based on simplex meshes. InternationalJournal of Computer Vision, 32(2):111–146,September 1999.

[5] Tong-Qiang Guo, Ji-Jun Li, Jian-GuangWeng, and Yue-Ting Zhuang. Filling holesin complex surfaces using oriented voxel dif-fusion. In International Conference on Ma-chine Learning and Cybernetics, pages 4370–4375, Dalian, China, August 2006. IEEE.

[6] Geoffrey E. Hinton. Products of experts. InProc. of the Ninth International Conferen-ce on Artificial Neural Networks, volume 1,1999.

[7] P. Lancaster and K. Salkauskas. Surfacesgenerated by moving least squares methods.Mathematics of Computation, 37(155):141–158, July 1981.

[8] D. Martin, C. Fowlkes, D. Tal, and J. Ma-lik. A database of human segmented natu-ral images and its application to evaluatingsegmentation algorithms and measuring eco-logical statistics. In Proc. 8th InternationalConference on Computer Vision, volume 2,pages 416–423, 2001.

[9] Fakir S. Nooruddin and Greg Turk. Sim-plification and repair of polygonal models

using volumetric techniques. IEEE Transac-tions on Visualization and Computer Grap-hics, 9(2):191–205, April-June 2003.

[10] Stefan Roth and Michael J. Black. Fieldsof experts: A framework for learning imagepriors. In IEEE Conference on ComputerVision and Pattern Recognition, volume 2,pages 860–867, San Diego, California, June2005. IEEE.

[11] Jianning Wang and Manuel M. Oliveira. Fi-lling holes on locally smooth surfaces recons-tructed from point cloud. Image and VisionComputing, 25(1):103–113, January 2007.