atv 2003 – dpto. electrónica y tecn. computadores - ugr 1 complementos de procesado de señales y...
TRANSCRIPT
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR1
Complementos de Procesado de Señales y Comunicaciones
Curso de Doctorado del programa:
Tecnologías Multimedia
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR2
Organización del curso:
• 4 partes:– Transformadas / Análisis multirresolución:
• Antonio Rubio
– Cuantización: • Ángel de la Torre:
– Viernes 16 Enero 16-20 aula G-14– Lunes 19 Enero 16-20 aula G-14– Martes 20 Enero 16-20 aula G-14 ???
– Modulación:• Carmen Benítez (Viernes 23 Enero 16 horas G-14)
– Tutorial de MATLAB:• Javier Ramírez Pérez de Inestrosa
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR3
Organización 2ª parte:
• La cuantización en procesado de señales y comunicaciones. (Viernes)
• Cuantización escalar. (Viernes-Lunes)• Cuantización vectorial. (Lunes)
• Presentación de trabajos. (Lunes-Martes)( 1/2 hora y/o memoria)
Transparencias en:http://www.ugr.es/~atvE-mail: [email protected]
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR4
La cuantización en procesado de señales y comunicaciones
• La cuantización para adquisición de señales:– Representación digital de señales:
• Muestreo• Cuantización• Codificación
• Para procesamiento digital de señales:– Compresión de datos– Transmisión de datos– Reconocimiento de formas
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR5
• Muestreo:– Discretizar el
tiempo:x(t) => x(n)
• Cuantización:– Discretizar la
variable:x(n) => x(n)
• Codificación
Adquisición de señales
0 0.2 0.4 0.6 0.8 1
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
^
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR6
Circuitos para adquisición de señales• Amplificación y
Filtrado• Muestreo• Retención• Cuantización• Codificación
-+
-+ A/D
Cod
if.
vref
Rl
• Características circuitos de adquisición de señales:• Número de bits: B bits => 2B estados
• Rango de entrada: Vref
• Tiempo de conversión (limita freq. muestreo)
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR7
Conversor de comparadores en paralelo
-+
-+
Con
vers
or d
ecó
digo
s
vref
-+
-+
v i• Diseño simple• Rápido• Caro:
– Para N bits, 2N comparadores
• Fácil determinar el nivel de referencia
• Fácil establecer valores de los cuantos
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR8
Conversor de contador
-+
Con
vers
or d
ecó
digo
s
v i AND contador
Rl
Control (Ts)
reset
D/A
• Más barato:– Sólo 1 comparador
• Mucho más lento:– Requiere 2N pulsos
de reloj para cuantizar
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR9
Diagrama de bloques de un sistema adquisición de datos
• Muestreo: discretización en el tiempo: no hay pérdida de información (T. Muestreo)
• Cuantización: discretización en amplitud (pérdida de información)
Q Codif.AlmacenamientoDSPTransm. DigitalEtc.
x(t) x(n) x(n)^ bits
Representación digitalde la señal x(t)
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR10
Representación digital de señales
• Precisión finita: – Concepto de ruido de cuantización.
• Velocidad de transmisión:– Fs B (bits por segundo) (bit-rate)
• Compromiso entre ruido de cuantización y bit-rate– Precisión – recursos DSP / canal
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR11
Cuantización escalar
• Señales muestreadas unidimensionales:x(n) F(n,m) {F1(n,m),F2(n,m),F3(n,m)}
• Cuantización instantánea:– Uniforme– Compresión instantánea
• Cuantización adaptable:– Hacia adelante– Hacia atrás
• Cuantización diferencial
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR12
Cuantización uniforme
• Todos los cuantos son iguales: • B bits => 2B niveles en [–Xmax,Xmax]
• Xmax= 2B-1
x
x
000
001
011
010
100
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR13
x
x
Cuantizador demedia huella
Cuantizador demedia contrahuella
x
x
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR14
Ruido de cuantización
Relación señal ruido
Estimación de la SNR (señal / distribución)
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR15
Cálculo del ruido de cuantización (ejemplo)
Saturación:
Relación señal ruido:
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR16
Cálculo del ruido de cuantización (ejemplo)
B = 8 bits => SNR = 40.8 dBB = 12 bits => SNR = 64.8 dBB = 16 bits => SNR = 88.8 dB
En procesamiento de audio:80 dB......... HiFi60 dB......... Equipos música gama media40 dB......... Ruido se aprecia20 dB......... Teléfono<10 dB....... Molesta / dificultades para entender voz
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR17
Cuantización vs. Saturación
• Si Xmax >> 4 x:– Poco ruido de saturación– Mucho ruido de cuantización
• Si Xmax << 4 x:– Mucho ruido de saturación– Poco ruido de cuantización
• Ajuste de nivel de entrada crítico (ganancia de entrada)
p(x)
Xmax-Xmax
p(x)
Xmax-Xmax
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR18
Ejercicio 1
• a) En el ejemplo anterior, calcular SNR asociada al ruido de saturación.– p(es)
– e2
– SNR
• b) Relación entre Xmax y x para cuantización óptima.– SNRsat = SNRQ
– (depende de B)
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR19
Ejercicio 2
• A partir de una señal de voz muestreada, cuantizarla fijando varios valores de Xmax y B:
– a) Estimar la SNRsat y la SNRQ para cada Xmax, B
– b) Buscar el valor óptimo Xmax para 6 bits– c) Determinar el número de bits mínimo para una
SNR de 12 dB.
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR20
Compresión instantánea• Problema de Q-uniforme:
– Hay que preocuparse del nivel de la señal
• Objetivo compresión instantánea:– SNR independiente de nivel de señal
• Cuantos diferentes: /x cte≃
x
y
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR21
Compresión logarítmica
log Q
sgn Cod
if.
Dec
od.
logy
sgn(x)
y xx y |x|^
sgn(x)
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR22
Otras leyes de compresión: ley ley A
F Q
sgn Cod
if.
Dec
od.
F-1
y
sgn(x)
y xx y |x|^
sgn(x)
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR23
0 0.2 0.4 0.6 0.8 10
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
=0
=5
=20
=255
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR24
0 0.2 0.4 0.6 0.8 10
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
A=2
A=5
A=20
A=87.6
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR25
Ejercicio 3
• Repetir el ejercicio 2 para compresión ley- con =255.
Ejercicio 4
• Demostrar la expresión de la SNR para ley-.
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR26
Cuantización adaptable• Interesa grande para evitar saturación
• Interesa pequeña para reducir eq
• Señales no estacionaria:x
2 varía con el tiempo
Solución:Adaptar G ó a la
varianza de la señal
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR27
Adaptación de o de G
• Estimación local de x2 :
– Mediante filtro pasa-baja aplicado sobre x2(n):
• Problemas: – Causalidad– Retardo– Tiempo de estabilización
• Como x2 varía lentamente, se calcula y transmite
únicamente cada N muestras
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR28
Adaptación hacia adelante
Q Codificador
x(n) x(n)^ bits
Adapt.
Decodif.
x’(n)
Q Codif.
x(n) y(n)^ bits
Adapt. G
Decodif.
x’(n)y(n) y’(n)
÷
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR29
Adaptación hacia atrás
Q Codificador
x(n) x(n)^ bits
Adapt.
Decodif.
x’(n)
Q Codif.
x(n) y(n)^ bits
Adapt. G
Decodif.
x’(n)y(n) y’(n)
÷
Adapt.
Adapt. G
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR30
Cuantización adaptable: limitaciones
• Útil si la varianza varía lentamente• Adaptación hacia delante:
– Requiere precisión en la transmisión del cuanto o de la ganancia
– ¿Qué ocurre si la varianza cambia demasiado rápidamente?
• Adaptación hacia atrás:– Sensible a errores de transmisión (el
resultado depende de toda la historia del sistema)
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR31
Ejercicio 5
• Repetir el ejercicio 2 para cuantización adaptable hacia adelante. Cambiar la ventana utilizada para la estimación de la varianza. Hacerlo con señales cuya varianza cambia poco y cuya varianza cambia mucho.
Ejercicio 6
• Repetir el ejercicio 2 para cuantización adaptable hacia atrás. Introducir errores en el código transmitido y determinar la SNR de la señal en función del porcentaje de bits cambiados.
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR32
Cuantización diferencial
• Si la señal varía lentamente, la varianza de [x(n)-x(n-1)] es mucho menor que la de x(n)
• Q diferencial: – Cuantizaión de x(n)-x(n-1)
• Q predictiva:– Predicción de x(n): p(x(n))– Cuantización del “error de predicción” d(n):
d(n)=x(n)-p(x(n))
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR33
Cuantización diferencial
Q Codif.
x(n) d(n)^ bits
predic.
Decodif.
x’(n)d(n) d’(n)
x(n)
p(x(n))predic.
p(x(n))
Ganancia de predicción:
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR34
Predicción lineal (LPC)• Predicción: combinación lineal de p muestras
anteriores• Coeficientes: se determinan para maximizar la
ganancia de predicción (minimizar d2)
• Sistema de p ecuaciones con p incógnitas
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR35
Predicción lineal de orden 1
• Sólo hay que calcular 1 coef. predicción lineal:
• Si (1) próximo a 1, mucha ganancia de predicción
• Si (1) << 1, poca ganancia de predicción
• Si (1) < 0 => Gp < 1
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR36
¿Dónde está el truco?
• Compresión:
reducir la cantidad de datos sin perder información
• Aprovechar redundancias:
Si se puede obtener una Gp muy alta es porque la fs es muy alta
• Bit – rate para una determinada SNR
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR37
Ejercicio 7
• Repetir el ejercicio 2 para cuantización diferencial con predicción lineal de orden 1.– Usar una señal con fmax<fs/8
– Calcular el bit-rate para una SNR de 12 dB
– Sub-muestrear la señal dividiendo por 8 fs y volver a construir el cuantizador
– Recalcular el bit-rate para SNR de 12 dB
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR38
Cuantización de vectores
• Señales unidimensionales:A(n) A(n,m)
• Señales vectoriales: {A1(n,m),A2(n,m),A3(n,m)}
• Eficiencia cuantización: aprovechar los estados– Cuantización uniforme: ajuste de nivel– Compresión instantánea– Cuantización adaptable– Cuantización diferencial
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR39
Cuantización vectorial (VQ)
• Correlaciones temporales:– Cuantización diferencial (predicción)
• Correlaciones entre componentes de señal vectorial:– Cuantización vectorial (VQ)
• La cuantización vectorial permite aprovechar las correlaciones entre componentes
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR42
Cuantización escalar / vectorial
VQ reduce el error de cuantización
36 centroides 28 centroides
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR43
Diagrama VQ
VQ
x(n) cCodif.
bitsDecod.
c
000 010
001
011
100x1
x2
• Cada vector se sustituye por el centroide más próximo
• Se transmite el código del centroide
• Diccionario VQ• Error de cuantización
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR44
Proceso de cuantización• El espacio vectorial se divide en K regiones disjuntas• Un vector se sustituye por el vector característico
asociado a su región (centroide)• Se transmite el código que identifica al centroide• El receptor sustituye el código por el centroide
• Regiones definidas por centroides y una DISTANCIA (usualmente la distancia euclídea)
• Diseño diccionario VQ: decidir dónde se ponen los centroides de modo que e
2 sea mínimo:
ENTRENAMIENTO DEL DICCIONARIO
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR45
Diseño diccionario VQ• Algoritmo k-medias (k-means) o algoritmo LBG
(Linde-Buzo-Gray 1980):
“An algorithm for Vector Quantizer Design”Y. Linde, A. Buzo, R. Gray, IEEE Trans. on Communications, Vol 28,
num. 1, Jan-1980 pp 84-95
• Algoritmo: para 2B centroides:– Inicializacion: centroide 1: media– Bipartición con perturbación– Clasificación y reestimación de centroides iterativa– Cuando converge, si no tenemos los 2B centroides,
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR48
Ejercicio 8
• Construir un diccionario VQ para los valores RGB de una imagen, mediante algoritmo k-medias:– Escribir distorsión para cada iteración, para cada
valor del número de centroides. – Dibujar la imagen cuantizada con 4,8 y 16
centroides.– Determinar la SNR y el número de bits necesario
para codificar la imagen
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR49
Capacidad de generalización
Núm vectores entrenamiento
Dis
tors
ión
prom
edio Vectores no deentrenamiento
Vectores deentrenamiento
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR50
Ejercicio 9
• Verificar para qué número de vectores de entrenamiento el algoritmo k-medias generaliza al cuantizar los valores RGB de una imagen:– Separar los pixels de la imagen en pixels para
“entrenamiento” y pixels para “test” de forma aleatoria.
– Entrenar con parte de los pixels de entrenamiento y analizar la distorsión promedio de entrenamiento y de test.
– Repetir los calculos para cuantización con 4,8 y 16 centroides.
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR51
Dimensionalidad en VQ
• 2 dimensiones: hipercubo con 22 esquinas (4)• 20 dimensiones: hipercubo con 220 esquinas
(1.048.576)
• Problemas: – La distancia entre cada vector y el más próximo es
grande– Es difícil la generalización– Hacen falta muchos vectores de entrenamiento
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR52
Ejercicio 10
• Generar un conjunto de vectores aleatorios de dimensión N. Distribuirlos en dos particiones (entrenamiento y test):– Calcular la relación entre la varianza y la “distancia
promedio al vecino más próximo”, en función del número de dimensiones.
– Calcular la capacidad de generalizar en función del número de dimensiones (relación entre distorsión de entrenamiento y distorsión de test)
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR53
Entrenamiento adecuado
• Factores involucrados:– Número de dimensiones– Número de vectores de entrenamiento– Número de centroides
• Consecuencias de mal entrenamiento:– En codificación– En compresión– En reconocimiento de formas
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR54
La distancia
• Usualmente se usa distancia euclídea:– Sensible a transformaciones no ortonormales:
• Compresión de un eje
• Transformaciones no lineales
• El algoritmo k-medias trata de minimizar la distancia entre vectores de entrenamiento y los centroides más próximos
• Importancia de esto en:– codificación– reconocimiento
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR55
Ejercicio 11
• Cuantizar los niveles RGB de una imagen.• Comprimir la componente R en la definición
de la distancia y volver a cuantizar.• Comparar ambos resultados
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR56
Aplicaciones VQ
• Compresión y codificación de voz• Compresión de imágenes• Reconocimiento de formas
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR57
VQ en Reconocimiento de formas
Planteamiento:
Reconocimiento de formas:
Clases
Objetos representados por vectores
Conjunto de vectores de entrenamiento
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR58
Marco estadístico
Clase reconocida
Regla de Bayes
Determinación clase reconocida
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR59
Probabilidad a priori de la clase
Densidad de probabilidad de que la clase genere el vector
MODELO DE GENERACIÓN DE VECTORES
VQ se utiliza para construir el modelo
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR60
Construcción pdf
1.- Cálculo de centroides k-medias
2.- Cada centroide: media, matriz de covarianza y Mk vectores asociados
3.- Construcción pdf para la nube de vectores asociada a cada centroide: (usualmente una Gaussiana)
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR62
Construcción pdf
4.- Probabilidad a priori de cada Gaussiana
5.- Probabilidad de que la clase genere el vector observado
Aproximación:
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR63
Reconocimiento patrones: Resumen • Para cada clase:
– Probabilidad a priori de la clase
– Centroides con VQ
– Para cada centroide:
• pdf asociada a cada centroide
• probabilidad a priori del centroide
– pdf de la clase
• Comparación entre clases
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR64
Ejercicio 12
• Leer una imagen con un “paisaje”.• Con un trozo de “cielo” y un trozo de “no-cielo”
entrenar modelos de “cielo” y de “no cielo” utilizando como vector de características los valores RGB.
• Clasificar los pixels de la imagen a partir de los modelos de “cielo” y “no-cielo” anteriores.
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR65
Clasificación y VQ
• Un clasificador separa el espacío de representación en tantas regiones como clases
• Superficies de separación más complejas que en VQ:– Clasificador: definidas a partir de “probabilidad
máxima”– VQ: definidas con criterio “distancia mínima”
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR66
Criterios de entrenamiento
• Maximum Likelihood (ML)– La pdf de cada clase se construye de modo que
represente de forma óptima los vectores de esta clase (mínima distorsión promedio)
• Minimum Classification Error (MCE)– La pdf de cada clase se construye de modo que
se minimice el error de clasificación de vectores de entrenamiento.
• ¿Cuándo interesa ML ó MCE?
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR67
Entrenamiento discriminativo
Elementos a entrenar
Estimación iterativa de los elementos a entrenar para minimizar una “función de coste”
Cuando se entrenan discriminativamente los centroides de un clasificador, éstos se mueven, de modo que las fronteras entre las clases se desplazan hasta minimizar el error de entrenamiento.
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR68
Formulación
Función de coste
Función de coste para cada elemento
Medida del error
Función discriminante
ATV 2003 – Dpto. Electrónica y Tecn. Computadores - UGR70
Problemas del entrenamiento discriminativo
• Alcanza mínimos locales
– El algoritmo no garantiza una solución
globalmente óptima
– (Combinación con algoritmos genéticos)
• Problema de sobreentrenamiento
– Excesivamente adaptado a datos de
entrenamiento: pierde capacidad de
generalización