Title: Complementos de Procesado de Seales y Comunicaciones
1Complementos de Procesado de Señales y
Comunicaciones
- Curso de Doctorado del programa
- Tecnologías Multimedia
2Organización del curso
- 3 partes
- Cuantización
- Ángel de la Torre (14 Enero Sem. 17-21h)
- Transformadas / Análisis multirresolución
- Antonio Rubio (21 Enero G-14 17-20h)
- Modulación
- Carmen Benítez (28 Enero G-14 17-20h)
3Organización 1ª parte
- La cuantización en procesado de señales y
comunicaciones. (Lunes) - Cuantización escalar. (Lunes)
- Cuantización vectorial. (Martes)
- Presentación de trabajos. (Viernes)
- ( 1/2 hora y/o memoria)
- Transparencias en
- http//ceres.ugr.es/atv/Documents/documents.html
- E-mail atv_at_ugr.es
4La 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
5Adquisición de señales
- Muestreo
- Discretizar el tiempo
- x(t) gt x(n)
- Cuantización
- Discretizar la variable
- x(n) gt x(n)
- Codificación
6Circuitos para adquisición de señales
- Amplificación y Filtrado
- Muestreo
- Retención
- Cuantización
- Codificación
- Características circuitos de adquisición de
señales - Número de bits B bits gt 2B estados
- Rango de entrada Vref
- Tiempo de conversión (limita freq. muestreo)
7Conversor de comparadores en paralelo
- 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
8Conversor de contador
- Más barato
- Sólo 1 comparador
- Mucho más lento
- Requiere 2N pulsos de reloj para cuantizar
9Diagrama de bloques de un sistema adquisición de
datos
x(t)
x(n)
x(n)
bits
Almacenamiento DSP Transm. Digital Etc.
m
Q
Codif.
Representación digital de la señal x(t)
- 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)
10Representació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
11Cuantizació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
12Cuantización uniforme
- Todos los cuantos son iguales D
- B bits gt 2B niveles en Xmax,Xmax
- Xmax 2B-1 D
100
011
010
x
001
D
000
x
13Cuantizador de media huella
Cuantizador de media contrahuella
x
x
x
x
14Ruido de cuantización
Relación señal ruido
Estimación de la SNR (señal / distribución)
15Cálculo del ruido de cuantización (ejemplo)
Saturación
Relación señal ruido
16Cálculo del ruido de cuantización (ejemplo)
- B 8 bits gt SNR 40.8 dB
- B 12 bits gt SNR 64.8 dB
- B 16 bits gt SNR 88.8 dB
- En procesamiento de audio
- 80 dB......... HiFi
- 60 dB......... Equipos música gama media
- 40 dB......... Ruido se aprecia
- 20 dB......... Teléfono
- lt10 dB....... Molesta / dificultades para
entender voz
17Cuantización vs. Saturación
- Si Xmax gtgt 4 sx
- Poco ruido de saturación
- Mucho ruido de cuantización
- Si Xmax ltlt 4 sx
- 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
18Ejercicio 1
- a) En el ejemplo anterior, calcular SNR asociada
al ruido de saturación. - p(es)
- se2
- SNR
- b) Relación entre Xmax y sx para cuantización
óptima. - SNRsat SNRQ
- (depende de B)
19Ejercicio 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.
20Compresió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 D diferentes D /x ? cte
y
x
21Compresión logarítmica
y
y
x
x
y
x
log
Q
log
Codif.
Decod.
sgn
sgn(x)
sgn(x)
22Otras leyes de compresión ley m ley A
y
y
x
x
y
x
F
Q
F-1
Codif.
Decod.
sgn
sgn(x)
sgn(x)
23(No Transcript)
24(No Transcript)
25Ejercicio 3
- Repetir el ejercicio 2 para compresión ley-m con
m255.
Ejercicio 4
- Demostrar la expresión de la SNR para ley-m.
26Cuantización adaptable
- Interesa D grande para evitar saturación
- Interesa D pequeña para reducir eq
- Señales no estacionaria
- sx2 varía con el tiempo
Solución Adaptar G ó D a la varianza de la
señal
27Adaptación de D o de G
- Estimación local de sx2
- Mediante filtro pasa-baja aplicado sobre x2(n)
- Problemas
- Causalidad
- Retardo
- Tiempo de estabilización
- Como sx2 varía lentamente, se calcula y transmite
únicamente cada N muestras
28Adaptación hacia adelante
bits
x(n)
x(n)
x(n)
Q
Codificador
Decodif.
Adapt. D
x(n)
y(n)
bits
x(n)
y(n)
y(n)
Q
Codif.
Decodif.
Adapt. G
29Adaptación hacia atrás
bits
x(n)
x(n)
x(n)
Q
Codificador
Decodif.
Adapt. D
Adapt. D
x(n)
y(n)
bits
x(n)
y(n)
y(n)
Q
Codif.
Decodif.
Adapt. G
Adapt. G
30Cuantizació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)
31Ejercicio 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.
32Cuantizació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))
33Cuantización diferencial
x(n)
d(n)
bits
x(n)
d(n)
d(n)
Q
Codif.
Decodif.
x(n)
predic.
predic.
p(x(n))
p(x(n))
34Predicción lineal (LPC)
- Predicción combinación lineal de p muestras
anteriores - Coeficientes se determinan para maximizar la
ganancia de predicción (minimizar sd2) - Sistema de p ecuaciones con p incógnitas
35Predicción lineal de orden 1
- Sólo hay que calcular 1 coef. predicción lineal
- Si r(1) próximo a 1, mucha ganancia de predicción
- Si r(1) ltlt 1, poca ganancia de predicción
- Si r(1) lt 0 gt Gp lt 1
36Dó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
37Ejercicio 7
- Repetir el ejercicio 2 para cuantización
diferencial con predicción lineal de orden 1. - Usar una señal con fmaxltfs/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
38Cuantizació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
39Cuantizació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
40Cuantización escalar / vectorial
41Cuantización escalar / vectorial
42Cuantización escalar / vectorial
36 centroides
28 centroides
VQ reduce el error de cuantización
43Diagrama VQ
bits
x(n)
VQ l
c
Codif.
Decod. l
c
- Cada vector se sustituye por el centroide más
próximo - Se transmite el código del centroide
- Diccionario VQ
- Error de cuantización
010
000
001
100
x1
x2
011
44Proceso 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 se2 sea mínimo - ENTRENAMIENTO DEL DICCIONARIO
45Diseñ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,
46(No Transcript)
47(No Transcript)
48Ejercicio 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
49Capacidad de generalización
Vectores no de entrenamiento
Distorsión promedio
Vectores de entrenamiento
Núm vectores entrenamiento
50Ejercicio 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.
51Dimensionalidad 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
52Ejercicio 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)
53Entrenamiento 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
54La 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
55Ejercicio 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
56Aplicaciones VQ
- Compresión y codificación de voz
- Compresión de imágenes
- Reconocimiento de formas
57VQ en Reconocimiento de formas
Reconocimiento de formas
ClasesObjetos representados por
vectoresConjunto de vectores de entrenamiento
Planteamiento
58Marco estadístico
Clase reconocidaRegla de BayesDeterminación
clase reconocida
59Probabilidad a priori de la clase
Densidad de probabilidad de que la clase genere
el vector
MODELO DE GENERACIÓN DE VECTORESVQ se utiliza
para construir el modelo
60Construcción pdf
1.- Cálculo de centroides k-medias2.- Cada
centroide media, matriz de covarianza y Mk
vectores asociados3.- Construcción pdf para la
nube de vectores asociada a cada centroide
(usualmente una Gaussiana)
61Construcción de la Gaussiana
62Construcción pdf
4.- Probabilidad a priori de cada Gaussiana5.-
Probabilidad de que la clase genere el vector
observado
Aproximación
63Reconocimiento 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
64Ejercicio 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.
65Clasificació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
66Criterios 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?
67Entrenamiento discriminativo
Elementos a entrenarEstimació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.
68Formulación
Función de costeFunción de coste para cada
elementoMedida del errorFunción
discriminante
69Formulación
70Problemas 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