TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a...

40
UNIVERSIDADE FEDERAL DO PARANÁ RUDOLFO AUGUSTO ERSCHING RÜNCOS TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS MELÓDICOS HARMÔNICOS CURITIBA 2008

Transcript of TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a...

Page 1: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

UNIVERSIDADE FEDERAL DO PARANÁ

RUDOLFO AUGUSTO ERSCHING RÜNCOS

TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS MELÓDICOS HARMÔNICOS

CURITIBA 2008

Page 2: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 3: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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.

Page 4: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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.

Page 5: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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.

Page 6: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 7: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 8: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 9: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 10: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 11: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 12: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 13: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 14: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 15: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 16: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 17: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 18: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 19: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 20: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 21: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 22: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 23: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 24: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 25: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 26: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 27: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 28: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 29: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 30: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 31: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 32: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 33: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 34: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 35: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 36: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 37: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 38: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 39: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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

Page 40: TRANSCRIÇÃO AUTOMÁTICA DE INSTRUMENTOS … · Neste trabalho é desenvolvido um sistema para a transcrição automática de trilhas ... No entanto, fazer com que um computador

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