SlideShare una empresa de Scribd logo
1 de 46
Codificación de fuente
Teoría de las Telecomunicaciones
Comunicaciones I
Codificación de fuente
 Un problema de interés dentro de las comunicaciones es la
representación eficiente de los datos generados por una fuente de
información discreta.
 El proceso mediante el cual se lleva a cabo esta representación se llama
codificación de fuente y consiste en la asignación de un código a cada
símbolo de la fuente.
 Este código se forma con una secuencia de dígitos binarios y lo
llamaremos palabrade código.
Codificación de fuente
 La codificación más sencilla que se le puede hacer a una fuente de
información discreta es una asignación de palabras de código de
longitud fija.
 Por ejemplo, si la fuente tiene 3 símbolos entonces se le pueden asignar 2
bits a cada palabra de código de cada símbolo.
 Por ejemplo A = 00; B = 10; C = 11.
 Sin embargo, una codificación más eficiente es A = 0; B = 10; C = 11. Esta
codificación se llama de longitud variable.
Codificación de fuente
 Para hacer una codificación de longitud variable se requiere conocer la
probabilidad de ocurrencia de los elementos de la fuente.
 Conociendo esto, se asignan las palabras de código más cortas a los
elementos más probables, y las más largas a los elementos menos
probables.
 Por ejemplo, el código Morse asigna un punto (“.”) a la letra E que es la
que ocurre con mayor frecuencia, y el código “--.-” a la letra Q que es la
menos frecuente.
Codificación de fuente
 ¿Qué se logra con este criterio de codificación? Transmitir la menor cantidad posible
de bits (dígitos binarios) para transmitir la misma cantidad de información.
 Beneficios:
 Transmitir la información utilizando el mismo tiempo que en el caso de codificación
de longitud fija pero a menor velocidad (tasa de bit), o sea, usando un menor ancho
de banda.
 Transmitir con el mismo ancho de banda que en el caso de codificación de longitud
fija (es decir, a igual velocidad) pero en menor tiempo.
 Reducir la tasa de error de bit como consecuencia del aumento de la energía de bit.
Codificación de fuente
 Requisitos:
 1. El código generado por el codificador debe ser del tipo binario.
 2. El código debe ser unívocamentedecodificable, esto quiere decir
que el símbolo original se puede reconstruir perfectamente, sin
ambigüedad, a partir de la secuencia binaria codificada.
Codificación de fuente
 Supongamos entonces que los elementos sk que una fuente de información genera a su salida
son convertidos por el codificador en una secuencia de unos y ceros, denotada por bk.
 Asumimos que la fuente tiene un alfabeto con K símbolos diferentes y que el k-ésimo elemento
sk ocurre con una probabilidad pk (k desde 0 hasta K-1).
 Supongamos que la palabra de código asignada al símbolo sk tiene una longitud lk, medida en
bits (dígitos binarios).
 Definimos a la longitud promedio de la palabra de código, , generado por el codificador de
fuente, como:




1
0
K
k
k
k l
p
L
L
Codificación de fuente
 Conceptualmente, la ecuación anterior representa el número promedio de bits por
símbolo de fuente, que se obtiene con el codificador que se esté usando.
 Sea el mínimo valor posible que teóricamente puede tener para una fuente de
información discreta dada y usando alguna cierta codificación.
 Entonces definimos la eficiencia de un código generado por un codificador de fuente
como:
 Como > entonces resulta η < 1. Cuanto más cercano a 1 es η, más eficiente es
el código.
min
L L
L
Lmin


L min
L
Codificación de fuente
 ¿Cuál es el valor más pequeño posible que puede tener L medio mínimo?
¿Hay algún límite teórico? Sí:
 Es decir, nunca puede ser más pequeño que la entropía de la fuente. El
caso óptimo se da cuando = H(S).
 Por lo tanto, se obtiene cuando = H(S). Bajo esta condición
obtenemos:
)
(S
H
L 
L
L
min
L L
L
S
H )
(


Codificación de fuente
 La eficiencia es un valor adimensional. Este resultado surge de
simplificar [bit/símbolo] del numerador con [bit/símbolo] del
denominador a pesar de que ambos términos “bit” son unidades
diferentes.
 La ecuación nos dice cuántosbits (dígitos binarios) se
requieren en promedio por cada símbolo de la fuente, comomínimo,
para transmitir la información que genera la fuente. La diferencia entre
los valores de Lmedio y H(S) da una idea de cuántos bits (dígitos binarios)
redundantes se está transmitiendo.
)
(S
H
L 
Codificación de fuente
 En general H(S) no es un número entero, pero si se usa codificación de
longitud fija, Lmedio sí es un número entero, entonces no es posible en este caso
alcanzar el 100% de eficiencia en la codificación.
 Por eso un código de longitud variable es más eficiente que uno de longitud
fija.
 Si la fuente tiene K elementos, con K = 2N, siendo N un entero, y son
igualmente probables, entonces la codificación de longitud fija es
perfectamente eficiente ya que se requieren N bits para codificar cada uno de
los K elementos y la entropía de la fuente resulta ser log2(K) = N.
Codificación de fuente
 Supongamos una fuente de información discreta sin memoria con 8 elementos, y que
tiene una H(S) = 2,3 bit/símbolo.
 Supongamos que se transmite un símbolo por segundo.
 La tasa de información es R = r.H(S).
 R = 1 símbolo/seg x 2,3 bit/símbolo.
 R = 2,3 bit/seg.
 El límite de Shannon nos dice que para transmitir 2,3 bits de información por
segundo, se requieren transmitir por lo menos 2,3 bits (dígitos binarios) por segundo.
 Para saber exactamente cuántos dígitos binarios por segundo se deben transmitir, se
debe conocer la distribución de probabilidades de los elementos de la fuente.
Código libre de prefijo
 Consideremos una fuente discreta sin memoria con un alfabeto {s0, s1,
...sK-1} con sus respectivas probabilidades {p0, p1, ...pK-1}.
 El código que represente a esta fuente tiene que ser unívocamente
decodificable.
 Esta restricción asegura que a dos diferentes secuencias finitas de
símbolos de la fuente le correspondan dos secuencias de palabras de
código también diferentes.
Código libre de prefijo
 Un código libre de prefijo es aquel en el que ninguna palabra de código es prefijo de ninguna
otra palabra de código del conjunto.
 Es decir, ninguna de las palabras de código asignadas a una fuente es parte inicial de
cualquiera de las otras palabras de código asignadas al resto de los elementos de esa misma
fuente.
 En la tabla siguiente, los códigos I y III no son libre de prefijo. No obstante, el III puede
resolverse pero no en forma instantánea.
Elemento
de la fuente
Probabilidad de
ocurrencia
Código I Código II Código III
s0 0,5 0 0 0
s1 0,25 1 10 01
s2 0,125 00 110 011
s3 0,125 11 111 0111
Código libre de prefijo
 Árbol de decisión:
 Por ejemplo, la secuencia codificada 1011111000... es decodificada en la
secuencia s1s3s2s0s0...
Código libre de prefijo
 Si se ha construido un código libre de prefijo para una fuente discreta sin memoria
con un alfabeto {s0, s1, ..., sK-1} y con distribución de probabilidades {p0, p1, ...,pK-1}, y
cada palabra de código correspondiente a cada símbolo sk tiene una longitud lk,
entonces con seguridad se cumple la siguiente desigualdad llamada desigualdad de
Kraft McMillan:
 A la inversa, podemos establecer que si las longitudes que se pretenden asignar a las
palabras de código de una fuente discreta sin memoria satisfacen la desigualdad de
Kraft-McMillan, entonces es posible construir un código libre de prefijo usando esas
longitudes de palabras de código.
1
2
1
0





K
k
lk
Código libre de prefijo
 Ejemplo. Una fuente de información discreta tiene tres elementos: A, B y C. ¿Es posible
construir un código libre de prefijos con la distribución de longitudes palabras de código
siguiente? (X representa uno o cero):
 Solución. Aplicando la desigualdad de Kraft-McMillan:
 Como el resultado es menor que 1, entones es posible obtener un código libre de prefijo con la
distribución de dígitos binarios pretendida.
Elemento
de la fuente
Código
A X
B XX
C XXX
875
,
0
2
2
2
2 3
2
1
1
0



 






K
k
lk
Código libre de prefijo
 Dada una fuente discreta sin memoria que tiene una entropía H(S), la longitud promedio de
palabras de código para una codificación óptima libre de prefijo, tiene los siguientes límites:
 Además, para una codificación óptima libre de prefijo, la ecuación de Kraft-McMillan da
siempre 1.
 ¿Qué ocurre con la longitud media de palabra de código usando fuentes extendidas?
 Teniendo en cuenta que H(Sn) = nH(S), obtenemos:
 O, equivalentemente:
1
)
(
)
( 

 s
H
L
s
H
1
)
(
)
( 

 n
n
n
S
H
L
S
H
1
)
(
)
( 

 S
nH
L
S
nH n
n
S
H
n
L
S
H n 1
)
(
)
( 


Codificación Huffman
 El código Huffman es una codificación de fuente cuya longitud media de
palabra de código se aproxima al límite fundamental dado por la
entropía H(S) de una fuente discreta sin memoria.
 El código de Huffman es óptimo en el sentido de que no hay otra
codificación que permita obtener una longitud media de palabra de
código más pequeña, o dicho de otro modo, que no permita obtener una
eficiencia η más alta.
Codificación Huffman
 Ejemplo. En la tabla siguiente se muestran los seis símbolos de una
fuente discreta sin memoria junto con sus respectivas probabilidades,
ordenadas de manera decreciente. Se desea armar un código libre de
prefijo mediante la codificación Huffman.
Símbolo Probabilidad
Código
resultante
lk lk x pk
a 0,4 11 2 0,8
b 0,2 00 2 0,4
c 0,1 101 3 0,3
d 0,1 100 3 0,3
e 0,1 011 3 0,3
f 0,1 010 3 0,3
L = 2,4
Codificación Huffman
 Los símbolos de la fuente se ordenan de acuerdo a su probabilidad en
forma decreciente.
Codificación Huffman
 A los dos símbolos menos probables se les asigna un 0 y un 1 (o un 1 y un
0, pero se debe mantener el mismo criterio durante todo el proceso).
Codificación Huffman
 Estos dos símbolos se combinan entre sí sumando sus probabilidades.
Codificación Huffman
 Este nuevo símbolo, con su nueva probabilidad, se coloca en una nueva
columna con el resto de los símbolos de la fuente, otra vez según un orden
decreciente.
Codificación Huffman
 El proceso de reducción continúa…
Codificación Huffman
 El proceso de reducción continúa…
Codificación Huffman
 El proceso de reducción continúa…
Codificación Huffman
 El algoritmo termina cuando en la última columna quedan dos elementos,
designados con un 1 y un 0 y cuya suma de probabilidades será obviamente 1.
Codificación Huffman
Símbolo Probabilidad
Código
resultante
lk lk x pk
a 0,4 11 2 0,8
b 0,2 00 2 0,4
c 0,1 101 3 0,3
d 0,1 100 3 0,3
e 0,1 011 3 0,3
f 0,1 010 3 0,3
L = 2,4
Codificación Huffman
 La longitud media de palabra de código es 2,4 bits por símbolo. Esto no significa que
se transmite un número no entero de bits. Significa que en promedio, para transmitir
por ejemplo 100 símbolos de la fuente, se transmiten 240 bits por el canal de
comunicación.
 Utilizando un sistema de codificación de longitud fija, se necesitarían 3 bits para
poder codificar los 6 elementos de la fuente. Es decir, en promedio, por cada 100
símbolos se transmitirían 300 bits.
 Se llama relación de compresión R al cociente entre la longitud media de palabra de
código para una codificación de longitud fija y la longitud media obtenida con la
codificación de longitud variable. Por lo tanto, para este ejemplo, la relación de
compresión R es (3/2,4) = 1,25.
Codificación Huffman
 La eficiencia de compresión es:
 Es decir que se “comprime” a un 96,7% del máximo teórico posible.
También se puede observar que la longitud media de palabra de código
es mayor que H(S) y menor que H(S) + 1.
%
7
,
96
100
lo
bits/símbo
4
,
2
lo
bits/símbo
32
,
2




Codificación Huffman
 El proceso de codificación de Huffman no es único es decir, se puede llegar al mismo
resultado por otro camino.
 En cada etapa es arbitraria la asignación del 1 y el 0 a las dos últimas ramas que se
suman, pudiendo invertirse el orden.
 Si la suma de estos dos elementos da como resultado una probabilidad que es igual a
la de un elemento de la siguiente columna, este elemento resultante puede ubicarse ya
sea lo más arriba posible como en cualquier otro puesto intermedio en la columna
siguiente, siempre respetando el orden decreciente.
 Estas alternativas conducen a resultados diferentes en cuanto a la longitud de las
palabras de código que le terminará correspondiendo a cada símbolo, aunque la
longitud media resultante sigue siendo la misma.
Codificación Huffman
 Se puede medir la variabilidad de las longitudes de las palabras de código a
través de su varianza, es decir, la dispersión que hay entre las longitudes de
palabras de código correspondientes a cada elemento de la fuente:
 En la ecuación anterior pk es la probabilidad del símbolo sk y lk es la longitud
de la palabra de código asociada al símbolo sk.
 Cuando se aplica el algoritmo de Huffman colocando la probabilidad
resultante de la suma de las dos últimas ramas en el lugar más alto posible de
la columna siguiente, entonces se obtiene el valor más pequeño para σ2.
 





1
0
2
2
K
k
k
k L
l
p

Codificación Huffman
 Ejemplo. Considérese el siguiente alfabeto con sus respectivas probabilidades. Resolver el
algoritmo de Huffman para esta fuente y para la fuente extendida de orden 2.
 En la tabla anterior se muestra el código resultante, luego de aplicar Huffman, como así
también la longitud media de palabra de código que es 1,27. De aquí resulta que la relación de
compresión es R = 2/1,27 = 1,57, teniendo en cuenta que usando codificación de longitud fija
tres símbolos se pueden codificar con dos bits. Así mismo, la eficiencia de compresión es η =
0,944/1,27 x 100 = 74%, ya que la entropía es H(S) = 0,944 bits/símbolo.
Símbolo Probabilidad
Código
resultante
lk lk x pk
a 0,73 1 1 0,73
b 0,25 01 2 0,50
c 0,02 00 2 0,04
L = 1,27
Codificación Huffman
 Aplicando Huffman a la fuente extendida se obtiene la tabla siguiente:
 El valor de Lmedio es 1,9342 bits por cada dos símbolos de la fuente original, o bien 0,9671 bit por cada símbolo de la
fuente original. La relación de compresión es R = 2/0,9671 = 2,068. La eficiencia del código ahora es η = 97,6%.
 Al extender la fuente se consigue una mejor eficiencia en la representación de los símbolos y una mejor relación de
compresión.
Símbolo Probabilidad
Código
resultante
lk lk x pk
aa 0,5329 1 1 0,5329
ab 0,1825 00 2 0,3650
ba 0,1825 011 3 0,5475
bb 0,0625 0101 4 0,2500
ac 0,0146 01000 5 0,0730
ca 0,0146 010011 6 0,0876
bc 0,0050 0100100 7 0,0350
cb 0,0050 01001011 8 0,0400
cc 0,0004 01001010 8 0,0032
L = 1,9342
Método de compresión de Shannon - Fano
 Es otro método de compresión, en el que también se deben ubicar los elementos de la
fuente en orden decreciente de probabilidad para proceder con el algoritmo. La tabla
formada se divide en dos partes buscando que la suma de probabilidades en ambas
partes sean lo más próximas posibles entre sí.
Símbolo Probabilidad I II III Código
a 0,4 0 0 00
b 0,2 0 1 01
c 0,1 1 0 0 100
d 0,1 1 0 1 101
e 0,1 1 1 0 110
f 0,1 1 1 1 111
Método de compresión de Shannon - Fano
 A los símbolos de la mitad superior se les asigna el bit 0 mientras que a
los de la mitad inferior se les asigna el bit 1 (o viceversa, pero
manteniendo el mismo criterio durante todo el algoritmo).
Símbolo Probabilidad I II III Código
a 0,4 0 0 00
b 0,2 0 1 01
c 0,1 1 0 0 100
d 0,1 1 0 1 101
e 0,1 1 1 0 110
f 0,1 1 1 1 111
Método de compresión de Shannon - Fano
 El proceso continúa iterativamente hasta que no se puedan hacer más
divisiones.
Símbolo Probabilidad I II III Código
a 0,4 0 0 00
b 0,2 0 1 01
c 0,1 1 0 0 100
d 0,1 1 0 1 101
e 0,1 1 1 0 110
f 0,1 1 1 1 111
Método de compresión de Shannon - Fano
 El proceso continúa iterativamente hasta que no se puedan hacer más
divisiones.
Símbolo Probabilidad I II III Código
a 0,4 0 0 00
b 0,2 0 1 01
c 0,1 1 0 0 100
d 0,1 1 0 1 101
e 0,1 1 1 0 110
f 0,1 1 1 1 111
Método de compresión de Shannon - Fano
 El proceso continúa iterativamente hasta que no se puedan hacer más
divisiones.
Símbolo Probabilidad I II III Código
a 0,4 0 0 00
b 0,2 0 1 01
c 0,1 1 0 0 100
d 0,1 1 0 1 101
e 0,1 1 1 0 110
f 0,1 1 1 1 111
Códigos de longitud de pasada (Run Lengh Codes, RLC)
 Este esquema de codificación se aplica a aquellas fuentes de datos cuyos elementos se van
transmitiendo a modo de secuencias repetidas de un mismo elemento, como por ejemplo
acccbbaaabb...
 En vez de transmitir un código para cada elemento de la fuente, la idea es transmitir pares
que, para el ejemplo dado serían:
 (1, a), (3, c), (2, b), (3, a), (2, b)...
 Es decir, el primer término del par indica cuántas veces se transmite el segundo elemento del
par. La secuencia sería 1a3c2b3a2b..., donde cada letra es reemplazada por el código ASCII
correspondiente, por ejemplo:
000000111000010000011110001100000101100010000001111000
01...
 Por lo tanto, si se usa un ASCII de 7 bits, se transmitirían 11 x 7 = 77 bits, mientras que usando
Run Length Code se transmiten 5 x 2 x 7 = 70 bits.
Códigos de longitud de pasada (Run Lengh Codes, RLC)
 Esta idea es explotada en la codificación de mensajes de fax. Los mensajes de
fax están formados por largas cadenas binarias que representan puntos
blancos o negros, como ser:
11111111111110000000000111111000000000111111111111111111100001111110... donde 1
representa blanco y 0 representa negro, por ejemplo.
 Para el caso del fax, como las cadenas de repeticiones de blancos y negros se
transmiten en forma alternada, la idea básica sería transmitir secuencias del
tipo 22, 11, 30, 99, 48, ..., etc., en lugar de pares, ya que el primer elemento del
par no es necesario debido a la alternancia en los colores de los píxeles.
Códigos de longitud de pasada (Run Lengh Codes, RLC)
 La Recomendación T.4 de la ITU-T es la que establece el mecanismo para la
transmisión de fax. Cada línea de la hoja de fax se compone de una secuencia de
palabras de código de longitud variable. Cada palabra de código representa una
longitud de repeticiones de elementos todos blancos o todos negros. Las repeticiones
de blanco y de negro se realizan de forma alternada. Cada línea horizontal de
exploración está formada por 1728 elementos o píxeles.
 Para garantizar el sincronismo entre transmisor y receptor todas las líneas de datos
comienzan con una palabra de código correspondiente a una repetición de elementos
blancos.
Códigos de longitud de pasada (Run Lengh Codes, RLC)
 La secuencia de repeticiones 200B, 10N,
10B, 84N, 884B, 540N se descompone
como 192B, 8B; 10N, 10B; 64N, 20N; 832B,
52B; 512N, 28N; EOL
Resumen
 Hemos visto los beneficios de codificar una fuente de información discreta con
la menor cantidad posible de dígitos binarios.
 Shannon establece un límite inferior para la longitud promedio de palabra de
código, el cual es igual a la entropía de la fuente.
 Un código que conduce a la longitud media más pequeña posible se dice que
es óptimo. Un algoritmo para obtenerlo es el de la codificación Huffman.
 Shannon-Fano es un algoritmo alternativo pero no garantiza que el código sea
óptimo.
 La codificación RLC se aplica en secuencias que tienen repeticiones, como por
ejemplo las líneas que conforman una hoja de fax.
Compresión por diccionarios
Nos vemos en el próximo capítulo:

Más contenido relacionado

La actualidad más candente

Codificación Convolucional, Decodificador de Viterbi y Turbo Código
Codificación Convolucional, Decodificador de Viterbi y Turbo CódigoCodificación Convolucional, Decodificador de Viterbi y Turbo Código
Codificación Convolucional, Decodificador de Viterbi y Turbo CódigoOscar Javier Jimenez Revelo
 
Codigos de Linea - Telecomunicaciones III
Codigos de Linea - Telecomunicaciones IIICodigos de Linea - Telecomunicaciones III
Codigos de Linea - Telecomunicaciones IIIAndy Juan Sarango Veliz
 
Diagrama del Ojo
Diagrama del OjoDiagrama del Ojo
Diagrama del OjoDouglas
 
Tecnicas de acceso multiple
Tecnicas de acceso multipleTecnicas de acceso multiple
Tecnicas de acceso multipleDavid Rojas
 
Mod demod am_2014_1(1)
Mod demod am_2014_1(1)Mod demod am_2014_1(1)
Mod demod am_2014_1(1)gmeneses23
 
Ejercicios Modulación Análoga & Digital resultados(fam)-rev3
Ejercicios Modulación Análoga & Digital resultados(fam)-rev3Ejercicios Modulación Análoga & Digital resultados(fam)-rev3
Ejercicios Modulación Análoga & Digital resultados(fam)-rev3Francisco Apablaza
 
Presupuesto de potencia
Presupuesto de potenciaPresupuesto de potencia
Presupuesto de potenciaLuis Alberto
 
Sistema de-señalizacion-telefonica
Sistema de-señalizacion-telefonicaSistema de-señalizacion-telefonica
Sistema de-señalizacion-telefonicawhiteekougar
 
Archivo 2 introduccion_a_las_telecomunicaciones_1
Archivo 2 introduccion_a_las_telecomunicaciones_1Archivo 2 introduccion_a_las_telecomunicaciones_1
Archivo 2 introduccion_a_las_telecomunicaciones_1Enrique Zrt
 
Tecnicas mic pdh sdh
Tecnicas mic pdh sdhTecnicas mic pdh sdh
Tecnicas mic pdh sdhLuis Yallerco
 
Fundamentos de Telecomunicaciones - Unidad 4: Técnicas de Conmutación
Fundamentos de Telecomunicaciones - Unidad 4: Técnicas de ConmutaciónFundamentos de Telecomunicaciones - Unidad 4: Técnicas de Conmutación
Fundamentos de Telecomunicaciones - Unidad 4: Técnicas de ConmutaciónJosé Antonio Sandoval Acosta
 
Codigo de bloques lineales
Codigo de bloques linealesCodigo de bloques lineales
Codigo de bloques linealesComunicaciones2
 
Métodos de modulación y multiplexación en telefonía móvil
Métodos de modulación y multiplexación en telefonía móvilMétodos de modulación y multiplexación en telefonía móvil
Métodos de modulación y multiplexación en telefonía móvilMiguel Eduardo Valle
 
Lecture 18 channel capacity
Lecture 18 channel capacityLecture 18 channel capacity
Lecture 18 channel capacitynica2009
 

La actualidad más candente (20)

Codificación Convolucional, Decodificador de Viterbi y Turbo Código
Codificación Convolucional, Decodificador de Viterbi y Turbo CódigoCodificación Convolucional, Decodificador de Viterbi y Turbo Código
Codificación Convolucional, Decodificador de Viterbi y Turbo Código
 
Codigos de Linea - Telecomunicaciones III
Codigos de Linea - Telecomunicaciones IIICodigos de Linea - Telecomunicaciones III
Codigos de Linea - Telecomunicaciones III
 
Diagrama del Ojo
Diagrama del OjoDiagrama del Ojo
Diagrama del Ojo
 
Tecnicas de acceso multiple
Tecnicas de acceso multipleTecnicas de acceso multiple
Tecnicas de acceso multiple
 
Mod demod am_2014_1(1)
Mod demod am_2014_1(1)Mod demod am_2014_1(1)
Mod demod am_2014_1(1)
 
Ejercicios Modulación Análoga & Digital resultados(fam)-rev3
Ejercicios Modulación Análoga & Digital resultados(fam)-rev3Ejercicios Modulación Análoga & Digital resultados(fam)-rev3
Ejercicios Modulación Análoga & Digital resultados(fam)-rev3
 
Multiplexación
MultiplexaciónMultiplexación
Multiplexación
 
Presupuesto de potencia
Presupuesto de potenciaPresupuesto de potencia
Presupuesto de potencia
 
Modulacion ask
Modulacion askModulacion ask
Modulacion ask
 
calculo enlace
calculo enlacecalculo enlace
calculo enlace
 
Sistema de-señalizacion-telefonica
Sistema de-señalizacion-telefonicaSistema de-señalizacion-telefonica
Sistema de-señalizacion-telefonica
 
Archivo 2 introduccion_a_las_telecomunicaciones_1
Archivo 2 introduccion_a_las_telecomunicaciones_1Archivo 2 introduccion_a_las_telecomunicaciones_1
Archivo 2 introduccion_a_las_telecomunicaciones_1
 
1 modulación psk
1 modulación psk1 modulación psk
1 modulación psk
 
Tecnicas mic pdh sdh
Tecnicas mic pdh sdhTecnicas mic pdh sdh
Tecnicas mic pdh sdh
 
5. Cálculo de radioenlaces
5. Cálculo de radioenlaces5. Cálculo de radioenlaces
5. Cálculo de radioenlaces
 
Fundamentos de Telecomunicaciones - Unidad 4: Técnicas de Conmutación
Fundamentos de Telecomunicaciones - Unidad 4: Técnicas de ConmutaciónFundamentos de Telecomunicaciones - Unidad 4: Técnicas de Conmutación
Fundamentos de Telecomunicaciones - Unidad 4: Técnicas de Conmutación
 
Codigo de bloques lineales
Codigo de bloques linealesCodigo de bloques lineales
Codigo de bloques lineales
 
Modulación: AM, FM, PM
Modulación: AM, FM, PMModulación: AM, FM, PM
Modulación: AM, FM, PM
 
Métodos de modulación y multiplexación en telefonía móvil
Métodos de modulación y multiplexación en telefonía móvilMétodos de modulación y multiplexación en telefonía móvil
Métodos de modulación y multiplexación en telefonía móvil
 
Lecture 18 channel capacity
Lecture 18 channel capacityLecture 18 channel capacity
Lecture 18 channel capacity
 

Similar a Codificación de fuente: longitud variable y eficiencia

Similar a Codificación de fuente: longitud variable y eficiencia (20)

Teoría de la información
Teoría de la informaciónTeoría de la información
Teoría de la información
 
Entropia
EntropiaEntropia
Entropia
 
Comunicaciones
ComunicacionesComunicaciones
Comunicaciones
 
Grafos 9.2 2016
Grafos 9.2 2016Grafos 9.2 2016
Grafos 9.2 2016
 
Expo 1
Expo 1Expo 1
Expo 1
 
Compresion de Datos - Telecomunicaciones III
Compresion de Datos - Telecomunicaciones IIICompresion de Datos - Telecomunicaciones III
Compresion de Datos - Telecomunicaciones III
 
Grafos 9.2 2016
Grafos 9.2 2016Grafos 9.2 2016
Grafos 9.2 2016
 
codificación de canal
codificación de canalcodificación de canal
codificación de canal
 
CodificacióN De Canal
CodificacióN De CanalCodificacióN De Canal
CodificacióN De Canal
 
Grafos 9.2_2016
Grafos 9.2_2016Grafos 9.2_2016
Grafos 9.2_2016
 
Conferencia n 6
Conferencia n 6Conferencia n 6
Conferencia n 6
 
Hpcs conf poster
Hpcs conf posterHpcs conf poster
Hpcs conf poster
 
Códigos y Modos de Transmisión de Datos
Códigos y Modos de Transmisión de DatosCódigos y Modos de Transmisión de Datos
Códigos y Modos de Transmisión de Datos
 
Codificacion HUFFMAN en matlab
Codificacion HUFFMAN en matlabCodificacion HUFFMAN en matlab
Codificacion HUFFMAN en matlab
 
Sistemas de Telecomunicaciones cap 2
Sistemas de Telecomunicaciones cap 2Sistemas de Telecomunicaciones cap 2
Sistemas de Telecomunicaciones cap 2
 
Lecture 3 codificación fuente
Lecture 3 codificación fuenteLecture 3 codificación fuente
Lecture 3 codificación fuente
 
Sistema ascii y binario
Sistema ascii y binarioSistema ascii y binario
Sistema ascii y binario
 
Codigo Binario
Codigo BinarioCodigo Binario
Codigo Binario
 
Deteccion Y Control De
Deteccion Y Control DeDeteccion Y Control De
Deteccion Y Control De
 
CODIGO HUFFMAN-1.pptx
CODIGO HUFFMAN-1.pptxCODIGO HUFFMAN-1.pptx
CODIGO HUFFMAN-1.pptx
 

Último

clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfDanielaVelasquez553560
 
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfMirthaFernandez12
 
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...SuannNeyraChongShing
 
Sesion 02 Patentes REGISTRO EN INDECOPI PERU
Sesion 02 Patentes REGISTRO EN INDECOPI PERUSesion 02 Patentes REGISTRO EN INDECOPI PERU
Sesion 02 Patentes REGISTRO EN INDECOPI PERUMarcosAlvarezSalinas
 
Propositos del comportamiento de fases y aplicaciones
Propositos del comportamiento de fases y aplicacionesPropositos del comportamiento de fases y aplicaciones
Propositos del comportamiento de fases y aplicaciones025ca20
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestajeffsalazarpuente
 
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENSMANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENSLuisLobatoingaruca
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTFundación YOD YOD
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdfevin1703e
 
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptxguillermosantana15
 
SSOMA, seguridad y salud ocupacional. SST
SSOMA, seguridad y salud ocupacional. SSTSSOMA, seguridad y salud ocupacional. SST
SSOMA, seguridad y salud ocupacional. SSTGestorManpower
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVSebastianPaez47
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)ssuser563c56
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxClaudiaPerez86192
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfKEVINYOICIAQUINOSORI
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfAntonioGonzalezIzqui
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdfAnthonyTiclia
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.ALEJANDROLEONGALICIA
 
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.ariannytrading
 
Calavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfCalavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfyoseka196
 

Último (20)

clases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdfclases de dinamica ejercicios preuniversitarios.pdf
clases de dinamica ejercicios preuniversitarios.pdf
 
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
 
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
Polimeros.LAS REACCIONES DE POLIMERIZACION QUE ES COMO EN QUIMICA LLAMAMOS A ...
 
Sesion 02 Patentes REGISTRO EN INDECOPI PERU
Sesion 02 Patentes REGISTRO EN INDECOPI PERUSesion 02 Patentes REGISTRO EN INDECOPI PERU
Sesion 02 Patentes REGISTRO EN INDECOPI PERU
 
Propositos del comportamiento de fases y aplicaciones
Propositos del comportamiento de fases y aplicacionesPropositos del comportamiento de fases y aplicaciones
Propositos del comportamiento de fases y aplicaciones
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuesta
 
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENSMANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
 
Una estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NISTUna estrategia de seguridad en la nube alineada al NIST
Una estrategia de seguridad en la nube alineada al NIST
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdf
 
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
¿QUE SON LOS AGENTES FISICOS Y QUE CUIDADOS TENER.pptx
 
SSOMA, seguridad y salud ocupacional. SST
SSOMA, seguridad y salud ocupacional. SSTSSOMA, seguridad y salud ocupacional. SST
SSOMA, seguridad y salud ocupacional. SST
 
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kVEl proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
El proyecto “ITC SE Lambayeque Norte 220 kV con seccionamiento de la LT 220 kV
 
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)Voladura Controlada  Sobrexcavación (como se lleva a cabo una voladura)
Voladura Controlada Sobrexcavación (como se lleva a cabo una voladura)
 
Comite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptxComite Operativo Ciberseguridad 012020.pptx
Comite Operativo Ciberseguridad 012020.pptx
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdf
 
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdfTAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
TAREA 8 CORREDOR INTEROCEÁNICO DEL PAÍS.pdf
 
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
2. UPN PPT - SEMANA 02 GESTION DE PROYECTOS MG CHERYL QUEZADA(1).pdf
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.
 
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
SOLICITUD-PARA-LOS-EGRESADOS-UNEFA-2022.
 
Calavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdfCalavera calculo de estructuras de cimentacion.pdf
Calavera calculo de estructuras de cimentacion.pdf
 

Codificación de fuente: longitud variable y eficiencia

  • 1. Codificación de fuente Teoría de las Telecomunicaciones Comunicaciones I
  • 2. Codificación de fuente  Un problema de interés dentro de las comunicaciones es la representación eficiente de los datos generados por una fuente de información discreta.  El proceso mediante el cual se lleva a cabo esta representación se llama codificación de fuente y consiste en la asignación de un código a cada símbolo de la fuente.  Este código se forma con una secuencia de dígitos binarios y lo llamaremos palabrade código.
  • 3. Codificación de fuente  La codificación más sencilla que se le puede hacer a una fuente de información discreta es una asignación de palabras de código de longitud fija.  Por ejemplo, si la fuente tiene 3 símbolos entonces se le pueden asignar 2 bits a cada palabra de código de cada símbolo.  Por ejemplo A = 00; B = 10; C = 11.  Sin embargo, una codificación más eficiente es A = 0; B = 10; C = 11. Esta codificación se llama de longitud variable.
  • 4. Codificación de fuente  Para hacer una codificación de longitud variable se requiere conocer la probabilidad de ocurrencia de los elementos de la fuente.  Conociendo esto, se asignan las palabras de código más cortas a los elementos más probables, y las más largas a los elementos menos probables.  Por ejemplo, el código Morse asigna un punto (“.”) a la letra E que es la que ocurre con mayor frecuencia, y el código “--.-” a la letra Q que es la menos frecuente.
  • 5. Codificación de fuente  ¿Qué se logra con este criterio de codificación? Transmitir la menor cantidad posible de bits (dígitos binarios) para transmitir la misma cantidad de información.  Beneficios:  Transmitir la información utilizando el mismo tiempo que en el caso de codificación de longitud fija pero a menor velocidad (tasa de bit), o sea, usando un menor ancho de banda.  Transmitir con el mismo ancho de banda que en el caso de codificación de longitud fija (es decir, a igual velocidad) pero en menor tiempo.  Reducir la tasa de error de bit como consecuencia del aumento de la energía de bit.
  • 6. Codificación de fuente  Requisitos:  1. El código generado por el codificador debe ser del tipo binario.  2. El código debe ser unívocamentedecodificable, esto quiere decir que el símbolo original se puede reconstruir perfectamente, sin ambigüedad, a partir de la secuencia binaria codificada.
  • 7. Codificación de fuente  Supongamos entonces que los elementos sk que una fuente de información genera a su salida son convertidos por el codificador en una secuencia de unos y ceros, denotada por bk.  Asumimos que la fuente tiene un alfabeto con K símbolos diferentes y que el k-ésimo elemento sk ocurre con una probabilidad pk (k desde 0 hasta K-1).  Supongamos que la palabra de código asignada al símbolo sk tiene una longitud lk, medida en bits (dígitos binarios).  Definimos a la longitud promedio de la palabra de código, , generado por el codificador de fuente, como:     1 0 K k k k l p L L
  • 8. Codificación de fuente  Conceptualmente, la ecuación anterior representa el número promedio de bits por símbolo de fuente, que se obtiene con el codificador que se esté usando.  Sea el mínimo valor posible que teóricamente puede tener para una fuente de información discreta dada y usando alguna cierta codificación.  Entonces definimos la eficiencia de un código generado por un codificador de fuente como:  Como > entonces resulta η < 1. Cuanto más cercano a 1 es η, más eficiente es el código. min L L L Lmin   L min L
  • 9. Codificación de fuente  ¿Cuál es el valor más pequeño posible que puede tener L medio mínimo? ¿Hay algún límite teórico? Sí:  Es decir, nunca puede ser más pequeño que la entropía de la fuente. El caso óptimo se da cuando = H(S).  Por lo tanto, se obtiene cuando = H(S). Bajo esta condición obtenemos: ) (S H L  L L min L L L S H ) (  
  • 10. Codificación de fuente  La eficiencia es un valor adimensional. Este resultado surge de simplificar [bit/símbolo] del numerador con [bit/símbolo] del denominador a pesar de que ambos términos “bit” son unidades diferentes.  La ecuación nos dice cuántosbits (dígitos binarios) se requieren en promedio por cada símbolo de la fuente, comomínimo, para transmitir la información que genera la fuente. La diferencia entre los valores de Lmedio y H(S) da una idea de cuántos bits (dígitos binarios) redundantes se está transmitiendo. ) (S H L 
  • 11. Codificación de fuente  En general H(S) no es un número entero, pero si se usa codificación de longitud fija, Lmedio sí es un número entero, entonces no es posible en este caso alcanzar el 100% de eficiencia en la codificación.  Por eso un código de longitud variable es más eficiente que uno de longitud fija.  Si la fuente tiene K elementos, con K = 2N, siendo N un entero, y son igualmente probables, entonces la codificación de longitud fija es perfectamente eficiente ya que se requieren N bits para codificar cada uno de los K elementos y la entropía de la fuente resulta ser log2(K) = N.
  • 12. Codificación de fuente  Supongamos una fuente de información discreta sin memoria con 8 elementos, y que tiene una H(S) = 2,3 bit/símbolo.  Supongamos que se transmite un símbolo por segundo.  La tasa de información es R = r.H(S).  R = 1 símbolo/seg x 2,3 bit/símbolo.  R = 2,3 bit/seg.  El límite de Shannon nos dice que para transmitir 2,3 bits de información por segundo, se requieren transmitir por lo menos 2,3 bits (dígitos binarios) por segundo.  Para saber exactamente cuántos dígitos binarios por segundo se deben transmitir, se debe conocer la distribución de probabilidades de los elementos de la fuente.
  • 13. Código libre de prefijo  Consideremos una fuente discreta sin memoria con un alfabeto {s0, s1, ...sK-1} con sus respectivas probabilidades {p0, p1, ...pK-1}.  El código que represente a esta fuente tiene que ser unívocamente decodificable.  Esta restricción asegura que a dos diferentes secuencias finitas de símbolos de la fuente le correspondan dos secuencias de palabras de código también diferentes.
  • 14. Código libre de prefijo  Un código libre de prefijo es aquel en el que ninguna palabra de código es prefijo de ninguna otra palabra de código del conjunto.  Es decir, ninguna de las palabras de código asignadas a una fuente es parte inicial de cualquiera de las otras palabras de código asignadas al resto de los elementos de esa misma fuente.  En la tabla siguiente, los códigos I y III no son libre de prefijo. No obstante, el III puede resolverse pero no en forma instantánea. Elemento de la fuente Probabilidad de ocurrencia Código I Código II Código III s0 0,5 0 0 0 s1 0,25 1 10 01 s2 0,125 00 110 011 s3 0,125 11 111 0111
  • 15. Código libre de prefijo  Árbol de decisión:  Por ejemplo, la secuencia codificada 1011111000... es decodificada en la secuencia s1s3s2s0s0...
  • 16. Código libre de prefijo  Si se ha construido un código libre de prefijo para una fuente discreta sin memoria con un alfabeto {s0, s1, ..., sK-1} y con distribución de probabilidades {p0, p1, ...,pK-1}, y cada palabra de código correspondiente a cada símbolo sk tiene una longitud lk, entonces con seguridad se cumple la siguiente desigualdad llamada desigualdad de Kraft McMillan:  A la inversa, podemos establecer que si las longitudes que se pretenden asignar a las palabras de código de una fuente discreta sin memoria satisfacen la desigualdad de Kraft-McMillan, entonces es posible construir un código libre de prefijo usando esas longitudes de palabras de código. 1 2 1 0      K k lk
  • 17. Código libre de prefijo  Ejemplo. Una fuente de información discreta tiene tres elementos: A, B y C. ¿Es posible construir un código libre de prefijos con la distribución de longitudes palabras de código siguiente? (X representa uno o cero):  Solución. Aplicando la desigualdad de Kraft-McMillan:  Como el resultado es menor que 1, entones es posible obtener un código libre de prefijo con la distribución de dígitos binarios pretendida. Elemento de la fuente Código A X B XX C XXX 875 , 0 2 2 2 2 3 2 1 1 0            K k lk
  • 18. Código libre de prefijo  Dada una fuente discreta sin memoria que tiene una entropía H(S), la longitud promedio de palabras de código para una codificación óptima libre de prefijo, tiene los siguientes límites:  Además, para una codificación óptima libre de prefijo, la ecuación de Kraft-McMillan da siempre 1.  ¿Qué ocurre con la longitud media de palabra de código usando fuentes extendidas?  Teniendo en cuenta que H(Sn) = nH(S), obtenemos:  O, equivalentemente: 1 ) ( ) (    s H L s H 1 ) ( ) (    n n n S H L S H 1 ) ( ) (    S nH L S nH n n S H n L S H n 1 ) ( ) (   
  • 19. Codificación Huffman  El código Huffman es una codificación de fuente cuya longitud media de palabra de código se aproxima al límite fundamental dado por la entropía H(S) de una fuente discreta sin memoria.  El código de Huffman es óptimo en el sentido de que no hay otra codificación que permita obtener una longitud media de palabra de código más pequeña, o dicho de otro modo, que no permita obtener una eficiencia η más alta.
  • 20. Codificación Huffman  Ejemplo. En la tabla siguiente se muestran los seis símbolos de una fuente discreta sin memoria junto con sus respectivas probabilidades, ordenadas de manera decreciente. Se desea armar un código libre de prefijo mediante la codificación Huffman. Símbolo Probabilidad Código resultante lk lk x pk a 0,4 11 2 0,8 b 0,2 00 2 0,4 c 0,1 101 3 0,3 d 0,1 100 3 0,3 e 0,1 011 3 0,3 f 0,1 010 3 0,3 L = 2,4
  • 21. Codificación Huffman  Los símbolos de la fuente se ordenan de acuerdo a su probabilidad en forma decreciente.
  • 22. Codificación Huffman  A los dos símbolos menos probables se les asigna un 0 y un 1 (o un 1 y un 0, pero se debe mantener el mismo criterio durante todo el proceso).
  • 23. Codificación Huffman  Estos dos símbolos se combinan entre sí sumando sus probabilidades.
  • 24. Codificación Huffman  Este nuevo símbolo, con su nueva probabilidad, se coloca en una nueva columna con el resto de los símbolos de la fuente, otra vez según un orden decreciente.
  • 25. Codificación Huffman  El proceso de reducción continúa…
  • 26. Codificación Huffman  El proceso de reducción continúa…
  • 27. Codificación Huffman  El proceso de reducción continúa…
  • 28. Codificación Huffman  El algoritmo termina cuando en la última columna quedan dos elementos, designados con un 1 y un 0 y cuya suma de probabilidades será obviamente 1.
  • 29. Codificación Huffman Símbolo Probabilidad Código resultante lk lk x pk a 0,4 11 2 0,8 b 0,2 00 2 0,4 c 0,1 101 3 0,3 d 0,1 100 3 0,3 e 0,1 011 3 0,3 f 0,1 010 3 0,3 L = 2,4
  • 30. Codificación Huffman  La longitud media de palabra de código es 2,4 bits por símbolo. Esto no significa que se transmite un número no entero de bits. Significa que en promedio, para transmitir por ejemplo 100 símbolos de la fuente, se transmiten 240 bits por el canal de comunicación.  Utilizando un sistema de codificación de longitud fija, se necesitarían 3 bits para poder codificar los 6 elementos de la fuente. Es decir, en promedio, por cada 100 símbolos se transmitirían 300 bits.  Se llama relación de compresión R al cociente entre la longitud media de palabra de código para una codificación de longitud fija y la longitud media obtenida con la codificación de longitud variable. Por lo tanto, para este ejemplo, la relación de compresión R es (3/2,4) = 1,25.
  • 31. Codificación Huffman  La eficiencia de compresión es:  Es decir que se “comprime” a un 96,7% del máximo teórico posible. También se puede observar que la longitud media de palabra de código es mayor que H(S) y menor que H(S) + 1. % 7 , 96 100 lo bits/símbo 4 , 2 lo bits/símbo 32 , 2    
  • 32. Codificación Huffman  El proceso de codificación de Huffman no es único es decir, se puede llegar al mismo resultado por otro camino.  En cada etapa es arbitraria la asignación del 1 y el 0 a las dos últimas ramas que se suman, pudiendo invertirse el orden.  Si la suma de estos dos elementos da como resultado una probabilidad que es igual a la de un elemento de la siguiente columna, este elemento resultante puede ubicarse ya sea lo más arriba posible como en cualquier otro puesto intermedio en la columna siguiente, siempre respetando el orden decreciente.  Estas alternativas conducen a resultados diferentes en cuanto a la longitud de las palabras de código que le terminará correspondiendo a cada símbolo, aunque la longitud media resultante sigue siendo la misma.
  • 33. Codificación Huffman  Se puede medir la variabilidad de las longitudes de las palabras de código a través de su varianza, es decir, la dispersión que hay entre las longitudes de palabras de código correspondientes a cada elemento de la fuente:  En la ecuación anterior pk es la probabilidad del símbolo sk y lk es la longitud de la palabra de código asociada al símbolo sk.  Cuando se aplica el algoritmo de Huffman colocando la probabilidad resultante de la suma de las dos últimas ramas en el lugar más alto posible de la columna siguiente, entonces se obtiene el valor más pequeño para σ2.        1 0 2 2 K k k k L l p 
  • 34. Codificación Huffman  Ejemplo. Considérese el siguiente alfabeto con sus respectivas probabilidades. Resolver el algoritmo de Huffman para esta fuente y para la fuente extendida de orden 2.  En la tabla anterior se muestra el código resultante, luego de aplicar Huffman, como así también la longitud media de palabra de código que es 1,27. De aquí resulta que la relación de compresión es R = 2/1,27 = 1,57, teniendo en cuenta que usando codificación de longitud fija tres símbolos se pueden codificar con dos bits. Así mismo, la eficiencia de compresión es η = 0,944/1,27 x 100 = 74%, ya que la entropía es H(S) = 0,944 bits/símbolo. Símbolo Probabilidad Código resultante lk lk x pk a 0,73 1 1 0,73 b 0,25 01 2 0,50 c 0,02 00 2 0,04 L = 1,27
  • 35. Codificación Huffman  Aplicando Huffman a la fuente extendida se obtiene la tabla siguiente:  El valor de Lmedio es 1,9342 bits por cada dos símbolos de la fuente original, o bien 0,9671 bit por cada símbolo de la fuente original. La relación de compresión es R = 2/0,9671 = 2,068. La eficiencia del código ahora es η = 97,6%.  Al extender la fuente se consigue una mejor eficiencia en la representación de los símbolos y una mejor relación de compresión. Símbolo Probabilidad Código resultante lk lk x pk aa 0,5329 1 1 0,5329 ab 0,1825 00 2 0,3650 ba 0,1825 011 3 0,5475 bb 0,0625 0101 4 0,2500 ac 0,0146 01000 5 0,0730 ca 0,0146 010011 6 0,0876 bc 0,0050 0100100 7 0,0350 cb 0,0050 01001011 8 0,0400 cc 0,0004 01001010 8 0,0032 L = 1,9342
  • 36. Método de compresión de Shannon - Fano  Es otro método de compresión, en el que también se deben ubicar los elementos de la fuente en orden decreciente de probabilidad para proceder con el algoritmo. La tabla formada se divide en dos partes buscando que la suma de probabilidades en ambas partes sean lo más próximas posibles entre sí. Símbolo Probabilidad I II III Código a 0,4 0 0 00 b 0,2 0 1 01 c 0,1 1 0 0 100 d 0,1 1 0 1 101 e 0,1 1 1 0 110 f 0,1 1 1 1 111
  • 37. Método de compresión de Shannon - Fano  A los símbolos de la mitad superior se les asigna el bit 0 mientras que a los de la mitad inferior se les asigna el bit 1 (o viceversa, pero manteniendo el mismo criterio durante todo el algoritmo). Símbolo Probabilidad I II III Código a 0,4 0 0 00 b 0,2 0 1 01 c 0,1 1 0 0 100 d 0,1 1 0 1 101 e 0,1 1 1 0 110 f 0,1 1 1 1 111
  • 38. Método de compresión de Shannon - Fano  El proceso continúa iterativamente hasta que no se puedan hacer más divisiones. Símbolo Probabilidad I II III Código a 0,4 0 0 00 b 0,2 0 1 01 c 0,1 1 0 0 100 d 0,1 1 0 1 101 e 0,1 1 1 0 110 f 0,1 1 1 1 111
  • 39. Método de compresión de Shannon - Fano  El proceso continúa iterativamente hasta que no se puedan hacer más divisiones. Símbolo Probabilidad I II III Código a 0,4 0 0 00 b 0,2 0 1 01 c 0,1 1 0 0 100 d 0,1 1 0 1 101 e 0,1 1 1 0 110 f 0,1 1 1 1 111
  • 40. Método de compresión de Shannon - Fano  El proceso continúa iterativamente hasta que no se puedan hacer más divisiones. Símbolo Probabilidad I II III Código a 0,4 0 0 00 b 0,2 0 1 01 c 0,1 1 0 0 100 d 0,1 1 0 1 101 e 0,1 1 1 0 110 f 0,1 1 1 1 111
  • 41. Códigos de longitud de pasada (Run Lengh Codes, RLC)  Este esquema de codificación se aplica a aquellas fuentes de datos cuyos elementos se van transmitiendo a modo de secuencias repetidas de un mismo elemento, como por ejemplo acccbbaaabb...  En vez de transmitir un código para cada elemento de la fuente, la idea es transmitir pares que, para el ejemplo dado serían:  (1, a), (3, c), (2, b), (3, a), (2, b)...  Es decir, el primer término del par indica cuántas veces se transmite el segundo elemento del par. La secuencia sería 1a3c2b3a2b..., donde cada letra es reemplazada por el código ASCII correspondiente, por ejemplo: 000000111000010000011110001100000101100010000001111000 01...  Por lo tanto, si se usa un ASCII de 7 bits, se transmitirían 11 x 7 = 77 bits, mientras que usando Run Length Code se transmiten 5 x 2 x 7 = 70 bits.
  • 42. Códigos de longitud de pasada (Run Lengh Codes, RLC)  Esta idea es explotada en la codificación de mensajes de fax. Los mensajes de fax están formados por largas cadenas binarias que representan puntos blancos o negros, como ser: 11111111111110000000000111111000000000111111111111111111100001111110... donde 1 representa blanco y 0 representa negro, por ejemplo.  Para el caso del fax, como las cadenas de repeticiones de blancos y negros se transmiten en forma alternada, la idea básica sería transmitir secuencias del tipo 22, 11, 30, 99, 48, ..., etc., en lugar de pares, ya que el primer elemento del par no es necesario debido a la alternancia en los colores de los píxeles.
  • 43. Códigos de longitud de pasada (Run Lengh Codes, RLC)  La Recomendación T.4 de la ITU-T es la que establece el mecanismo para la transmisión de fax. Cada línea de la hoja de fax se compone de una secuencia de palabras de código de longitud variable. Cada palabra de código representa una longitud de repeticiones de elementos todos blancos o todos negros. Las repeticiones de blanco y de negro se realizan de forma alternada. Cada línea horizontal de exploración está formada por 1728 elementos o píxeles.  Para garantizar el sincronismo entre transmisor y receptor todas las líneas de datos comienzan con una palabra de código correspondiente a una repetición de elementos blancos.
  • 44. Códigos de longitud de pasada (Run Lengh Codes, RLC)  La secuencia de repeticiones 200B, 10N, 10B, 84N, 884B, 540N se descompone como 192B, 8B; 10N, 10B; 64N, 20N; 832B, 52B; 512N, 28N; EOL
  • 45. Resumen  Hemos visto los beneficios de codificar una fuente de información discreta con la menor cantidad posible de dígitos binarios.  Shannon establece un límite inferior para la longitud promedio de palabra de código, el cual es igual a la entropía de la fuente.  Un código que conduce a la longitud media más pequeña posible se dice que es óptimo. Un algoritmo para obtenerlo es el de la codificación Huffman.  Shannon-Fano es un algoritmo alternativo pero no garantiza que el código sea óptimo.  La codificación RLC se aplica en secuencias que tienen repeticiones, como por ejemplo las líneas que conforman una hoja de fax.
  • 46. Compresión por diccionarios Nos vemos en el próximo capítulo: