1 / 27

Representación con grafos de imágenes 3D para su búsqueda y recuperación .

Representación con grafos de imágenes 3D para su búsqueda y recuperación . Aproximación con imágenes 2D Binarias . Luis Fernández Esteban. Miguel Fernández Labrador. Procesamiento de Imágenes Digitales (Topología Digital). Introducción.

donat
Download Presentation

Representación con grafos de imágenes 3D para su búsqueda y recuperación .

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Representación con grafos de imágenes 3D para su búsqueda y recuperación. Aproximación con imágenes 2D Binarias. Luis Fernández Esteban. Miguel Fernández Labrador. Procesamiento de Imágenes Digitales (Topología Digital)

  2. Introducción • Con el reciente interés e incremento de las imágenes 3D ,las bases de datos cada vez son mas grandes y mas difíciles de manejar por lo que se busca soluciones para que nos ayuden al respecto. • Se precisan de buenos descriptores para las imágenes 3D y así poder manejar dichas bases de datos de forma eficiente, incluidas las búsquedas mediante contenido. • Este nuevo descriptor, el grafo, es novedoso en el sentido de que no perdemos información geométrica y además es similar a la vista humana. Por lo tanto el nuevo descriptor propuesto sería útil para el reconocimiento de objetos 3D, compresión y búsqueda basada en el contenido.

  3. Diagrama del algoritmo • NODE MERGING • 3D OBJECT • VOXELIZATION • MEDIAL AXIS TRANSFORM • NODE GENERATION • DATABASE

  4. Voxelization La voxelización consiste en transformar las mallas triangulares de la imagen 3D en voxels. Estos no son más que cubos. Así cuando se tienen solo cubos estos coinciden con el mallado del cubo que envuelve la imagen 3D siendo más fácil trabajar con ella. Después los voxels se rellenan con un procedimiento de llenado.

  5. Skeletonization La esqueletización se realiza mediante medial axis transform. Obtenemos las distintas componentes del esqueleto de la imagen 3D. K=0 skeletons K=1 K=3 K=4 K=2

  6. Node generation El nodo se genera a partir de las componentes del esqueleto de la imagen. Así para la componente con rango igual a k, se genera el nodo asociado dilantando dicha componente k veces. Empezamos por el k máx y en los menores no dilatamos en los pixeles que pertenecen a una componente (del esqueleto) de mayor rango. 2 dilataciones K=2 imagen esqueleto rango 3 1 dilatación K=1 0 dilataciones K=0 unión 3,4 y 5 imagen

  7. Node generation Voxels con 54 nodos Nodos y aristas representados por esferas y segmentos. Las aristas se generan teniendo en cuenta la adyacencia de los píxeles.

  8. Nuestra Aproximación • Imágenes 2D binarias en lugar de 3D. • No es necesario voxelizar. • Dos pasos: Generación del esqueleto y generación de nodos.

  9. Generación del Esqueleto. Si S(A) denota el esqueleto de A, entonces . Con donde es la aplicación sucesiva de k erosiones. K es el último paso iterativo antes de que A se erosione a un conjunto vacío.

  10. Ejemplo Esqueleto.

  11. Ejemplo Esqueleto.

  12. Generación de Nodos. • Los nodos se generan a partir de cada componente k del esqueleto de la imagen, donde k es el rango. En primer lugar se realizan K dilataciones sucesivas a la componente K del esqueleto, los nodos son generados como resultado de las dilataciones. Después se procede a realizar K-1 dilataciones en la componente K-1 menos los píxeles contenidos en la componente K. • Finalmente el grafo está compuesto por la unión de los nodos generados en cada paso. Si los nodos tienen píxeles en común, estos pertenecen al nodo obtenido de la componente con mayor k.

  13. Ejemplo Nodos. Original k=2 k=1 k=0 Resultado

  14. Implementación. • Plugin para Ia aplicación ImageJ. • API de ImageJ para procesamiento de imágenes • Lenguaje de programación Java • El propio programa da la opción de compilar tus propios plugins.

  15. Implementación. • Nombre del plugin: NodeGenerator. • Obtiene la secuencia de componentes que forman el esqueleto. • Obtiene la secuencia de nodos.

  16. Implementación. // Al implementar PlugInFilter tenemos que implementar los metodos // setup y run. publicclassGenerateNodes_ implementsPlugInFilter // El método setup configura lo necesario para el plugin. // Comprobamos que la imagen de entrada es binaria. publicint setup(String arg, ImagePlus imp) // El método run es el que realiza la funcionalidad del plugin. publicvoid run(ImageProcessorip) {

  17. Implementación. Otros Métodos auxiliares. // El método getK calcula el número de componentes que tendrá el //esqueleto intgetK(ImageProcessorip)

  18. Implementación. Otros Métodos auxiliares. // Devuelve una Lista de imágenes, cada imagen es una componente del //esqueleto ArrayList<ImagePlus> getSkeletons(ImageProcessorip)

  19. Implementación. Otros Métodos auxiliares. // Devuelve una animación con las componentes del esqueleto. ImagePlusgetStakOfSkeleton(ArrayList<ImagePlus> skeletons)

  20. Implementación. Otros Métodos auxiliares. // Devuelve una animación con los nodos obtenidos. ImagePlusgetStakOfNodes(ArrayList<ImagePlus> nodos)

  21. Implementación. Otros Métodos auxiliares. // Devuelve una lista de imágenes, cada imagen es un posible nodo. ArrayList<ImagePlus> getNodos(ArrayList<ImagePlus> skeletons)

  22. Demostración.

  23. Dudas.

  24. Gracias por vuestra atención.

More Related