0% encontró este documento útil (0 votos)
60 vistas12 páginas

ID Modulo 6 Compresion

El documento describe diferentes técnicas de compresión de datos, incluyendo compresión con y sin pérdida. Explica algoritmos como codificación por longitud de secuencias, codificación relativa o incremental, codificación dependiente de la frecuencia y codificación con diccionario adaptativo.

Cargado por

Mario Molina
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
60 vistas12 páginas

ID Modulo 6 Compresion

El documento describe diferentes técnicas de compresión de datos, incluyendo compresión con y sin pérdida. Explica algoritmos como codificación por longitud de secuencias, codificación relativa o incremental, codificación dependiente de la frecuencia y codificación con diccionario adaptativo.

Cargado por

Mario Molina
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 12

06/10/2014

Representación de la información en un computador.

COMPRESIÓN DE DATOS

T2. Representación de la información en computadores

• L2.1 Nociones básicas sobre representación de la información.


• L2.2 Representación digital de textos.
• L2.3 Representación digital de sonidos.
• L2.4 Conceptos sobre digitalización de imágenes y formatos en mapa de bits.
• L2.5 Representación digital de imágenes en forma vectorial y de video
• L2.6 Representación digital de números enteros.
• L2.7 Representación digital de números reales.
• L2.8 Algoritmos de compresión de datos.

• A1 Sistemas de numeración usuales en informática

Compresión de la información. A.Prieto 1


06/10/2014

COMPRESIÓN DE DATOS

• Diversas aplicaciones (multimedia, etc.) requieren utilizar archivos de gran


capacidad. Lo que implica la necesidad de:
– Elevado espacio para su almacenamiento.
– Elevado tiempo de transmisión a través de buses de comunicaciones y
redes de datos.
• Reducción: transformación denominada compresión de
datos.
– El archivo, antes de ser almacenado o transmitido se
comprime mediante un algoritmo de compresión de
datos, y
– Cuando se recupera para procesarlo o visualizarlo se
aplica la técnica inversa para descomprimirlo.
3

Factor de compresión:

• Denominando Ca y Cd a las capacidades del archivo antes y después de


comprimirlo,
– factor de compresión como:
fC =
Ca Ca Cd
Cd Compresión
– “factor de compresión de fc :1”.

• porcentaje de compresión: tanto por ciento que queda de la capacidad


original:
C
p C = d ·100 %
Ca

Compresión de la información. A.Prieto 2


06/10/2014

Tipos y algoritmos de compresión de datos

• Sin perdidas: • Con perdidas


– En la descomprensión se puede – En la descomprensión no se
recuperar exactamente el puede recuperar exactamente
documento original el documento original

• Codificación por secuencias (RLE) • Compresión MP3 (sonidos)


• Codificación relativa o incremental • Compresión GIF (imágenes)
• Codificación dependiente de la • Compresión JPEG (imágenes)
frecuencia • Compresión MPEG (TV y video)
• Codificación con diccionario
adaptativo
• Codificación Lempel-Ziv LZ77

Algoritmos de compresión de datos

COMPRESIÓN SIN PERDIDAS

Compresión de la información. A.Prieto 3


06/10/2014

Codificación por longitud de secuencias ( RLE, Run Length Encoded)

• Es muy frecuente que se repitan consecutivamente bits, bytes o, en general,


secuencias de bits.

• Cada secuencia se sustituye por el símbolo, precedido de las veces que se


repite (formato PacksBits).

• Por ejemplo, en una imagen hay áreas planas redundantes, cuyos píxeles son
iguales.
– Podemos sustituir los valores RGB de cada píxel (todos iguales) por el nº
de píxeles seguido los valores RGB repetidos
• (93, 48, 225)……….. (93,48,225) (repetidos 1000 veces)  3.000 Bytes
– 1000 x (93,48,255)  5 Bytes.

Codificación relativa o incremental

• En imágenes o sonidos: el valor absoluto de cada muestra o elemento de


imagen se sustituye por el incremento relativo al anterior
– El tiempo que transcurre entre muestra es muy pequeño, y por lo
general los cambios son también muy limitados:
• Muestra a muestra en audio: 22,6 μs (44.100 Hz).
• Fotograma a fotograma en video: 33,3 ms (30 fps).

– Al visualizar la imagen o escuchar el audio (rendering) se reconstruye


la información original sencillamente sumando la nueva muestra o
fotograma al anterior

Compresión de la información. A.Prieto 4


06/10/2014

Codificación dependiente de la frecuencia

• Cada símbolo se codifica con un código binario cuya longitud sea


inversamente proporcional a la frecuencia con que aparece.

• Ejemplos:
– UTF-8 y UTF-16.
• Los caracteres UNICODE más frecuentes se codifican con menos Bytes.

Ejercicio 1 de codificación dependiente de la frecuencia

• Dado el mensaje: BCCACBBCCACCA:

– Codificarlo u lizando el siguiente código: A→00, B→01, C→ 10


– Codificarlo utilizando el siguiente código, dependiente de la
frecuencia: A →11, B → 10, C → 0
– Obtener el factor de compresión obtenido con el procedimiento (b)
con respecto al (a).

10

Compresión de la información. A.Prieto 5


06/10/2014

Ejercicio 2 de codificación dependiente de la frecuencia

• Decodificar el mensaje que se da a continuación, usando el siguiente código,


dependiente de la frecuencia: A →10 B →11 C →0

1011001011011001100100110010

10 11 0 0 10 11 0 11 0 0 11 0 0 10 0 11 0 0 10
A B C C A B C B C C B C C A C B C C A

• Observar que no es necesario ningún carácter separador entre los códigos de cada
letra, no produciéndose ninguna ambigüedad. El analizador va explorando
secuencialmente la cadena, y cuando encuentra un 1, sabe que tiene que juntarlo con
el próximo bit, sea cual sea éste último.
• Este tipo de codificación se denomina codificación de Huffman.

11

Codificación con diccionario adaptativo

• Se identifican secuencias o patrones de bits que se repiten y cada una de


ellas se codifican con un índice (nº de orden), constituyendo el
diccionario del archivo. Cada secuencia se sustituye por su índice.
– Ejemplo: Un fichero de texto contiene 12.000 palabras ocupando en
total 72.000 caracteres UNICODE (incluyendo en ambos casos signos
de puntuación y espacios en blanco). Suponiendo que contiene 250
palabras o signos de puntuación distintos y que se almacena utilizando
la técnica de compresión de diccionario adaptativo:
• a) Estimar la capacidad total del fichero, incluyendo la información tanto
del diccionario como del texto
• b) Estimar el factor de compresión con respecto a haber almacenado el
fichero en UNICODE.

12

Compresión de la información. A.Prieto 6


06/10/2014

a) Estimar la capacidad total del fichero, incluyendo la información tanto del


diccionario como del texto
• Capacidad del diccionario:
– El diccionario contiene las 250 palabras o signos de puntuación distintos; es decir 250 elementos.
– Por término medio, cada elemento tendrá un total de 72.000/12.000 = 6 caracteres UNICODE.

6 2 250 3000 = 2,93KBytes

• Capacidad del texto:


– Como el diccionario tiene 250 elementos, cada uno de las 12.000 palabras será recodificada con 8 bits:

12.000 1 12.000

• Capacidad total del fichero después de comprimirlo será:

15.000 ,

13

c) Estimar el factor de compresión con respecto a haber almacenado


el fichero en UNICODE

• Antes de la compresión la ocupación del fichero será:

72.000 2 144.000

• Con lo que el factor de compresión será:


144.000
9,6
15.000

Factor de compresión de 9,6 a 1.

14

Compresión de la información. A.Prieto 7


06/10/2014

Codificación Lempel-Ziv

• Al ir comprimiendo una secuencia de bits se busca si los próximos


símbolos coinciden con una secuencia anterior, y se sustituye aquella por
una tripleta (m, n, s) donde:
– m lugar hacia atrás donde se inicia la secuencia.
– n longitud de la secuencia previa encontrada.
– s próximo carácter de la cadena comprimida.

• Ejemplo: 0 1 1 1 0 1 1 1 0 0 1 1 1 0 1 0 1 1 0 1 1 1 0 0 1 1 1 0 0

0 1 11 01110 0111010 1101110011100


(0,0,0) (0,0,1) (1,1,1) (4,4,0) (9,6,0) (14,12,0)

15

Un ejemplo de descompresión

• La siguiente secuencia de valores corresponde a un fichero codificado


por medio del algoritmo Lempel-Ziv
(0,0,0) (001) (2,2,1) (4,4,0) (10, 9, 1) (19,15,1) (25,23,0)
Obtener la cadena de bits que codifica.

(0,0,0) (0,0,1) (2,2,1) (4,4,0) (10, 9, 1) (19, 15, 1) (25, 23, 0)


0 1 01 1 1011 0 010111011 1 101110110010111 1 10111011110111011001011 0

Es decir, abreviadamente:
0101 1101 1001 0111 0111 1011 1011 0010 1111 1011 1011 1101 1101 1001 0110
5 D 9 7 7 B B 2 F B B D D 9 6

16

Compresión de la información. A.Prieto 8


06/10/2014

Algoritmos de compresión de datos

COMPRESIÓN CON PÉRDIDAS

17

SBC (Sub-Band-Coding)

• Usado en MP3, AAC, Vorbis, etc.


– Se descompone la señal en bandas de frecuencia y cada una de ellas se
codifica con un nº de bits distinto.
• MP3 (factor de compresión 11 a 1; 9 % de compresión)
– Se divide el espectro, p.e., en 32 bandas o canales (mediante filtros).
– Al tener cada canal una amplitud máxima distinta  el nº de bits con que
se codifica cada canal es variable (a menor amplitud, menos bits son
necesarios).
– Se forman tramas de información con una cabecera de sincronización, bits
detectores de error (CRC), nº de bits de cuantización, factor de escala, las
muestras y datos auxiliares.
– Se multiplexa la información de los distintos canales, y se almacena o
transmite
18

Compresión de la información. A.Prieto 9


06/10/2014

Audio: aprovechar el efecto de enmascaramiento de


frecuencias próximas

• Cuando el oído está expuesto a dos o más sonidos simultáneos, existe la


posibilidad de que uno de ellos enmascare a los demás.
– En la percepción sonora cuando se escuchan dos sonidos de diferente
intensidad al mismo tiempo, el más débil resulta inaudible, ya que el
cerebro sólo procesará el sonido enmascarador.
• El efecto de enmascaramiento es mayor si el sonido suave tiene una
frecuencia cercana al sonido de mayor intensidad

• Conclusión: podemos reducir el tamaño de la información generada


(comprimir) eliminando los sonidos que no percibe el oído.

19

Formato GIF (imágenes)

• Se utiliza un conjunto seleccionado de mezclas de colores (paleta de


colores). Como atributo de cada píxel se utiliza el índice dentro de la
paleta, en lugar de la mezcla de los 3 colores básicos.
• Ejemplo:
– Si una imagen BMP con color verdadero se transforma en GIF con una
paleta de 256 colores, los 3 bytes de cada píxel se sustituyen por 1
byte del código de la mezcla de la paleta:
• 3
• Factor de compresión de 3 a 1 o el fichero original se ha reducido a un
33,3 %

20

Compresión de la información. A.Prieto 10


06/10/2014

Compresión JPEG (imágenes)

• Como el ojo humano es más sensible a los cambios espaciales de brillo (luminancia Y) que
al color (crominancias Cb y Cr), se genera.
– Luminancia. Un valor por cada píxeles
– Crominancias. 2 valores por un conjunto de píxeles de cada área próxima (áreas de 4, 9,
16, … , i2 píxeles) . Las crominancias son el valor medio de las del conjunto de píxeles.

• Ejemplo: Imagen en BMP de 1280 x 720 píxeles color verdadero. Obtener el factor de
compresión si es codificada en JPEG con cuadrados de 16 píxeles.

1280 720 1 2 1280 720

1280 720 3 3 8
2,7
9 9
1280 720
8

21

MPEG (Moving Picture Experts Group )

• Grupo de Trabajo (1988) de expertos que se formó por ISO y IEC para
establecer estándares para transmisión de TV y video.
• Sus propuestas combinan muy diversas técnicas ya vistas.
– Cada fotograma JPEG con compresión de redundancia espacial
(longitud de secuencias)
– Incremental entre fotogramas (debido a la similitud entre imágenes
sucesivas, 33,3 ms). Se evita transmitir y almacenar la redundancia
temporal.

22

Compresión de la información. A.Prieto 11


06/10/2014

Las secuencias se estructuran en Grupos de fotogramas (GOP, group


of pictures)

• Los GOP pueden contener:


• Tramas I, incluye la información completa de la imagen (en JPEG, etc.).
• Tramas P (compensación del movimiento): diferencias sobre la anterior (zonas que se
mueven)
• Tramas B: valores medios (o interpolación) entre la trama anterior y la siguiente.

• Las tramas I se denominan intra-imágenes (reducen la redundancia espacial); y las P y


B inter-imágenes o imágenes predictivas (reducen la redundancia temporal).

• Sólo se almacenan o transmiten las tramas I y P.


• El sistema o programa de visualización del video (rendering) debe de completar las
tramas P (sumar su información a la trama I precedente), y generar las tramas B.

23

Resumen y conclusiones

• Se ha analizado el concepto de compresión de datos y definido el factor de compresión.


• Hemos descrito brevemente, incluyendo ejemplos sencillos, distintos procedimientos de compresión:
– Sin perdidas:
• Codificación por secuencias (RLE)
• Codificación relativa o incremental
• Codificación dependiente de la frecuencia
• Codificación con diccionario adaptativo
• Codificación Lempel-Ziv LZ77
– Con perdidas:
• Compresión MP3 (sonidos)
• Compresión GIF (imágenes)
• Compresión JPEG (imágenes)
• Compresión MPEG (TV, video)

• Como hemos comentado en otras lecciones, un patrón de bits, por si sólo no significa nada, depende del
contexto.

24

Compresión de la información. A.Prieto 12

También podría gustarte