Reconhecimento de Gestos de Maestro
Reconhecimento de Gestos de Maestro
Reconhecimento de Gestos de Maestro
Curitiba
2005
i
Paraná
__________________________________________________________
Prof. Marcus Vinicius Lamar, Ph.D.
Orientador
___________________________________________________________
Prof. Oscar da Costa Gouveia Filho, Dr.
Coordenador do Programa em Pós-Graduação em Engenharia Elétrica
Banca Examinadora
__________________________________________________________
Prof. Marcus Vinicius Lamar, Ph.D.
Presidente
__________________________________________________________
Ewaldo Luiz de Mattos Mehl, Dr.
__________________________________________________________
Prof. Wilson Arnaldo Artuzi Júnior, Ph.D.
__________________________________________________________
Leandro dos Santos Coelho, Dr.
ii
sabedoria.
Provébios 18:15
iii
Agradecimentos
especialmente à minha amada esposa Gisele, que me amou e suportou todos os dias. Ao
professor Marcus Vinícius Lamar (“Kiko”), que em momento algum negou auxilio e
viabilizou a execução deste trabalho com seus vastos conhecimentos e sua inesgotável
1 SUMÁRIO
Página
SUMÁRIO..........................................................................................................................................IV
LISTA DE ABREVIAÇÕES E ACRÔNIMOS .................................................................................VI
LISTA DE FIGURAS....................................................................................................................... VII
LISTA DE TABELAS.....................................................................................................................VIII
RESUMO............................................................................................................................................IX
ABSTRACT......................................................................................................................................... X
1 INTRODUÇÃO ................................................................................................................................ 1
1.1 CLASSIFICAÇÃO DOS GESTOS .........................................................................................................2
1.2 ELEMENTOS MUSICAIS...................................................................................................................3
1.2.1 Pulso (beat)..........................................................................................................................3
1.2.2 Tempo ..................................................................................................................................4
1.2.3 Dinâmica..............................................................................................................................4
1.2.4 Articulação...........................................................................................................................4
1.2.5 Expressão.............................................................................................................................4
1.3 REVISÃO BIBLIOGRÁFICA ..............................................................................................................4
1.4 PROPOSTA ....................................................................................................................................7
1.5 ESTRUTURA DA DISSERTAÇÃO .......................................................................................................8
2 REDES NEURAIS E HMM.............................................................................................................. 9
2.1 FUNDAMENTOS DE REDES NEURAIS ................................................................................................9
2.2 ESTRUTURAS DE REDES NEURAIS ................................................................................................. 13
2.2.1 Redes diretas (Feedforward)............................................................................................... 13
2.2.2 LVQ (Learning Vector Quantization) .................................................................................. 14
2.3 REDES NEURAIS TEMPORAIS ....................................................................................................... 15
2.3.1 Redes não recorrentes......................................................................................................... 15
2.3.2 Redes localmente recorrentes.............................................................................................. 17
2.3.3 Redes totalmente recorrentes .............................................................................................. 17
2.3.4 Redes parcialmente recorrentes .......................................................................................... 18
2.4 REDES NEURAIS COMPOSTAS ...................................................................................................... 20
2.4.1 CombNET-II....................................................................................................................... 20
2.4.2 T-CombNET ....................................................................................................................... 21
2.5 TREINAMENTO DE REDE NEURAL ................................................................................................. 23
2.5.1 Treinamento supervisionado ............................................................................................... 23
2.5.2 Treinamento não-supervisionado ........................................................................................ 24
2.6 HMM (HIDDEN MARKOV MODELS) .............................................................................................. 25
3 SISTEMA PROPOSTO.................................................................................................................. 28
3.1 AQUISIÇÃO E PROCESSAMENTO DE VÍDEO..................................................................................... 29
3.2 MEDIDA DE TEMPO E DINÂMICA .................................................................................................... 32
3.3 CLASSIFICAÇÃO DE GESTOS ......................................................................................................... 33
4 RESULTADOS EXPERIMENTAIS .............................................................................................. 34
4.1 EXPERIMENTO 1.......................................................................................................................... 34
4.1.1 Banco de dados .................................................................................................................. 34
4.1.2 Resultados .......................................................................................................................... 36
4.2 EXPERIMENTO 2.......................................................................................................................... 37
v
VQ Vector Quantization
3 Lista de Figuras
Página
4 Lista de Tabelas
Página
Tabela 1-1: Soluções para captura do movimento das mãos de maestro. ........................6
Tabela 4-1: Resultados do experimento 1. ................................................................... 36
Tabela 4-2: Banco de dados do experimento 2............................................................. 38
Tabela 4-3: Taxa de reconhecimento para expressão da mão direita. ........................... 49
Tabela 4-4: Taxa de reconhecimento de gestos de articulação em movimentos
de 4 pulsos/compasso............................................................................... 49
Tabela 4-5: Taxa de reconhecimento de gestos de articulação em movimentos
de 3 pulsos/compasso............................................................................... 49
Tabela 4-6: Taxa de reconhecimento de gestos de articulação em movimentos
de 2 pulsos/compasso................................................................................ 49
Tabela 4-7: Estruturas das redes com melhores resultados nos testes. .......................... 51
Tabela 4-8: Taxa de reconhecimento de gestos de articulação + expressão,
com os 9 movimentos identificados pela mesma rede............................... 52
Tabela 4-9: Taxa de reconhecimento para expressão da mão esquerda......................... 54
Tabela 4-10: Configuração das redes........................................................................... 54
Tabela 4-11: Taxa de reconhecimento de gestos de articulação + expressão
(9 movimentos) com os vídeos separados em 3 grupos (A,B e C)............ 58
ix
5 Resumo
orquestra na execução de uma música. Tempo, dinâmica e expressão são algumas das
pelos outros músicos eles seguem uma gramática definida. Nesta pesquisa foram
Palavras Chave
6 Abstract
The conducting gestures have the goal to lead the musicians in a music
execution. Tempo, dynamic and expression are some of the conducting responsibilities
in the music. To be recognized by the musician, the gestures follow well defined
grammatical rules.In this research, tests were done using computational methods to
recognize the conducting gestures, as tempo, dynamic and expressive gestures from
both hands. Taking advantage of image processing, tempo and dynamic were extracted
using analysis of the vertical velocity from the right hand. The conducting gesture
recognition system was implemented using Elman and T-CombNET neural network
structure after an image processing stage and a comparison have been done with a
Keywords
computacional. Muitos estudos têm sido desenvolvidos na busca de novas técnicas para
com que técnicas como Hidden Markov Models (HMM)[36] fossem utilizadas também
tem obtido bons resultados [10], [30], [31], [32], [33], e o desenvolvimento de novas
inúmeros estudos foram desenvolvidos até hoje [1], [2], [3], [4], [5], [6], [7], [8]. Os
resultados obtidos têm sido de grande valia no desenvolvimento de novas técnicas para
a identificação de padrões.
O maestro pode ser definido como um músico que utiliza a expressão do seu
corpo para guiar outros músicos na reprodução de uma música. Um maestro talentoso
utiliza movimentos de todo o seu corpo para reger a orquestra, porém os gestos
maestro, compartilhada hoje pela maioria dos músicos. Uma boa definição desta
Os gestos de maestro podem ser separados por grupos, classificados pelo efeito
que eles geram na música. A Figura 1-1 mostra a hierarquia da gramática básica.
Legato neutro
Legato expressivo
Staccato leve
Pulso Regular
Staccato completo
Tempo
Marcato
Tenuto
Pulso Subdividido
Transição de pulso
Crescendo
Dinâmica Diminuendo
Sforzando
Notas Sustentadas
Gestos Frase
Linhas melódicas
Expressão Marcato
Extração do som
Tenuto
Entrada
Corte
Acentos
Fermata
Consecutivos
Combinação de gestos
Simultâneos
Gestos Individuais
executados pela mão direita, enquanto os gestos de expressão são executados pela mão
esquerda. No entanto, essa divisão não é rígida, e alguns gestos de expressão podem ser
executados pela mão direita. Os gestos de tempo podem ser representados por ambas as
Neste trabalho, esta separação espacial dos movimentos foi utilizada para a
identificação dos gestos. Assumiu-se que apenas a mão direita realiza os movimentos de
tempo e ambas as mãos são responsáveis pelos gestos de expressão. Tentando abranger
envolvidos.
compasso.
Capítulo 1 – Introdução 4
1.2.2 Tempo
A unidade convencional para tempo é batidas por minuto (pulsos por minuto). A
percepção humana é capaz de distinguir o tempo até 240 batidas por minuto
1.2.3 Dinâmica
1.2.4 Articulação
de tocar cada nota. O tocar da notas curtas e separadas é conhecido como staccato e o
1.2.5 Expressão
A expressão com que o músico deve tocar certo trecho da música também é
indicada pelo maestro. Por exemplo, os momentos em que a música deve crescer em
de deficiência auditiva.
utilizando template matching. Alguns estudos foram feitos utilizando HMM. Em 1991,
Taguchi [32] introduziram o uso de redes neurais recorrentes (RNN – Recurrent Neural
Network).
maestros [1], [2], [3], [4], [5], [6], [7], [8]. No entanto, no reconhecimento de gestos de
movimentação dos dedos não é importante, apenas a posição da mão é necessária para a
captura do movimento.
O uso de redes neurais para a identificação dos gestos foi introduzido por
Ilmonem e Takala [27] em 1999 e um ano antes Usa e Mochida [25] utilizaram HMM
para o reconhecimento. Ambos os estudos também foram apenas nos gestos da mão
direita.
Capítulo 1 – Introdução 6
1991 Max Matthews [23] Baqueta que emite ondas em rádio freqüência.
Segen, Majumder e
2000 2 câmeras.
Gluckman [28]
Murphy, Anderson e
2003 2 câmeras, frente e lado, compondo posição 3D.
Jensen [29]
gestos de expressão realizados pela mão esquerda. Utilizando duas câmeras de vídeo de
Capítulo 1 – Introdução 7
1.4 Proposta
tinham sido utilizadas por Ilmonem e Takala, e também Garnet, porém seus estudos
resultados obtidos com HMM por Kolesnik [8], tendo em vista que ambos os métodos
simplificar este problema [10]. A rede Elman [40] também foi utilizada nos testes
Este trabalho faz parte do projeto de uma orquestra digital, que vem sendo
sistema proposto, com os elementos para captura dos movimentos e identificação dos
breve introdução à redes neurais. Os resultados deste trabalho foram comparados com
os obtidos com a utilização de HMM (Hidden Markov Models), e por este motivo
neural artificial, capaz de aprender. Uma grande rede neural artificial pode ter centenas
axônio, vide Figura 2-1. Os dendritos têm como função receber os estímulos emitidos
de uma célula neural. A Figura 2-2 faz uma analogia entra uma célula neural e o modelo
segundo impulso que produz uma substância neurotransmissora, a qual flui do corpo
celular para o axônio (que por sua vez pode ou não estar conectado a um dendrito de
outra célula). O neurônio que transmite o pulso pode controlar a freqüência de pulsos
conexões de entrada, tendo cada conexão um peso próprio. As entradas são somadas e
aplica-se uma função chamada “função de ativação” para limitar o valor da saída.
Função de ativação
1
Saída
0.5
0
-5 - -3 -2 -1 0 1 2 3 4 5
4 Entrada
degrau , que é a função sigmoidal com α=∞. A função sigmoidal segue a equação 2.1.
Capítulo 2 – Redes Neurais 12
1 (2-1)
ϕ ( x) =
1 + e −α . x
m (2-2)
y k = ϕ ∑ wki xi + bk
i =1
Onde yk é a saída do k-ésimo neurônio, wki o peso entre o neurônio k e a entrada xi, b a
entrada1
entrada2 Neurônio
entrada3 saída
entradam
A conexão de vários neurônios forma uma rede neural. Uma rede neural
corretamente a uma entrada nunca vista antes por similaridade aos padrões já
conexões dos neurônios fazem a diferenciação entre os tipos de redes neurais e suas
diferentes aplicações.
qualquer mapeamento.
Camada escondida
Camada de Camada de
entrada saída
Saída 1
Entrada 1
.
.
Entrada 2
.
.
.
.
Entrada N Saída M
1990 [11]. O objetivo da rede LVQ é através da quantização dos vetores de entrada
conecta aos M neurônios de saída por conexões para frente. O número de classes em
Camada de
entrada Camada de
saída
Entrada 1
Saída 1
.
.
Entrada 2
. .
.
. Saída M
Entrada N
mas competem entre si para ser o único a ficar ativo. Cada neurônio se especializa numa
área diferente do espaço de entrada e suas saídas podem ser usadas para representar a
Y j = ∑ ( X i − Wij )
N 2 (2-3)
i =1
Onde Yj é a saída do neurônio j, Xi é o vetor de entrada, Wij é o peso entre o neurônio de
[33]. Nesta pesquisa foi utilizado o aprendizado não supervisionado, derivado do SOM
forma eficiente sinais não dependentes do tempo. No entanto, essas estruturas não são
Uma das soluções para resolver problemas temporais é a utilização de redes não
recorrentes. Apesar de redes neurais como MLP e LVQ não terem bons resultados
problema. A solução mais comum é fixar uma janela no tempo e excitar a rede com os
Capítulo 2 – Redes Neurais 16
valores desta janela, conforme a Figura 2-7. O problema desta solução é que a janela no
tempo é fixa, e seqüências com duração maior que a janela não são reconhecidas.
y1 y2 yk
Camada
de saída ...
Camada
escondida
...
Camada
de entrada
... ... ... ...
y1 y2 yK
Camada de saída
Camada escondida 2
Camada escondida 1
(Time Delay Neural Network) [34] introduz uma segunda camada escondida, que recebe
como entrada uma janela da primeira, assim como a camada de saída recebe os valores
para que a rede consiga responder corretamente a estímulos temporais [35]. Na Figura
Bias
x1
bk
Gk1(z) Função de
Ativação
Sinal de x2 Gk2(z) Saída
Σ
.
ϕ (·)
entrada . uk yk
.
. .
xm Gkm. (z)
Realimentação
Local de
Hla(z) ativação
Realimentação
Hlo(z) Local de
saída
Geralmente são utilizadas redes neurais diretas, porém o modelo é genérico e pode ser
caracterizam-se por ter as conexões entre os neurônios nos dois sentidos. Assim como
as redes diretas elas podem ter camadas de entrada, saída e camadas escondidas. Um
exemplo da topologia de uma rede simétrica pode ser visto na Figura 2-10.
sigmoidal de ativação. Tank e Hopfield [16] iniciaram os estudos com redes totalmente
rede, porém ainda é difícil estabelecer critérios práticos para garantir a estabilidade da
rede.
Camada escondida
Camada de Camada de
entrada saída
Entrada 1 Saída 1
Entrada 2
. Saída 2
.
. .
. .
Entrada N
Saída M
das redes totalmente recorrentes foram feitos estudos utilizando links recursivos apenas
em parte da rede. A solução proposta por Jordan e por Elman [40] foi criar uma nova
camada chamada de camada de contexto, sendo tal camada responsável por guardar a
backpropagation.
Esse tipo de rede se diferencia das demais soluções temporais por conseguir
com que dados de todas as amostras anteriores influenciem no instante presente. Isso é
possível devido à realimentação feita na camada escondida, que faz com que todas as
completa que os outros tipos de redes, a estrutura parcialmente recorrente foi escolhida
Uma rede neural pode ser formada por uma combinação das estruturas clássicas
T-CombNET.
2.4.1 CombNET-II
A rede CombNET-II é uma rede com estrutura em pente, formada por uma rede
Vetorial (VQ) em vários sub-espaços. A rede Tronco faz uma pré-seleção, escolhendo
por qual rede Galho o sinal deve ser tratado. Cada neurônio de saída da rede Tronco é
associado a uma rede Galho, o neurônio com a maior saída indica qual rede galho deve
ser utilizada. Este estágio de pré-seleção faz com que cada uma das redes galho trabalhe
SB SM
Decisão Final
Max
Sinal Classificado
[12]. Esta filosofia permite que um problema com grande número de classes seja
2.4.2 T-CombNET
A rede CombNET-II utiliza estruturas não recorrentes e por este motivo não tem
bons resultados em aplicações que envolvem sinais dependentes do tempo. Para que a
CombNET-II seja utilizada para sinais dependentes do tempo é necessário que algumas
sub-espaços, e por várias redes chamadas de redes Galhos. Os resultados obtidos pelas
X0(t) X0’(t)
Espaço: S0 Espaço: S0’
SB SM
Esta normalização no tempo é feita no sinal que será aplicado à rede tronco. A rede
utilizada como tronco é a LVQ [11], que necessita de um vetor de entrada com
dimensão fixa, e a rede galho é necessariamente uma rede temporal, como por exemplo
diferentes aplicações. Neste trabalho as redes neurais utilizadas são as redes Elman e T-
de gestos.
Capítulo 2 – Redes Neurais 23
que a saída seja a desejada. Uma rede bem treinada é capaz de generalizar um problema,
ou seja, não é necessário que a rede conheça todas as possibilidades de entrada para
obter a saída. Nosso cérebro funciona de forma similar em muitos casos. Por exemplo,
você consegue identificar que determinado ser vivo é uma árvore, mesmo nunca tendo
visto aquele espécime em particular, uma vez que você já foi apresentado a outros tipos
diversas variações com algumas repetições. Um banco de dados pequeno pode não ser
suficiente para o treinamento da rede e um banco de dados muito grande pode elevar
Backpropagation
rede. A atividade resultante flui através da rede, camada por camada, até que a resposta
seja produzida pela camada de saída. No segundo passo, a saída obtida é comparada à
saída desejada para esse padrão particular. Se esta não estiver correta, o erro é
pesos das conexões das unidades das camadas internas vão sendo modificados conforme
o erro é retropropagado.
necessárias para que a rede chegue aos resultados desejados. O treinamento é finalizado
quando o erro de saída atinge valores abaixo de um valor estipulado ou quando atinge-
entrada e os pesos sinápticos. O neurônio que tiver a menor distância Euclidiana vence e
Desta forma consegue-se treinar a rede LVQ para separar os padrões de entradas
em M grupos.
Capítulo 2 – Redes Neurais 25
que, dada uma seqüência de eventos existe dependência entre alguns destes. Estas
de um padrão conhecido. Por este motivo HMM é bastante usado para reconhecimento
desvantagem de HMM é que é necessário ter o sinal completo para que seja possível a
identificação do gesto.
Existem três problemas básicos que devem ser resolvidos para que modelo possa
π q1bq2 ( o1 ) aq
1 q2 (2-4)
P (O | λ ) = ∑b
q1 ,q2 ...qT
q2 (o2 )...aqr −1qT bqT (oT )
forma com que essas notas são tocadas, de forma a uniformizar a orquestra. Com a
Processamento
de vídeo
Posição
das mãos
O sistema proposto, conforme Figura 3-2, pode ser dividido em três partes
A aquisição dos vídeos foi feita utilizando duas câmeras de vídeo digitais de
baixo custo, captando imagens a uma freqüência de 25 quadros por segundo e com
90 graus entre si, captando os gestos do maestro na posição frontal e lateral como
Canadá, por Paul Kolesnik. O maestro que executou os gestos foi Lana Lysogor,
doutora em regência.
Câmera
Lateral Câmera
Frontal
Para facilitar a identificação da mão do maestro foi utilizada uma luva, de tom
semelhante ao da pele, para uniformizar a cor da mão. Utilizando como base a cor da
posição da mão. A Figura 3-4 mostra dois quadros com movimento staccato onde a
trajetória foi capturada pelo sistema de tracking. A linha amarela mostra o primeiro
A identificação da posição da mão foi feita pela cor. São identificados quais
pixels têm cor semelhante à desejada e então calculado o baricentro da região. A busca
por pixels da cor desejada não foi feita em toda a imagem, para diminuir o
processamento e para diminuir a chance de identificar pixels não desejados. Para tanto,
a busca foi feita apenas em uma área delimitada por um quadrado com centro no ponto
O mesmo processamento foi feito para os vídeos captados por ambas as câmeras
foram armazenadas em arquivo texto, para que o treinamento das redes fosse efetuado.
Capítulo 3 – Sistema Proposto 32
a posição da mão no instante de cada pulso. O instante em que ocorre o pulso é definido
quando a mão direita do maestro muda o movimento de descida para subida. A Figura
Com a posição das mãos em cada quadro foi implementado um programa para a
foi calculada pela diferença entre os pontos de máximo e mínimo da coordenada vertical
o músico necessita que a variação da amplitude se repita por mais de um pulso para que
consiga identificar a variação. Por este motivo, e para amortizar indesejáveis e pequenas
foi uma média da amplitude instantânea durante 100 amostras, ou seja, 4 segundos.
O tempo de 4 segundos foi usado por ser intervalo suficiente e mínimo para
populares são os HMM (Hidden Markov Models) e as redes neurais. Este trabalho se
maestro, fazendo uma comparação com resultados obtidos por HMM na pesquisa de
Kolesnik [8].
Capítulo 2, foi decidido pelo uso das redes parcialmente recorrentes de Elman [9] e da
T-CombNET [10]. Ambas as redes foram escolhidas pelos bons resultados apresentados
A pesquisa foi feita em duas etapas, numa primeira etapa foram feitos testes
com um banco de dados simples, com gestos básicos, e no segundo os testes foram
feitos utilizando o mesmo sistema, porém com um banco de dados real, com um
4.1 Experimento 1
assim como aferição do código implementado. Para que este fim fosse atingido foi
montado um banco de dados com vídeos captados nos mesmos padrões que seriam
descrito no Capítulo 3.
características bem distintas entre si. A posição absoluta 2D da mão de cada gesto pode
ser observada na Figura 4-1. Observe que os 3 movimentos têm trajetórias bem
Os movimentos foram feitos utilizando uma luva, como mostrado na Figura 4-2,
Dos 9 vídeos de cada gesto, 5 foram utilizados para treino da rede e 4 para teste
da rede. Cada vídeo tinha em média 6 mb e foi capturado por uma câmera Logitech
4.1.2 Resultados
reconhecimento dos gestos, facilitado pela diferença entre os gestos, mas sim a
Gesto 1
5 4 100%
Gesto 2
5 4 100%
Gesto 3
5 4 100%
apresentar bons resultados para testes com gestos mais complexos e em maiores
4.2 Experimento 2
reconhecimento dos gestos. Para a análise de tempo foi feita a identificação da posição
dos pulsos no tempo, e a posição da mão em cada pulso foi utilizada na análise da
propostas e o mesmo experimento realizado com a identificação sendo feita por HMM
[8].
gestos da mão esquerda. Um item final mostra resultados obtidos na segmentação dos
gestos.
Capítulo 4 – Resultados Experimentais 38
sua forma mais comum os gestos de expressão são executados pela mão esquerda e os
de articulação, tempo e dinâmica pela mão direita, porém, em alguns casos específicos
grupos, como mostra a Tabela 4-2. O primeiro grupo foi composto por 5 gestos,
Esquerda 5 75 50
Expressão
Direita 3 60 30
Articulação,
tempo e Direita 7 140 70
dinâmica
executados pela mão direita. Cada vídeo tinha em média 2 mb e foi capturado por uma
(a) (b)
(a) (b)
Figura 4-4: (a) Quadros de um vídeo do gesto legato 2 pulsos/compasso (b) Quadros de
um vídeo do gesto marcato 2 pulsos/compasso.
Capítulo 4 – Resultados Experimentais 41
Estes arquivos foram utilizados como base de dados para o treinamento e testes da rede.
Posição absoluta
qualquer mudança na posição que o maestro executa o movimento pode resultar na não
identificação do gesto.
pequenas variações na execução dos gestos, e o resultado desta filtragem também foi
resolvido.
Capítulo 4 – Resultados Experimentais 42
Velocidade
Vx k = X k − X ( k −1) (4-1)
Vy k = Yk − Y( k −1) (4-2)
Vz k = Z k − Z ( k −1) (4-3)
Direção
4.2.2 Tempo
presentes no vídeo. A identificação dos pulsos foi feita por um algoritmo que verifica a
tempo entre dois pulsos e a linha verde é a média entre 100 amostras (4 segundos).
Capítulo 4 – Resultados Experimentais 44
100 100
batidas/min
batidas/min
50 50
0 0
200 400 600 800 200 400 600 800
Amostra Amostra
Legato 2 pulsos/compasso Staccato 4 pulsos/compasso
150 150
batidas/min intantaneo batidas/min intantaneo
batidas/min medio batidas/min medio
100 100
batidas/min
batidas/min
50 50
0 0
200 400 600 800 200 400 600 800
Amostra Amostra
Staccato 3 pulsos/compasso Staccato 2 pulsos/compasso
150 150
batidas/min intantaneo batidas/min intantaneo
batidas/min medio batidas/min medio
100 100
batidas/min
batidas/min
50 50
0 0
200 400 600 800 200 400 600 800
Amostra Amostra
Marcato 2 pulsos/compasso
150
batidas/min intantaneo
batidas/min medio
100
batidas/min
50
0
200 400 600 800
Amostra
4.2.3 Dinâmica
a análise convencional descrita no item 3.2 . Assim como para o tempo, é necessária a
variação da amplitude entre picos consecutivos e a linha verde é a média entre 100
amostras (4 segundos).
100 100
Dinamica
Dinamica
50 50
0 0
200 400 600 800 200 400 600 800
Amostra Amostra
Legato 2 pulsos/compasso Staccato 4 pulsos/compasso
150 150
Dinamica intantanea Dinamica intantanea
Dinamica media Dinamica media
100 100
Dinamica
Dinamica
50 50
0 0
200 400 600 800 200 400 600 800
Amostra Amostra
Staccato 3 pulsos/compasso Staccato 2 pulsos/compasso
150 150
Dinamica intantanea Dinamica intantanea
Dinamica media Dinamica media
100 100
Dinamica
Dinamica
50 50
0 0
200 400 600 800 200 400 600 800
Amostra Amostra
Marcato 2 pulsos/compasso
150
Dinamica intantanea
Dinamica media
100
Dinamica
50
0
200 400 600 800
Amostra
condizem com o que o maestro desejava transmitir, e com o que um músico pode
indicam a articulação, porém em alguns momentos podem indicar expressão. Para esta
segmentados, sendo que 20 amostras foram utilizadas para treino das redes e 10
amostras para teste. A segmentação foi feita utilizando a identificação de pulsos citada
no item 2.2.
separados em 4 grupos:
• Expressão;
segunda etapa foram feitos testes com todos os 10 tipos de gestos identificados por uma
única rede.
obtidos foram comparados com os obtidos pela HMM [8]. Os resultados para cada
As estruturas das redes que obtiveram melhores resultados nos testes estão
número de pulso.
camada escondida. A rede T-CombNET obteve melhores resultados com a rede tronco
sendo treinada pela segunda dimensão, e a rede tronco separou os vetores de entrada em
13 grupos. As configurações das redes estão descritas na última linha da Tabela 4-7, e
processador AMD Atlhon 64 3200 MHz com 512Mb de RAM, e o tempo para
Tabela 4-7: Estruturas das redes com melhores resultados nos testes.
2D 3D 3D
A separação dos gestos em pequenos grupos fez com que ambas as redes neurais
conseguissem resolver o problema com grande facilidade. A separação seria uma boa
opção para facilitar o reconhecimento, porém não existe separação temporal e nem
espacial na execução dos movimentos, eles são executados em seqüência pela mesma
mão e podem ser executados a qualquer momento. Isso faz com que não tenha uma
maneira fácil de fazer uma pré-seleção do gesto para um grupo. Por estes motivos a
utilização de apenas uma rede neural para reconhecer todos os gestos aproxima-se mais
Nos teste feitos com apenas uma rede neural os resultados obtidos pela rede Elman
tempo de treinamento foi considerado muito alto para a rede Elman, comparado ao
Capítulo 4 – Resultados Experimentais 53
apenas duas dimensões. Utilizando a rede Elman alimentada apenas com as coordenadas
Este resultado demonstra que para o reconhecimento dos vídeos utilizados neste
A rede Elman mostrou-se mais eficaz no reconhecimento dos gestos do que a rede
T-CombNET e do que HMM. Ressalta-se que para HMM não temos resultados do teste
com todos os gestos juntos. Porém como o HMM já apresentou erros na identificação
movimento foram gravados 30 vídeos, destes 20 foram utilizados para treinar as redes e
10 para testar.
Assim como a análise de articulação, foram feito testes com as redes Elman e
escondida. Para a rede T-CombNET foi obtida com a rede tronco sendo treinada com
ao de HMM na identificação dos gestos de expressão. Por serem gestos curtos, o tempo
de reconhecimento para todas as redes neurais foi rápido, podendo ambas serem
É necessário saber quando um gesto válido começa e termina, e quanto antes o gesto for
para que seja feita a normalização dos dados para a rede tronco LVQ. Portanto, neste
tipo de rede não é possível a identificação do gesto antes de que ele termine. A rede
presença de um gesto antes de que ele termine. Por este motivo a rede Elman é mais
neural, quando excitada com um vídeo contendo os 9 gestos em seqüência. Cada cor
gesto. Pode se observar que em um pequeno período de tempo a saída referente ao gesto
que está sendo executado passa a ser predominante, indicando a presença do gesto.
O teste demonstrado na Figura 4-9 foi repetido 3000 vezes com diferentes
combinações dos 9 vídeos. O resultado foi de que em média um gesto foi identificado
seja, o sistema garante que o gesto será identificado antes da metade de sua execução.
Capítulo 4 – Resultados Experimentais 56
Figura 4-9: (a) Saída da rede neural para um vídeo com os 9 vídeos contínuos,
(b) Zoom na transição do gesto 9 para 5 e do gesto 5 para o 2.
Capítulo 4 – Resultados Experimentais 57
testes foram divididos em grupos, e este permutados para o treinamento e teste da rede.
Como este teste é complexo e demanda tempo no treinamento, foi realizado apenas no
pesquisa.
Os testes foram feitos apenas com a rede Elman. A configuração utilizada foi 3
vídeos de um determinado gesto. Estes grupos foram permutados e 2 deles usados para
O resultado final foi inferior aos 100% do experimento retratado no item 4.2.4 .
O tempo de treinamento das 3 redes para este teste foi de 72 horas, o que dificultou
A, B C 95 %
A, C B 92 %
B, C A 94 %
Média 94%
com um grupo de vídeos. O teste da rede com diversas combinações faz com que o
resultado seja facilmente reproduzido pois não é específico para uma combinação de
fazendo com que os testes não evidenciassem as diferença entre os métodos propostos e
de gestos de maestro. HMM mostrou erros, ainda que poucos, em testes simples.
As diferenças entre as duas redes neurais testadas foram mais evidentes nos
experimentos realizados nos gestos da mão direita, quando treinados por uma só rede. A
rede Elman obteve melhores taxas de reconhecimento, porém seu tempo de treinamento
foi cerca de 40 vezes maior. O tempo de reconhecimento da rede T-CombNET foi duas
vezes maior que o da Elman, diferença que faz com que a T-CombNET não seja mais
identificação dos gestos. Isso impossibilita que o gesto seja identificado antes da
finalização do mesmo. Este problema não é crítico quando a aplicação não necessita de
uma ação em tempo real, por exemplo, reconhecimento de linguagem de sinais, porém
menores do que as obtidas pela rede Elman pode ser atribuído a ineficiência do estágio
reconhecimento em tempo real. Este aspecto também pode ser alvo de uma continuação
da pesquisa.
6 Referências
[2] Bertini, G. and P. Carosi (1992). “Light baton: A system for conducting computer
Association.
[6] Keane, D. and P. Gross (1989). “The midi baton”, Proceedings of the International
[7] Lee, M., G. Garnett, and D. Wessel (1992). “An adaptive conductor follower”,
[9] Kremer S.C., “On the Computational Power of Elman-Style Recurrent Networks”,
[12] Werbos, P. J. “ Backpropagation Through Time: What It Does and How to Do It”,
[13] Camurri, A., P. Coletta, M. Peri, M. Ricchetti, A. Ricci, R. Trocca, and G. Volpe.
systems”, Proc. IEEE Multimedia Sustems '99, Firenze, Italy, June 1999.
[20] Mathews, M.. “Current Directions in Computer Music Research”. MIT Press
(1989).
[21] Morita, H., S. Otheru, and S. Hashimoto. “Computer music system that follows a
[23] Mathews, M. V. “The Radio Baton and the Conductor Program, or:Pitch—the most
important and least expressive part of music.” Computer Music Journal Vol.15 , 37–46
(1991).
[26] Marrin, T. and R. Picard. “The Conductors Jacket: A device for recording
[27] Ilmonen, T. and T. Takala. “Conductor following with Artificial Neural Networks.”
[28] Segen, J., A. Mujumder, and J. Gluckman. “Virtual dance and music conducted by
[29] Murphy, D., T. H. Andersen, and K. Jensen. “Conducting audio files via Computer
Vision.” Proceedings of the 2003 International Gesture Workshop, Genoa, Italy (2003)
Pattern Recognition,
[31] Takahashi, T. and Kishino, F. “Hand Gesture Coding Based on Experiments using
a Hand Gesture Interface Device”, SIGCHI Bulletin, 23(2), pp. 67-73, April, 1991.
[33] Iwata, A., Suwa, Y., Ino, Y., Hotta, K. I. and Suzumura, N. “Hand-Written
[34] Waibel, A. T., Hanazawa, T., Hinton, G., Shikano, K. and Lang, K. J. “Phoneme
[35] Fransconi, P., Gori, M. and Soda, G. “Local Feedback Multilayered Networks”,
[36] Choi, H. I. and Rhee, P. K. “Hand gesture recognition using HMMs”, Expert
[37] Forney, G.D. “The Viterbi Algorithm”, Procs of the IEEE, 1973.
[38] Lou H.L. “Implementing the Viterbi Algorithm”, IEEE Signal Processing
Magazine, 1995.
[39] Baum, L. E., Peterie, T., Souled, G. and Weiss, N. "A maximization technique
[40] Elman, J.L. “Finding Structure in Time.” Cognitive Science vol.14, 199
Apêndice A 66