Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Optimización de un sistema de audio fingerprinting para la detección de anuncios en tiempo real

1,534 views

Published on

  • José Ramón,

    Mucahs gracias por tu respuesta, efectivamente he consultado mucho la Web e implementado algunos experimentos incluyen FFT , ventanas de Hann , división de bandas con espaciado logarítmico, etc, lo probe con algunos audios y solo consigo un BER 'estándar' de alrededor del 30% y no logro discriminar los aciertos , debo estar haciendo algo mal, efectivamenet estoy desempolvando mis libros de matemáticas, en todo caso cualquier referencia documental , ojalá hacia lo práctico, me seria de ayuda, especialmente en lo referente a los algoritmos, los lenguajes no importan , sino la lógica, con eso yo puedo traducir lo que sea a C .. muchas gracias de antemano por cualquier consejo que puedas darme , te mantendré informado de mis progresos ...
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Hola, Gerardo. Me alegro que te interese. Lamentablemente no tengo versión C del código de este proyecto. No obstante, puedes encontrar mucha información sobre FFT en Internet, incluyendo código C para su ejecución. Respecto a la división en subbandas, también puedes encontrar mucho en la web. Eso sí, te anticipo que no son conceptos fáciles de comprender y que requieren cierta habilidad matemática. Mantenme informado. Buena suerte.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • José Ramón,
    Muy interesante tu presentación, estoy interesado en el análisis de estas 'huellas digitales' de audio y veo que tienes claro cosas que no me son familiares como lo de la transformación FFT y la división en sub-bandas, tienes alguna documentación que me ayude a entender como funciona eso o mejor algún pseudo código qu eme pueda guiar, yo no uso math pero puedo entender C o pseudo código, Mucjas gracias de antemano por tu respuesta ...
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

Optimización de un sistema de audio fingerprinting para la detección de anuncios en tiempo real

  1. 1. Proyecto Fin de Carrera Optimización de un Sistema de Audio Fingerprinting para la detección de anuncios en tiempo realIngeniería de Telecomunicación Autor: Alejandro Álvarez Dujat des AllimesEscuela Superior de Ingenieros de Sevilla Tutor: Dr. José Ramón Cerquides Bueno
  2. 2. Índice Introducción Objetivo Sistema analizado Optimización  Fase 1: Modelado y decisión de umbral  Fase 2: Búsqueda de valores óptimos  Fase 3: Pruebas de robustez Conclusiones
  3. 3. Introducción SISTEMA DE AUDIO FINGERPRINTING Objetivo: detectar automáticamente objetos de audio en tiempo real Esquema general de funcionamiento:
  4. 4. Introducción Extracción de fingerprint Búsqueda y detección Datos delSeñal de Front - end Modelado de Semejanza objeto de audio Fingerprint Búsqueda en la Verificación de audio base de Datos deteccíon Examinar detectado Señal de audio Fingerprints + Fijar un umbral FRONT - END Histogramas Datos de los anuncios Pre-procesado Trayectorias Estadísticos A/D Conversión Tamaño de trama Conversión a mono Enventanado y Overlap GMM DFT Overlap Distancias pre-computadas VQPre-énfasis Normalización Transformación lineal Tipo Filtrado de candidatos no probables con una medida simple Normalización de energías entre bandas de Diferencia MCLTenventanado HMM Decorrelación Haar Índices invertidos a ficheros MFCC Filtro paso bandaExtracción de característica Diferenciación Reducción de candidatos con mejor resultado encontrado Codificador/Deco GSMespectral Monotonía Hadamard Cuantización datos ennivel: audio graves División de la base de de alto dos: tono, más probable y menos probable Descriptores Wavelet Pos-procesado
  5. 5. Introducción 2 procesos principales en un sistema de identificación:  Extracción de huellas  Algoritmos de búsqueda de semejanza Ventajas de utilizar “huellas digitales de audio” frente al uso de objetos de audio directamente:  Reducción de memoria requerida para almacenamiento  Comparación más eficiente  Búsquedas más rápidas en la base de datos
  6. 6. Objetivo Conseguir un sistema basado en huella de audio óptimo desde el punto de vista computacional Nos centramos en optimizar el algoritmo de extracción diseñado por Philips ¿Qué pretendemos conseguir con la optimización?  Reducir el tiempo necesario para extraer una huella de anuncio  Y reducir el tamaño de una huella manteniendo las probabilidades de error y el grado de robustez del sistema en unos valores aceptables
  7. 7. Sistema analizado  Características del Sistema Audio Fingerprinting analizado (diseñado por PHILIPS) Extracción de fingerprint Búsqueda y detección Datos del Señal de Front - end Modelado de Semejanza objeto de audio Fingerprint Búsqueda en la Verificación de audio base de Datos deteccíon Examinar detectado Señal de audio Conversión A/D: Diferencia entre Min(Distancia PCM-mono a 8 energías de bandas Fingerprints de Hamming kHz. y 8 FRONT - END + consecutivas en entre fingerprint bits/muestra Datos de los Pre-procesado tiempo y frecuencia anuncios calculado y los de la BD) Enventanado y Overlap Tiempo de captura: 3 seg. |FFT| Transformación lineal Si BER < 0.35, acepta detección Tamaño de trama: 0,37 seg. Extracción de característica Si BER > 0.35, rechaza detección Overlap: 31/32Energía de bandasespectrales Pos-procesado Ventana de Hanning Distancia de Hamming = BER ∙ Tamaño de fingerprint
  8. 8. Sistema analizado Factor de Overlap = 31/32 División en 33 bandas 1 si ED(n, m) 0 logarítmicamente entre F (n, m) 0 si ED(n, m) 0 300 Hz y 2 Khz ED(m, n) E (n, m) E (n, m 1) ( E (n 1, m) E (n 1, m 1)) FINGERPRINT
  9. 9. Sistema analizado Parámetros del algoritmo de extracción:  Tiempo de captura de la señal de audio  Tamaño de trama (en número de muestras)  Factor de Overlap  Número de bandas en que se divide cada trama  Frecuencia inferior para la división de bandas  Frecuencia superior para la división de bandas Para la optimización trabajaremos con los 4 primeros, pues las frecuencias inferior y superior no alteran el tamaño de la huella ni el tiempo de cómputo de esta.
  10. 10. Optimización Programación del sistema y pruebas sobre este en Matlab 7.0 Metodología: 3 fases  FASE 1: MODELADO Y DECISIÓN DE UMBRAL  FASE 2: BÚSQUEDA DE VALORES ÓPTIMOS  Con un parámetro  Con dos parámetros  FASE 3: PRUEBAS DE ROBUSTEZ
  11. 11. Optimización: Fase 1 Objetivos:  Modelar mediante funciones de densidad de probabilidad conocidas las probabilidades de error que están asociadas al funcionamiento de este sistema.  Fijar el umbral de decisión ¿Probabilidades de error?  Probabilidad de falsa alarma (Pf): probabilidad de que se produzca una detección de anuncio sin que debiera producirse  Probabilidad de no alarma (Pn): probabilidad de que no se produzca una detección de anuncio cuando sí debería producirse
  12. 12. Optimización: Fase 1 Funciones densidad de probabilidad de error (PDF): Pf Pn
  13. 13. Optimización: Fase 1 Pn → Dist. Weibull Pf → Dist. Normal Umbral de decisión (α): valor medio entre el valor de α a partir del cual Pn vale 0 y el valor de α a partir del cual Pf vale 0. α = 0,18 0,091 0,274
  14. 14. Optimización: Fase 2 Objetivo:  encontrar los valores de los parámetros del algoritmo de extracción que optimizan el sistema Menor tamaño de fingerprintMenor tiempo de cómputo Menor requerimiento de memoria Criterios:  Pn < 10-12  Pf < 10-12
  15. 15. Optimización: Fase 2 Algoritmo básico empleado en las diferentes pruebas implementadas en Matlab 7.0: Bucle Cálculo de los fingerprints de 15 anuncios (4 grabaciones son del mismo anuncio en diferentes momentos, anuncio de referencia)Definición de los Bucle en el que separámetros que no varía el parámetro o Cálculo del fingerprint de un trozo al azar dese variamos durante los parámetros duración “tiempo de captura” del anuncio delas simulaciones objetos de análisis referencia Cálculo de las distancias de Hamming entre este fingerprint y los de los 15 anuncios Cálculo de los parámetros de las funciones de probabilidad que modelan la Pn y la Pf Representación de la PDF experimental y, con α=0,18, cálculo de Pn y Pf
  16. 16. Optimización: Fase 2 Con un parámetro: variamos uno de los 4 parámetros del algoritmo que vamos a analizar y el resto dejamos sus valores de diseño Conclusión: valores óptimos para Parámetro estudiado Valores analizados cada parámetro: Número de muestras por trama 2960:1000:23960 12960 31/32, 24/32, 16/32, Factor de overlap 31/32 12/32, 8/32 Número de bandas espectrales 32, 16, 8 8 Tiempo de captura (segundos) 3, 2.5, 2, 1.5, 1, 0.5 1
  17. 17. Optimización: Fase 2 Pn = 0 Pf = 3.7217·10-138 Pn = 0 Pf = 2.1838·10-13 Con dos parámetros: partiendo del valor óptimo de T. Cómputo = 0,16 Nº Bits = 896 T. Cómputo = 0,44 Nº Bits = 7328 uno de los 3 parámetros que podemos modificar, modificamos los otros dos restantes empeorándolos desde sus 0valores 4.4363·10 Pn = Pf = óptimos hasta conseguir cumplir -12 Pn = 0 -13 Pf = 1.4516·10 T. Cómputo = 0,10 Nº Bits = 736 con los criterios sobre n T. Cómputo = 0,06 Nº Bits = P y P 640 f Pn = 0 Pf = 2.4342·10-12 T. Cómputo = 0,14 Nº Bits = 792 Conclusión: Valores que optimizan el sistema Nº de muestras por trama: 4960 Pn = 0 Factor de Overlap: 31/32 Pf = 4.4363∙10-12 Nº de bandas espectrales: 32 T. Cómputo = 0,0645 seg. Tiempo de captura: 1 segundo Nº Bits por fingerprint = 640
  18. 18. Optimización: Fase 3 Objetivo: Comprobar el comportamiento de nuestro sistema optimizado ante diferentes degradaciones en la señal de entrada Las pruebas se realizan sobre 4 anuncios diferentes, los cuales se degradan con el programa Adobe Audition 2.0, se calculan fingerprints de trozos de estos anuncios degradados y se buscan las mínimas distancias de Anuncio Hamming con los fingerprints Anuncio distorsionado de los anuncios originales Selección de un trozo al azar Algoritmo de Algoritmo de extraccíon extraccíon Comp. BER
  19. 19. Optimización: Fase 3 En cuanto a la relación señal-ruido:  El sistema original es robusto a partir de SNR > 10 dB  El sistema optimizado es robusto a partir de SNR > 11 dB Media de la BER Desviación estandar de la BER
  20. 20. Optimización: Fase 3 Bacardi Limón Viajes Marsans Carrefour La ONCE Procesado Media Desv. Media Desv. Media Desv. Media Desv.MP3 con VBR nivel 10 0.0419 0.0130 0.0420 0.0125 0.0403 0.0120 0.0408 0.0127MP3 con VBR nivel 50 0.0407 0.0135 0.0401 0.0123 0.0405 0.0120 0.0409 0.0128MP3 con VBR nivel 100 0.0411 0.0134 0.0398 0.0125 0.0405 0.0119 0.0399 0.0129 WMA con CBR 5 Kbps 0.0416 0.0137 0.0411 0.0124 0.0403 0.0118 0.0413 0.0128 WMA con CBR 6 Kbps 0.0402 0.0123 0.0420 0.0125 0.0403 0.0120 0.0408 0.0127 Filtrado pasa todo 0.0708 0.0184 0.0633 0.0146 0.0635 0.0157 0.0615 0.0153 Comp. Amplitud 0.1166 0.0377 0.1115 0.0285 0.1049 0.0278 0.1343 0.0373 Ecualización 0.0630 0.0179 0.0582 0.0134 0.0577 0.0131 0.0570 0.0147 Filtrado paso banda 0.0536 0.0299 0.0491 0.0213 0.0496 0.0222 0.0566 0.0295 Esc. Tiempo -2% 0.0625 0.0209 0.0609 0.0174 0.0627 0.0229 0.0412 0.0133 Esc. Tiempo +2% 0.0675 0.0242 0.0752 0.0193 0.0651 0.0247 0.0657 0.0215 Esc. Tiempo -4% 0.0744 0.0221 0.0938 0.0226 0.0776 0.0234 0.0799 0.0233 Esc. Tiempo +4% 0.0796 0.0256 0.0886 0.0247 0.0788 0.0266 0.0814 0.0308 Veloc. Lineal -1% 0.1421 0.0313 0.1447 0.0328 0.1404 0.0319 0.1595 0.0401 Veloc. Lineal +1% 0.1388 0.0347 0.1415 0.0347 0.1218 0.0238 0.1507 0.0351 Veloc. Lineal -4% 0.3466 0.0243 0.3618 0.0278 0.3429 0.0311 0.3556 0.0256 Veloc. Lineal +4% 0.3430 0.0329 0.3608 0.0224 0.3386 0.0318 0.3492 0.0287
  21. 21. Conclusiones Mejora en el sistema original:  Reducción del tiempo de cómputo de un fingerprint: unas 7 veces más rápido que el sistema con el algoritmo original  Reducción de requerimiento de memoria en un 87%: Tamaño de huella: 229x32 bits a 20x32 bits Mantenemos el grado de robustez más o menos en los mismos valores con respecto al sistema original
  22. 22. Gracias por su atención¿Alguna pregunta?
  23. 23. Proyecto Fin de Carrera Optimización de un Sistema de Audio Fingerprinting para la detección de anuncios en tiempo realIngeniería de Telecomunicación Autor: Alejandro Álvarez Dujat des AllimesEscuela Superior de Ingenieros de Sevilla Tutor: Dr. José Ramón Cerquides Bueno

×