07 cuantificacion escalar (1)

47
Tema 7: Cuantificación Escalar Rafael Molina Depto Ciencias de la Computación e Inteligencia Artificial Universidad de Granada

Transcript of 07 cuantificacion escalar (1)

Page 1: 07 cuantificacion escalar (1)

Tema 7:

Cuantificación Escalar

Rafael MolinaDepto Ciencias de la Computación

e Inteligencia ArtificialUniversidad de Granada

Page 2: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 2

Contenidos1. Introducción

• Definición.

• El problema de la cuantificación.

2. Cuantificación uniforme

• Introducción.

• Cuantificación de fuentes uniformementedistribuidas.

• Cuantificación de fuentes no uniformes.

3. Cuantificación adaptativa

• Cuantificación adaptativahacia adelante (off-line)

• Cuantificación adaptativahacia atrás (on-line).

4. Cuantificación no uniforme

• Cuantificación optimizadaen pdf.

• Algoritmo de Max-Lloyd

• Compansores

5. Bibliografía

Page 3: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 3

1. Introducción

Proceso de representación de un número de valores extenso (posiblemente infinito) con un número mucho menor de valores.

El adjetivo escalar hacer referencia a las salidas y entradas del cuantificador.

cuantificador escalar

cuantificador vectorial

Si E/S son escalares

Si E/S son vectores

1.1 Definición de cuantificación:

Page 4: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 4

Ejemplo I: si tenemos como rango de posibles valores de cuantificación todos los enteros comprendidos entre 0 y 100, podríamos diseñar el siguiente esquema de cuantificación:

Observa que las apariciones de 100 provienen de valores originales distintos Además, una vez obtenido un valor de la salida del cuantificador, no hay forma de saber de quévalor provenía.

Será bueno diseñar cuantificadores que minimicen (en algún sentido) la diferencia entre la entrada y la salida

10052100100231252Valor cuantificado

500.5252.99153.69196.5823.5612.255.562.58Valor original

Page 5: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 5

I.2 El problema de la cuantificación

El cuantificador consiste en dos funciones:

Codificador:

•divide el rango de valores de la fuente en un número de intervalos,•cada intervalo es representado por una palabra de código distinta,•el codificador representa todas las fuentes en un intervalo mediante la palabra de código que lo representa, •si la fuente es analógica el codificador recibe el nombre de conversor analógico digital (A/D).

Page 6: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 6

Ejemplo de codificador con ocho valores de reconstrucción.

Se usan 8 valores para representar las palabras del código, el cuantificador recibe el nombre de cuantificador de 3 bits.

-3.0 -2.0 -1.0 0.0 1.0 2.0 3.0

000 001 010 011 100 101 110 111

Observa que las palabras de códigos no necesariamenterepresentan valores de la fuente.

Page 7: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 7

Decodificador:•genera un valor de reconstrucción para cada palabra del código, (como cada palabra representa un intervalo, no se puede saber ya quien era la fuente original). Podemos usar el punto medio del intervalo aunque otras opciones son posibles,•si la reconstrucción es análogica el decodificador recibe el nombre de conversor digital a analógico (D/A).

Un ejemplo de decodificador para el ejemplo anterior es la tabla siguiente

3.52.51.50.5-0.5-1.5-2.5-3.5Reconstrucción

111110101100011010001000Palabra de código

Page 8: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 8

Ejemplo II: consideremos la señal

muestreada cada 0'05 s. La muestra fue codificada usandoel conversor A/D del ejemplo anterior y decodificadausando el conversor D/A del mismo ejemplo.

Algunos ejemplos de entradas, conversores A/D y D/A y los errores en la cuantificación se muestran en la tablasiguiente:

( )tts π2cos4)( =

-0'2641'51011'2360'20-0'1492'51102'3510'15-0'2643'51113'2360'100'3043'51113'8040'05ErrorCD/A CA/D s(t)t

Page 9: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 9

-4.0 -3.0 -2.0 -1.0 1.0 2.0 3.0 4.0

0.5

1.5

2.5

3.5

-3.5

-2.5

-1.5

-0.5

Entrada

Salida

Representación gráfica del cuantificador.

Podría decirse que la división de la entradaes un problema del codificador y la asignación de salidas a las palabras del código es un problema del decodificador.

Obviamente ambos problemas están muyrelacionados y los dos forman parte del diseño del cuantificador. Observa que un problema importante de diseño es asignarcódigos binarios a los intervalos.

Page 10: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 10

Consideremos el siguiente ejemplo de matlab

t = [0:.1:2*pi]; % Times at which to sample %the sine function

sig = sin(t); % Original signal, a sine wave

partition = [-1:.2:1]; % Length 11, to %represent 12 intervals

codebook = [-1.2:.2:1]; % Length 12, one %entry for each interval

[index,quants]=quantiz(sig,partition,codebook); % Quantizeplot(t,sig,'x',t,quants,'.')legend('Original signal','Quantized signal');axis([-.2 7 -1.2 1.2])

Page 11: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 11

Pasamos a la formulación matemática del problema de diseñode un cuantificador

Supongamos que nuestra fuente X es modelizada medianteuna variable aleatoria con función de densidad fX(x).

Para construir un cuantificador con M intervalos necesitamos:

1. Los M+1 puntos finales de los intervalos (fronteras de decisión) y

2. Los M valores representativos (niveles de reconstrucción) de esos intervalos que vamos a utilizar.

Las fuentes discretas se suelen modelizar como continuas. A veces se supone (incluso para fuentes discretas) que la diferencia entre dos valores dentro de un mismo intervalo de cuantificación es una distribución fX(x) de Laplace.

Page 12: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 12

son los límites de decisión

Si son los valores de reconstrucción y

Observa que si X toma valores en toda la recta real los extremos de los intervalos finales serán –∞ y +∞

El error cuadrático medio de cuantificación se define mediante ruído de cuantificación

M=iiy 1

M=iib 0

( )( ) ( ) ( ) ( )∑ ∫∫−

−⋅−∞

∞−

M

=i

b

bXiXq

i

i

dxxfyx=dxxfxQx=σ1

222

1

Page 13: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 13

Para medir el número medio de bits por palabra de códigoobservamos que cuando todas las palabras del código tienenlongitud fija, si M es el número de palabras de código, entonces la razón R viene dada por

Si la longitud de los códigos es variable entonces

donde li es la longitud de la palabra de código asignada a yi y P(yi) corresponde a la probabilidad de que aparezca yi.

Observa que R depende de y, b y l (que depende del códigoutilizado C) y por tanto para ser precisos debemos escribirR(y,b,C).

M=R 2log

( ) ( )∑∑ ∫ ⋅=−

M

=iii

M

=i

b

bXi yPldxxfl=R

i

i 11 1

Page 14: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 14

Ya conocemos las dos magnitudes fundamentales de un cuantificador, R y .

Podría pensarse que para diseñar un cuantificador se podría intentar minimizar simultáneamente R y . Sin embargo, esta minimización simultánea no es posible.

Un decremento en el número medio de bits por palabrade código conlleva un aumento de la distorsión de cuantificación y viceversa.

Observa:1. si disminuimos R, la distorsión del cuantificador crecerá debido a que habrá

menos resolución (habrá menos intervalos) en la cuantificación. 2. si queremos disminuir la distorsión deberemos decrementar la longitud de

los intervalos de cuantificación, lo que conlleva inexorablemente incrementar el número de bits medio de las palabras de código.

2qσ

2qσ

Page 15: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 15

Dada una distorsión máxima permitida D* , σq² ≤ D* ,

encontrar los límites de decisión, niveles de reconstrucción y código que minimicen R.

Dada una cota máxima de razón de cuantificación permitida, R ≤ R*,

encontrar los niveles de reconstrucción, los límites de decisión y código que minimicen σq² .

o

El diseño de un cuantificador consiste en

Observa que el problem es bastante complicado, siendo algo más simple sisuponemos que los códigos son de longitud fija. Comenzaremos con este caso paraluego pasar al general.

Page 16: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 16

Es el cuantificador más simple.

•Todos sus intervalos de cuantificación tienen el mismotamaño (se suele notar como ∆); con la salvedad del primer y último intervalo si la señal de entrada no estáacotada.

•Los valores de reconstrucción están igualmenteespaciados con el mismo espacio que las fronteras de decisión ∆.

2. Cuantificación uniforme

Page 17: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 17

-3 Δ - 2Δ -Δ Δ 2Δ 3Δ

Δ/2

3Δ/2

5Δ/2

7Δ/2

-7Δ/2

-5Δ/2

-3Δ/2

-Δ/2

Entrada

Salida

(entrada) finitos 1 1+kkk+k b,bsiΔ=bb −

(salida)1 jΔ=yy j+j ∀−

yj

yj+1

Δ

Δ

bk bk+1

Page 18: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 18

Cuantificador Midrise (Cuantificador uniforme simétrico): el 0 no está en el conjunto de salidas.

Cuantificador Midtread (Cuantificador uniforme asimétrico): el 0 pertenece al conjunto de salidas.

Normalmente se usan los cuantificadoresmidtread si el número de intervalos esimpar o si necesitamos representar al 0 en los valores de salida.

Tipos de cuantificadores uniformes:

000

010

001

011

100

101

110

111

0001

0000

0010

0011

0100

0101

0110

0111

1000

Page 19: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 19

II.1 Cuantificación uniforme sobre fuentes uniformemente distribuidas:

El diseño de un cuantificador uniforme con M intervalos, para una entrada uniformemente distribuida en el intervalo finito [-Xmax , Xmax] es muy simple.

Dividiremos [-Xmax, Xmax] en M intervalos, asíobtendremos ∆.

El valor de cuantificación para el intervalo comprendidoentre (i-1)Δ e iΔ es

MX=Δ max2

Δiyi 212 −

=

Page 20: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 20

-3 Δ - 2Δ -Δ Δ 2Δ 3Δ Xmax=4Δ

Δ/2

-Δ/2

-Xmax=-4Δ

¿Cuánto vale gráficamenteel error de cuantificación?

Supongamos que M es par. ¿Cuánto vale el error cuadrático medio de cuantificación?

x-Q(x)

σ2q =

MXi=1

Z bi

bi−1(x − yi)2fX (x)dx

= 2

M/2Xi=1

Z i∆

(i−1)∆(x − 2i − 1

2∆)2

1

2Xmaxdx

= 2∆

2Xmax

M/2Xi=1

Z i∆

(i−1)∆(x − 2i− 1

2∆)2

1

∆dx

=2∆M

2

2Xmax

Z ∆

0

(x − 12∆)2

1

∆dx = ∆2/12

Page 21: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 21

( )12

2 22 maxx

X=σ

Supongamos que M=2n . Calculemos la relación señal/ruidode este cuantificador. Tenemos

La varianza de una distribución U[-Xmax,Xmax] vale

esta ecuación expresa que por cada bit que añadamos al cuantificador, obtendremos una mejora (SNR) de 6'02 dB. Es decir, la expresión, nos permite medir cuanto mejoraránuestro cuantificador como máximo con respecto a la distorsión.

SNR(dB) = 10 log10σ2xσ2q

= 10 log10(2Xmax)

2/12

(∆)2/12= 10 log10(M

2)

= 20 log10(2n) = 6.02n dB

Observa quecorresponde a Δ=1

MX=Δ max2

recuerda

Page 22: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 22

II.2 Cuantificación uniforme sobre fuentes no uniformemente distribuidas:

Consideremos de nuevo el intervalo (-Xmax,Xmax) cuyoscuyosextremosextremos ahoraahora puedenpueden ser ser infinitoinfinito. Podemos construir un cuantificador, que también es uniforme, mediante la siguiente division del intervalo (-Xmax,Xmax)

-3Δ’ - 2Δ’ -Δ’ Δ’ 2Δ’ 3Δ’ Xmax

Δ’/2

-Δ’/2-Xmax

Observa que si nuestra fuente está en el intervalo [-1,1] con probabilidad 0.95 y en [-100,-1) UU (1,100] con probabilidad0.05, esta división es mucho más razonable.

Los valores de cuantificaciónserán siempre de la forma iΔ’/2

¿Cuál es el error de cuantificación?

Page 23: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 23

σ2q = 2

M/2−1Xi=1

Z i∆

(i−1)∆(x− 2i− 1

2∆)2fX(x)dx

+ 2

Z ∞(M/2−1)∆

(x− M − 12

∆)2fX(x)dx

Podemos usar la regla de Leibnitz:

para calcular ∂σ2q/ ∂Δ y consecuentemente encontrar (en

principio) el valor de Δ que minimiza el error de cuantificación.

Tendremos

∂t

Z b(t)

a(t)

f(x, t)dx =

Z b(t)

a(t)

∂f(x, t)

∂tdx

+ f(b(t), t)∂b(t)

∂t− f(a(t), t)∂a(t)

∂t

Page 24: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 24

La tabla siguiente muestra los valores óptimos de ∆para distintas distribuciones de entrada:

D. Uniforme D. Gaussiana D. Laplaciana Tamaño del

alfabeto ∆ SNR ∆ SNR ∆ SNR 2 1,732 6,02 1,596 4,40 1,414 3,00 4 0,866 12,04 0,9957 9,24 1,0873 7,05 6 0,577 15,58 0,7334 12,18 0,8707 9,56 8 0,433 18,06 0,5860 14,27 0,7309 11,39 10 0,346 20,02 0,4908 15,90 0,6334 12,81 12 0,289 21,60 0,4238 17,25 0,5613 13,98 14 0,247 22,94 0,3739 18,37 0,5055 14,98 16 0,217 24,08 0,3352 19,36 0,4609 15,84 32 0,108 30,10 0,1881 24,56 0,2799 20,46

Observa que cuanto menos uniforme es (tiene más pico) la distribución de entrada, menos obedece la regla del incremento de SNR en 6'02 dBs por cada bit.

Page 25: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 25

-3 Δ - 2Δ -Δ Δ 2Δ 3Δ

Δ/2

-Δ/2

Observa que la forma del error es ahora diferente

x-Q(x)

Ruido granular Ruido de sobrecargaRuido de sobrecarga

Probabilidad de sobrecarga Probabilidad

granular

Normalmente, la probabilidad de que un error sea de sobrecarga es mucho menor que la probabilidad de que sea granular.

Page 26: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 26

Efectos de desemparejamiento (desajuste):

Para resolver estos errores aparecen los cuantificadoresadaptativos que discutiremos a continuación.

Existen dos tipos de desajuste:

1.El tipo de distribución que se usa es el de la señal de entrada, pero la varianza de la entraday la supuesta no coinciden.

2.El tipo de distribución es distinto de la supuestapara obtener el valor del paso.

Page 27: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 27

III. Cuantificación adaptativa

Vamos a intentar resolver los problemas de desajuste tantode los parámetros de la distribución de entrada como de una especificación errónea de la distribución.

Si suponemos que disponemos de todos los datos a cuantificar aparecerá la cuantificación adaptativa off-line o hacia delante que nos obligará a enviar informaciónadicional con el cuantificador conforme lo modifiquemos.

Si suponemos que sólo disponemos de los valorescuantificados no necesitaremos enviar información adicionaly dará lugar a la cuantificación adaptativa on-line o haciaatrás.

Page 28: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 28

III.1. Cuantificación adaptativa off-linePodemos:

Dividir nuestros datos de entrada en bloques, (supuestoque todos son de media cero), calcular su desviación típicapor bloque y dividir cada dato por la desviación típica del bloque al que pertenece.

Así todos los datos (de todos los bloques en su conjunto) serán más uniformes y podemos aplicar sobre ellos un cuantificador del tipo uniforme que hemos visto.

Observa que tenemos que trasmitir la desviación típica de cada bloque ya que posteriormente tendremos quemultiplicar los datos cuantificados por la desviación típicadel bloque al que pertenece.

Page 29: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 29

Igualmente podríamos normalizar al rango [-1,1] cadabloque utilizando el máximo y el mínimo de cada bloque(que luego obviamente tendríamos que transmitir)

Observa que los datos de la secuencia de voz de la derecha son candidatos perfectos para su división porbloques y la utilización de un paso diferente en cada bloque

We could barely see the fjords through the snow flurries

Page 30: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 30

III.2 Cuantificación adaptativa on-line

Si nuestros datos pensamos que vienen de unadeterminada distribución de probabilidad, podemos calcularla probabilidad de que un dato ‘caiga’ en cada intervalo de cuantificación.

Si con los datos cuantificados que vamos recibiendo, calculamos la probabilidad de cada intervalo de cuantificación y no es parecida a la calculada con la distribución de probabilidad que suponemos, tendremosque modificar el paso del cuantificador (observa que sólopodemos hacerlo globalmente no en cada intervalo) aumentándolo o disminuyéndolo.

Page 31: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 31

Esta es la idea del cuantificar de Jayant que no discutiremos aquí y que funciona modificando el pasocon cada dato cuantificado.

Observa que no hay necesidad de enviar ningunainformación adicional.

Page 32: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 32

Consideremos la siguiente función de densidad

IV. Cuantificación no-uniforme

Es obvio que sería bueno que los intervalos de cuantificaciónfuesen muy pequeños cerca del cero y luego fuesencreciendo (esto no lo podemos hacer con un cuantificadoruniforme).

Page 33: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 33

b-3 b-2 b-1 b1 b2 b3

y-1

y-2

y-3

Un cuantificador que tieneintervalos no uniformesrecibe el nombre de cuantificador no-uniforme

y-4

y1

y2

y3

y4

Page 34: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 34

IV.1 Cuantificación optimizada en pdf

Consideremos el error de cuantificación para una determinadafunción de densidad fX(x)

Para calcular los valores de y que minimizan esta función tenemos

que igualando a cero produce

σ2q =

MXi=1

Z bi

bi−1(x − yi)2fX(x)dx

∂σ2qyi

= −2Z bi

bi−1(x − yi)fX(x)dx

yi =

R bibi−1

xfX (x)dxR bibi−1

fX (x)dx

Page 35: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 35

De la misma forma, puede probarse fácilmente que

que igualando a cero produce

Max publicó en una revista como resolver estas ecuacionesen 1960, aunque la solución la había dado antes en un memorandum interno de Bell Labs, en 1957 Lloyd. De aquíque el algoritmo se llame de Lloyd-Max. Sin embargo, Lukaszewicz y Steinhaus parece que lo habían publicado con anterioridad en 1955 en una revista polaca.

bi =yi + yi+1

2

∂σ2q∂bi

=∂

∂bj

ÃZ bi

bi−1(x− yi)2fX(x)dx+

Z bi+1

bi

(x− yi+1)2fX(x)dx!

= (bi − yi)2fX(bi)− (bi − yi+1)2fX(bi)

Page 36: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 36

1. Inicializa los niveles de salida ym, m=1,…,M

2.Define los conjuntos de vecinos más próximos a dichosniveles

3. Calcula los nuevos niveles de salida como la media de los datos en cada región

4.Mientras mejoremos suficientemente el error de cuantificación volver al paso 2. En caso contrario parar.

El algoritmo de Max-Lloyd

Ωm = x : (x− ym)2 ≤ (x− yk)2 ∀k 6= m m = 1, . . . ,M

ym =

Rx∈Ωm xfX(x)dxRx∈Ωm fX(x)dx

Page 37: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 37

1. Inicializa los niveles de salida ym, m=1,…,M

2.Define los conjuntos de vecinos más próximos a dichosniveles

3. Calcula los nuevos niveles de salida como la media de los datos en cada región

4.Mientras mejoremos suficientemente el error de cuantificación volver al paso 2. En caso contrario parar.

El algoritmo de Max-Lloyd (discreto)

¿qué ocurre si sólo tenemos muestras x1,…,xL de la variable aletoria X con función de densidad fX(x)?

Ωm = xi : (xi − ym)2 ≤ (xi − yk)2 ∀k 6= m m = 1, . . . ,M

ym =1

Ωm

Xxi∈Ωm

xi

Page 38: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 38

Las gráficas siguientes muestran el resultado de utilizar el algoritmode Max-Lloyd para construir un cuantificador basado en 10.000 observaciones de una N(0,1) utilizando sqdtool en Matlab. Observalos diferentes tamaños de los intervalos de cuantificación.

Page 39: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 39

IV.2 Compansores de CuantificaciónOtra forma de abordar la cuantificación no uniforme esprimero procesar los datos de forma que se transformenen (se parezcan a) realizaciones de una distribuciónuniforme (compresor), utilizar después un cuantificadoruniforme y finalmente deshacer el cambio (expansor)

Esta sería la descripción gráfica del proceso para una fuenteque concentra su masa de probabilidad simétricamentealrededor del cero.

Compresor Cuantificador uniforme Expansor

Page 40: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 40

-4.0 -3.0 -2.0 -1.0 1.0 2.0 3.0 4.0

0.5

1.5

2.5

3.5

-3.5

-2.5

-1.5

-0.5Entrada

Salida

Supongamos que tenemosuna variable que toma valoresen el intervalo [-4,4] con másmasa de probabilidad cercadel cero y simétrica.

Podemos usar el cuantificadorque se muestra en la figurapero podemos tambiénprocesar los datos antes de usar dicho cuantificador.

Veamos el proceso

Page 41: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 41

Consideremos el siguiente compresorque pretende llevar nuestradistribución a una uniforme en [-4,4]. Observa que mueve masa de probabilidad de regiones próximas al cero a alejadas del cero

y su inversa

c−1(x) =

⎧⎨⎩ x/2 −1 ≤ x ≤ 13x/2− 2 x > 23x/2 + 2 x < −2

c(x) =

⎧⎨⎩ 2x −1 ≤ x ≤ 12x/3 + 4/3 x > 12x/3− 4/3 x < −1

Page 42: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 42

Supongamos que la fuente está acotada por un valor xmax, entonces cualquier cuantificador no uniforme puede representarse por un compansor.

Veamos como usando este hecho podemos desarrollar un cuantificador que es robusto a errores de ajuste.

Comencemos considerando cuantificadores con un número elevado de niveles.

Sea

Si el número de niveles es alto, el tamaño de cada intervalo de cuantificación será pequeño y podemos escribir dentro de cadaintervalo de cuantificación

fX (x) = fX(yk) si bk−1 ≤ x < bk

∆k = bk − bk−1

Page 43: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 43

Lo que nos permite escribir el error de cuantificación como

Una aproximación de la derivada de c(yk) puede obtenerse de la forma siguiente

Si c() lleva nuestra señal a unadistribución U[-xmax , xmax] entonces

que usado en la fórmula anterior produce

de donde

que para Δi pequeño produce

σ2q =x2max3M2

R xmax−xmax

fX(x)c02(x)dx

c0(yk) =c(bk)−c(bk−1)

∆k

∆k =2xmaxMc0(yk)

σ2q =PM

i=1 fX (yi)R bibi−1

(x− yi)2dx = 112

PMi=1 fX (yi)∆

3i

σ2q =1

12

MXi=1

fX(yi)

µ2xmaxMc0(yi)

¶3

=x2max3M2

MXi=1

fX(yi)

c02(yi)2xmaxMc0(yi)

=x2max3M2

MXi=1

fX(yi)

c02(yi)∆ic(bk)− c(bk−1) = 2xmax

M

Page 44: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 44

La fórmula anterior recibe el nombre de integral de Bennett.

Supongamos (para librarnos de la dependencia de la fuente) que

y por tanto la SNR es independiente de la pdf de entrada y vale

Utilizando la ecuación de definición de la derivada de c() obtenemos que

Como estos compresores tienen problemas alrededor del cero, se modifican para definir una función que es lineal alrededor del cero y logarítmica lejos de él. Tenemosentonces la siguientes leyes:

σ2q =x2max3M2

R xmax−xmax

fX(x)c02(x)dx =

α2

3M2σ2xc0(x) = xmaxα|x|

SNR = 10 logσ2xσ2q= 10 log10(3M

2) − 20 log10 α

entonces

c(x) = xmax + β log |x|xmax

Page 45: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 45

La ley μ de compresión

cuyo expansor es

c(x) = xmaxln(1+μ |x|

xmax)

ln(1+μ) sgn(x)

Esta ley con μ=255 se usa en telefonía en Estados Unidos y Japón.

La función compand de Matlab puede ser utilizadapara ver esta función(además de obviamentecomo compansor).

c−1(x) = xmaxμ

h(1 + μ)

|x|xmax − 1

isgn(x)

Page 46: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 46

Esta ley con A=87.5 se usaen numerosos paises.

La función compand de Matlab puede ser utilizadapara ver esta función(además de obviamentecomo compansor).

La ley A de compresión

cuyo descompresor es

c(x) =

(A|x|1+lnAsgn(x) 0 ≤ |x|

xmax≤ 1

A

xmax1+ln

A|x|xmax

1+lnA sgn(x) 1A ≤ |x|

A ≤ 1

c−1(x) =

( |x|A (1 + lnA) 0 ≤ |x|

xmax≤ 1

+ lnAxmaxA exp

h|x|xmax

(1 + lnA)− 1i

11+lnA ≤ |x|

A ≤ 1

Page 47: 07 cuantificacion escalar (1)

Rafael Molina Cuantificación Escalar 47

VI. BibliografíaK. Sayood, “Introduction to Data Compression”, Morgan and Kaufmann, 2005.