1 / 23

3D RGB Image Compression

3D RGB Image Compression. Autores: Alejandro Rodríguez, Alberto Arjonilla Cobreros, Enrique María Ayala Pérez, Abraham Domínguez Morales, Manuel Jesús. CHANDRAJIT BAJAJ, INSUNG IHM, SANGHUN PARK. Contenido. Una visión general. Artículo. Aplicación. Conclusiones. Bibliografía.

dorcas
Download Presentation

3D RGB Image Compression

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. 3D RGB ImageCompression Autores: Alejandro Rodríguez, Alberto Arjonilla Cobreros, Enrique María Ayala Pérez, Abraham Domínguez Morales, Manuel Jesús CHANDRAJIT BAJAJ, INSUNG IHM, SANGHUN PARK

  2. Contenido • Una visión general. • Artículo. • Aplicación. • Conclusiones. • Bibliografía.

  3. 1. Una visión general • Clave del trabajo. • Compresión de imágenes 3D RGB. ANTES DESPUÉS

  4. 1. Una visión general • Objetivos. • Las imágenes ocupen el menor espacio posible en memoria sin pérdida masiva de información. • Conseguir un rápido acceso aleatorio. • Aplicaciones de la compresión: • Imágenes médicas. • Software que utilice imágenes en tiempo real. • Paginas web con elementos 3D. • Etc.

  5. 2. ¿De qué trata el artículo? • El artículo divide el proceso de compresión de imágenes 3D RGB en tres pasos: • Transformada Wavelet. • Truncación. • Codificación Zerobit.

  6. 2.0. Principios básicos • La representación 3D se realiza por vóxeles. • Así como en 2D se usa el píxel, en 3D se usa el término vóxel. • Nuestro artículo trabaja con celdas. • Celda se define como un bloque de 4x4x4 vóxeles.

  7. 2.0. Principios básicos • Conversión de imágenes de Voxelo a Java. • Voxelo trabaja con 256 colores máximo. • Java usa el formato RGB. • Hemos convertido del formato 256 colores de voxelo al formato RGB, por ejemplo: Voxelo: 96 RGB: {15,255,15}

  8. 2.1. Transformada Wavelet • Objetivo: • Reducción de la mayor parte de la información de cada celda a un número reducido de coeficientes. • Propiedades de la transformada. • Transformada discreta: muy natural en representación computacional. • Computacionalmente simple: puede ser implementada mediante unas pocas operaciones. • Sin pérdida de información: podemos realizar la transformada inversa obteniendo la información original.

  9. 2.1. Transformada Wavelet • Preliminares. • Aplicable por celdas. • Dividimos cada celda en 8 bloques de 2x2x2. • Todo el proceso se realiza 3 veces, una por cada componente del color: R, G y B. • Proceso de la transformada: Se realizan dos iteraciones. • Primera iteración: • Aplicable a cada bloque de 2x2x2. • Segunda iteración: • Aplicable a los 8 bloques de 2x2x2. • Depende de los resultados obtenidos tras la primera iteración.

  10. 2.1. Transformada Wavelet • Primera Iteración: • En un bloque de 2x2x2 hay 8 valores. • Se obtienen 8 coeficientes a partir de esos 8 valores. • Los coeficientes se calculan de la siguiente forma: • Estos 8 coeficientes obtenidos contienen toda la información del bloque 2x2x2 en cuestión. Media

  11. 2.1. Transformada Wavelet • Segunda Iteración: • Se aplican las mismas fórmulas utilizadas en la primera iteración. • Novedades: • Los 8 valores necesarios se obtienen del primer coeficiente de cada nodo hijo. • Los 8 coeficientes obtenidos corresponderán al nodo padre.

  12. 2.1. Transformada Wavelet • Organización final tras las iteraciones: • Tenemos 64 componentes por celda • El resultado final es un árbol de 2 niveles: • Nivel 0: • Nodo padre resultante de la segunda transformada. • Posee los coeficientes de las medias de sus nodos hijos • Nivel 1: • Tenemos 8 nodos hoja en este nivel. • Cada uno representa un bloque de 2x2x2 vóxeles. • Posee los coeficientes de la primera transformada

  13. 2.1. Transformada Wavelet • Vista global de cada celda: • Se optimiza el almacenamiento eliminando de cada nodo hijo el primer coeficiente, que representa la media. • La información de estos coeficientes está contenida en el nodo padre.

  14. 2.2. Truncación • Objetivo: • Reducir el número de coeficientes de la transformada, eliminando aquellos que poseen poca o ninguna información. • Tras la aplicación de la transformada Wavelet: • La mayor parte de la información está contenida en los primeros coeficientes (los más grandes). • Los restantes pueden ser truncados (los más cercanos a cero).

  15. 2.2. Truncación • Proceso de Truncación: • Cada celda es representada por 64 coeficientes. • El proceso se realiza sobre el conjunto de coeficientes ordenados de mayor a menor. • Se seleccionan los coeficientes significativos (los mayores) con respecto al porcentaje de coeficientes a conservar, dado por el usuario. • Los coeficientes no significativos son truncados, es decir, puestos a cero. • Este proceso provoca una pérdida de información.

  16. 2.3. Codificación Zerobit • Objetivo: • Definir una estructura interna de la imagen que posibilite una alta compresión a la hora de su almacenamiento. • Definiremos el proceso para una celda, pero puede ser aplicable a bloques mayores dependiendo del tamaño de la imagen.

  17. 2.3. Codificación Zerobit • El proceso se divide en dos pasos: • Paso 0: • En total se tienen 9 nodos por celda: • 1 nodo para el padre. • 8 nodos para los hijos. • Zerobits: nuevo componente que introducimos al principio de la estructura y esta formado por: • 9 bits, uno referente a cada nodo de la celda. • Indican si ese nodo contiene o no información.

  18. 2.3. Codificación Zerobit • Paso 1: • Equivalente al paso 0 pero a un nivel más profundo. • Introducimos un nuevo componente al principio de los nodos que poseen información, el cual está formado por: • 7 bits, uno para cada coeficiente del nodo. • Indican si ese coeficiente posee o no información.

  19. 2.3. Codificación Zerobit • Utilidad de la codificación: • A la hora de almacenar la imagen nos ahorramos aquellos bloques que no contengan información. • Mejora el acceso aleatorio a los bloques y coeficientes de cada celda.

  20. 3. Aplicación • Características: • Uso del entorno gráfico jDeveloper con JDK 1.6 de Java. • Uso de librerías de java3D para visualización de imágenes a color procedentes de voxelo. • Proceso aplicado a la imagen: • Transformada Wavelet. • Truncación mediante dos métodos posibles: • Porcentaje de coeficientes a conservar. • Valor umbral de los coeficientes. • Visualización de la imagen resultante. • Posibilidad de un “paso a paso”, en el que podemos ir visualizando resultados locales.

  21. 3. Aplicación • El aspecto final de nuestra aplicación es: Selección de método de truncación y valor Carga de imagen Imagen resultante Imagen original

  22. 4. Conclusiones • Transformada Wavelet + Codificación Zerobit. • Potente mecanismo de compresión. • Con un 7% de los coeficientes obtenemos un tamaño de, al menos, 30 veces inferior al original. • Útil en aplicaciones en tiempo real. • Bajo tiempo de reconstrucción de la imagen original y rápido acceso. • Tratamiento de texturas 3D.

  23. 5. Bibliografía • Artículo: “3D RGB ImageCompressionforInteractiveApplications”. • Web del autor: http://www.cs.utexas.edu/~bajaj/ • Proyecto 2007: “Clasificación topológica de voxeles y visualización”. • Trabajo dirigido 2005-2006: “Imagen MAT-6, Expansión y Contracción en 3D”. • API java 1.6.

More Related