Essays.club - Ensayos gratis, notas de cursos, notas de libros, tareas, monografías y trabajos de investigación
Buscar

EFFICIENT, LOW-COMPLEXITY IMAGE CODING WITH A SET-PARTITIONING EMBEDDED BLOCK CODER

Enviado por   •  29 de Abril de 2018  •  1.894 Palabras (8 Páginas)  •  362 Visitas

Página 1 de 8

...

Marco metodológico

Considerando una imagen X a la que se le realizó una transformación en sub-bandas (transformada wavelet). Se dice que ese resultado exhibe una estructura piramidal jerárquica definida por los niveles de descomposición, donde los pixeles más finos se encuentran en el nivel inferior y los más gruesos en el superior (raíz). La imagen es representada por un conjunto indexado de coeficientes {Ci,j} localiza la posición del pixel (i,j) en la imagen transformada. Usualmente coeficiente y pixel se usan intercaladamente, ya que no hay necesidad de distinguir entre el valor y la posición al referirnos a ellos. Los pixeles se agrupan en conjuntos que comprenden regiones en la imagen transformada. Siguiendo las ideas de SPIHT decimos que un conjunto T de pixeles es significativa respecto a n, de lo contrario es insignificante.

Podemos representar la importancia de un conjunto T como:

[pic 5]

Speck hace uso de regiones rectangulares de imagen. Estas regiones o conjuntos, que conoceremos como conjuntos de tipo S dependen de la dimensión de la imagen original y de los niveles de sub-bandas de la estructura piramidal en la que se encuentra el conjunto.

Definimos el tamaño (cardinalidad) del conjunto, es decir, el número de elementos (pixeles) en él.

[pic 6]

Para codificar un conjunto S, SPECK sigue de cerca el método SPIHT, con la diferencia de en la parte de clasificación, en lugar de utilizar los arboles de las pruebas de importancia usa el conjunto de tipo S. La razón es concentrarse en la agrupación de energía de la imagen transformada, explotar las areas de conjuntos con mayor energía. Esto asegura que los pixeles con un alto contenido de información se codifiquen primero.

Mantenemos dos listas enlazadas: lista de conjuntos insignificantes (LIS) y la lista de pixels significativos (LSP). El primero contiene conjuntos de tipo S de distintos tamaños que aún no se ha encontrado su significado contra un umbral n, mientras que el segundo contiene aquellos pixeles de los que si se encontró significancia contra n.

Algoritmo SPECK

Se compone de 4 pasos[pic 7]

- Etapa de Inicialización

- Paso de clasificación

- Paso de refinamiento

- Paso de cuantización

Estas etapas llaman cuatro funciones

- ProcessS()

- CodeS()

- ProcessI()

- CodeI()

[pic 8]

Se tiene una imagen rectangular X, que ha experimentado una apropiada transformación en sub-banda. La imagen X consta de coeficientes transformados {Ci,j}, situado en la posición del pixel (i,j). Tal imagen exhibe una estructura jerárquica piramidales estructura que tiene sub-bandas en diferentes niveles de su descomposición.

El algoritmo comienza mediante la partición de la imagen en dos conjuntos. El conjunto S que es la raíz de la imagen y el conjunto I que es todo lo almacenado en lo que queda en a imagen después de sacar la raíz

[pic 9]

Para comenzar, el conjunto S se añade a la LIS. Mantenemos una nota del umbral máximo nmax tal que Ci,j es insignificante respecto a nmax +1 talque Ci,j pertenece a X, pero por lo menos un Ci,j es significativo contra el umbral nmax.

A. Quadtree Partitioning

El conjunto S en LIS es procesado probándolo por significancia contra el umbral n= nmax (función ProcessS()). Si no es significante, se ubica en LIS, si S es significante, es quadrisected, es decir, se repartió en 4 subconjuntos Ouno tiene el tamaño de aproximadamente ¼ del conjunto S (función CodeS()).[pic 10]

[pic 11]

Cada subconjunto significativo es, a su vez, entendido como un conjunto de tipo S y procesados ​​de forma recursiva, a través de ProcessS() y CodeS() hasta que el nivel de pixeles alcanza los pixeles que son significativos en el conjunto original S. Los pixeles/conjuntos que son encontrados durante el proceso se añaden a LIS para ser probados más tarde contra el siguiente umbral inferior. El resultado binario de cada prueba de significación se envía al código flujo de bits.

La razón para esta llamada partición árbol cuádruple de tales conjuntos logra dos objetivos: 1) para identificar rápidamente las áreas de alta energía (magnitud) en el conjunto y codificarlos en primer lugar; y 2) para localizar grupos estructurados de coeficientes que están por debajo de una secuencia decreciente de umbrales de magnitud, con el fin de limitar el número de bits necesarios para su representación.

B. Octave Band Partitioning

En esta etapa del algoritmo, todos los conjuntos actuales de tipo S deben probarse contra n. El conjunto I es procesado después, para ello, contra el mismo umbral n (función ProcessI). Si se encuentra ser significativo, es particionado por otro esquema de partición de la partición de la banda de octava.

[pic 12]

El conjunto I se divide en cuatro conjuntos de tres juegos de tipo S y uno de tipo I (función CodeI()). El tamaño de cada uno de estos tres conjuntos es la misma que la de la porción de X. El nuevo conjunto I que se forma por este proceso de partición ha reducido en tamaño.

La idea detrás de este esquema de partición es explotar la estructura piramidal jerárquica de la descomposición de sub-banda, donde es más probable que la energía se concentra en la parte superior la mayoría de los niveles de la pirámide y como uno va abajo en la pirámide, el contenido de energía disminuye gradualmente. Si un conjunto es significativo contra un umbral, es más probable que los píxeles que I siendo más significativo en las regiones superior izquierda de I. Estas regiones se descomponen en juegos de tipo S, y se ponen al lado de Líneas de tratamiento.

Experimentos y Resultados

Se realizó la comparación en decibeles (PSNR) de las imágenes más comunes para ésta prueba.

[pic 13]

...

Descargar como  txt (12.2 Kb)   pdf (68.1 Kb)   docx (17.9 Kb)  
Leer 7 páginas más »
Disponible sólo en Essays.club