Sintetizador de Partituras Musicales para Coro (Presentaciones)

Post on 03-Aug-2015

128 views 1 download

description

Presentaciones asociadas al desarrollo de un sistema de síntesis en voz sonora de partituras corales para el "II Desafío Tecnológico" que organiza el DTSTC de la Universidad de Granada.

Transcript of Sintetizador de Partituras Musicales para Coro (Presentaciones)

2º Desafío TecnológicoDepartamento de Teoría de la Señal Telemática y Com unicaciones

"Sintetizador de partituras musicales para coro"I4

Grupo I4Iván Fernández Bermejo Iván López Espejo Santiago Prieto Calero

1.Introducción

� Objetivo: diseñar e implementar un buen sistema para la sintetización de partituras musicales para coro de la forma más realista posible

I4

de la forma más realista posible� Problema: gran espectro de soluciones, diferentes técnicas, etc

� Solución: experimentación con varias técnicas: adquisición de datos, síntesis de voz, etc

2. Técnicas de Desarrollo

� 2.1 Extracción de la Información Musical:� Fichero de entrada:

� Partitura en formato imagen � Fichero en formato MIDI

� 2.2 Sintetización sin Letra:

I4

� 2.2 Sintetización sin Letra:� Usando wavetables

� 2.3 Sintetización con Letra:� Síntesis LPC � HMMs (modelos ocultos de Márkov)

� 2.4 Modelado de Dinámica:� Modelo ADSR

2.1 Extracción de la Información Musical

� 2.1.1 Archivo en formato MIDI� Herramienta: MidiToolbox para Matlab� Extracción de características: notas, duración, número de canales, comienzo

I4

duración, número de canales, comienzo de las notas, velocidad…

2.1 Extracción de la Información Musical

� 2.1.2 Archivo en formato imagen� Objetivo: Extracción de características de una partitura: notas y letra

� Diseño e implementación de un sistema

I4

� Diseño e implementación de un sistema OMR (Optical Music Recognition) para la lectura de partituras.

2.2 Sintetización de Voz sin Letra

� Objetivo: generar las diferentes líneas melódicas del coro mediante wavetables

� Elaboración de una base de datos:� Matriz de dos dimensiones, correspondiéndose

I4

� Matriz de dos dimensiones, correspondiéndose una de ellas al timbre y la otra al pitch

� Posibilidad de registrar voces de diferentes cantantes (según el sexo, la tesitura, etc)

� Síntesis de voz: concatenación de unidades básicas de voz real recogidas en la base de datos

2. Técnicas de Desarrollo

� 2.1 Extracción de la Información Musical:� Fichero de entrada:

� Partitura en formato imagen � Fichero en formato MIDI)

� 2.2 Sintetización sin Letra:� 2.2 Sintetización sin Letra:� Usando wavetables

� 2.3 Sintetización con Letra:� Síntesis LPC � HMMs (modelos ocultos de Márkov)

� 2.4 Modelado de Dinámica:� Modelo ADSR

2.3 Sintetización de Voz con Letra

� 2.3.1 Síntesis LPC� La señal excitación variable a partir de la información de altura tonal extraída (pitch)

� Variación de los coeficientes del filtro todo-polos LPC para modelar el tracto vocal en

I4

polos LPC para modelar el tracto vocal en función de la letra y del tiempo

2.3 Sintetización de Voz con Letra

� 2.3.2 HMM (Modelos Ocultos de Márkov)� Buena técnica para reconocimiento de voz

I4

voz� Últimamente usada para la síntesis de voz a partir de texto

� Creación de un bloque de modulación de pitch para incluir la información relativa a la altura tonal

2.4 Modelado de Dinámica

� Variación en la intensidad sonora de cada voz (ponderación de la forma de onda en el dominio del tiempo)

� Esquema ADSR

I4

� Esquema ADSR (Attack/Decay/Sustain/Release)

3. Conclusiones Finales

� Sintetización aditiva de cada una de las líneas melódicas que componen el coro

� Modelar las cuatro cualidades del sonido de la forma más fidedigna posible (timbre, altura, intensidad y duración)

I4

(timbre, altura, intensidad y duración)� Emplear psicoacústica para evitar el solapamiento de voces

� Resultado: fichero de audio con la pieza coral sintetizada de la forma más realista posible

Gracias

Grupo I4

I4

Grupo I4

2º Desafío TecnológicoDepartamento de Teoría de la Señal Telemática y Com unicaciones

"Sintetizador de partituras musicales para coro"I4

Grupo I4

Iván Fernández Bermejo Iván López Espejo Santiago Prieto Calero

Sumario

� Introducción

� Procesamiento MIDI y de audio

� OMR y síntesis de partituras

I4

� Interfaz de usuario

� Conclusiones y trabajo futuro

� Referencias

Introducción

� Extracción de la información musical:� Fichero de entrada:

� Partitura en formato imagen � Fichero en formato MIDI

Síntesis sin letra:

I4

� Síntesis sin letra:� Usando wavetables

� Modelado de dinámica:� Modelo ADSR

Procesamiento MIDI y de audio

� Uso de las voces corales de Colossus

� 32GB de sonidos reales

Compatible con GM

I4

� Compatible con GM

� UnNKS � NKS a WAV

Procesamiento MIDI y de audioI4

� El problemas se divide� En canales

� En notas� En notas

� Se atacan por separados

� Uniéndose los resultados en una solución única

Procesamiento MIDI y de audioI4

� Filtrado ADSR lineal para cada nota

� Mejoras� Incorporación de un modelo más � Incorporación de un modelo más realista

Procesamiento MIDI y de audio

� Filtrado de acústica� Suavizado de interfases

� Correlación de las líneas melódicas

� Emulación de la acústica del recinto

I4

� Emulación de la acústica del recinto

� Obtención de respuestas con Adobe Audition

Procesamiento MIDI y de audio

� Implementación en el dominio de la frecuencia� Zero-padding de h(n)

I4

OMR y síntesis de partituras

� En la actualidad sólo partituras muy sencillas

I4

OMR y síntesis de partituras

� Preprocesamiento de la imagen� Conversión a niveles de gris

� Inversión

� Binarización

I4

� Binarización

� Corrección de la inclinación� Transformada de Hough

OMR y síntesis de partituras

� Segmentación de pentagramas� Mediante la proyección horizontal de histograma

� Segmentación de símbolos

I4

� Segmentación de símbolos� Mediante la proyección vertical de histograma

OMR y síntesis de partituras0

50

100

150

200

250

I4

300

350

400

450

5000 2 4 6 8 10 12 14 16 18

x 104

0 100 200 300 400 500 600 700 800 9000

0.5

1

1.5

2

2.5

3x 10

4

OMR y síntesis de partituras

� Fase de clasificación de símbolo� Sustracción de la componente DC

� Normalización de la proyección de histograma segmentada

I4

histograma segmentada

� 24 coeficientes del módulo de la FFT

� Comparación con los patrones de la base de datos � Seleccionar el de mínima distancia euclídea

OMR y síntesis de partituras

� Inclusión de diferentes versiones de un símbolo en la DB

I4

OMR y síntesis de partituras

� Detección del tono� Mediante proyección horizontal de histograma

I4

0

10

20

30

40

50

60

70

80

90

1000 500 1000 1500 2000 2500 3000 3500 4000

OMR y síntesis de partituras

� OMR � Fichero de texto� Pitch, duración (negra, blanca, redonda)

� Extracción vector (notas, duración)

� Pitch (frecuencia fundamental)� Pitch (frecuencia fundamental)

� Duración (negra=1, blanca=2, redonda=4)

� Síntesis � Wavetables� Pitch � Notación MIDI

� Duración � Nº de muestras según bpm

� Modelo dinámico (ADSR) por nota

Interfaz de usuario

� Se crea para el fácil manejo de las funciones habilitadas

� Permite leer archivos .mid y .jpg para realizar la síntesis Funciones:

� Visualizar la partitura en un panel de imagen

� Cambiar la acústica de la señal sintetizada

Modificar la velocidad de reproducción� Modificar la velocidad de reproducción

� Reproductor de música

Conclusiones y trabajo futuro

� Modelo más realista de dinámica (ADSR)

� OMR de partituras más complejas (incluyendo la letra)

� Síntesis de piezas con letra� Síntesis de piezas con letra

Referencias

� MIDI Toolbox, Departamento de Música, Universidad de Jyväskylä, Finlandia, https://www.jyu.fi/hum/laitokset/musiikki/en/research/coe/materials/midi-toolbox/

� X. Fernández Hermida y C. Sánchez-Barbudo y Vargas, “Development of an Optical Music Recognizer”

I4

“Development of an Optical Music Recognizer”

� A. Sánchez, J. J. Pantrigo y J. I. Pérez, “Extracción de Líneas Melódicas a partir de Imágenes de Partituras Musicales”

Sintetizador de partituras musicales para coro

GRACIAS

I4

GRACIAS

2º Desafío TecnológicoDepartamento de Teoría de la Señal Telemática y Com unicaciones

"Sintetizador de partituras musicales para coro"I4

Grupo I4

Iván Fernández Bermejo Iván López Espejo Santiago Prieto Calero

Sumario

� Introducción

� Procesamiento MIDI

I4

� OMR

� Android

Introducción

� Mejoras:� Procesamiento de MIDI con track

� Mejora OMR

I4

� Mejora OMR

� Aplicación Android (Modo didáctico)

� Carencias:� Síntesis sin letra (Solfeando)

� Base de datos sin derechos

Procesamiento de MIDI con trackI4

� Se comprueba si el midi es mono canal, y en ese caso si usa track.

� Se realiza la misma síntesis que ya teníamos pero con la columna track teníamos pero con la columna track y no con los canales.

� En equipos pequeños hay problemas al existir una carencia de memoria.

OMR (Optical Music Recognition)

� Reconocimiento Automático de Partituras Musicales� Problema complejo

� Ventajas:

I4

� Ventajas:

�Almacenamiento perpetuo en el tiempo de la información musical en formato digital

�Tratamiento de los datos digitales

(modificación, transmisión...)

�Gestión más eficaz de las obras (mediante bases de datos)

Desarrollo del OMR

� Análisis de partituras corales en formato JPG

� Se utiliza la herramienta Image Toolboxde Matlab para:

Diseño e implementación de un bloque que

I4

1. Diseño e implementación de un bloque que separe los pentagramas de la partitura y los símbolos de cada pentagrama.

2. Creación de un clasificador que reconozca los símbolos proporcionados

3. Utilización de las reglas de teoría musical para comprobación de errores y búsqueda de símbolos compuestos

Pre-procesado de la imagen� Binarizar la imagen mediante el método de Otsu

� Inversión de la imagen binaria

I4

Segmentación de pentagramas� Se aplica a la imagen el histograma horizontal� Se descartan los valores del histograma horizontal por debajo de un umbral (máximo valor del histograma horizontal/2)

� Se busca el patrón característico que conforman los pentagramas

I4

Segmentación de símbolos� Se aplica el histograma vertical a cada pentagrama segmentado

� Se haya la mediana del histograma vertical

� Se eliminan los valores por debajo de este valor

I4

Reconocimiento de símbolos

� Segmentación de los símbolos mediante el histogramavertical del pentagrama modificado

� Erosión mediante elemento horizontal de 20 píxeles

� Substracción de la imagen erosionada a la original paraeliminar las líneas del pentagrama

I4

eliminar las líneas del pentagrama

Reconocimiento de símbolos

� Comparación de patrones entre los símbolos segmentados y las imágenes de la base de datos

� correlación cruzada normalizada:

� Valor comprendido entre [-1,1]

I4

� Valor comprendido entre [-1,1]

Algoritmo de reconocimiento de símbolos

� Primero se busca la clave (Sol, Fa)� Seguidamente se busca el compás� Después se reconoce cada uno de los símbolos segmentados

I4

Reconocimientos de símbolos unidos� Se detectan mediante la anchura de píxeles� Se erosionan mediante elemento horizontal de 5 píxeles

� Se sustrae el elemento cuya longitud horizontal es mayor (barra horizontal o ligadura)

� Se comparan las figuras para obtener su duración y tonalidad

I4

� Se comparan las figuras para obtener su duración y tonalidad

Detección de la tonalidad� Extraer la posición de las líneas del pentagrama� Extracción del punto medio de la posición de cada nota (utilizando información del histograma horizontal)

� Obtener la frecuencia de la nota mediante la distancia mínima a las líneas del pentagramaRegistro de cada figura y frecuencia en un fichero

I4

� Registro de cada figura y frecuencia en un fichero de texto

Síntesis de la partitura� Utilización de las reglas de la teoría musical:

� Si el pentagrama está en clave de Fa se transportan todas las notas del mismo

� Si se detecta un punto después de una figura se alarga la duración (1.5x duración)

I4

se alarga la duración (1.5x duración)

� Si se detectan dos puntos verticales y una barra doble se repiten todos los compases anteriores

� Extracción de un vector de notas y duración de cada pentagrama

� Multiplexación de pentagramas aprovechando las características de las partituras corales

AndroidI4

AndroidI4

AndroidI4

Android

� Partitura electrónica, nos permite música simple.

� Orientada a enseñanza.

I4

AndroidI4

Android

.txt

I4

.wav

ResumenI4

Sintetizador de partituras musicales para coro

I4

Referencias

[1] D. Carretero de la Rocha, Sistema de Reconocimiento de Partituras Musicales. Proyecto fin de carrera, 2009.

GRACIAS

[2] http://developer.android.com/index.html