Upload
lenguyet
View
221
Download
0
Embed Size (px)
Citation preview
UNIVERSIDADE FEDERAL DO PARANÁ
RUDOLFO AUGUSTO ERSCHING RÜNCOS
TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS MELÓDICOS HARMÔNICOS
CURITIBA 2008
RUDOLFO AUGUSTO ERSCHING RÜNCOS
TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS MELÓDICOS HARMÔNICOS
Trabalho apresentado à disciplina de Projeto de Conclusão de Curso como requisito à conclusão do curso de Engenharia Elétrica com ênfase em Eletrônica, Setor de Tecnologia, Universidade Federal do Paraná Orientador: Prof. Marcelo de Oliveira Rosa Co-orientador: Prof. Eduardo Parente Ribeiro
CURITIBA 2008
AGRADECIMENTOS
Ao meu orientador, Prof. Marcelo de Oliveira Rosa, pelas várias discussões e trocas de idéias que foram de fundamental importância no desenvolvimento deste trabalho.
Ao co-orientador deste projeto, Prof. Eduardo Parente Ribeiro, pelo acompanhamento e auxilio prestado em várias etapas do mesmo.
Aos meus pais, Fredemar Rüncos e Margaret Olga Ersching Rüncos, pelo
suporte ao longo de todo o curso.
RESUMO Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas de melodia em músicas. Esse sistema visa obter as notas musicais com suas respectivas intensidades, tempos de início e fim a partir de um sinal de áudio digital (arquivo tipo wave). Este trabalho limitou-se à transcrição de instrmentos melódicos harmônicos. Inicialmente se realizou uma revisão de conceitos importantes para a transcrição musical. Em seguida foi desenvolvido e implementado um algoritmo para a detecção dos inícios de notas, baseado na variação da energia do sinal em diferentes bandas de freqüência. Também se desenvolveu um método para a estimação de fundamentais através de um algoritmo que atribui pesos diferentes a picos detectados na freqüência, de acordo com propriedades dos instrumentos melódicos harmônicos. A avaliação do sistema apresentou resultados animadores se considerado o estágio inicial em que o sistema se encontra. Ao final do trabalho são discutidas propostas de trabalhos futuros visando o aprimoramento deste sistema de transcrição.
ABSTRACT In this work a system for the automatic transcription of melodic streams in music is developed. This system aims to obtain the musical notes, its intensities, onsets and offsets from a digital audio signal (wave file). This work is limited to the transcription of harmonic pitched instruments. It was first made a review of important concepts concerning transcription of music. Then an algorithm for the detection of the notes onset was developed, based on the signal’s energy variation across different frequency bands. It was also developed a method for estimating the fundamental frequencies through an algorithm which weights peaks detected in frequency, according to pitched harmonic instruments properties. The system’s evaluation presented promising results, considering its initial development stage. Future work proposals are discussed at the end of this work.
SUMÁRIO 1 INTRODUÇÃO .................................................................................... 7 2 REVISÃO BIBLIOGRÁFICA ............................................................... 9 3 VISÃO GERAL DO PROCESSO DE TRANSCRIÇÃO...................... 13 3.1 CONCEITOS IMPORTANTES E PROPRIEDADES DA MÚSICA 13 3.2 TIPOS DE REPRESENTAÇÕES................................................. 15 3.3 DESAFIOS DA TRANSCRIÇÃO AUTOMÁTICA.......................... 17 3.4 VISÃO GERAL DO SISTEMA DE TRANSCRIÇÃO PROPOSTO 18
4 DETECTOR DE INÍCIOS DE NOTAS................................................ 20 4.1 ANÁLISE TEMPO-FREQÜÊNCIA................................................ 20 4.2 DETECTOR DE PICOS............................................................... 24 4.3 CONSIDERAÇÕES SOBRE A PRECISÃO DA DETECÇÃO DE INÍCIOS DE NOTAS .......................................................................... 24
5 ESTIMADOR DE FUNDAMENTAIS .................................................. 26 5.1 DETERMINAÇÃO DOS LIMITES DAS JANELAS DAS FFT........ 26 5.2 ESTIMAÇÃO DAS FUNDAMENTAIS PARA CADA JANELA....... 27 5.3 PÓS-PROCESSAMENTO DO RESULTADO DO ESTIMADOR .. 30 5.4 UTILIZAÇÕES DA SAÍDA E AVALIAÇÃO DO SISTEMA............. 31
6 RESULTADOS.................................................................................. 33 7 CONCLUSÃO E TRABALHOS FUTUROS....................................... 37 8 REFERÊNCIAS................................................................................. 39
1 INTRODUÇÃO
Existem muitas definições para música. Ela pode ser definida como a arte da
expressão através da combinação de sons e silêncio (WIKI, 2008), ou simplesmente
como uma sucessão de sons e silêncio. Ela pode ser definida num contexto social
como aquilo que as pessoas consideram música, ou num contexto de estética.
Pode-se considerar também a música como uma linguagem milenar e
universal, pois ela existe desde os primórdios da história do homem e qualquer ser
humano a entende. Esse entendimento que o homem apresenta da música se deve
ao fato de ele apresentar um aparelho auditivo capaz de analisar e extrair
informações do som quando um padrão musical é apresentado. É muito comum ver
pessoas acompanhando melodias de vocais ou instrumentos, batucando no tempo
da música ou mesmo dançando de acordo com o ritmo. Pessoas que treinam seu
aparelho auditivo são capazes de analisar músicas com alto nível de detalhamento e
precisão, como é o caso de músicos treinados. As informações extraídas da música
alcançam níveis superiores de entendimento e análise até o ponto de provocar
reações emocionais. Para o homem, portanto, a música é um fenômeno bastante
natural e importante, e sua presença na história da humanidade é facilmente
inteligível.
No entanto, fazer com que um computador analise e extraia informações da
música é uma tarefa bastante difícil. A música apesar de apresentar uma teoria
extensa e largamente estudada no que diz respeito a ritmo, harmonia e construções
melódicas, ainda não é facilmente transcrita através de algoritmos computacionais.
Fazer com que um computador extraia de um sinal de áudio de uma música as
informações que seriam necessárias e suficientes para que, a partir dessas
informações, a mesma música pudesse ser novamente reproduzida usando
instrumentos disponíveis, é o que se chama de transcrição automática de música.
Ou seja, transcrição automática de música significa obter uma partitura (ou outra
forma de representação simbólica da música) a partir de um sinal de áudio que
contenha alguma música. Essa partitura deve permitir que músicos reproduzam a
mesma música com os instrumentos apropriados. A transcrição automática ainda é
um problema em aberto, pois ainda não há um sistema capaz de realizar uma
transcrição confiável para qualquer música.
6
A transcrição automática de música pode ser vista como um processo de
“engenharia-reversa” da música, pois a música é o resultado da interpretação de
alguma representação simbólica ou instrução (normalmente uma partitura) por um
músico ou sintetizador que utiliza instrumentos disponíveis para reproduzi-la. Já a
transcrição automática visa realizar esse processo em sentido oposto.
A obtenção de uma representação simbólica confiável de música permite
não apenas uma posterior reprodução, mas pode servir como uma ferramenta de
auxílio para músicos e compositores. Outras aplicações incluem seu uso como
ferramenta de estúdio para auxiliar em re-mixagem de músicas das quais não se
tem as trilhas separadas, ou no auxílio em geração de arquivos,
classificação/indexação e busca de músicas por estilo ou trechos de melodia, ou
ainda para equipamentos interativos como os utilizados em karaokê ou iluminação
(KLAPURI, 2004).
Este trabalho está dividido da seguinte maneira: No capítulo 2 é apresentada
uma revisão bibliográfica de trabalhos relacionados com o tema de transcrição
automática de música; o capítulo 3 contém explicações de conceitos básicos, uma
visão geral do problema da transcrição automática e a apresentação do sistema de
transcrição proposto e suas principais características. Os capítulos 4 e 5 apresentam
uma explicação mais aprofundada dos dois blocos fundamentais do sistema de
transcrição proposto, o detector de início de notas e o estimador de fundamentais. O
capítulo 6 sumariza os resultados obtidos. O capítulo 7 apresenta uma conclusão e
inclui propostas de trabalhos futuros.
7
7
2 REVISÃO BIBLIOGRÁFICA
As duas principais referências para este trabalho são a dissertação de
mestrado e a tese de doutorado de Anssi Klapuri (1998 e 2004). Em sua dissertação
de mestrado (KLAPURI, 1998), ele faz uma excelente introdução ao tema de
Transcrição Automática de Música. Após apresentar sua revisão de trabalhos
anteriores, o autor descreve o problema da Transcrição Musical Automática.
Em seguida, o autor descreve sua implementação para um método de
detecção de inícios de notas. Este método de detecção de inícios consiste em
analisar o sinal em 7 faixas de freqüência distintas. Para cada faixa, o sinal é
retificado, decimado, e convoluído com uma janela cosseno-levantado (half-
Hanning) de 50ms para obtenção do envelope de amplitude. Os picos detectados na
função derivada relativa do envelope obtido são analisados e o resultado são os
inícios das notas.
Em sua dissertação, Klapuri também realizou um interessante estudo sobre
as propriedades de notas de instrumentos melódicos harmônicos e as relações entre
os harmônicos de notas diferentes tocadas simultaneamente. Com isso ele
desenvolveu um novo método que denominou método teórico numérico para se
extrair propriedades do áudio que permitam a identificação das fundamentais. Esse
método se baseia nas propriedades de harmônicos de ordem prima (p.ex. ordens 3,
5, 7 e 11) e utiliza filtros WOS (de weighted order statistic filters, ou filtros estatísticos
de ordem ponderada) para resolver as misturas de notas em uma polifonia.
Depois o autor descreve sua implementação do método desenvolvido. Sua
implementação faz uso também de modelos de notas de piano. Seu algoritmo
detecta uma fundamental, a remove do espectro e então procura por uma próxima
fundamental, até que não seja mais possível identificar qualquer fundamental. Ao fim
da dissertação, Klapuri ainda fala sobre a utilização de conhecimentos de alto nível
como teoria musical para auxiliar no processo de estimação de fundamentais, ou
seja, abordagens do tipo top-down (ou de-cima-para-baixo).
Em sua tese de doutorado, Klapuri (2004) faz uma apresentação ainda mais
detalhada do tema de Transcrição Automática de Música, e apresenta novos
métodos de detecção de inícios e de estimação de fundamentais. Claramente esse
trabalho mostra um avanço e refinamento das técnicas apresentadas em sua
8
dissertação. Além disso, é apresentado um método para obtenção da métrica da
música utilizando comb-filters e modelos probabilísticos para períodos de pulsos.
Os dois trabalhos de Klapuri abordam os dois tópicos de interesse para este
trabalho, que são a determinação de inícios de notas e a estimativa de
fundamentais. Outros trabalhos que foram pesquisados e que são descritos a seguir
tratam-se de publicações científicas e são menos abrangentes.
Sobre o tópico de determinação dos inícios de notas, Bello et al. (2005)
fazem uma revisão do assunto e dos principais métodos existentes em detecção de
inícios de notas. Nesse trabalho eles implementam cinco dos principais métodos e
fazem uma avaliação, comparando-os.
Sakuraba, Kitahara e Okuno (2004) focam seu trabalho na formação de
trilhas, ou seja, na formação de uma seqüência temporal de notas tocadas por um
mesmo instrumento. Para formação das trilhas eles utilizam quatro aspectos da
música: similaridade de timbre, proximidade de direção, transição de tom e
consistência de relação de tom.
Paulus (2006) aplica modelos de Markov escondidos para a extração de
trilhas de bateria de sinais polifônicos. O autor propõe dois métodos, um usando
modelos binários orientados por instrumento e outro que trata de combinação de
instrumentos. Seus experimentos mostram que o segundo método é mais eficiente,
mas que sua precisão ainda é baixa.
Pertusa e Inesta (2005) abordam o problema da transcrição automática para
sinais polifônicos monotimbrais usando redes neurais. As redes são treinadas com
amostras de notas do instrumento a ser identificado. Seu sistema é bastante
específico com relação ao timbre que identifica, mas para o timbre que foi treinada a
rede apresenta uma elevada taxa de acerto.
Cemgil, Kappen e Barber (2006) estudaram um método generativo para a
transcrição musical baseado em redes bayesianas dinâmicas. Os autores buscam
desenvolver um método onde os procedimentos computacionais e os modelos são
explícitos, e não heurísticos.
Kapanci e Pfeffer (2006) implementaram um método de transcrição baseado
em modelos gráficos. Para avaliação do seu sistema, eles usaram 60 minutos de
músicas de vocal monofônicas. Sua conclusão é que seu método é apropriado para
aplicação na transcrição musical.
9
Yin et al. (2005) enfoca seu trabalho na detecção de múltiplas fundamentais
e propõe um método baseado na modelagem de instrumentos. O modelo do
instrumento é obtido a partir de amostras de áudio das notas do instrumento. O autor
testa seu método usando músicas originadas a partir do formato MIDI (Musical
Instrument Digital Interface) contendo piano e clarinete como instrumentos e obtém
um bom desempenho.
Provavelmente a parte mais difícil na transcrição automática de música seja
a identificação das fundamentais (notas) em um sinal polifônico. Existem várias
tentativas de solucionar essa questão, e a própria diversidade de métodos utilizados
por diferentes autores mostra como esse problema ainda está em aberto. Filtragem
de Kalman (SATAR-BOROUJENI, SHAFAI, 2005), codificação esparsa não-negativa
de potência espectral (ABDALLAH, PLUMBLEY, 2004), deconvolução 2D de fator de
matriz esparsa não-negativa (SCHMIDT, MORUP, 2005), processos de Poisson
(PEELING, GODSILL, 2007) e modelagem de evento de nota (RYYNANEN,
KLAPURI, 2005) são todos métodos aplicados na transcrição musical. Alguns
autores restringem o tipo de entrada que o sistema admite, normalmente limitando o
tipo de instrumento que o sistema transcreve, e com isso conseguem melhores
resultados, mas nenhum deles apresentou uma solução definitiva para o problema
da transcrição automática aplicável a qualquer tipo de música.
Helen e Virtanen (2005) propõem um método para separar a bateria dos
instrumentos melódicos. Seu método é baseado na fatorização do espectrograma do
sinal de entrada e classificação dos componentes separados usando um “support
vector machine”. O resultado das simulações realizadas com misturas de sons
polifônicos mostrou que o sistema proposto permite uma melhor separação do que
métodos anteriores, segundo os autores.
Miyamoto et al. (2007) faz uma abordagem probabilística sobre a transcrição
musical. Seu trabalho é bastante amplo e cobre as questões de estimação de
fundamentais e determinação de tempo e ritmo. O autor testa seu sistema apenas
com músicas de piano (monotimbral) obtidas a partir de arquivos MIDI, mas a
publicação é pouco conclusiva sobre os resultados.
Takeda, Nishimoto e Sagayama (2007) estudaram a determinação de tempo
e ritmo musicais a partir de músicas no formato MIDI. Pressupõe-se que seu sistema
viria depois de um primeiro que extrairia uma representação de notas, inícios e fim a
10
partir de um sinal de áudio. O autor avalia seu sistema com arquivos MIDI de
músicas de piano, e consegue bons resultados.
Um trabalho relacionado ao tema de transcrição, mas que não apresenta o
mesmo enfoque e objetivo é apresentado por Aucouturier, Pachet e Sandler (2005).
Seu objetivo não é obter uma partitura da música, mas extrair características
essenciais de uma música que permitam classificá-la em grupos de estilo musical,
ou até padrões recorrentes dentro da própria música. Os autores apontam como
aplicação de seu trabalho a organização de grandes bancos de dados de músicas
gravadas em formato eletrônico.
Todos os trabalhos pesquisados contribuiram para um melhor entendimento
do assunto da transcrição musical. No entanto, apenas os trabalhos de Klapuri (1998
e 2004) foram diretamente utilizados na elaboração deste. Suas explanações sobre
os conceitos e propriedades da música e dos instrumentos musicais foram a base
para o próximo capítulo (capítulo 3). Sua análise tempo-frequência na publicação
sobre a estimação da métrica musical (KLAPURI, ERONEN, ASTOLA, 2004) foi
copiada quase integralmente no bloco de detecção de inícios de notas (capítulo 4).
O estimador de fundamentais descrito neste trabalho foi desenvolvido pelo próprio
autor (capítulo 5). Por fim, os índices utilizados na avaliação objetiva do sistema
desenvolvido neste trabalho (capítulo 6) foram adotados conforme consta no
trabalho de Ryynanen e Klapuri (2005).
O que se observou com a pesquisa realizada foi que existem ainda muitos
métodos diferentes propostos pelos diversos autores que pesquisam o assunto de
transcrição musical. Isso se deve provavelmente ao fato de que esse assunto não
apresenta ainda uma solução, e portanto sua pesquisa está ainda na fase de busca
de um método que resolva o problema.
11
3 VISÃO GERAL DO PROCESSO DE TRANSCRIÇÃO
Transcrever uma música que está num formado de onda para uma partitura
de forma automática implica em desenvolver algoritmos que extraiam informações
musicalmente relevantes do áudio que permitam a construção da partitura. Antes de
apresentar o processo de transcrição, vamos descrever conceitos e propriedades da
música usadas na transcrição automática.
3.1 CONCEITOS IMPORTANTES E PROPRIEDADES DA MÚSICA
Um conceito importante em música é o conceito de tom. O tom é uma
propriedade de um som, definida como a freqüência de uma onda senoidal que
corresponde ao som conforme constatado por um experimento psico-acústico
(KLAPURI, 2004, p. 3). Se uma pessoa não for capaz de fazer essa
correspondência, então o som não apresenta um tom. O correspondente físico do
tom é a freqüência fundamental, que é o inverso do período do som, para o caso de
sons periódicos ou aproximadamente periódicos. Neste trabalho, iremos considerar
que tom e freqüência fundamental, tratada a partir daqui apenas por fundamental,
são equivalentes, ou seja, indicam a mesma freqüência.
O elemento básico de uma partitura é a nota musical. Em uma partitura, a
nota indica o início e a duração que determinado tom deverá soar. A transcrição
musical busca abstrair de um sinal de áudio as notas que compõem a música, sendo
necessário para tanto que se determinem os inícios de cada nota, suas durações e o
tom de cada nota.
Uma melodia é uma sucessão de notas arranjadas de uma forma
musicalmente coerente. Um acorde é um conjunto de três ou mais notas
simultâneas. O acorde pode ser consonante ou dissonante, dependendo de quão
harmonicamente relacionadas são as notas que o compõem. Harmonia é a parte da
ciência ou arte musical que trata da formação e relação entre os acordes.
Instrumentos musicais podem ser classificados em dois tipos: melódicos ou
percussivos. Grosso modo, podemos considerar que os instrumentos melódicos são
12
aqueles capazes de produzir notas de tons diferentes, como é o caso de pianos,
guitarras ou flautas. Os instrumentos percussivos são aqueles que são capazes de
produzir notas de apenas um único tom, ou que nem apresentem um tom. Exemplos
de instrumentos percussivos são tambores, pratos e triângulos.
Instrumentos melódicos, por sua vez, se dividem em instrumentos
harmônicos e não harmônicos. Instrumentos harmônicos apresentam a distintiva
característica de apresentarem componentes espectrais dominantes
aproximadamente regularmente espaçadas. A FIGURA 1 ilustra essa característica.
No espectro, o pico localizado na menor freqüência indica a fundamental da nota. Os
demais picos são localizados em múltiplos inteiros da fundamental. Essas
freqüências múltiplas da fundamental são denominadas de freqüências harmônicas
da fundamental, de componentes harmônicos ou simplesmente harmônicos.
Instrumentos melódicos harmônicos compreendem a grande maioria dos
instrumentos não-percussivos atualmente utilizados na música ocidental, como
instrumentos de corda, instrumentos de sopro e a própria voz humana.
FIGURA 1 - Espectro monofônico com fundamental em 261 Hz. A fundamental está marcada por um quadrado. Os harmônicos, marcados com círculos, aparecem aproximadamente em freqüências
múltiplas inteiras da fundamental. FONTE: o autor (2008).
Os instrumentos melódicos não-harmônicos não apresentam um espectro
com harmônicos igualmente espaçados. Estes instrumentos são mais incomuns de
serem encontrados em músicas contemporâneas ocidentais. Marimba, xilofone e
vibrafone são exemplos de instrumentos dessa classe.
O timbre é uma característica do som relacionada com a distinção de fontes
sonoras. Timbre não apresenta uma definição direta simples. Ele pode ser entendido
como “o som característico de alguma coisa” ou “a qualidade que permite diferenciar
dois sons de mesmo tom e intensidade”. Para instrumentos harmônicos, uma das
13
principais características que determinam o timbre é o envelope harmônico, ou seja,
a relação entre as intensidades dos harmônicos e da fundamental. Este envelope
harmônico usualmente não é constante no tempo, portanto sua evolução temporal
também contribui na determinação do timbre do instrumento.
Outro importante aspecto da música diz respeito a sua métrica. A métrica
trata de aspectos relacionados a tempo e ritmo na música. Ela tem relação com os
momentos de batidas fortes e fracas e com a freqüência das batidas, denominada
de tempo e normalmente indicada em batidas por minuto.
3.2 TIPOS DE REPRESENTAÇÕES
A transcrição pode ser vista como a transformação de uma forma de
representação da música em outra. Para melhor entender essa idéia, é útil definir
tipos de representação musical. Existem três tipos ou níveis de formatos em que a
música pode ser representada.
A representação de nível 1 é a forma de onda sonora da música. Esse tipo
de representação é obtido, por exemplo, através da gravação da performance de um
artista utilizando microfones e gravando o sinal de áudio obtido em uma fita
magnética. Ou seja, nesse tipo de representação tem-se um sinal de áudio que
contém a música. Esse sinal pode ser analógico ou digital.
O nível 2 corresponde a uma representação de inícios e durações de tons.
Essa representação pode conter informações sobre a intensidade dos tons, o tipo de
instrumento que deveria ser utilizado para cada tom entre outras. O tipo mais
comum de representação de nível 2 é o protocolo MIDI (Musical Instrument Digital
Interface).
Finalmente a partitura de uma música se enquadra no nível 3. Esta
representação é composta por notas musicais e inclui informações de métrica
musical, como o ritmo. A FIGURA 2 mostra uma comparação dos três níveis de
representação musical. Cabe salientar que, ao contrário da representação de nível
3, as representações de nível 1 e 2 incluem informação de tempo em segundos de
forma explícita e linear. Portanto estas últimas aparecem sincronizadas na FIGURA
2, enquanto a partitura não aparece sincronizada com as demais.
14
FIGURA 2 - Comparação entre representações musicais de a) nível 1 (Wave PCM, 44,1kHz, 16bits, mono), b) nível2 (“Piano Roll” de um arquivo MIDI) e c) nível 3 (partitura). FONTE: o autor (2008).
Uma representação de nível 1 é muito fiel a uma performance específica de
uma música, mas é também muito mais restrita em relação a alterações do que uma
representação de nível 2 ou 3. Ou seja, uma forma de onda gravada reproduzida em
qualquer sistema de áudio vai ser muito semelhante ao som produzido durante a
gravação, mas é praticamente impossível se alterar, por exemplo, um instrumento
utilizado em uma de suas linhas melódicas, ou mesmo de se inserir ou retirar trechos
sem que pareça um áudio editado.
Um sistema de transcrição pode visar transformar a música de uma
representação de nível 1 para outra de níveis 2 ou 3. Outra possibilidade é se passar
de uma representação de nível 2 para nível 3. Ainda, um sistema pode se utilizar de
representações intermediárias ou secundárias, por exemplo o uso de trilhas de
senoides na transcrição de nível 1 para 2, como no trabalho de Klapuri (1998).
15
3.3 DESAFIOS DA TRANSCRIÇÃO AUTOMÁTICA
Uma etapa comum a qualquer sistema de transcrição automática que tenha
como entrada uma música numa representação de nível 1 é a identificação de
fundamentais. Ou seja, saber quais notas estão sendo tocadas em determinado
instante. Esta tarefa é dificultada por uma característica que para a música é
bastante desejável, que é a harmonia musical. Notas tocadas simultaneamente,
como num acorde, por exemplo, são tão mais harmoniosas quanto mais os seus
harmônicos se sobrepuserem no espectro. É inclusive muito comum que
fundamentais de tons mais agudos coincidam em freqüência com algum harmônico
de um tom mais grave.
Além disso, instrumentos diferentes apresentam envelopes harmônicos
diferentes. Mesmo instrumentos de um mesmo tipo freqüentemente apresentam
envelopes harmônicos diferentes. Por exemplo, muito freqüentemente dois violinos
diferentes terão um timbre diferente. Até um mesmo instrumento pode apresentar
timbres diferentes em gravações diferentes, dependendo do sistema de gravação
utilizado, de edições realizadas no áudio, ou até de fatores mais imprevisíveis como
o modo de tocar do músico ou a temperatura e umidade do ambiente em que o
instrumento se encontrava no momento em que foi realizada a gravação.
A presença de instrumentos percussivos é outro fator que dificulta essa
identificação. Notas de instrumentos percussivos são eventos de curta duração, e
que por isso apresentam sua energia altamente concentrada no tempo. Sua
distribuição espectral de energia é bastante espalhada e, via de regra, não
apresenta picos em freqüências específicas. Portanto, do ponto de vista da
identificação de fundamentais, a presença de instrumentos percussivos pode ser
considerado como um ruído intermitente. O inverso também é verdadeiro, ou seja,
na identificação de instrumentos percussivos, o som de instrumentos melódicos
pode ser encarado como um ruído.
Portanto, a tarefa de identificar as fundamentais em composições polifônicas
contendo instrumentos diferentes, que representam a maioria das composições,
pode ser entendida como uma tarefa de identificação de padrões a priori não
conhecidos (pelo menos com exatidão) e que se apresentam misturados em
freqüência e freqüentemente acrescidos de ruídos de intensidade relativamente
16
grande. Esses são alguns motivos que ilustram o desafio que representa o problema
em aberto da transcrição de composições polifônicas.
3.4 VISÃO GERAL DO SISTEMA DE TRANSCRIÇÃO PROPOSTO
O sistema de transcrição implementado neste trabalho visa converter
músicas em representações de nível 1 para nível 2. O objetivo é obter a transcrição
de instrumentos melódicos apenas. Instrumentos percussivos, como por exemplo
bateria, não são transcritos pelo sistema. Não há limites para o número de
instrumentos presentes na música ou para o número de notas presentes
simultaneamente em qualquer instante da música. O sistema não reconhece
instrumentos, e, portanto não os distingue. Outra característica importante é que o
sistema não reconhece silêncio, apesar de identificar a intensidade das notas.
Portanto, em momentos em que não houver notas soando na música, a saída vai
acusar presença de alguma nota, mas vai lhe atribuir uma intensidade muito baixa,
provavelmente.
O modelo mais simples do sistema é apresentado na FIGURA 3. Conforme
consta nessa figura, o sistema consiste de dois blocos principais em cascata. O
primeiro consiste do algoritmo de detecção de inícios de notas. Sua entrada é um
arquivo de áudio no formato wave (PCM). A saída desse algoritmo é um vetor
contendo os tempos dos inícios de notas detectados, ordenados de forma crescente
e em segundos. O segundo bloco utiliza a saída do primeiro e o arquivo de áudio
como entradas. Sua saída é uma representação musical de nível 2, contendo as
notas, seus inícios, finais e intensidades.
FIGURA 3 - Diagrama de blocos geral do sistema de transcrição automática proposto. FONTE: o
autor (2008).
17
Para o sinal de entrada não existem limitações de freqüência ou precisão,
mas são recomendáveis sinais com no mínimo 44,1kHz de freqüência de
amostragem e 16 bits de precisão por amostra. Essa recomendação é devida ao fato
de o sistema aproveitar toda a faixa audível de freqüências para realizar as buscas
por harmônicas, que auxiliam na determinação das fundamentais, além de ser uma
taxa que permite uma maior precisão do algoritmo detector de inícios de notas,
como será mais bem explicado no próximo capítulo. O arquivo pode conter mais de
um canal de áudio, mas, nesse caso, todos os canais serão mixados para um único
canal para fins de transcrição.
Para avaliação do sistema foram sempre utilizados arquivos de áudio
contendo um canal amostrado a 44,1 kHz e com 16 bits de precisão por amostra.
18
4 DETECTOR DE INÍCIOS DE NOTAS
O detector de inícios empregado nesse trabalho pode ser dividido em duas
etapas distintas. A primeira corresponde a uma análise tempo-freqüência, e a
segunda a um detector de picos, conforme a FIGURA 4. A primeira etapa gera uma
representação intermediária que chamamos de acentos registrais, que é utilizada
pela segunda etapa para gerar um vetor contendo os instantes de inícios de notas.
Este último, por sua vez, é utilizado pelo estimador de fundamentais, conforme será
explicado mais para frente.
FIGURA 4 - Diagrama de blocos do detector de inícios de notas. FONTE: o autor (2008).
4.1 ANÁLISE TEMPO-FREQÜÊNCIA
A análise tempo-freqüência (TF) utilizada aqui é basicamente uma cópia do
bloco de análise tempo-freqüência apresentado na publicação de Klapuri, Eronen e
Astola (2004) sobre estimação de métrica musical. Inicialmente o sinal de entrada é
normalizado para ter média zero e variância igual a 1. O sinal é então processado
em trechos de 1024 pontos (23ms para um sinal amostrado a 44,1kHz) com passos
de 512 pontos (12ms aproximadamente). Para cada trecho é calculada a FFT
utilizando um janelamento de Hanning. Obtém-se a distribuição espectral de energia
elevando-se o resultado da FFT ao quadrado. O resultado desses primeiros passos
pode ser entendido como um espectrograma do sinal, conforme apresentado na
FIGURA 5.
O resultado dessa operação é multiplicado por um conjunto de 40 janelas
triangulares de mesma largura de banda de forma a cobrir todo o espectro de
freqüências audíveis (20Hz até 20kHz). A FIGURA 6 mostra a magnitude da
resposta em freqüência das 40 janelas utilizadas. Essas janelas, ou filtros, são
geradas de tal forma que sua soma produziria um equivalente aproximadamente
retangular. Isso é importante para garantir que a soma das energias das saídas de
19
todos os filtros somados seja aproximadamente a mesma da energia do sinal
original. A energia da saída de cada filtro é armazenada em Eb(k), onde k é o índice
do trecho analisado e b = 1,2,3 ... 40 corresponde ao filtro (uma faixa de freqüência).
FIGURA 5 - Espectrograma de uma música contendo guitarra e contra-baixo elétricos. FONTE: o
autor (2008).
FIGURA 6 - Magnitude da resposta em freqüência do banco de filtros (todos sobrepostos nesta
imagem). FONTE: o autor (2008).
Se analisarmos Eb(k) ao longo de k para um dado b, temos a envoltória de
energia para uma faixa de freqüências amostrada a uma freqüência de cerca de
86Hz (1/0.012s). Na realidade estamos interessados na variação da envoltória de
energia. Com relação a isso, sabe-se que a menor variação de intensidade sonora
detectável pelo ouvido humano é aproximadamente proporcional à própria
intensidade do som (KLAPURI, ERONEN, ASTOLA, 2004). Uma maneira de
representar esse fato é através da derivada normalizada pela própria envoltória
[(d/dt)Eb(k)]/Eb(k), o que equivale a (d/dt)ln[Eb(k)]. Este resultado pode ser obtido de
20
outra forma, que é através da compressão pela lei-µ (FIGURA 7) seguida de uma
diferenciação. Em nosso sistema aplicamos esta compressão sobre as envoltórias
de energia, calculada da seguinte forma:
( ) ( )[ ]( )µµ+
+=
1ln
1ln kEkY b
b (1)
FIGURA 7 - A compressão pela lei-µ para valores de µ
iguais a 0,1 , 1 , 10, 100, 10000 começando do traçado de baixo. Fonte: KLAPURI, ERONEN, ASTOLA, 2004, p. 4.
Esta compressão promove um mapeamento dos valores de Eb(k) indo de
zero a um em Yb(k), também de zero a um. Para valores pequenos de µ (µ < 0,1) a
transformação é próxima da linear. Já para valores altos de µ (µ > 1000) a
transformação assume um comportamento logarítmico. Utilizamos em nosso sistema
µ = 100, mesmo valor adotado por Klapuri, Eronen e Astola (2004) em seu trabalho.
A FIGURA 8 mostra um trecho de uma envoltória de energia antes e depois da
compressão pela lei-µ.
FIGURA 8 - Trecho de uma envoltória de energia obtida com um filtro triangular cuja banda vai de 560Hz até 1630Hz [linha pontilhada = E2(k)]. A linha contínua [Y2(k)] representa essa mesma
envoltória após ser comprimida usando µ = 100. FONTE: o autor (2008).
21
Em seguida interpolamos Yb(k) por um fator de dois, adicionando zeros entre
as amostras e aplicando sobre o resultado um filtro FIR passa-baixas de ordem 16 e
freqüência de corte em 12Hz. Utilizamos janelamento de Hanning para reduzir o
ripple do filtro. Este processo dobra a freqüência de amostragem fr de Yb(k), indo
para fr = 172Hz.
Depois disso é calculada a derivada de Yb(k) e o resultado é retificado em
meia-onda (Retificação de Meia-Onda, ou RMO):
( ) ( ) ( ){ }kYkYRMOkZ bbb −+= 1 (2)
Por fim, obtemos o sinal de Acentos Registrais [RA(k)] somando todas as
bandas adjacentes de Zb(k).
( ) ( )∑=
=40
1b
b kZkRA (3)
A FIGURA 9 ilustra um exemplo de RA(k).
FIGURA 9 - Acentos Registrais de uma música simples contendo uma guitarra e um contra-baixo
elétricos. FONTE: o autor (2008).
Segundo Klapuri, Eronen e Astola (2004, p. 9) esse sinal pode fornecer a
indicação de inícios de notas de forma robusta. Para isto bastaria a utilização de um
detector de picos com limiar específico para separar os prováveis inícios de
modulações ou variações de intensidade espúrias.
22
4.2 DETECTOR DE PICOS
Seguindo a sugestão apresentada na publicação de Klapuri, Eronen e Astola
(2004, p. 9), passamos os acentos registrais por um detector de picos para extrair os
inícios das notas. Inicialmente determinamos o valor do limiar. Para tanto
simplesmente calculamos a média de todas as amostras de RA(k). Este limiar se
mostrou eficiente para distinguir inícios de notas, garantindo um bom compromisso
entre acertos e falsos positivos.
O algoritmo busca então todos os máximos locais que estejam acima do
valor de limiar. Para aumentar ainda mais a precisão, o sistema aplica uma
interpolação por splines de quatro pontos entre cada duas amostras sucessivas na
região da máxima local antes de determinar a posição desta. Uma alta precisão
nesta determinação garante uma melhor estimativa das fundamentais na segunda
parte do sistema.
4.3 CONSIDERAÇÕES SOBRE A PRECISÃO DA DETECÇÃO DE INÍCIOS DE NOTAS
De acordo com Klapuri (1998, p. 17) o ouvido humano é capaz de ouvir sons
sucessivos separados por um intervalo mínimo em média igual a 20ms, variando de
acordo com cada indivíduo e com a intensidade dos sons. Sons repetitivos
separados por intervalos menores do que o intervalo mínimo são entendidos pelo
ouvido humano como um som contínuo de baixa freqüência. No entanto, humanos
podem detectar variações temporais tão pequenas quanto 5ms em uma repetição
rítmica de eventos eqüidistantes.
A nossa etapa de análise tempo-freqüência obtém informações sobre a
energia em cada uma das 40 bandas em intervalos de 12ms, ou seja, consegue uma
resolução superior ao que a do ouvido humano. O processamento posterior dessas
informações garante uma resolução ainda maior, devido à interpolação de amostras,
mas não se pode garantir com isso aumento da precisão do detector de inícios. O
23
detector de picos também procura aumentar a resolução do sistema através do uso
de interpolação por splines na determinação das máximas locais.
24
5 ESTIMADOR DE FUNDAMENTAIS
Conforme já mencionado, as entradas para o estimador de fundamentais
são o vetor de inícios, gerado na etapa anterior, e o arquivo de áudio em formato
wave (ver FIGURA 10). Esse bloco pode ser dividido em três etapas: 1)
determinação dos limites das janelas das FFT; 2) estimação de fundamentais por
janela (etapa principal); e 3) pós-processamento do resultado da estimação. Suas
saídas são as notas representadas por números conforme o protocolo MIDI, seus
instantes de início e fim, e suas intensidades. A saída do estimador de fundamentais
pode ser utilizada para se construir um arquivo MIDI da música transcrita. Também
se pode utilizá-la diretamente em algum sintetizador para gerar um arquivo do tipo
wave.
FIGURA 10 - Diagrama de blocos do estimador de fundamentais. FONTE: o autor (2008).
5.1 DETERMINAÇÃO DOS LIMITES DAS JANELAS DAS FFT
A análise do áudio para a extração das fundamentais é feita no domínio da
freqüência. Portanto, existe a necessidade de se segmentar o sinal de áudio em
janelas de tempo, das quais se possa extrair uma FFT. Essa segmentação é feita
com base no vetor de inícios fornecido na entrada.
Inicialmente, são definidos os tempos mínimo e máximo que uma janela
pode ter. O tempo mínimo é determinado pela resolução mínima necessária para a
FFT, e representa um compromisso entre resolução temporal e espectral para os
casos de intervalo entre inícios de notas muito curtos. Já o tempo máximo é menos
crítico do que o tempo mínimo podendo servir para evitar misturas de notas quando
25
a transição não é detectada pelo detector de inícios. Os tempos escolhidos para este
trabalho foram de 93ms para mínimo e de 372ms para máximo.
Com os tempos mínimo e máximo definidos, o vetor de inícios é analisado
seqüencialmente. Se o intervalo entre dois inícios for menor do que o tempo mínimo
da janela, o segundo início é descartado e o intervalo é estendido até o início
seguinte. Quando o intervalo for maior do que o tempo mínimo e menor do que o
máximo, uma janela é colocada nesse intervalo. Se o intervalo for maior do que a
janela máxima, o intervalo é dividido de forma a permitir que as janelas tenham o
maior tempo possível, mas ainda respeitando os valores de tempos máximo e
mínimo. A FIGURA 11 mostra um exemplo de vetor de inícios segmentado em
janelas de acordo com esses limites de tempo escolhidos.
FIGURA 11 - Exemplo de um vetor de início de notas segmentado em janelas. A linha horizontal contínua representa o tempo. Os círculos indicam os inícios das notas detectados pelo detector de inícios de notas e as linhas tracejadas verticais indicam os limites estabelecidos para as janelas.
FONTE: o autor (2008).
Dessa forma se gera um novo vetor de tempos que contem os limites das
janelas a serem utilizadas para se calcular as FFT. As janelas apresentam, portanto,
tamanhos variáveis dentro dos limites estabelecidos, e seus pontos de início e fim
são escolhidos de forma a coincidir, quando possível, com os inícios de notas
detectados na etapa anterior.
5.2 ESTIMAÇÃO DAS FUNDAMENTAIS PARA CADA JANELA
Nessa etapa o arquivo de áudio é lido e analisado em segmentos de acordo
com o vetor de limites das janelas gerado anteriormente. Cada segmento é
analisado individualmente. Inicialmente é aplicado um janelamento de Hanning ao
segmento. Em seguida são adicionados zeros ao fim do segmento de forma a deixá-
26
lo com um comprimento equivalente ao dobro do tempo máximo permitido para as
janelas. Calcula-se então a FFT para o segmento e o resultado é processado por um
programa que implementa o algoritmo de estimação de fundamentais.
O estimador de fundamentais recebe duas entradas, que são o espectro do
segmento a ser analisado e o limiar para detecção de picos. O espectro que é
fornecido aqui é o valor absoluto dos valores calculados pela FFT. O estimador
retorna os bins do espectro onde há fundamentais e a intensidade associada a
essas fundamentais.
A idéia principal por trás do estimador é a de se identificar picos na
freqüência e atribuir-lhes valores ou pesos de acordo com a presença de outros
picos em suas freqüências múltiplas. Um pico que seja uma fundamental deve
usualmente apresentar mais múltiplos seus com outros picos (o que lhe soma um
valor alto) do que picos que são apenas harmônicos de alguma fundamental ou
mesmo do que um ruído detectado como pico. Portanto, picos que apresentem
valores associados altos são tidos como fundamentais. A seguir é apresentado o
algoritmo do estimador de fundamentais:
ALGORITMO 1: Estimador de fundamentais. Suas entradas são o espectro (E(k)) e
o limiar (L). Suas saídas são as fundamentais (F0(n)) e suas amplitudes (AF0(n)).
1. Procura-se por todos os picos em E(k) que estejam acima de limite, onde
limite = max{E(k)}/10(L/10). A posição dos picos é refinada através da
interpolação por splines de 9 pontos entre amostras consecutivas próximas
aos picos. Extraem-se então as posições e os valores dos picos. As posições
são os primeiros candidatos a fundamentais (C1(j)) e os valores são as
amplitudes dos primeiros candidatos (AC1(j)).
2. Cria-se uma variável para armazenar a soma de amplitudes de harmônicos
para cada primeiro candidato. SAC1(j) é inicializada como SAC1(j) ← AC1(j).
Cada elemento de SAC1(j) corresponde a um elemento de C1(j) de mesmo
índice.
3. É feita uma busca por harmônicos de ordem menor ou igual a 18 para cada
elemento de C1(j). Dado um C1(a), procura-se por {C1(b), b > a} tal que
C1(b) = harm.C1(a) ± margem, onde 2 < harm < 18 e
margem = 0,05.C1(a).e((harm – 2)/7).
27
4. Caso hajam mais de um elemento que se enquadrem como harmônicos para
um mesmo valor de harm, aquele que mais se aproxima do valor teórico para
aquele harmônico é escolhido. Faz-se SAC1(a) ← SAC1(a) + max{AC1(b),
2.Ah-1}, onde a indica o índice do candidato C1(j) sendo analisado, b é o índice
do harmônico encontrado para a ordem harm e Ah-1 é a amplitude encontrada
para o harmônico de ordem harm-1 (o harmônico de ordem 1 é a própria
fundamental).
5. Caso não haja elemento de C1(j) que se enquadre como harmônico de ordem
harm para um dado C1(a), faz-se SAC1(a) ← SAC1(a) + max{E(harm.C1(a)),
2.Ah-1}.
6. Descarta-se primeiros candidatos que não apresentem uma soma de
amplitudes de harmônicos acima de um determinado valor. Os candidatos
restantes serão os segundos candidatos (C2(i)). Ou seja, C2(i) = {C1(c), onde c
é tal que SAC1(c) >= (∑=
max
1
j
m
SAC1(m))/jmax}, onde jmax é o número de elementos
de SAC1(j).
7. Igualmente, SAC2(i) = SAC1(c), onde c é o mesmo do item 6.
8. Seleciona-se as fundamentais em meio aos segundos candidatos. É
verificado para cada segundo candidato se sua posição é múltipla da posição
de alguma fundamental ou outro segundo candidato de posição anterior (aqui
também se permite uma margem de erro na comparação).
9. Se não for, o segundo candidato é considerado uma fundamental, e sua
amplitude se torna a soma das amplitudes dos harmônicos associada a ele.
10. Se for, o segundo candidato só passará a ser uma fundamental se sua soma
de amplitudes de harmônicos for superior à amplitude da fundamental ou à
soma das amplitudes dos harmônicos do segundo candidato da qual é
múltiplo.
O valor do limiar (L) do estimador deve ser definido manualmente para cada
transcrição realizada. L deve ser maior do que zero. Aplicado no início do algoritmo
do estimador, ele representa o quão sensível aos picos de freqüência o estimador
será. O limite para a aquisição dos picos é um valor calculado com base em L e no
28
valor absoluto máximo atingido pelo espectro do segmento analisado (ver passo 1
do ALGORITMO 1). O limite é, portanto, diferente para cada segmento.
O parâmetro L foi mantido como um valor a ser entrado em cada transcrição
pois ele é o que mais diretamente afeta a relação entre acerto e precisão (ver o
capítulo 6 para maiores explicações desses indicadores). Isso torna possível regular
a sensibilidade do sistema de forma a melhor adequar seu funcionamento à
complexidade da música ou ao resultado desejado. Áudios sem presença de
instrumentos percussivos ou com baixo nível de ruído aditivo permitem valores altos
de L (tipicamente L>10). Quando há instrumentos percussívos ou muito ruído no
sinal, L deve ser menor para evitar excesso de falsos positivos no resultado do
estimador (L<7 preferencialmente).
5.3 PÓS-PROCESSAMENTO DO RESULTADO DO ESTIMADOR
O objetivo do pós-processamento é gerar uma saída coerente e dentro dos
padrões estabelecidos para a saída do transcritor. Inicialmente se transforma a
representação em bins da saída do estimador de fundamentais em uma
representação numérica de acordo com o protocolo MIDI. Isto é feito aplicando-se a
EQUAÇÃO 4 ao valor do bin (assumindo o lá de referência como sendo 440Hz):
+=
Nfft
FsbinroundN
.440
.log.1269 2 (4)
onde bin é o bin que representa uma fundamental, Fs é a taxa de amostragem do
sinal de áudio de origem, Nfft é o número de pontos utilizados no cálculo da FFT e N
é o número da nota. round indica a operação de arredondamento. No protocolo
MIDI, o lá de referência corresponde à nota de número 69. Se o valor de bin
corresponder à freqüência de 440 Hz (bin.Fs/Nfft = 440 Hz) o logarítmo da
EQUAÇÃO 4 é igual a zero, o que resulta em N = 69, conforme determinado pelo
protocolo MIDI. Portanto, na EQUAÇÃO 4, o número 440 no logaritmo indica o
padrão adotado para o lá de referência, enquanto o número 69 surge do próprio
protocolo MIDI.
29
Em seguida são excluídos valores de N maiores do que 127 e menores do
que 15, primeiro por serem valores que não são bem tratados pelo algoritmo e
segundo por não corresponderem a freqüências que o ouvido humano consiga
distinguir satisfatoriamente em termos de tom, o que as torna pouco significativas
para fins de transcrição de tons.
Como há um arredondamento no cálculo do número das notas, podem
acontecer casos em que se repitam notas em um mesmo segmento. Portanto, a
etapa seguinte procura remover eventuais notas repetidas para o segmento em
análise.
Os tempos de início e fim da janela do segmento analisado determinam, a
princípio, o início e o fim das notas detectadas. No entanto, se a quantidade de
notas e o número das notas detectadas do segmento anterior ao que estiver sendo
analisado forem iguais, e, além disso, se não houver um início detectado pelo
detector de inícios entre essas janelas, então as notas da janela anterior e atual são
consideradas como sendo as mesmas notas. Nesse caso seus inícios serão iguais
ao início da janela anterior e seus finais serão iguais ao final da janela atual. Essa
situação pode se repetir para mais do que duas janelas consecutivas, contanto que
as notas estimadas sejam iguais e não haja um início de notas detectado entre as
janelas. Apesar de parecer bem restritiva, essa condição é bastante comum durante
uma transcrição musical.
5.4 UTILIZAÇÕES DA SAÍDA E AVALIAÇÃO DO SISTEMA
A saída do sistema de transcrição implementado nesse trabalho foi utilizada
com sucesso em um programa rudimentar de síntese de áudio. Isso permitiu a
avaliação subjetiva do sinal transcrito pelo sistema.
Tentou-se utilizar a saída do sistema para alimentar um programa de
terceiros que gera arquivos MIDI, mas o resultado não foi satisfatório.
Eventualmente notas transcritas estavam ausentes nos arquivos gerados pelo
programa e outras ainda apresentaram erros nos tempos de início ou fim.
O principal uso da saída do sistema de transcrição foi, no entanto, na
avaliação objetiva do sistema. Foi desenvolvido um programa que lê e compara um
30
arquivo de MIDI com a saída do sistema. Para utilizar esse programa de avaliação, é
necessário sintetizar o MIDI em um arquivo wave, tomando o cuidado para que os
tempos do arquivo MIDI sejam sintetizados com fidelidade. O arquivo wave deve
então ser transcrito pelo sistema e a saída deve ser fornecida, juntamente com o
MIDI que originou o wave, para o programa de avaliação objetiva. O resultado das
avaliações executadas se encontram no capítulo 6.
31
6 RESULTADOS
A FIGURA 12 mostra o resultado do detector de inícios de notas de forma
gráfica. Apesar de não se tratar de um resultado final do sistema, a detecção de
inícios pode ser utilizada na determinação da métrica da música (não abordada
aqui). Não foram realizadas análises objetivas da qualidade do detector de inícios de
notas implementado, porque, além de não ser o resultado final do sistema, a
tentativa de implementar um sistema automático de avaliação utilizando arquivos
MIDI falhou provavelmente devido a imprecisões temporais dos sintetizadores MIDI
utilizados. Vale destacar que esse tipo de análise feita manualmente seria muito
trabalhosa e não seria justificável para um resultado intermediário. No entanto,
estima-se que o detector de picos apresenta um bom desempenho, suficiente para
auxiliar o estimador de fundamentais a separar as diferentes notas da música.
FIGURA 12 - Gráfico mostrando um sinal de áudio (nível 1). As linhas verticais tracejadas indicam os instantes contidos no vetor de inícios gerado pelo bloco de detecção de inícios de notas. Neste
exemplo todos os inícios de notas são reconhecidos e existem apenas 2 falso-positivos. FONTE: o autor (2008).
A avaliação do sistema final foi padronizada de forma a seguir os dois
indicadores mais utilizados nas fontes pesquisadas (uma referência para isto é
(RYYNANEN, KLAPURI, 2005, p. 3)), que são o índice de acertos (ou recall rate) e a
precisão (ou precision rate). Esses indicadores são calculados da seguinte forma:
ref
corA = ,
trans
corP = (5)
32
onde A é o índice de acertos, P é a precisão, cor é o número de notas transcritas
que correspondem a uma nota existente na música (notas corretas), ref é o número
total de notas presentes na música e trans é o número total de notas transcritas pelo
sistema. Os valores de A e P são adimensionais e sempre estão contidos entre 0 e 1
(incluindo estes), sendo que 1 é o melhor resultado possível para ambos em termos
de qualidade de transcrição e 0 é o pior resultado possível.
Para se chegar nesses números, um sistema automático de avaliação
foi desenvolvido, conforme citado no item 5.4. Dessa forma, a fonte das músicas
eram arquivos MIDI. Procurou-se avaliar o sistema com músicas que apresentassem
diferentes graus de complexidade para a transcrição. Além disso, as avaliações
foram feitas para diferentes valores do limiar L (ver item 5.2). A TABELA 1
demonstra os resultados obtidos na avaliação do sistema para quatro músicas
diferentes. A primeira é uma versão de “atirei o pau no gato” contendo apenas
guitarra e contra-baixo elétricos, com no máximo duas notas simultâneas. A segunda
é uma Valsa de Chopin que contém apenas um piano. A terceira é o Cânone de
Pachelbel interpretado por um conjunto de cordas (violinos, Cellos e uma harpa). A
última é um MIDI da música “Time is running out” da banda inglesa “Muse” que
apresenta percussão (bateria).
Limiar L 5 10 15 Índice A (%) P (%) A (%) P (%) A (%) P (%)
Atirei o pau no gato 70 89 90 100 97 100 Chopin – Opus 69 n2 in Bm - Waltze 41 79 71 69 78 55 Pachelbel – Cânone em D 44 89 69 77 80 60
Músicas
Muse – Time is running out 29 87 48 71 63 51 TABELA 1 - Avaliação do sistema de transcrição segundo índices de acerto (A) e precisão (P) para
quatro músicas diferentes. Os índices estão representados na forma de porcentagem por conveniência. Cada música foi transcrita utilizando-se diferentes valores do limiar L.
FONTE: o autor (2008).
Uma música simples como a primeira da TABELA 1 apresentou um
excelente resultado para altos valores de L. Apesar de não ser uma boa
representante de composições polifônicas, ela serve para mostrar que o sistema é
capaz, teoricamente, de alcançar um alto nível de acerto e precisão.
Já a última música apresentou um resultado bastante inferior às demais. A
presença de um instrumento percussivo e de distorções nos instrumentos melódicos
são assumidos como os principais motivos disso, o que mostra que o sistema ainda
não é robusto o suficiente para lidar com a presença de ruidos aditivos.
33
De um modo geral, percebe-se que um aumento de L, em outras palavras da
sensibilidade do estimador de fundamentais, leva a um maior índice de acerto, pois
mais notas são reconhecidas, mas a uma menor precisão, pois muitas notas que
não estão na música são geradas pelo estimador de fundamentais devido a ruídos
ou imprecisão na separação de fundamentais e harmônicos. No entanto, uma
sensibilidade muito baixa pode também ocasionar falsos-positivos, como fica claro
pelo aumento da precisão na primeira música com o aumento de L=5 para L=10. A
FIGURA 13 ilustra mais claramente esse comportamento de A e P em relação ao
limiar L. A música utilizada para gerar esse gráfico foi a mesma Valsa de Chopin da
TABELA 1.
FIGURA 13 - Índice de acertos e precisão para a Valsa de Chopin em função do limiar L. FONTE: o
autor (2008).
No gráfico acima fica claro o aumento de A e diminuição de P com o
aumento de L, com exceção do intervalo de L=1 até L=2, no qual o valor de P
aumenta. Ou seja, a precisão pode cair para valores muito baixos de L, mas de um
modo geral, quando se deseja que mais notas sejam reconhecidas em detrimento de
precisão, devem-se utilizar valores mais elevados de L. O contrário vale para maior
precisão, tomando-se o devido cuidado para que o valor de L não seja tão baixo a
ponto de reduzir a precisão. Para a maioria dos casos em que não haja instrumentos
34
percussivos na música, a região em torno de L=10 representa uma boa relação entre
acertos e precisão.
Além da avaliação objetiva também se avaliou o resultado do sistema
subjetivamente, através do uso de um sintetizador que utilizou a saída do sistema de
transcrição para gerar novamente um arquivo wave. De um modo geral, as músicas
sintetizadas a partir dos dados da transcrição eram muito semelhantes às originais
em relação às notas, tempos e intensidades. No entanto, como o sistema não
reconhece instrumentos, o timbre sintetizado era muito diferente do original.
Para a avaliação subjetiva, a região que apresentou um melhor resultado
estava em torno de L=12, pouco acima da região considerada de boa relação para
os acertos e a precisão pela análise objetiva. Isso se deve principalmente ao fato de
que o sistema de transcrição atribui intensidades às notas transcritas. A avaliação
objetiva, no entanto, não leva as intensidades em consideração, e cada nota
transcrita, independente de sua intensidade ou duração, apresenta um mesmo peso
no cálculo dos índices. Muitas vezes, notas que são transcritas mas que não
correspondem a notas da música original apresentam uma baixa intensidade, ou até
uma curta duração. Como o sintetizador leva em conta a intensidade das notas,
essas notas “fantasma” não apresentam o mesmo peso do ponto de vista perceptual
do que as demais notas. Isso faz com que seja mais desejável, para a avaliação
subjetiva, um maior índice de acertos do que uma maior precisão.
35
7 CONCLUSÃO E TRABALHOS FUTUROS
Segundo Klapuri, “um importante fato sobre transcrição musical é que ela é
difícil. [...] Qualquer um que alegue ter uma solução rápida para o problema da
transcrição musical, ou um único mecanismo que resolva o problema de uma vez
por todas – está enganado” (KLAPURI, 2004, pg. 98, tradução nossa). De fato, ao
longo deste trabalho ficou claro que a transcrição musical representa um desafio que
ainda vai levar muito esforço para ser resolvido.
O sistema de transcrição desenvolvido neste trabalho ainda se encontra
muito aquém de ser considerado próprio para uma aplicação prática de transcrição
musical, mas os resultados alcançados não estão distantes dos resultados obtidos
por outros autores, o que é bastante animador, especialmente se considerada a
simplicidade e o estágio inicial em que se encontra esse trabalho. Outro aspecto
interessante é que esse sistema não apresenta um alto custo computacional. A
transcrição ocorre em um intervalo de tempo menor do que o tempo da própria
música.
Apesar dos resultados animadores mostrados pelo sistema de transcrição
desenvolvido neste trabalho, existem alguns pontos fracos importantes. Um deles é
a dificuldade do sistema em lidar com sinais de entrada ruidosos ou que contenham
percussão. Não foi tomado nenhum cuidado para tornar o sistema mais resistente a
esse tipo de situação. Uma melhoria futura interessante seria incluir no sistema
alguma forma de reduzir a interferência causada por percussão ou ruídos aditivos.
Outra característica desse sistema é que ele realiza uma análise do sinal de
áudio de forma a obter informações musicalmente relevantes exclusivamente da
representação de nível 1. Essas informações são então processadas e geram a
saída do sistema. Ou seja, esse sistema realiza um processamento exclusivamente
bottom-up (ou de-baixo-para-cima), onde o fluxo de informações ocorre apenas no
sentido da saída do sistema, sem que haja realimentações ou adaptações do
sistema à música sendo transcrita.
Se tomarmos como referência o melhor sistema de transcrição que se tem
disponível hoje - o sistema auditivo de um músico treinado - sabe-se que ele faz
largo uso de estratégias de processamento top-down (ou de-cima-para-baixo),
através do uso de conhecimentos prévios, modelos internos e realimentações, que
36
adaptam o processamento bottom-up de acordo com as características da música
sendo transcrita.
Portanto, outra proposta de trabalho futuro é a inclusão de processamentos
tipo top-down ao sistema de transcrição. O uso de modelos de instrumentos é um
exemplo desse tipo de implementação que permite não só o reconhecimento dos
instrumentos presentes na música, como uma melhor identificação das
fundamentais. A grande questão nesse sentido está na geração de modelos de
instrumentos que realmente permitam a identificação e distinção dos diferentes
instrumentos.
Outra forma de se implementar um processamento top-down é através do
uso de conhecimentos de teoria musical e de relações entre notas para gerar
modelos internos de música. Esses modelos podem guiar a transcrição
especialmente em situações de ambigüidade na transcrição, permitindo uma decisão
baseada em probabilidades geradas pelo modelo.
37
8 REFERÊNCIAS KLAPURI, A. Automatic transcription of music. 82 p. Dissertação (Mestrado em Processamento de Sinais) – Departamento de Tecnologia da Informação, Universidade de Tecnologia de Tampere, Finlândia, 1998. KLAPURI, A. Signal processing methods for the automatic transcription of music. 110 p. Tese (Doutorado em Processamento de Sinais) – Departamento de Tecnologia da Informação, Universidade de Tecnologia de Tampere, Finlândia, 2004. KLAPURI, A.; ERONEN, A. J.; ASTOLA, J. T. Automatic estimation of the meter of acoustic musical signals. Tampere University of Technology, Institute of Signal Processing, Report 1 - 2004, Tampere, Finland, 2004. BELLO, J. P. et al. A tutorial on onset detection in music signals. IEEE transactions on speech and audio processing, vol.13, no.5, Setembro 2005. SAKURABA, Y.; KITAHARA, T.; OKUNO. H. G. Comparing feaures for forming music streams in automatic music transcription IEEE International Conference on Acoustics, Speech, and Signal Processing, Vol. 4, pag: iv-273 - iv-276. Maio 2004. PAULUS, J. Acoustic modelling of drum sounds with hidden Markov models for music transcription. IEEE International Conference on Acoustics, Speech and Signal Processing, Vol. 5, pag V-V, Toulouse, Maio 2006. PERTUSA, A.; INESTA, J. M. Polyphonic monotimbral music transcription using dynamic networks. Pattern Recognition Letters 26, Abril 2005. CEMGIL, A. T.; KAPPEN, H. J.; BARBER, D. A generative model for music transcription. IEEE Transactions on Audio, Speech, and Language Processing, Vol. 14, pag: 679- 694 Março 2006. KAPANCI, E.; PFEFFER, A. Signal-to-score music transcription using graphical models. Harvard University, Janeiro 2006. YIN, J. et al. Music transcription using an instrument model. IEEE International Conference on Acoustics, Speech, and Signal Processing, Vol 3, pag: iii/217 - iii/220, Março 2005. SATAR-BOROUJENI, H.; SHAFAI, B. Kalman filtering application in automatic music transcription. IEEE Conference on Control Applications, Toronto, Canada, Agosto 2005 ABDALLAH, S. A.; PLUMBLEY, M. D. Polyphonic music transcription by non-negative sparse coding of power spectra. Centre for Digital Music, Queen Mary, University of London, 2004.
38
RYYNANEN, M. P.; KLAPURI, A. Polyphonic music transcription using note event modeling. IEEE Workshop on Applications of Signal Processing to Audio and Acoustics, pag: 319- 322, Outubro 2005. PEELING, P., LI, C., GODSILL, S. Poisson point process modeling for polyphonic music transcription. The Journal of the Acoustical Society of America Express Letters, 121 (4), Março 2007. MIYAMOTO, K. et al. Probabilistic approach to automatic music transcription from audio signals. IEEE International Conference on Acoustics, Speech and Signal Processing, Vol 2, pag: II-697-II-700, Abril 2007. TAKEDA, H., NISHIMOTO, T., SAGAYAMA, S. Rhythm and tempo analysis toward automatic music transcription. IEEE International Conference on Acoustics, Speech and Signal Processing, Vol 4, pag:IV-1317 - IV-1320, Abril 2007. HELEN, M., VIRTANEN, T. Separation of drums from polyphonic music using non-negative matrix factorization and support vector machine. 13th European Signal Processing Conference (EUSIPCO 2005), Antalya, Turkey, Setembro 2005. SCHMIDT, M. N., MORUP, M.. “Sparse non-negative matrix factor 2-D deconvolution for automatic transcription of polyphonic music”. Technical University of Denmark, Informatics and Mathematical Modelling, Dezembro 2005. AUCOUTURIER, J., PACHET, F., SANDLER, M. ‘The Way It Sounds’: timbre models for analysis and retrieval of music signals. IEEE TRANSACTIONS ON MULTIMEDIA, VOL.7, NO.6, Dzembro 2005. WIKIPEDIA. Definições de Música <http://pt.wikipedia.org/wiki/Defini%C3%A7%C3%B5es_de_m%C3%BAsica> Acesso em: março de 2008.
39