reconhecimento de notas musicais manuscritas utilizando os...
TRANSCRIPT
Reconhecimento de Notas Musicais Manuscritas Utilizando os
Descritores ORB com Bag of Words
Gustavo Ântonny. de S. da S., João D. S. de Almeida, Geraldo Braz Junior
Departamento de Informática – Universidade Federal do Maranhão (UFMA) – São
Luís, MA – Brazil
[email protected], [email protected], [email protected]
Abstract. The automated process of scanning and recognition of
handwritten musical scores is a known issue and studied in computer vision
area. In this article, we will use a feature extraction algorithm that is invariant
to scale and able to deal with noise, ORB (Oriented FAST and Rotated
BRIEF), for the acquisition of the features in an image-based scanned
handwritten scores, using the methods: BoW (Bag of Words) and SVM
(Support Vector Machine) to perform the classification. With results that
reaching 98.05% of accuracy over 20 classes of symbols.
Resumo. O processo automatizado de digitalização e reconhecimento de
partituras musicais manuscritas é um problema conhecido e estudado na área
de visão computacional. Neste artigo será utilizado o algoritmo de extração
de características, invariante a escala e capaz de lidar com ruídos, ORB
(Oriented FAST and Rotated BRIEF), para a aquisição das características sob
uma base de imagens com partituras manuscritas digitalizadas, utilizando os
métodos: de BoW (Bag of Words) e SVM (Support Vector Machine) para
realizar a classificação. Obtendo resultados que atingiram 98.05% de
acurácia sobre 20 classes de símbolos.
Palavras-Chave: Reconhecimento de Imagens. ORB. Partituras Musicais Manuscritas.
BoW (Bag of Words). SVM (Support Vector Machine).
1. Introdução
O campo de identificação automática de símbolos manuscritos apresenta grandes
desafios, devido à grande variação de como pessoas diferentes podem desenhar o
mesmo símbolo. Além disso, o procedimento de identificação correta da notação
musical envolve diferentes desafios, mais complexos do que o reconhecimento de
texto.[1]
As diferenças entre a notação musical e o texto vão mais longe do que a simples
variação de caracteres atômicos. O texto é predominantemente unidimensional, ao passo
que a música faz pleno uso do espaço bidimensional. Por exemplo, uma clave no início
de uma linha, afeta notas subsequentes sobre a qual o músico terá que aguardar até que
outra clave seja encontrada, ou o fim da música é atingido; e as sílabas escritas abaixo
de uma linha estão associadas a notas particulares. [2]
Neste trabalho, propomos uma solução para a detecção de símbolos musicais
manuscritos, utilizando-se o ORB como o algoritmo para a extração de características,
JIM 2016 - VI Jornada de Informática do Maranhão
JIM, 2016. ISSN: 2358-8861
em conjunto com a técnica para criação de dicionários: o BoW, que possibilita a
extração dos histogramas que posteriormente são utilizados no processo de classificação
e identificação, efetuados pelo SVM.
2. Fundamentação Teórica
Há um número incrível de formas e possibilidades para combinar imagens que
podem incluir forma, cor e textura. [3] Entretanto, em nosso objetivo dispomos quase
que invariavelmente de duas cores, uma do papel e outra da partitura descrita, sem
textura, necessitamos capturar notas musicais invariantes a escala, forma e ruído. Então
foi escolhido o algoritmo ORB (Oriented FAST and Rotated BRIEF) para essa
pesquisa. A seguir, uma descrição do algoritmo utilizado.
2.1 ORB - Oriented FAST and Rotated BRIEF
Rublee et al [4], propuseram um descritor binário baseado no BRIEF [5],
chamado ORB, que é invariante a rotação e capaz de tratar o ruído. Os autores
demonstram através de experimentos, que o ORB é até duas vezes mais rápido do que o
SIFT, durante a execução, bem como em muitas situações. A eficiência foi testada em
várias aplicações do mundo real, incluindo a detecção de objetos em patch-tracking em
smartphone’s.
No ORB a informação de orientação que falta no FAST é complementada com Rosin's
corner intensity [6].
O momento M do patch (região de interesse) I pode ser calculado como:
𝑚𝑝𝑞 = ∑ 𝑥𝑝𝑦𝑞𝐼𝑝(𝑥, 𝑦)
𝑥,𝑦
As imagens nas quais estamos interessados possuem duas dimensões, logo, precisamos
de duas variáveis independentes: x e y para acessá-las. Onde p e q representam a ordem
dos momentos.
Podemos calcular o centroide C (Centro de Gravidade do Objeto) como:
𝐶 = (𝑚10
𝑚00,𝑚01
𝑚00)
Pode-se definir a orientação relativa do patch como:
𝑤 = 𝑎𝑡𝑎𝑛2(𝑚01, 𝑚10)
O descritor patch foi fornecido a partir do operador BRIEF, uma representação
de cadeia de bit’s construído a partir de um conjunto de testes de intensidade binários.
Um teste binário t pode ser realizado como:
𝑡(𝐼𝑝, 𝑥, 𝑦) = { 1 ∶ 𝐼𝑝(𝑥) < 𝐼𝑝(𝑦)
0: 𝐼𝑝(𝑥) ≥ 𝐼𝑝(𝑦)
Onde, 𝐼𝑝(𝑥) é a intensidade do ponto x, e 𝐼𝑝(𝑦) é a intensidade do ponto y. O vetor de
características do descritor BRIEF é definida como um vetor de testes binários, de
tamanho n (128, 256 bits):
𝑏(𝐼𝑝) = ∑ 2𝑖−1 𝑡(𝐼𝑝, 𝑥𝑖, 𝑦𝑖)
1≤𝑖≤𝑛
JIM 2016 - VI Jornada de Informática do Maranhão
JIM, 2016. ISSN: 2358-8861
Uma vez que tenhamos calculado a orientação do patch, pode-se realizar uma
rotação canônica [10] e, em seguida, calcular o descritor, obtendo-se assim alguns
momentos de invariância a rotação.
2.2 BoW – (Bag of Words) – Descritores Binários
O modelo BoW [11] trata uma imagem como um repositório de “palavras-
código", que consiste essencialmente em um conjunto de descritores locais
independentes. Essas características são extraídas por descritores como o ORB, por
meio de amostragens aleatórias, segmentação, ou grade regular.
Enquanto características baseadas em histograma estão prontas para serem
usadas na classificação de imagens ou tarefas de recuperação, descritores locais
requerem um passo de quantização adicional para ser transformado em características
da imagem total.
A abordagem clássica é empregar k-means clustering utilizando a distância
euclidiana entre vetores de características, e isso provou ser eficaz, mesmo que
computacionalmente custoso, durante a fase de treinamento.
Infelizmente quando se lida com um vetor de características binárias, a distância
euclidiana não é a métrica escolhida, e o vetor médio é indefinido. Uma distância
razoável e eficaz entre vetores binários é à distância de Hamming [7] (o número de bits
diferentes nas posições correspondentes).
E finalmente, o algoritmo processa uma coleção de vetores binários e procura
inicialmente de forma aleatória e recursivamente por um número de bons centroides,
que se tornará o dicionário visual para o modelo BoW.
3. Metodologia
O trabalho a ser realizado, implica no reconhecimento de notas musicais
manuscritas, para tanto foi selecionado um conjunto de 20 símbolos musicais a serem
classificados e validados em um conjunto de cinco etapas, descritos abaixo, o fluxo da
nossa metodologia aplicada no projeto a partir da extração de características efetuada,
pode ser descrita pelo pipeline abaixo:
Figura 1. Pipeline
JIM 2016 - VI Jornada de Informática do Maranhão
JIM, 2016. ISSN: 2358-8861
1ª Etapa – Aquisição de Imagem / Banco de Dados:
As imagens digitalizadas de partituras manuscritas utilizadas nesse projeto
pertencem a base CVCMUSICMA, cada imagem representa uma partitura criadas por
cinquenta músicos. Para cada músico, foram escolhidas quatro partituras aleatórias para
extração dos símbolos.
2ª Etapa – Segmentação:
Sobre as imagens pré-selecionadas acima, é aplicado uma segmentação
automática a partir de uma seleção manual de 20 símbolos (clave de fá, compasso de
espera, bemol, mínima, semínima, pausa de semínima, pausa de colcheia, sustenido,
clave de sol, clave de dó, tempo, barra, semibreve, semicolcheia, bequadro, crescendo,
cabeça da nota, semicolcheia ligada, colcheia ligada, diminuendo), gerando um arquivo
contendo todas as localizações dos símbolos e suas respectivas classes.
3ª Etapa – Extração de Características:
As imagens segmentadas são então adicionadas e executadas sobre o algoritmo
ORB [4] utilizando-se como matcher o algoritmo de Brute Force [4] sobre a distância de
Hamming [4] e o Harris Corner Detector [4], retornando 577 características que são
armazenadas em arquivo para posterior classificação.
4ª e 5ª Etapa – Classificação e Validação:
Por meio da utilização da biblioteca LIBSVM foram estimados os parâmetros C
e γ utilizados no núcleo radial, que posteriormente foram aplicados na classificação dos
dados utilizando-se o classificador SVM (Máquina de Vetores de Suporte).
4. Resultados
A partir da extração de características, criação do BoW e posterior
processamento, os resultados obtidos, empregando-se a técnica de validação cruzada,
estão descritos abaixo.
Classificação: Treino / Teste: Precisão:
20/80 94,90%
40/60 96,72%
60/40 97,77%
80/20 98,05%
Tabela 1: Resultados da validação cruzada.
A Tabela 1, apresenta o processo de classificação constituído de quatro etapas de
treino/teste, onde, para cada etapa/grupo houve cinco testes de classificação
independentes, conforme descreve a técnica de validação cruzada, ao final a média dos
testes pode ser vista na coluna precisão.
Os melhores resultados foram obtidos no caso 80/20 com uma pontuação total
de acertos de 98.05%, a análise detalhada de classificação do respectivo caso para o
melhor resultado nesse grupo que foi de 98,62%, pode ser encontrado na Tabela 2:
JIM 2016 - VI Jornada de Informática do Maranhão
JIM, 2016. ISSN: 2358-8861
Classe TP Rate FP Rate Precision Recall F-Measure MCC ROC Area PRC Area
1 1 0 1 1 1 1 1 1
2 1 0 1 1 1 1 1 1
3 0,95 0,001 0,974 0,95 0,962 0,96 0,974 0,928
4 0,975 0 1 0,975 0,987 0,987 0,988 0,976
5 0,975 0 1 0,975 0,987 0,987 0,988 0,976
6 1 0 1 1 1 1 1 1
7 1 0 1 1 1 1 1 1
8 1 0,001 0,976 1 0,988 0,987 0,999 0,976
9 1 0 1 1 1 1 1 1
10 1 0 1 1 1 1 1 1
11 1 0,003 0,952 1 0,976 0,975 0,999 0,952
12 0,975 0 1 0,975 0,987 0,987 0,988 0,976
13 0,975 0,001 0,975 0,975 0,975 0,974 0,987 0,952
14 1 0 1 1 1 1 1 1
15 1 0 1 1 1 1 1 1
16 0,975 0 1 0,975 0,987 0,987 0,988 0,976
17 1 0 1 1 1 1 1 1
18 1 0 1 1 1 1 1 1
19 0,975 0,007 0,886 0,975 0,929 0,926 0,984 0,865
20 0,925 0,001 0,974 0,925 0,949 0,946 0,962 0,904
Tabela 2: Esta tabela apresenta o detalhamento do melhor resultado obtido dos cinco testes realizados sobre o
grupo 80/20 que obteve uma acurácia de 98,62%.
Para melhor compreensão das métricas utilizadas na Tabela 2: Powers, David M
W (2011). "Evaluation: From Precision, Recall and F-Measure to ROC, Informedness,
Markedness & Correlation". Journal of Machine Learning Technologies. 2 (1): 37–63.
Comparando os resultados apresentados pelo método proposto com os resultados
dos trabalhos de outros pesquisadores, sobre a mesma base de dados e idêntico método
de treino/teste, obtivemos os seguintes dados apresentados pela Tabela 3:
Métodos - Artigos Acurácia Total
Momentos de HU + SVM 71,12%
Redes Neurais Convolucionais - GoogLeNet [9] 97.21%
ORB + BoW + SVM 98,05%
Tabela 3: Nesta tabela pode ser observado os resultados de três abordagens diferenciadas sobre o problema
proposto neste artigo com a mesma base de dados, mesmos símbolos e método de validação cruzada.
Logo podemos observar, que o algoritmo de extração de características ORB
juntamente com a técnica de Bag of Words, mostrou-se uma abordagem promissora
para o reconhecimento de notas musicais manuscritas, obtendo uma acurácia de
98,05%. Nestes casos, para objetos muito parecidos, o sistema pode se confundir, como
por exemplo, no caso dos símbolos: pausa de semínima e pausa de colcheia, mas de
forma global, podemos garantir uma boa acurácia.
5. Conclusão
O algoritmo de extração de características ORB como solução para
reconhecimento de pequenas bases de dados ou para uma base de dados onde os objetos
JIM 2016 - VI Jornada de Informática do Maranhão
JIM, 2016. ISSN: 2358-8861
em questão apresentem formas bastante distintas apresentou-se bastante acurado,
conseguindo extrair características relevantes para a criação do BoW e posterior
classificação no SVM, falhando ao encontrar símbolos estruturalmente parecidos, mas
definindo assim um método relevante de detecção para objetos manuscritos, o qual pode
ser observado na tabela de comparação de resultados com outras metodologias.
Em estudos futuros propomos a utilização de técnicas conjuntas de extração e
segmentação e pré-processamento de imagens, abordando métodos que possibilitem a
extração características estruturais dos símbolos, bem como novas abordagens,
utilizando os algoritmos de extração como o FREAK (Fast Retina Keypoint) ou
LATCH (Learned Arrangements of Three Patch Codes) para o reconhecimento tanto de
notas musicais manuscritas bem como outros objetos manuscritos, como: os símbolos
ortográficos.
6. Referências
[1] Ben-Dayan, B., & Giloh, I. (2013). Optical Music Recognition.
[2] Bainbridge, D. (1997). Extensible optical music recognition.
[3] Ali, H. K., & Whitehead, A. (2014). Modern to Historic Image Matching:
ORB/SURF an Effective Matching Technique.
[4] Rublee, E., Rabaud, V., Konolige, K., & Bradski, G. (2011). ORB: An efficient
alternative to SIFT or SURF. In 2011 International conference on computer vision (pp.
2564-2571). IEEE.
[5] Calonder, M., Lepetit, V., Strecha, C., & Fua, P. (2010). Brief: Binary robust
independent elementary features. In European conference on computer vision (pp. 778-
792). Springer Berlin Heidelberg.
[6] Rosin, P. L. (1999). Measuring corner properties. Computer Vision and Image
Understanding, 73(2), 291-307.
[7] Grana, C., Borghesani, D., Manfredi, M., & Cucchiara, R. (2013, March). A fast
approach for integrating ORB descriptors in the bag of words model. In IS&T/SPIE
Electronic Imaging (pp. 866709-866709). International Society for Optics and
Photonics.
[8] Fornés, A., Dutta, A., Gordo, A., & Lladós, J. (2012). CVC-MUSCIMA: a ground
truth of handwritten music score images for writer identification and staff removal.
International Journal on Document Analysis and Recognition (IJDAR), 15(3), 243-251.
[9] Pereira R., Matos C., Braz G., Dallyson J., Paiva A. (2016). A Deep Approach for
Handwritten Musical Symbols Recognition (Universidade Federal do Maranhão.
Departamento de Informática).
[10] Sossa, H., Barrón, R., & Vázquez, R. A. (2004). Transforming fundamental set of
patterns to a canonical form to improve pattern recall. In Ibero-American Conference on
Artificial Intelligence (pp. 687-696). Springer Berlin Heidelberg.
[11] Csurka G, Dance C, Fan L, Willamowski J, Bray C (2004) Visual categorization
with bags of keypoints. In: Workshop on Statistical Learning in Computer Vision.
JIM 2016 - VI Jornada de Informática do Maranhão
JIM, 2016. ISSN: 2358-8861