Sistema de Apoio às Análises Tática e Física no Futsal - Piim-Lab

Transcrição

Sistema de Apoio às Análises Tática e Física no Futsal - Piim-Lab
C ENTRO F EDERAL
P ROGRAMA
DE
DE
E DUCAÇÃO T ECNOLÓGICA
P ÓS - GRADUAÇÃO
EM
DE
M INAS G ERAIS
M ODELAGEM M ATEMÁTICA
E
C OMPUTACIONAL
S ISTEMA DE A POIO ÀS A NÁLISES TÁTICA
E
F ÍSICA NO F UTSAL BASEADO EM V ISÃO
C OMPUTACIONAL
P EDRO H ENRIQUE C AETANO DE PÁDUA
Orientador: Prof. Dr. Flávio Luis Cardeal Pádua
Centro Federal de Educação Tecnológica de Minas Gerais
Coorientador: Prof. Dr. Marconi de Arruda Pereira
Universidade Federal de São João del-Rei
B ELO H ORIZONTE
AGOSTO
DE
2015
P EDRO H ENRIQUE C AETANO DE PÁDUA
S ISTEMA DE A POIO ÀS A NÁLISES TÁTICA E F ÍSICA
NO
F UTSAL BASEADO EM V ISÃO C OMPUTACIONAL
Dissertação apresentada ao Programa de Pós-graduação
em Modelagem Matemática e Computacional do Centro
Federal de Educação Tecnológica de Minas Gerais, como
requisito parcial para a obtenção do título de Mestre em
Modelagem Matemática e Computacional.
Área de concentração:
Computacional
Modelagem
Matemática
e
Linha de pesquisa: Métodos Matemáticos Aplicados
Orientador:
Prof. Dr. Flávio Luis Cardeal Pádua
Centro Federal de Educação Tecnológica de
Minas Gerais
Coorientador: Prof. Dr. Marconi de Arruda Pereira
Universidade Federal de São João del-Rei
C ENTRO F EDERAL DE E DUCAÇÃO T ECNOLÓGICA DE M INAS G ERAIS
P ROGRAMA DE P ÓS - GRADUAÇÃO EM M ODELAGEM M ATEMÁTICA E C OMPUTACIONAL
B ELO H ORIZONTE
AGOSTO DE 2015
ii
Esta folha deverá ser substituída pela cópia digitalizada da folha de aprovação fornecida pelo Programa de Pós-graduação.
iii
Dedico esse trabalho a minha querida família
e amigos.
iv
Agradecimentos
Após chegar ao final dessa longa caminhada que foi o trabalho de mestrado, se faz necessário agradecer a todos àqueles que se fizeram presentes e me ajudaram direta ou
indiretamente a concluir mais essa etapa.
Primeiramente agradeço a Deus, por ter me dado forças, saúde, paciência e paz necessárias
para perseverar e realizar um bom trabalho.
Agradeço a meus pais, que são parte importantíssima da minha vida e sempre me deram o
apoio necessário em todas as fases do mestrado. Muito obrigado, de coração, por todos os
conselhos e ensinamentos. Agradeço ao Léo, à Vilma e a todos os outros familiares que
também estiveram presentes. Agradeço especialmente à Anninha, que foi parte fundamental
em todo esse processo. Obrigado por me apoiar e me acalmar nos momentos de ansiedade.
Agradeço muito ao Prof. Flávio Cardeal, por me orientar neste trabalho e me mostrar os
caminhos por onde percorrer. Obrigado por estar sempre à disposição para esclarecer as
minhas dúvidas e passar seus conhecimentos nos momento de dificuldade. Muito obrigado
por todo o apoio e motivação dados durante o trabalho, que foram essenciais para que eu
chegasse até aqui. Agradeço também ao Prof. Marconi, pelas conversas, orientações e
conselhos, fundamentais para reduzir os receios que tive em algumas fases do trabalho.
Agradeço à Prof. Elizabeth, que também me ajudou muito principalmente na etapa final do
mestrado, sempre à disposição para esclarecer minhas dúvidas de forma clara e paciente.
Agradeço aos alunos de iniciação científica que colaboraram durante esse tempo, em
especial Marco, Luis e Matheus. Suas contribuições foram essenciais no desenvolvimento
do trabalho. Os momentos no laboratório foram sempre cheios de expectativas, com algumas
derrotas e várias vitórias. Vou sempre me lembrar disso.
Obrigado aos colegas do Departamento de Computação e do CEFET-MG, pela compreensão e pela oportunidade de realizar o mestrado, e que fazem do dia a dia no trabalho um
lugar mais divertido. Agradeço a todos os meus amigos, que da mesma forma fazem os
dias mais alegres e com mais sorrisos.
Finalmente, não podia deixar de agradecer as instituições que colaboraram no desenvolvimento do mestrado. Agradeço o apoio financeiro da CNPq, da FAPEMIG, da CAPES e
do CEFET-MG. Agradeço também ao Minas Tênis Clube, pela oportunidade de realizar os
testes com suas equipes de futsal em suas instalações.
Muito obrigado a todos vocês!
v
“Não, não pares! É graça divina começar bem.
Graça maior persistir na caminhada certa,
manter o ritmo... Mas a graça das graças é
não desistir, podendo ou não podendo, caindo,
embora aos pedaços, chegar até o fim...”
(Dom Hélder Câmara)
vi
Resumo
Este trabalho apresenta um sistema baseado em Visão Computacional para apoiar as
análises tática e física de equipes de futsal. Essas análises são fundamentais para técnicos,
profissionais do esporte e atletas, já que podem ser utilizadas para aumentar o desempenho
do time, melhorar os treinamentos e ajudar na tomada de decisões. Grande parte das análises realizadas atualmente são feitas manualmente, enquanto que as soluções tecnológicas
existentes são compostas por ferramentas comerciais de alto custo, desenvolvidas para
outros esportes coletivos, sendo consequentemente pouco exploradas. O sistema proposto
é composto por uma única câmera estacionária usada para capturar imagens da quadra
vista de cima. São usadas subtração de fundo adaptativa e análise das regiões resultantes
para detectar os jogadores, bem como filtro de partículas para rastreá-los automaticamente
no vídeo. O sistema é capaz de extrair, após a realização do jogo, a distância percorrida por
cada jogador, suas velocidades média e máxima, e gerar um mapa de calor que descreve
sua ocupação em quadra durante a partida. Para apresentar as informações, o sistema
utiliza uma aplicação móvel especialmente desenvolvida. Essa aplicação também pode
fazer a segmentação de lances importantes da partida de forma automática. Resultados
experimentais com sequências gravadas em jogos e treinamentos mostram que o sistema
é capaz de entregar essas informações com erros médios no rastreamento menores que
40 cm nessas sequências e levando cerca de 25 ms para processar cada quadro, demonstrando seu alto potencial para ser amplamente usado por equipes de futsal na busca por
melhores resultados.
Palavras-chave: Análise Tática. Análise Física. Futsal. Visão Computacional. Rastreamento
de Jogadores. Aplicações Móveis.
vii
Abstract
This work presents a system based on computer vision to support tactical and physical
analyzes of futsal teams. Those analyzes have great value to coaches, sport professionals
and players, since they can be used to increase the teams performances, improve training
strategies and support decision making processes. Most part of the current analyzes are manually performed, while the existing solutions based on automatic approaches are frequently
composed by costly commercial tools, developed for other kind of team sports, making
it difficult their adoptions by futsal teams. The proposed system is composed of a single
stationary camera used to capture top-view images of the court. The system uses adaptive
background subtraction and blob analysis to detect players and particle filters to track them
automatically in the sequence. The system is capable of extracting, after the completion of
the game, the distance traveled by each player, their average and maximum speed and can
create heat maps that describe players occupancy on court during the match. To present the
data, the system uses a specially developed mobile application. The application also allow
the segmentation of remarkable actions during the game. Experimental results with real
game and training sequences show that the system can provide the data with mean tracking
errors below 40 cm in those sequences and needing about 25 ms to process each frame,
thus demonstrating a high potential to be used by futsal teams to achieve better results.
Keywords: Tactical Analysis. Physical Analysis. Futsal. Computer Vision. Player Tracking.
Mobile Applications.
viii
Lista de Figuras
Figura 1 – Trajetórias de três jogadores destacadas em verde e vermelho: com os
dados de posição no decorrer do tempo pode-se derivar informações
sobre velocidade, distância percorrida, mapas de calor dos atletas, entre
outros dados úteis para as análises. . . . . . . . . . . . . . . . . . . . .
2
Figura 2 – Exemplo de mapa de calor: contém a ocupação em quadra de um jogador
no decorrer da partida. . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
Figura 3 – Visão geral das principais etapas a serem executadas pelo sistema proposto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
Figura 4 – Principais problemas enfrentados na detecção dos atletas nas imagens.
6
Figura 5 – SportVU - Solução de análises tática e física da empresa norte-americana
STATS, empregada em diversos esportes como o futebol de campo e o
basquete. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
Figura 6 – Sistema InMotio instalado no centro de treinamento do Flamengo para
uso da seleção holandesa na Copa do Mundo FIFA 2014. . . . . . . . .
13
Figura 7 – Áreas de aplicação da Visão Computacional no esporte e o nível semântico de informação requerido (D’ORAZIO; LEO, 2010). . . . . . . . . . .
14
Figura 8 – O modelo de câmera pinhole (HARTLEY; ZISSERMAN, 2003). . . . . .
24
Figura 9 – Alvo de calibração do tipo tabuleiro de xadrez sendo visualizado em
diferentes orientações. . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
Figura 10 – Plano no mundo que representa a quadra de jogo. A posição dos jogadores é dada como um ponto sobre o plano, como o ponto P na imagem.
Todos esses pontos tem coordenada Z = 0. . . . . . . . . . . . . . . .
27
Figura 11 – Passos do filtro de partículas. Cada camada mostra uma das etapas de
sua execução: (1) Conjunto de partículas no tempo t com pesos dados por
Zt ; (2) Reamostragem; (3) Propagação; (4) Função de observação em
t+1; (5) Partículas com estado Xt+1 dado por Zt+1 em t+1: P (Xt+1 |Zt+1 )
(MORAIS, 2012). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35
Figura 12 – Visão geral das principais etapas executadas pelo sistema proposto e
suas entradas e saídas. . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
Figura 13 – Exemplos de quadros obtidos na etapa de aquisição das imagens. . . .
38
Figura 14 – Marcações conhecidas da quadra (pontos verdes) usadas na estimativa
das matrizes de homografia. . . . . . . . . . . . . . . . . . . . . . . . .
38
Figura 15 – Etapas do processo de detecção dos jogadores. . . . . . . . . . . . . .
39
Figura 16 – Estimação da posição dos pés dos jogadores para determinar sua localização. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
41
Figura 17 – Criação do modelo de aparência de um jogador. . . . . . . . . . . . . .
42
ix
Figura 18 – Imagem e gradiente de cores usados para exibição do mapa de calor. .
48
Figura 19 – Exemplo de interrupção do rastreamento e manutenção do armazenamento das estatísticas. . . . . . . . . . . . . . . . . . . . . . . . . . . .
50
Figura 20 – Exemplos de funcionalidades da aplicação móvel desenvolvida para o
sistema. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
52
Figura 21 – Resultados obtidos na avaliação da detecção na sequência de Jogo para
diferentes valores de τov . . . . . . . . . . . . . . . . . . . . . . . . . . .
56
Figura 22 – Resultados obtidos na avaliação do rastreamento na sequência de Jogo
para diferentes valores de τd . . . . . . . . . . . . . . . . . . . . . . . . .
59
Figura 23 – Exemplo de rastreamento dos jogadores com sucesso na sequência de
Jogo e as trajetórias dos atletas no tempo (destacadas em verde). . . .
60
Figura 24 – Ocupação em quadra do jogador 9 dada por seu mapa de calor - Sequência de Jogo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
65
Figura 25 – Resultados obtidos na avaliação da detecção na sequência de Treinamento para diferentes valores de τov . . . . . . . . . . . . . . . . . . . .
67
Figura 26 – Resultados obtidos na avaliação do rastreamento na sequência de Treinamento para diferentes valores de τd .
. . . . . . . . . . . . . . . . . .
69
Figura 27 – Exemplo de rastreamento dos jogadores com sucesso na sequência de
Treinamento e as trajetórias dos atletas no tempo (destacadas em verde). 69
Figura 28 – Ocupação em quadra do jogador 3 dada por seu mapa de calor - Sequência de Treinamento. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
72
Figura 29 – Mapa de calor do jogador 1 que descreve sua ocupação em quadra. . .
87
Figura 30 – Mapa de calor do jogador 2 que descreve sua ocupação em quadra. . .
88
Figura 31 – Mapa de calor do jogador 3 que descreve sua ocupação em quadra. . .
89
Figura 32 – Mapa de calor do jogador 4 que descreve sua ocupação em quadra. . .
90
Figura 33 – Mapa de calor do jogador 5 que descreve sua ocupação em quadra. . .
91
Figura 34 – Mapa de calor do jogador 6 que descreve sua ocupação em quadra. . .
92
Figura 35 – Mapa de calor do jogador 7 que descreve sua ocupação em quadra. . .
93
Figura 36 – Mapa de calor do jogador 8 que descreve sua ocupação em quadra. . .
94
Figura 37 – Mapa de calor do jogador 10 que descreve sua ocupação em quadra.
.
95
Figura 38 – Mapa de calor do jogador 11 que descreve sua ocupação em quadra.
.
96
Figura 39 – Mapa de calor do jogador 16 que descreve sua ocupação em quadra.
.
97
Figura 40 – Mapa de calor do jogador 17 que descreve sua ocupação em quadra.
.
98
Figura 41 – Mapa de calor do jogador 18 que descreve sua ocupação em quadra.
.
99
Figura 42 – Mapa de calor do jogador 1 que descreve sua ocupação em quadra. . . 101
Figura 43 – Mapa de calor do jogador 2 que descreve sua ocupação em quadra. . . 102
Figura 44 – Mapa de calor do jogador 4 que descreve sua ocupação em quadra. . . 103
Figura 45 – Mapa de calor do jogador 5 que descreve sua ocupação em quadra. . . 104
Figura 46 – Mapa de calor do jogador 6 que descreve sua ocupação em quadra. . . 105
x
Figura 47 – Mapa de calor do jogador 7 que descreve sua ocupação em quadra. . . 106
Figura 48 – Mapa de calor do jogador 8 que descreve sua ocupação em quadra. . . 107
Figura 49 – Mapa de calor do jogador 9 que descreve sua ocupação em quadra. . . 108
Figura 50 – Mapa de calor do jogador 10 que descreve sua ocupação em quadra.
xi
. 109
Lista de Tabelas
Tabela 1 – Valores dos parâmetros usados nos experimentos . . . . . . . . . . . .
54
Tabela 2 – Resultados da detecção de jogadores para a sequência de Jogo . . . .
55
Tabela 3 – Resultados do rastreamento de jogadores para a sequência de Jogo.
59
.
Tabela 4 – Duração dos rastreamentos (em número de quadros) para cada jogador
na sequência de Jogo. . . . . . . . . . . . . . . . . . . . . . . . . . . .
61
Tabela 5 – Estatísticas físicas obtidas pelo sistema para cada jogador na sequência
de Jogo. Os erros são definidos em relação às estatísticas calculadas
pelas posições do gabarito.
. . . . . . . . . . . . . . . . . . . . . . . .
64
Tabela 6 – Resultados da detecção de jogadores para a sequência de Treinamento
66
Tabela 7 – Resultados do rastreamento de jogadores para a sequência de Treinamento. 68
Tabela 8 – Duração dos rastreamentos (em número de quadros) para cada jogador
na sequência de Treinamento. . . . . . . . . . . . . . . . . . . . . . . .
70
Tabela 9 – Estatísticas físicas obtidas pelo sistema para cada jogador na sequência de Treinamento. Os erros são definidos em relação às estatísticas
calculadas pelas posições do gabarito. . . . . . . . . . . . . . . . . . .
xii
71
Lista de Abreviaturas e Siglas
ANOVA
Analysis of Variance
DPM
Deformable Part Models
FIFO
First In First Out
FN
Falso Negativo
FP
Falso Positivo
GMM
Gaussian Mixture Model
GNSS
Global Navigation Satellite System
GPS
Global Position System
HOG
Histograms of Oriented Gradients
HSI
Hue Saturation Intensity
HSV
Hue Saturation Value
IP
Internet Protocol
JSON
JavaScript Object Notation
KSP
K-Shortest Paths
LPM
Local Position Measurement
MODA
Multiple Object Detection Accuracy
MOTA
Multiple Object Tracking Accuracy
N-MODA
Normalized Multiple Object Detection Accuracy
POM
Probabilistic Occupancy Map
RFID
Radio Frequency Identification
TP
True Positive
UKF
Unscented Kalman Filter
UWB
Ultra Wide Band
xiii
Sumário
1 – Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1.1 Caracterização do Problema de Pesquisa . . . . . . . . . . . . . . . . . . .
3
1.2 Motivação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
1.3 Objetivos: Geral e Específicos . . . . . . . . . . . . . . . . . . . . . . . . .
9
1.4 Contribuições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
1.5 Organização do texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
2 – Trabalhos Relacionados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
2.1 Sistemas Intrusivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
2.1.1
Soluções comerciais intrusivas . . . . . . . . . . . . . . . . . . . . .
12
2.2 Sistemas Não-intrusivos . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13
2.2.1
Detecção e rastreamento de jogadores . . . . . . . . . . . . . . . .
14
2.2.2
Soluções comerciais não-intrusivas . . . . . . . . . . . . . . . . . .
19
2.3 Discussão e desafios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
20
3 – Fundamentação Teórica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
3.1 Geometria e calibração de câmeras de ponto de vista único . . . . . . . . .
23
3.1.1
Parâmetros extrínsecos
. . . . . . . . . . . . . . . . . . . . . . . .
25
3.1.2
Parâmetros intrínsecos . . . . . . . . . . . . . . . . . . . . . . . . .
26
3.1.3
Homografia planar . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
3.2 Subtração de fundo por modelo de mistura de Gaussianas
. . . . . . . . .
29
3.3 Filtro de partículas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
32
3.3.1
Reamostragem . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
3.3.2
Propagação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
3.3.3
Observação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
4 – Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
4.1 Aquisição das imagens . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
4.2 Detecção dos jogadores . . . . . . . . . . . . . . . . . . . . . . . . . . . .
39
4.3 Rastreamento dos jogadores . . . . . . . . . . . . . . . . . . . . . . . . . .
42
4.3.1
Inicialização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
42
4.3.2
Propagação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
43
4.3.3
Observação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
43
4.4 Considerações finais sobre o rastreamento . . . . . . . . . . . . . . . . . .
47
4.5 Armazenamento das estatísticas . . . . . . . . . . . . . . . . . . . . . . . .
48
4.6 Consulta às estatísticas e operação do sistema . . . . . . . . . . . . . . . .
51
xiv
5 – Resultados Experimentais . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
53
5.1 Resultados da detecção dos jogadores - Jogo . . . . . . . . . . . . . . . .
54
5.2 Resultados do rastreamento dos jogadores - Jogo . . . . . . . . . . . . . .
57
5.3 Estatísticas obtidas - Jogo . . . . . . . . . . . . . . . . . . . . . . . . . . .
62
5.4 Resultados da detecção dos jogadores - Treinamento . . . . . . . . . . . .
66
5.5 Resultados do rastreamento dos jogadores - Treinamento . . . . . . . . . .
68
5.6 Estatísticas obtidas - Treinamento . . . . . . . . . . . . . . . . . . . . . . .
70
6 – Conclusão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
73
6.1 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
75
Referências
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Apêndices
77
85
APÊNDICE A – Mapas de calor dos jogadores obtidos na sequência de Jogo
.
86
APÊNDICE B – Mapas de calor dos jogadores obtidos na sequência de Treinamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
xv
Capítulo 1
Introdução
A prática esportiva profissional vem se tornando, nas últimas décadas, cada vez mais
competitiva. Atletas de elite treinam exaustivamente para buscar resultados melhores e
estabelecer novos recordes dia após dia. Em um nível tão alto de desempenho, a modificação de detalhes nas ações dos esportistas, por menores que sejam, podem fazer toda
a diferença e representar a tão desejada vitória (KRISTAN et al., 2009; MORAIS, 2012).
Para auxiliá-los nessa tarefa, os atletas contam com sua equipe técnica, responsável por
observar e analisar suas atuações e entender quais as causas e consequências de seu
desempenho. Essa equipe está constantemente estudando e revisando as decisões dos
esportistas, de modo a verificar possíveis pontos de melhoria, que possam beneficiá-los e
aumentar suas performances, tanto do ponto de vista tático como físico (PERL; GRUNZ;
MEMMERT, 2013; WANG et al., 2014).
Quando trata-se de esportes coletivos, como por exemplo, o futebol e o futsal, o interesse
por esse tipo de estudo se torna ainda mais evidente (NIU; GAO; TIAN, 2012; MORAIS
et al., 2014). Nesses casos, não somente os indivíduos são considerados, mas também
a interação entre eles, uma vez que ela se reflete no comportamento da equipe e pode
impactar nos resultados obtidos. Deste modo, a constante análise e estudo dos jogos são
fundamentais para se entender o que se passa na partida, identificar e corrigir os possíveis
erros apresentados e projetar melhorias. Por meio dessas observações, os técnicos podem
compreender os padrões táticos utilizados pelos times, aperfeiçoar as estratégias, verificar
o rendimento físico dos atletas e melhor adaptar os planos de treinamento, para que o
desempenho em geral da equipe se eleve (ZHU et al., 2007; NIU; GAO; TIAN, 2012).
Para que os padrões táticos sejam corretamente identificados e os aspectos físicos dos
jogadores verificados, é necessário, a princípio, estimar corretamente as posições dos
atletas em um dado instante de tempo e, consequentemente, rastreá-los (MORAIS et al.,
2014). Por meio dessa estimativa, é possível definir as trajetórias dos jogadores, como
observado na Figura 1, e extrair estatísticas fundamentais para as análises. É possível, por
1
Figura 1 – Trajetórias de três jogadores destacadas em verde e vermelho: com os dados
de posição no decorrer do tempo pode-se derivar informações sobre velocidade,
distância percorrida, mapas de calor dos atletas, entre outros dados úteis para
as análises.
exemplo, verificar se um determinado jogador está ocupando sua posição corretamente na
quadra, quais as suas velocidades média e máxima durante o jogo e se está se exaurindo
antecipadamente ao esperado pelos preparadores físicos, dada a distância total percorrida
por ele em quadra (D’ORAZIO; LEO, 2010; MORAIS et al., 2014). Para que possam ser
bem aproveitadas, é de grande importância que essas informações sejam disponibilizadas
para a equipe técnica o mais brevemente possível.
Grande parte das análises realizadas atualmente, no entanto, são feitas manualmente,
conduzidas por membros das comissões técnicas ou empresas especializadas (PERŠE
et al., 2009; D’ORAZIO; LEO, 2010; MORAIS, 2012). Para que todos os detalhes sejam
observados minuciosamente, os jogos são gravados por câmeras de vídeo e revistos
diversas vezes. Os lances importantes são separados e as informações anotadas, para que
sejam posteriormente passadas aos treinadores. Contudo, separar e reunir uma gama de
dados tão extensa de maneira manual é uma tarefa que consome muito tempo e esforço,
além de estar muito mais propensa ao erro humano e poder demandar gastos monetários
expressivos. Para contornar esse problema, diferentes tecnologias vêm sendo empregadas
cada vez mais no esporte e têm sido utilizadas pelas equipes na busca por melhores
resultados.
Segundo Morais (2012), observar diretamente os vídeos pode trazer ganhos significativos
aos times, mas é possível ganhar ainda mais com a ajuda de métodos computacionais.
Algumas ferramentas tecnológicas vêm sendo desenvolvidas, capazes de acelerar o processo de extração das informações e auxiliar os times na análise de suas partidas, de
forma automática ou semi-automática (abordadas na Subseção 2.1.1 e Subseção 2.2.2).
Entretanto, ainda são, em muitos casos, ferramentas inacessíveis às equipes de futsal,
sendo compostas por soluções comerciais importadas, de complexidade e custo altos,
desenvolvidas para outros esportes e, consequentemente, pouco exploradas. Além disso,
2
algumas das informações encontradas só são obtidas vários dias após a realização dos
jogos, mesmo com a ajuda de tais mecanismos, prejudicando seu aproveitamento pela
equipe técnica nos treinamentos pós-partida (D’ORAZIO; LEO, 2010).
Com base nesse cenário, este trabalho apresenta um sistema capaz de agilizar a extração
das informações necessárias para apoiar as análises tática e física de equipes de futsal,
após o término dos jogos. Para tanto, a partida é monitorada e gravada por meio de
uma única câmera fixa, estrategicamente posicionada no ambiente de jogo, capaz de
capturar imagens da quadra vista de cima. São adotadas técnicas de Visão Computacional,
detalhadas no Capítulo 3 e no Capítulo 4, capazes de detectar e rastrear automaticamente
nas imagens os múltiplos jogadores em quadra, com o mínimo de intervenção humana, de
forma que suas posições em um dado instante de tempo possam ser estimadas e suas
trajetórias computadas. De posse desses dados, são extraídas as informações de interesse
para as análises, como por exemplo: a distância percorrida pelos atletas durante a partida,
suas velocidades máxima e média e o posicionamento dos atletas no decorrer do jogo.
Essas informações são disponibilizadas para a equipe técnica por meio de uma aplicação
especialmente desenvolvida para executar em dispositivos móveis, como celulares e tablets,
que exibem as estatísticas extraídas para os treinadores, mediante a consulta ao banco de
dados da solução.
Além disso, esse sistema propõe uma nova forma de obter, editar e disponibilizar lances
importantes do jogo, de maneira automática. No instante em que ocorre um evento chave
na partida, um membro da comissão técnica aciona um comando na aplicação móvel.
O sistema faz então a edição de um trecho de vídeo que contenha alguns momentos
anteriores e posteriores àquele definido como importante. Esse recorte de vídeo contendo
o lance é disponibilizado no dispositivo logo após sua ocorrência, para que o técnico possa
rapidamente exibi-lo a seus jogadores em uma pausa da partida, e assim chame a atenção
para deficiências do adversário ou corrija falhas que estejam acontecendo.
Essa solução é de interesse tanto da comunidade esportiva como científica, pois permite
que a tecnologia contribua com o trabalho de diversos profissionais do esporte, como por
exemplo, técnicos de futsal, preparadores físicos e atletas, além de poder ser estendida
para outros esportes.
1.1
Caracterização do Problema de Pesquisa
Como descrito anteriormente, este trabalho apresenta um sistema computacional para
apoiar as análises tática e física por equipes técnicas no futsal, após a realização dos
jogos, baseado em métodos de Visão Computacional, responsáveis pelo processamento e
análise de vídeos das partidas. As análises tática e física buscam um maior entendimento
3
Figura 2 – Exemplo de mapa de calor: contém a ocupação em quadra de um jogador no
decorrer da partida.
de aspectos estratégicos e físicos da equipe, que possam explicar comportamentos do
time e influenciar nos resultados obtidos (WANG et al., 2014; PERL; GRUNZ; MEMMERT,
2013). Por meio desse sistema, pode-se extrair estatísticas dos jogadores, valiosas para a
comissão técnica: os dados táticos, obtidos com sua utilização, consistem nas trajetórias e
os mapas de calor (Figura 2) de cada jogador; já os dados físicos consistem nas distâncias
percorridas por cada um deles e em suas respectivas velocidades máxima e média.
Para se obter essas informações, é primordial estimar onde se encontra cada jogador
na quadra em um determinado instante de tempo (ASSFALG et al., 2003). De posse
dessa estimativa, pode-se rastrear os atletas no decorrer do jogo e derivar todos os outros
indicadores. As estatísticas extraídas são armazenados em um banco de dados, que pode
ser consultado por meio de uma aplicação executada em um dispositivo móvel. Esse
dispositivo, por sua vez, é responsável por exibir as informações de interesse para a
equipe técnica, que pode analisar e avaliar o rendimento dos jogadores, verificar pontos
de melhoria nas estratégias e adaptar os treinamentos. Entretanto, prover uma solução
como esta, que vai desde detectar os atletas e estimar a posição em quadra de cada um
deles até a exibição das estatísticas extraídas pelo dispositivo móvel não é uma tarefa
trivial. É necessário enfrentar diversas situações complexas, em uma série de etapas, como
mostrado na Figura 3, e que serão detalhadas a seguir.
Como o sistema se baseia em Visão Computacional, é necessário que a partida seja
monitorada e gravada por uma ou mais câmeras de vídeo, para se fazer a aquisição das
imagens a serem processadas. O primeiro desafio consiste em definir o posicionamento
da única câmera utilizada, já que essa tarefa é determinante para o sucesso e exatidão da
estimativa das posições dos jogadores. Posicionamentos incorretos para a câmera podem
acarretar em áreas da quadra não cobertas nas imagens, o que consequentemente levará
à perda de determinadas ações do jogo e informações incorretas. Além disso, dependendo
4
Figura 3 – Visão geral das principais etapas a serem executadas pelo sistema proposto.
de onde a câmera é colocada, podem acontecer no vídeo situações constantes de oclusões
entre jogadores e até mesmo oclusões entre jogadores e outros participantes indiretos do
jogo, como árbitros e auxiliares, o que dificulta enormemente o rastreamento dos atletas.
Por fim, ao se considerar a aquisição das imagens, é necessário realizar a calibração
da câmera, de modo a conhecer seus parâmetros intrínsecos e extrínsecos, como por
exemplo: distância focal, centro de projeção, matriz de rotação e translação da câmera,
entre outros (TRUCCO; VERRI, 1998; HARTLEY; ZISSERMAN, 2003). Esses parâmetros
são necessários para que seja possível remover as eventuais distorções presentes nas
imagens introduzidas pelas lentes, bem como fazer a correspondência entre a posição do
jogador na imagem e no mundo real.
Por meio das imagens, o sistema deve ser capaz de detectar corretamente cada atleta
presente nas mesmas, a partir da análise dos quadros capturados, usando-se algoritmos
específicos de detecção de objetos (SULLIVAN; CARLSSON, 2006). Vários fatores podem
influenciar na exatidão e dificuldade dessas detecções. Um dos principais problemas
encontrados nesse sentido envolve as características da quadra de jogo. Apesar de, na
maioria dos casos, as quadras estarem localizadas em ginásios, que possuem luminosidade
controlada por meio de refletores, há o reflexo da iluminação no piso da quadra, o que pode
causar sombras e atrapalhar a detecção dos atletas (situações mostradas nas Figuras 4a e
4c). O piso pode possuir, ainda, cores similares às dos uniformes dos jogadores, novamente
dificultando suas identificações (situação exemplificada nas Figuras 4b e 4c). Além disso,
dependendo da configuração da câmera e lente usada, bem como seu posicionamento e
distância até os objetos de interesse, os jogadores podem compreender apenas alguns
poucos pixels nas imagens, se tornando alvos muito pequenos e com poucas características
visuais a serem exploradas na detecção (como mostrado nas Figuras 4a, 4b e 4c).
5
(a) Problema das sombras dos atletas (indicadas
pelas setas azuis).
(b) Jogadores com uniformes de cor semelhante à
do piso da quadra (elipses vermelhas).
(c) Exemplo de imagem com jogadores compreendendo poucos pixels, possuindo poucas características
visuais a serem exploradas na detecção. Para facilitar sua identificação, os atletas foram destacados
em elipses (elipses vermelhas destacam jogadores com uniforme semelhante ao piso da quadra), e as
sombras são indicadas por setas azuis.
Figura 4 – Principais problemas enfrentados na detecção dos atletas nas imagens.
Com as estimativas de posição dos atletas em cada quadro do vídeo obtidas por meio da
detecção dos jogadores, o próximo passo do sistema consiste em realizar o rastreamento
dos atletas, por meio de técnicas e algoritmos de rastreamento de objetos (SANTIAGO
et al., 2010). Rastrear um objeto, segundo Trucco e Verri (1998), consiste em processar
uma sequência de imagens para descrever o movimento ou a trajetória do mesmo em uma
cena. Outra definição de rastreamento, dada por Forsyth e Ponce (2002), consiste em gerar
inferência sobre o movimento de um objeto a partir de uma sequência de imagens. Durante
o rastreamento, busca-se uma forma de ligar as detecções encontradas em um quadro com
as encontradas num quadro posterior, isto é, determinar quais detecções obtidas em dois
6
quadros subsequentes correspondem ao mesmo jogador. Esse também é um ponto que
merece especial atenção, já que jogadores de futsal possuem uma dinâmica de movimentação bastante ativa, além de muitas vezes estarem concentrados em pequenos espaços,
o que torna o processo complexo (MORAIS et al., 2014). A partir do rastreamento dos
atletas, tem-se um histórico de suas posições, e, consequentemente, é possível extrair suas
trajetórias, velocidades, mapas de ocupação e distâncias percorridas. Essas informações
dos jogadores são, então, armazenadas em um banco de dados, de modo que possam ser
consultadas pelo dispositivo móvel.
O último desafio a ser enfrentado em um sistema como o proposto é, justamente, o
desenvolvimento da aplicação móvel que exibe os dados extraídos para a equipe técnica.
Além de possibilitar a apresentação das informações, esse aplicativo também disponibiliza
uma nova forma de capturar, editar e fornecer lances importantes da partida, que são
usados pelos técnicos ao passar instruções para os atletas. Por meio de um comando
acionado na aplicação, os algoritmos correspondentes fazem a edição desse instante chave
e disponibilizam o vídeo editado no banco de dados, que pode ser exibido no próprio
dispositivo via streaming. Nesse caso, é desejável que todo esse processo seja realizado
no menor tempo possível, e isso traz uma série de dificuldades quanto a certos requisitos
de desempenho para a transmissão das informações entre os diversos componentes do
sistema.
1.2
Motivação
Uma série de motivos pode ser listada para o desenvolvimento de um sistema como o
proposto. Em primeiro lugar, como citado anteriormente, o mundo esportivo vem se tornando
cada vez mais competitivo, e a modificação de pequenos detalhes no jogo podem significar
a vitória de um time. Um sistema como esse pode prover à equipe técnica um conjunto
de estatísticas e informações de interesse que pode ser usado para suportar a tomada de
decisões, direcionar os treinamentos e compreender melhor o que se passa nas partidas,
de forma ágil e com muito menos esforço. Sua utilização, consequentemente, pode fornecer
uma vantagem competitiva muito grande para a equipe que o adota.
Em segundo lugar, ainda não se encontra à disposição uma solução desse tipo voltada
especificamente para o futsal. Ferramentas tecnológicas semelhantes podem ser encontradas em outros esportes, como futebol de campo, basquete, tênis e hóquei. Um exemplo
é a solução SportVU (STATS, 2015), mostrada na Figura 5. Entretanto, trata-se de ferramentas importadas de alto custo, não existindo no Brasil um sistema equivalente que
utilize tecnologia nacional, tornando a adoção inacessível para a maioria dos times de
futsal brasileiros (como exemplo, a SportVU custava às equipes de basquete nos Estados
Unidos 100.000 dólares por ano (The New York Times, 2014)). Com a popularização e
7
Figura 5 – SportVU - Solução de análises tática e física da empresa norte-americana STATS,
empregada em diversos esportes como o futebol de campo e o basquete.
barateamento de câmeras digitais de vídeo, o uso da Visão Computacional se apresenta
como uma alternativa promissora para o desenvolvimento de soluções nacionais nesse
contexto.
A decisão de se utilizar dispositivos móveis, por sua vez, pode também ser embasada por
diferentes motivos. Seu uso, por exemplo, possibilita separar a camada de apresentação das
informações do processamento das imagens. Isso permite que os membros das equipes
técnicas façam diferentes consultas às informações armazenadas, até mesmo de forma
simultânea, independentemente da extração das estatísticas. As consultas podem acontecer
onde quer que estejam, seja na quadra durante um treinamento tático ou na academia
durante uma sessão de preparação física dos atletas. O desenvolvimento de uma aplicação
móvel também prepara o sistema para que, no futuro, as informações de um jogo sejam
extraídas em tempo real e possam ser visualizadas pela equipe técnica no decorrer da
partida.
Além disso, atualmente é frequentemente necessário que um membro da equipe técnica
edite manualmente lances importantes da partida, sendo necessária a revisão completa do
vídeo gravado do jogo. Esses lances, em sua maioria, só estarão disponíveis aos técnicos
em um momento posterior ao jogo. Desta forma, o treinador tem mais dificuldade para
atentar seus atletas sobre fatos que estão ocorrendo durante a partida e vulnerabilidades
do time adversário que podem ser aproveitadas. O sistema proposto traz, por meio da
aplicação móvel, uma forma ágil e inovadora de obter esses lances, disponibilizando os
vídeos instantes após o momento em que ocorrem, podendo ser exibidos aos atletas durante
intervalos da partida. Novamente, isso dá ao time mais uma vantagem em relação aos seus
adversários.
Um sistema como esse pode, em resumo, facilitar o trabalho da equipe técnica e prover
informações valiosas que muitas vezes não são diretamente observadas. Essas informações
8
podem elevar o desempenho geral da equipe e auxiliar os treinadores e preparadores físicos.
Seu uso pode levar a treinamentos melhor direcionados, corrigir falhas do time, diminuir o
desgaste físico dos jogadores e revelar novas formas de aplicar esquemas táticos no futsal.
1.3
Objetivos: Geral e Específicos
O objetivo geral deste trabalho consiste em desenvolver um sistema computacional, baseado
em técnicas de Visão Computacional, para apoiar as análises tática e física no futsal, o qual
possa fornecer a profissionais do esporte uma forma ágil de obter as estatísticas dos atletas
em jogo. Desta maneira, busca-se disponibilizar uma ferramenta tecnológica nacional, que
possa ser acessível e aplicada pelos times para melhor compreender o que se passa na
partida, além de direcionar treinamentos, projetar melhorias táticas e corrigir falhas. Assim,
objetiva-se o aumento do desempenho e destaque competitivo.
Para que tal objetivo geral seja atingido, uma série de objetivos específicos devem ser
considerados. A seguir se encontra uma lista desses objetivos:
• Capturar todas as ações de jogo por meio de uma única câmera fixa estrategicamente
posicionada em quadra;
• Detectar os atletas nas imagens e estimar suas posições em quadra;
• Rastrear os jogadores a fim de se obter suas trajetórias, velocidades, distâncias
percorridas e mapas de calor;
• Disponibilizar as informações extraídas em um banco de dados de forma que possam
ser consultadas pela equipe técnica;
• Desenvolver uma aplicação que seja executada em dispositivos móveis e possa
apresentar as estatísticas coletadas e definir lances importantes de jogo, a serem
editados para exibição.
1.4
Contribuições
A principal contribuição desse trabalho consiste em apresentar uma solução nacional,
simples e eficiente, para análises tática e física aplicada ao futsal, que possa ser amplamente
adotada pelas equipes. Assim, pode-se contribuir para o desenvolvimento da área esportiva,
com a aplicação de uma ferramenta tecnológica num esporte de grande popularidade no
país.
Como já mencionado, diferentemente de alguns trabalhos recentemente propostos (como,
por exemplo, o de Morais et al. (2014), dentre outros detalhados no Capítulo 2), o sistema
necessita de apenas uma câmera estacionária para capturar as imagens contendo os
jogadores. Isso diminui a complexidade computacional da abordagem proposta, bem como
9
pode reduzir os eventuais custos com aquisição e implantação de hardware. Além disso, no
processo de detecção dos jogadores, não são necessárias fases de treinamento custosas
– presentes nos trabalhos de Morais (2012), Morais et al. (2014) – nem inicializações
manuais dos modelos utilizados, explicadas mais detalhadamente no próximo capítulo,
que constituem limitações de alguns dos trabalhos encontrados na literatura. O sistema
proposto é, ainda, capaz de realizar o rastreamento dos jogadores necessitando de menos
características visuais dos atletas nas imagens em comparação com outros trabalhos
relacionados, como, por exemplo, o trabalho de Morais (2012).
Além disso, propõe-se uma forma inovadora de obter lances importantes da partida, de
maneira automatizada, bastando o acionamento de um comando na aplicação móvel para
que o trecho esteja disponível para ser exibido pelos treinadores, momentos após o instante
em que ocorre.
1.5
Organização do texto
Este trabalho está organizado em seis capítulos, incluindo a presente introdução. No
Capítulo 2, estão os trabalhos correlatos a essa pesquisa. A fundamentação teórica utilizada
para o desenvolvimento do trabalho encontra-se no Capítulo 3. No Capítulo 4, é descrito o
sistema proposto de apoio às análises tática e física no futsal, juntamente com a descrição
dos diversos módulos que o compõe. No Capítulo 5, são apresentados e discutidos os
resultados experimentais obtidos, seguido pelas conclusões da pesquisa e sugestões para
os trabalhos futuros no Capítulo 6.
10
Capítulo 2
Trabalhos Relacionados
Neste capítulo são apresentados os trabalhos relacionados ao tema dessa pesquisa. Nas
últimas décadas, um extenso conjunto de estudos vem explorando as análises tática e física
nos esportes. As tecnologias utilizadas pelos pesquisadores para alcançar esse objetivo
podem ser divididas, de acordo com Santiago et al. (2010), em duas grandes categorias: (i)
intrusivas – quando sensores e tags (marcadores) especiais são colocados nos objetos de
interesse, como jogadores e bola – e (ii) não-intrusivas – caso em que não existem aparatos
extra colocados nos objetos participantes do jogo.
Os trabalhos citados a seguir são agrupados de acordo com a categoria a que pertencem.
Os sistemas não intrusivos que utilizam Visão Computacional e que realizam análise tática
e física por meio da detecção e rastreamento dos jogadores são explorados de maneira
mais minuciosa, já que estão diretamente relacionados ao escopo desta dissertação. Para
as outras categorias e áreas, são indicadas as referências que abordam os temas em maior
detalhe e que fazem o levantamento do respectivo estado da arte, no caso de interesse por
parte do leitor, além de outros trabalhos recentes de destaque.
Na última seção é apresentada uma discussão sobre o contexto onde o presente trabalho
está inserido e os diversos desafios que se encontram abertos como possíveis problemas
de pesquisa.
2.1
Sistemas Intrusivos
Como descrito anteriormente, sistemas intrusivos fazem o uso de sensores e tags sem fio
nos objetos de interesse. Essa propriedade os faz sensíveis a interferências e colisões de
sinais, dentre outros problemas. As principais dificuldades em seu uso estão relacionadas
ao hardware utilizado, já que os sinais devem ser fortes o suficiente para serem detectados
pelas antenas, posicionadas ao redor da região de jogo, e as tags devem ser pequenas e
leves o suficiente para permitirem aos jogadores realizarem suas ações de forma confortável
11
e eficiente (SANTIAGO et al., 2010).
Os sistemas intrusivos, porém, são capazes de fazer a identificação de um objeto de interesse em particular dentre um conjunto de objetos semelhantes de maneira rápida e
precisa, minimizando-se as trocas de identidades (MANDELJC et al., 2012). Para detectálos e rastreá-los, são utilizadas diferentes tecnologias, como micro-ondas, Radio Frequency
Identification (RFID), Local Position Measurement (LPM), Ultra Wide Band (UWB), Global
Navigation Satellite System (GNSS) e Global Position System (GPS). Essa última, no entanto, não é comumente aplicada em esportes indoor, já que possui um mau funcionamento
em ambientes fechados, prejudicando, assim, a precisão da estimativa de posição dos
objetos de interesse.
O trabalho de Santiago et al. (2010) faz um levantamento de sistemas intrusivos aplicados
aos esportes na área de rastreamento de jogadores e análises tática e física, como o
de Beetz, Kirchlechner e Lames (2005). Trabalhos mais recentes, como o de Mandeljc
et al. (2012), fazem a fusão de tecnologias intrusivas com não intrusivas. Apesar de não
ser originalmente desenvolvido para as análises tática e física no esporte, essa técnica
de rastreamento de pessoas pode ser aplicada nesse cenário, com o desenvolvimento e
miniaturização dos sensores, provendo uma forma eficiente e robusta de se obter os dados
de posição dos jogadores no decorrer do tempo.
2.1.1
Soluções comerciais intrusivas
Existe no mercado uma série de soluções comerciais intrusivas utilizadas no apoio às
análises tática e física no esporte, como por exemplo: Inmotio (INMOTIOTEC, 2015),
Catapult (CATAPULT, 2015), Zebra Sport Solution (ZEBRA, 2015), ZXY Sport Tracking
(ZXY Sport Tracking AS, 2015), WiTrack (Fraunhofer IIS, 2015; BEETZ; KIRCHLECHNER;
LAMES, 2005) e Ubisense (Ubisense Group, 2015; LESER et al., 2014). Essas ferramentas
englobam as mais diferentes práticas esportivas, como futebol, basquete, rugby, futebol
americano, esqui, hóquei, automobilismo e vela.
Inmotio, por exemplo, é utilizado por diferentes equipes de renome do futebol europeu como
AC Milan, AFC Ajax, FC Bayern Munich e PSV Eindhoven, além de ter sido usado pela
seleção holandesa de futebol em seus treinamentos para a Copa do Mundo FIFA 2014 no
centro de treinamento do Flamengo, no Rio de Janeiro (INMOTIOTEC, 2014a; INMOTIOTEC,
2014b), como mostrado na Figura 6. Com o uso de antenas e marcadores RFID, consegue
fornecer indicadores sobre o desempenho físico dos atletas, como velocidade e distância
percorrida, indicadores táticos, como posicionamento, posse de bola, passes e cruzamentos
e ferramentas gráficas de análises das estatísticas colhidas.
12
Figura 6 – Sistema InMotio instalado no centro de treinamento do Flamengo para uso da
seleção holandesa na Copa do Mundo FIFA 2014.
2.2
Sistemas Não-intrusivos
Sistemas não-intrusivos podem ser baseados em infravermelho ou, na sua grande maioria,
em técnicas de Visão Computacional que utilizam câmeras posicionadas estrategicamente
ao redor do ambiente de jogo (SANTIAGO et al., 2010; D’ORAZIO; LEO, 2010). As técnicas
não-intrusivas são bastante utilizadas, já que não interferem no jogo com a inclusão de
aparatos extras e podem aliar um bom nível de robustez, confiança e desempenho.
Em geral, as duas possíveis fontes de imagens para as aplicações baseadas em visão,
segundo D’Orazio e Leo (2010), são câmeras de transmissões de TV ou câmeras proprietárias fixadas ao redor da área de jogo. Os trabalhos que utilizam imagens de transmissões
televisivas normalmente estão voltados ao público entusiasta, sendo do interesse de emissoras de TV ou serviços e sites Web. Por outro lado, trabalhos de interesse de profissionais
do esporte, como atletas e técnicos, lidam em grande parte com imagens provenientes de
câmeras proprietárias ao redor da área de jogo e realizam tarefas mais específicas, que
não podem ser resolvidas com imagens de transmissões, como por exemplo: reconstrução 2D/3D e visualização das ações dos jogadores; análises das estratégias dos times e
avaliação da performance dos jogadores. Entretanto, isso não é uma regra, podendo ser
observados trabalhos de uma área que utilizam fontes de imagens de outra.
De acordo com D’Orazio e Leo (2010), existem três principais áreas de pesquisa quando se
é considerado o uso de Visão Computacional no esporte: sumarização de vídeos (ASSFALG
et al., 2003; EKIN; TEKALP; MEHROTRA, 2003; TJONDRONEGORO; CHEN; PHAM, 2004;
LI et al., 2006; LIU et al., 2009a); fornecimento de informação aumentada (ANDRADE et
al., 2005; RODRÍGUEZ et al., 2005; WANG et al., 2008; THOMAS, 2011); e análises de
alto nível. Cada uma requer um nível semântico diferente de interpretação de acordo com a
complexidade da aplicação correspondente (como mostra a Figura 7).
13
Figura 7 – Áreas de aplicação da Visão Computacional no esporte e o nível semântico de
informação requerido (D’ORAZIO; LEO, 2010).
Ainda segundo D’Orazio e Leo (2010), a área de análises de alto nível pode ser subdividida
de acordo com o foco do trabalho: detecção e rastreamento da bola (YU et al., 2006;
MIURA et al., 2009; CHEN et al., 2009; NIU; GAO; TIAN, 2012; WANG et al., 2014);
detecção e rastreamento de jogadores (abordada na Subseção 2.2.1); análises de dados
estatísticos das equipes (YU et al., 2005; ZHU et al., 2007; TSAI; MEIJOME; AUSTIN, 2007;
PERL; GRUNZ; MEMMERT, 2013); e análises de eventos em tempo real, como gols e
impedimentos (HASHIMOTO; OZAWA, 2006; NAIDOO; TAPAMO, 2006; D’ORAZIO et al.,
2009).
A seguir, são explorados os trabalhos de destaque na área de detecção e rastreamento de
jogadores – onde está inserido o objeto de estudo do presente trabalho. São analisados seus
pontos chave, enfoques e técnicas utilizadas. Como será visto adiante, a localização precisa
dos jogadores é o passo fundamental a ser realizado nos trabalhos, principalmente quando
se deseja diminuir ou eliminar a intervenção humana. Para informações mais detalhadas
sobre alguns dos trabalhos que abordam outros focos, recomenda-se a leitura do trabalho
de D’Orazio e Leo (2010), que faz uma revisão completa e detalhada dessas pesquisas.
2.2.1
Detecção e rastreamento de jogadores
Nos últimos anos, uma série de trabalhos foram apresentados no campo da detecção e
rastreamento dos jogadores em diversos esportes. As técnicas e abordagens utilizadas
variam entre as pesquisas, sendo combinadas de diferentes formas, tornando o agrupamento dos trabalhos uma tarefa não trivial. As fontes de imagens para o processamento
nessas pesquisas vão desde vídeos obtidos por câmeras fixas (capazes de monitorar, na
14
maioria dos casos, todas as ações do jogo) até imagens de câmeras em movimento ou
de transmissões televisivas (que são geralmente mais fáceis de se obter). Cada uma das
fontes traz desafios diferentes a serem superados.
Em relação à detecção dos atletas, uma abordagem bastante comum é o uso de técnicas
baseadas em segmentação dos jogadores e do fundo – no caso do futebol e futsal, o
campo e a quadra de jogo, respectivamente. Normalmente, isso envolve a criação de um
modelo da superfície de jogo ou dos jogadores, que pode ser estimado de diversas formas,
permitindo a extração das regiões contendo os atletas de uma imagem. Figueroa, Leite e
Barros (2006a), por exemplo, fazem uso de operações morfológicas para obter um modelo
do fundo, de forma a tratar a questão das mudanças de iluminação inerente ao futebol de
campo e o fato de que os jogadores podem apresentar movimentos rápidos ou lentos na
cena. Além disso, a fim de eliminar as sombras dos blobs
1
resultantes da segmentação,
os autores propõem um conjunto de operações morfológicas binárias que levam em conta
as características geométricas dos indivíduos. Por outro lado, Figueroa, Leite e Barros
(2006b) extraem a imagem do fundo aplicando um filtro de mediana sobre os pixels de
alguns quadros do vídeo. A intensidade de cada pixel do modelo é dada pela média das
intensidades mais comuns do intervalo de quadros considerados. O modelo é recalculado
de tempos em tempos para que ele se adapte a mudanças lentas de iluminação, mas
ainda consiga detectar grande parte dos objetos parados na cena. Com a imagem do plano
de fundo, finalmente, pode-se subtraí-la de um quadro do vídeo para obter os blobs dos
jogadores.
Outros trabalhos fazem a segmentação baseados em informação de cor. Nesses casos, são
utilizadas as cores predominantes da região de jogo ou histogramas e distribuições de cores
dos jogadores para a criação do modelo. Em Vandenbroucke, Macaire e Postaire (2003), a
extração das regiões que contém os jogadores, bem como a classificação dos atletas e a
identificação de seus times é feita por meio dessa abordagem. Para tanto, há uma fase de
treinamento inicial em que amostras dos jogadores são fornecidas de forma não automática,
através de operadores que manualmente selecionam as regiões correspondentes aos
diferentes uniformes. Posteriormente, é construído um espaço de cor denominado híbrido
com as características selecionadas, especialmente projetado para alcançar a melhor
discriminação possível entre as classes de pixel, e então é possível separar os jogadores
do fundo e classificá-los. De forma análoga, em Naemura et al. (2000), os histogramas de
cor dos uniformes dos atletas são construídos manualmente, selecionando-se as áreas
de interesse. A detecção é então feita em dois estágios: inicialmente os histogramas são
submetidos à limiarização para se fazer a segmentação dos atletas e sua transformação em
1
Os blobs são regiões de uma imagem nas quais algumas propriedades, como cor ou brilho, são
constantes ou aproximadamente constantes. Dentro de um blob, todos os pixels podem ser considerados, de
alguma maneira, similares uns aos outros. Consequentemente, os pixels de um blob diferem em propriedades
comparados aos pixels de regiões a sua volta.
15
blobs binários; posteriormente a segmentação é refinada, por meio da técnica watershed
com marcadores (BEUCHER; MEYER, 1992).
Por sua vez, Dearden, Demiris e Grau (2006) e Khatoonabadi e Rahmati (2009) geram um
modelo da cor do campo para segmentar os jogadores e o árbitro selecionando os blobs
na cena que não são verdes. De modo semelhante, Xu e Shi (2005) extraem o campo de
jogo através da detecção de sua distribuição média de cor e usam as componentes Hue e
Saturation do espaço de cor HSI para eliminar os efeitos da iluminação. Nas situações em
que as câmeras estão em movimento, em grande parte do tempo as imagens dos atletas
se apresentam borradas, o que torna difícil segmentá-los corretamente. Nesses casos,
são propostas soluções que utilizam desde algoritmos como K-Means para segmentar
as pernas dos jogadores (KIM; NAM; KIM, 2003), até o uso de correspondências das
marcações do campo entre as imagens para eliminar os efeitos da movimentação da
câmera (KHATOONABADI; RAHMATI, 2009).
Alguns autores adotam técnicas de segmentação que utilizam métodos estatísticos adaptativos, em sua grande parte baseados em um modelo de mistura de Gaussianas (em inglês,
Gaussian Mixture Model, ou GMM) (STAUFFER; GRIMSON, 1999; ZIVKOVIC, 2004). Nessa
abordagem, o modelo do fundo é atualizado a cada novo quadro da sequência, e cada pixel
que o compõe possui um valor dado por uma distribuição Gaussiana. A imagem estimada
do fundo é então subtraída dos quadros a serem processados e desta forma obtém-se
os blobs dos objetos na cena. Esse é o caso de Kang, Cohen e Medioni (2003) e Xu et
al. (2005). Por outro lado, alguns autores combinam subtração de fundo por mistura de
gaussianas com informações de cores para fazer a detecção. Chen et al. (2012) detecta
as cores dominantes da quadra e as usa para estimar um modelo baseado em GMM, que
é então usado na subtração de fundo. Similarmente, Renno et al. (2004) usa subtração
de fundo adaptativa baseada em GMM para fazer a detecção dos objetos do primeiro
plano (em inglês, foreground). Posteriormente, para fazer a remoção das sombras dos
atletas, é realizado um processo de treinamento não supervisionado que encontra classes
de características do foreground e das sombras com base em suas distribuições de cores.
Por fim, um procedimento de filtragem espacial é usado para identificar os pixels que são
mais prováveis a pertencerem a cada classe de características.
Diferentemente das abordagens anteriores, há trabalhos que fazem uso de detectores de
objetos em geral previamente treinados. Uma das técnicas mais exploradas usa o algoritmo
AdaBoost para organizar uma cascata de classificadores do tipo Haar (VIOLA; JONES,
2001), obtidos por meio de um grande número de amostras do objeto que se deseja detectar
na imagem, bem como uma coleção de amostras negativas, isto é, que não o contém. Após
esse treinamento, obtém-se um classificador capaz de identificar as instâncias do objeto
(jogadores, no presente contexto) nas imagens. Esse é o caso dos trabalhos de Okuma et al.
16
(2004), Morais (2012) e Morais et al. (2014), onde as amostras são manualmente extraídas
de algumas cenas de jogo e posteriormente submetidas ao treinamento e Liu et al. (2009b),
onde as amostras são obtidas automaticamente por meio de segmentação e filtragem do
fundo por cor dominante – verde, no caso da grama do futebol de campo. Outra técnica que
vem ganhando destaque mais recentemente, proposta por Felzenszwalb et al. (2010), faz
o treinamento de modelos de misturas de partes deformáveis – Deformable Part Models
(DPM), que são usados para detectar objetos em situações complexas. Essa abordagem usa
um conjunto de características locais de aparência baseadas em histogramas de gradientes
orientados (Histograms of Oriented Gradients (HOG)) e assume que um objeto é composto
por suas partes, que são usadas para identificar os objetos nas imagens.
Para aumentar a robustez da detecção, alguns trabalhos combinam algumas das técnicas
descritas anteriormente com abordagens probabilísticas utilizando uma ou mais câmeras.
Em uma configuração multi-câmera, Morais (2012) e Morais et al. (2014) fundem as detecções obtidas nas imagens de cada câmera em uma função multimodal que representa a
probabilidade de um jogador ser encontrado em uma dada posição da quadra, isto é, obtêm
uma representação estatística da ocupação da quadra em um dado momento do jogo. Essa
função é construída por meio da projeção da localização dos jogadores em coordenadas de
imagem em um plano de quadra virtual, obtido pela calibração das câmeras utilizadas. De
modo similar, Berclaz et al. (2011), Ben Shitrit et al. (2011) e Ben Shitrit et al. (2013) usam
subtração de fundo juntamente com a técnica Probabilistic Occupancy Map (POM) (FLEURET et al., 2008) para criar um mapa de ocupação probabilística usado para detectar e
encontrar a posição dos jogadores em diferentes situações. Considerando uma configuração
com uma única câmera, Beetz et al. (2006) e Gedikli et al. (2007), inicialmente segmentam
as regiões onde possivelmente os jogadores se encontram baseado em um modelo de
cor. Posteriormente, são usados modelos para calcular os mapas de verossimilhança das
localizações dos jogadores baseados nas distribuições de cores. Para aumentar a robustez,
as informações de compactação da região segmentada e o espaçamento vertical entre
as regiões são utilizadas como restrições. Os mapas são, por fim, combinados com as
hipóteses previstas por rastreadores, e então as detecções são geradas.
Ao se focar no rastreamento visual de múltiplos jogadores, novamente diferentes abordagens
podem ser encontradas na literatura. Um problema frequentemente enfrentado nesse
cenário é a movimentação bastante ativa dos atletas, com aparência semelhante e que
frequentemente ocluem uns aos outros. Uma abordagem adotada em diversos trabalhos
para lidar com isso é o uso de filtros preditivos (GOLDENSTEIN, 2004), como filtro de
Kalman (WELCH; BISHOP, 2006) e filtro de partículas (ISARD; BLAKE, 1998). Esse tipo
de filtro faz uma previsão de onde os jogadores estarão em um dado momento a partir de
equações que descrevem e modelam sua dinâmica de movimentação. Xu et al. (2005) e
Chen et al. (2012), por exemplo, fazem o uso do filtro de Kalman para estimar a velocidade
17
e posição dos jogadores e ligar suas trajetórias. Entretanto, filtros de Kalman convencionais
trabalham bem com processos Gaussianos, não conseguindo lidar bem com processos
multimodais ou multi-hipótese, como é o caso de dois objetos com trajetórias que se cruzam
durante uma cena (MORAIS, 2012). Por causa dessa limitação, e objetivando o aumento
da robustez do rastreamento, alguns autores optam por alternativas como o Unscented
Kalman Filter (UKF) (WAN; MERWE et al., 2000) ou o filtro de partículas. No caso deste
último, Okuma et al. (2004), Dearden, Demiris e Grau (2006), Zhu et al. (2007), Czyz,
Ristic e Macq (2007), Kristan et al. (2009), Morais (2012) e Morais et al. (2014) utilizam-no
para rastrear os atletas e resolver ambiguidades e situações de oclusão. Obviamente, há
um custo de complexidade gerado e que aumenta proporcionalmente com o número de
jogadores rastreados.
Outra abordagem bastante comum no rastreamento dos vários jogadores explora a análise
de trajetórias e múltiplas hipóteses baseadas no uso de grafos. Nesse caso, são construídos
grafos que representam as possíveis trajetórias dos jogadores, isto é, modelam sua posição
em um determinado instante de tempo e suas transições. Na geração dos grafos, são
obedecidas diversas restrições, como, por exemplo, a inércia que um jogador possui, seu
padrão de movimentação e a distância entre as detecções em cada quadro. Em Nillius,
Sullivan e Carlsson (2006) e Sullivan e Carlsson (2006), são construídos grafos de rastreio
que denotam quando os jogadores estão isolados e que descrevem como eles se interagem.
Após isso, a trajetória de cada atleta é procurada no grafo, explorando as restrições impostas
em sua criação. Para estabelecer a identidade de um jogador, sua posição em relação aos
outros atletas é analisada. Por fim, uma medida de similaridade entre as trajetórias é usada
para inferir a configuração mais provável de caminhos para todos os jogadores. Já Joo e
Chellappa (2007) propõem um método eficiente de lidar com o problema de associação
entre os alvos do rastreamento, modelando-o como um problema de cobertura mínima de
arestas de um grafo. Desta maneira, conseguem um modo eficiente de manter as múltiplas
hipóteses para associação com maior probabilidade em relação a todas as possíveis. Por
sua vez, Miura e Kubo (2008) usam uma abordagem baseada em grafos para lidar com
situações difíceis em que vários jogadores estão concentrados em uma área reduzida, como
em um escanteio. Para tanto, são construídos grafos dos blobs de jogadores representando
suas transições. A aparência de cada blob fornece uma restrição do número de jogadores
no blob e essas restrições são propagadas pelo grafo para reduzir ambiguidades. As que
restam são resolvidas por um procedimento estatístico que seleciona as interpretações mais
prováveis. Analogamente, Pallavi et al. (2008) e Figueroa, Leite e Barros (2006b) formulam
o rastreamento como um problema de caminho mínimo em um grafo ponderado onde cada
jogador é um nó e os pesos das arestas indicam a distância e, consequentemente, a força
da associação entre os blobs detectados em dois quadros consecutivos.
Apesar de não serem trabalhos especificamente esportivos e de análise tática – já que
18
foram desenvolvidos originalmente como técnicas para detectar e rastrear pessoas –, os
trabalhos de Fleuret et al. (2008), Berclaz et al. (2011), Ben Shitrit et al. (2011) e Ben Shitrit
et al. (2013) têm se destacado no estado da arte nesta área, inclusive submetendo seus
algoritmos a testes com conjuntos de dados de futebol de campo e basquete. Seus últimos
resultados são capazes de atingir altos níveis de robustez e desempenho, e os códigos de
alguns dos algoritmos são disponibilizados publicamente pelos autores (Fleuret, F., Berclaz,
J., Lengagne R., Fua, P., 2015; Berclaz, J., Fleuret, F., Turetken, E., Fua, P., 2015). Assim
como os trabalhos mencionados no último parágrafo, estes fazem o uso de grafos e técnicas
de otimização para lidar com problemas comuns de rastreamento, como por exemplo: troca
de identidades entre os jogadores em situações de oclusão e agrupamento, associações de
detecções entre os quadros, dentre outros. A detecção dos atletas fica a cargo da técnica
probabilística POM, e o problema de rastreamento é modelado em um grafo que representa
as posições dos jogadores no tempo, suas transições e as situações de oclusão. Para
resolvê-lo, são usadas técnicas de otimização, como K caminhos mais curtos – K-Shortest
Paths (KSP) – e programação linear (BERCLAZ et al., 2011; Ben Shitrit et al., 2011). Mais
recentemente, Ben Shitrit et al. (2013) estende os trabalhos anteriores ao utilizar a aparência
dos jogadores para prevenir trocas de identidades indesejadas em situações complexas.
Essa informação é esparsa, isto é, pode ser proveniente de quadros relativamente distantes
do vídeo, e consegue aumentar ainda mais a robustez dos rastreamentos. Para se aproveitar
das aparências dos atletas, o rastreamento é formulado como um problema de multi-fluxo
de commodities de custo mínimo e fluxo máximo, que trabalha com um grafo contendo
cada posição possível no espaço, uma para cada grupo de identidades possível. Este grafo
é originalmente muito grande, e, para que o problema possa ser tratado em tempo real,
é reduzido utilizando técnicas de otimização como KSP, programação linear, entre outras
descritas no artigo.
2.2.2
Soluções comerciais não-intrusivas
Diversas soluções de análise tática e física no esporte são comercializadas utilizando
abordagens não-intrusivas. SportVU (STATS, 2015) é um sistema desse tipo que fornece
estatísticas para análises tanto por profissionais do esporte quanto por entusiastas e
torcedores. Por meio de câmeras instaladas ao redor do campo ou quadra de jogo, faz o
uso de técnicas de Visão Computacional para coletar em tempo real os dados de posição
dos participantes das partidas e da bola 25 vezes por segundo. Fornece indicadores físicos
(velocidade, distância percorrida, entre outros) e táticos (posicionamento, posse de bola,
informações de passe, ataque e defesa, entre outros) tanto de um jogador específico
quanto da equipe como um todo. Pode usar de três a seis câmeras, dependendo da
aplicação. Um operador fica no local de jogo e é responsável por inicializar o sistema
– responsável por fazer a marcação inicial dos jogadores, definir os limites de quadra e
resolver possíveis conflitos. A liga americana de basquete instalou essa solução nas arenas
19
de todas suas equipes e se tornou a primeira liga de esportes profissionais nos Estados
Unidos a quantificar e analisar todos os movimentos e ações dos jogos em tempo real
durante toda a temporada (NBA, 2015).
Há ainda outras soluções comerciais que possibilitam a análise tática e física baseada
em vídeos. Entretanto, a extração das estatísticas é feita de maneira semi-automática ou
mesmo manual, com o auxílio de operadores que assistem os jogos e coletam os dados. O
fornecimento dessas informações é realizado, em alguns casos, somente após o jogo, não
podendo ser aproveitadas no decorrer da partida. Contudo, possuem um nível muito alto de
precisão e podem conter também informação semântica (interpretações e classificações dos
lances e jogadas), o que faz com que sistemas desse tipo sejam escolhidos nos casos em
que a precisão das informações é crítica. Exemplos de sistemas como esses são StatDNA
(STATDNA, 2015), Dartfish (DARTFISH, 2015), Prozone (Prozone Sports, 2015) e Opta
(OPTA, 2015).
2.3
Discussão e desafios
Dada a grande popularidade dos esportes no mundo, o desenvolvimento de ferramentas
tecnológicas esportivas tem atraído muita atenção dos pesquisadores nas últimas décadas.
O campo da análise tática e física, em particular, é alvo de atenção especial, já que pode
prover informações valiosas capazes de aumentar o desempenho dos atletas e das equipes
em geral. Alguns esportes coletivos, como o futebol e o basquete, se destacam como
objetos principais de pesquisas científicas, como as mencionadas anteriormente, aplicando
técnicas diversificadas com os mais variados objetivos. Além disso, o contexto desses
esportes é bastante desafiador para a comunidade científica, principalmente a de Visão
Computacional, já que impõe uma série de situações complexas que devem ser levadas em
conta no planejamento das soluções.
Vários métodos diferentes foram apresentados nos parágrafos anteriores para realizarem a
detecção e o rastreamento dos jogadores, já que esses são os passos fundamentais para
as análises tática e física. Obviamente, cada técnica possui seus benefícios e contrapartidas, sendo mais apropriada em determinadas situações, já que impactam diretamente na
facilidade e agilidade de se obter as estatísticas e na precisão das informações.
Abordagens que usam imagens televisivas normalmente não conseguem ter em cena todos
os jogadores durante a duração completa do jogo, o que pode acarretar a perda de certas
ações dos atletas. Dessa maneira, não é possível, por exemplo, saber com precisão a
distância total percorrida por um determinado jogador que não foi monitorado em um certo
momento. Sendo assim, abordagens com câmeras dedicadas instaladas no local de jogo são
mais recomendadas para as análises tática e física. Técnicas multi-câmeras, por sua vez,
20
têm sido mais adotadas por permitirem uma melhor desambiguização no rastreamento em
situações complexas, como no agrupamento de jogadores em pequenas regiões e oclusões,
já que capturam o ambiente de jogo através de diferentes pontos de vista. Obviamente,
um maior número de câmeras aumenta o custo financeiro e computacional da abordagem,
inviabilizando sua adoção em alguns casos.
Um dos principais desafios enfrentados por pesquisadores é conciliar na detecção e rastreamento um bom nível de robustez e precisão das informações extraídas com alto desempenho
computacional, de forma que os tempos de processamento sejam rápidos o suficiente para
permitirem as aplicações funcionarem de maneira online ou mesmo em tempo real. Normalmente, técnicas de segmentação baseadas em informação de cor e operações morfológicas
são bem rápidas, mas são bastante sensíveis a variação de luminosidade (FIGUEROA;
LEITE; BARROS, 2006a). Por outro lado, métodos adaptativos de subtração de fundo
baseado em GMM são mais resistentes a esse problema, mas, além de serem mais lentos,
podem incorporar ao modelo de fundo um jogador que permanecer estático na cena por
tempo suficiente, e consequentemente não mais detectá-lo (STAUFFER; GRIMSON, 1999).
Alternativamente, as abordagens que utilizam detectores de objetos previamente treinados
conseguem ser mais robustas nesse sentido. Entretanto, necessitam de uma etapa de
treinamento bastante custosa computacionalmente, que normalmente requer um número
elevado de amostras e que pode levar várias horas ou mesmo dias para ser completado
dependendo do tamanho das amostras fornecidas (VIOLA; JONES, 2001). Além disso,
o processo de detecção por essa técnica é geralmente lento e, assim, nem sempre é
possível conseguir boas taxas de processamento de quadros, o que faz com que seja mais
utilizado em aplicações offline e análises pós-jogo. Com o desenvolvimento da computação
paralela, contudo, alguns esforços têm sido voltados à melhora do desempenho desse
método, permitindo processar uma maior taxa de quadros por segundo e necessitar um
menor tempo de treinamento (MORAIS, 2012). Finalmente, as técnicas probabilísticas
combinadas com os métodos anteriores conseguem obter bons resultados na detecção dos
jogadores e, dependendo da combinação adotada, é possível também ter bom desempenho
computacional. Entretanto, sua implementação pode ser bem mais complexa que as outras
técnicas.
No rastreamento, o uso de filtros preditivos tem sido muito adotado pelos pesquisadores,
dada sua simplicidade de implementação e desempenho computacional. Entretanto, se
o número de objetos rastreados for muito grande, o custo computacional pode se elevar
rapidamente, principalmente no caso do filtro de partículas, que necessita de um bom
número de pequenas amostras para um rastreamento razoável (GOLDENSTEIN, 2004).
Apesar disso, os filtros preditivos sofrem muito com o problema de troca de identidade entre
os atletas ou perda do rastreamento, em situações onde os jogadores se ocluem ou se
agrupam por muito tempo. Por causa disso, muitas vezes as soluções que os aplicam fazem
21
o uso de técnicas auxiliares, como a construção de modelos de aparência para identificar
corretamente um jogador ou a supervisão humana para resolver conflitos (MORAIS, 2012).
Por sua vez, métodos baseados em grafos tem sido bastante adotados pelos autores
recentemente. Em geral, são técnicas que apresentam custo de complexidade elevado, o
que torna difícil alcançar boas taxas de processamento de quadros. Entretanto, conseguem
obter um nível alto de robustez e preservar bem as identidades no rastreamento (D’ORAZIO;
LEO, 2010; Ben Shitrit et al., 2011).
Outro desafio constante é a tentativa de automatização do processo de detecção e rastreamento, de forma a eliminar a intervenção humana. Além de acelerar o processo de
análise, empregar uma pessoa dedicada a essa tarefa normalmente é algo que envolve
bastante esforço e custo. Desta maneira, muitos algoritmos têm focado no problema de
detectar os atletas e construir os modelos usados sem que uma pessoa tenha que indicar
manualmente as áreas a serem trabalhadas na imagem. Da mesma forma, algoritmos que
preservam bem a identidade dos jogadores nos rastreamentos evitam que seja necessário
um operador para resolver os conflitos e reparar os erros.
Neste trabalho, foi adotada a técnica de subtração de fundo adaptativa, baseada em modelo
de misturas de Gaussianas (ZIVKOVIC, 2004), para que seja possível detectar os jogadores
nas imagens. Essa escolha foi motivada por diversos fatores. Em primeiro lugar, essa técnica
pode lidar com as eventuais mudanças na cena, diminuindo, desta maneira, a intervenção
humana no sistema. Em segundo lugar, o método escolhido é capaz de identificar grande
parte das sombras dos jogadores, possibilitando sua remoção. Além disso, essa técnica
pode lidar com objetos que possuem pouca informação visual a explorar, como no presente
caso (mostrado na Figura 4). Finalmente, o método escolhido não necessita de uma fase
onerosa de treinamento, como é o caso dos detectores de objetos previamente treinados.
Por outro lado, para o rastreamento dos jogadores, optou-se pelo uso do filtro de partículas,
dada sua simplicidade e desempenho, bem como sua capacidade de lidar com as nãolinearidades presentes no futsal. As técnicas adotadas e sua utilização serão detalhadas no
Capítulo 3 e no Capítulo 4.
Por mais que muitos trabalhos tenham sido desenvolvidos e apresentados na área de
análise física e tática, grande parte entregam as informações esperadas com níveis de
robustez, precisão e desempenho abaixo do esperado, tornando sua aplicação impraticável
num cenário real. Assim sendo, o desenvolvimento de uma abordagem que consiga atingir
esses objetivos é ainda um dos grandes problemas de pesquisa em Visão Computacional.
22
Capítulo 3
Fundamentação Teórica
Neste capítulo são introduzidos alguns dos principais conceitos e técnicas que fundamentam
o desenvolvimento da metodologia proposta para o sistema e são usados como base teórica
do presente trabalho, em especial: geometria e calibração de câmeras de ponto de vista
único; subtração de fundo por modelo de mistura de Gaussianas (GMM, do inglês Gaussian
Mixture Model); e filtro de partículas. Cada um desses temas é abordado separadamente
em uma seção específica a seguir.
A descrição do processo de calibração de câmeras permite compreender como se dá a
correspondência entre pontos na imagem capturada pela câmera e pontos no mundo real.
A subtração de fundo por GMM, por sua vez, é utilizada para a detecção dos jogadores, de
modo que as áreas na imagem que correspondam à quadra sejam removidas e só restem
os atletas. Por fim, o filtro de partículas é usado para ligar as diversas detecções entre os
quadros e rastrear os jogadores um a um, de forma que seja possível obter suas trajetórias.
3.1
Geometria e calibração de câmeras de ponto de vista
único
Esta seção apresenta uma introdução aos conceitos fundamentais da geometria e calibração
de câmeras de ponto de vista único, baseada na seção de mesmo tema da tese de doutorado
de Pádua (2005). Uma câmera pode ser entendida, basicamente, como um mapeamento
entre o mundo 3D (espaço de objetos) e uma imagem 2D (TRUCCO; VERRI, 1998). Existem
na literatura diversos modelos de câmera, que são matrizes com propriedades particulares
que representam o mapeamento da câmera. No sistema proposto nesse trabalho, as
câmeras utilizadas seguem o modelo projetivo pinhole, ilustrado na Figura 8. Esse modelo
consiste num plano π , o plano de imagem, e um ponto 3D O, o centro de projeção. A
distância f entre π e O é a chamada distância focal. A linha através de O e perpendicular a
π é o eixo óptico, e o, o ponto onde o eixo óptico cruza π , é chamado de centro da imagem.
23
Figura 8 – O modelo de câmera pinhole (HARTLEY; ZISSERMAN, 2003).
Como mostrado na Figura 8, q, a imagem de Q, é o ponto onde a linha reta através de Q e
O intercepta o plano de imagem π . Considere o referencial 3D onde O é a origem e o plano
π é ortogonal ao eixo Z, e seja Q = (Q1 , Q2 , Q3 )> . Por semelhança de triângulos, temos
que o ponto Q é mapeado para o ponto q = (f Q1 /Q3 , f Q2 /Q3 , f )> no plano de imagem.
Ignorando a última coordenada da imagem, tem-se que:
(Q1 , Q2 , Q3 )> 7→ (f Q1 /Q3 , f Q2 /Q3 )>
(1)
descreve o mapeamento de projeção central das coordenadas do mundo para as coordenadas de imagem (HARTLEY; ZISSERMAN, 2003). Esse é um mapeamento do espaço 3D
Euclidiano R3 para o espaço 2D Euclidiano R2 .
Se os pontos no mundo e na imagem forem representados por vetores homogêneos (isto é,
adciona-se 1 como a última coordenada), então a projeção central é expressa como um
mapeamento linear entre suas coordenadas homogêneas (HARTLEY; ZISSERMAN, 2003).
Em particular, a Equação 1 pode ser escrita em termos de uma multiplicação de matrizes
como:






Q1
Q2
Q3
1







f Q1
f 0 0 0 





2
 7→  f Q  =  0 f 0 0 





3
Q
0 0 1 0
Q1
Q2
Q3
1



.


(2)
Os algoritmos de Visão Computacional que fazem a estimativa da posição de objetos no
espaço necessitam de equações como a Equação 2 para correlacionar as coordenadas dos
pontos no espaço 3D com as coordenadas dos seus pontos correspondentes na imagem
(TRUCCO; VERRI, 1998). Além disso, nessas aplicações frequentemente assume-se que
as coordenadas dos pontos na imagem no referencial de câmera podem ser obtidas pelas
coordenadas de pixel e que o referencial de câmera pode ser localizado em relação a
outro referencial, conhecido como o referencial no mundo (TRUCCO; VERRI, 1998). Para
tanto, é necessário conhecer algumas características da câmera, conhecidas em Visão
Computacional como os parâmetros intrínsecos e extrínsecos da câmera. O problema
24
Figura 9 – Alvo de calibração do tipo tabuleiro de xadrez sendo visualizado em diferentes
orientações.
de estimá-los é conhecido como calibração de câmera (HARTLEY; ZISSERMAN, 2003;
TRUCCO; VERRI, 1998).
Para realizar a calibração, um conjunto suficiente de pontos conhecidos no mundo deve
ser obtido e visualizado. Esses pontos são, normalmente, conseguidos por meio de alvos
de calibração previamente construídos (ZHANG, 2000). Para que se consiga uma boa
quantidade de pontos, o alvo deve ser capturado pela câmera em diferentes orientações,
como mostrado na Figura 9. Em ambientes externos, muitas vezes não é possível construir
um alvo suficientemente grande que possa ser visto pela câmera ou alterar sua orientação,
e, nesses casos, pode-se utilizar marcações conhecidas no local onde as câmeras estão
posicionadas. De posse das correspondências de pontos no mundo e na imagem, um
sistema linear que utiliza as matrizes mostradas anteriormente pode ser construído e
resolvido para se obter os valores dos parâmetros extrínsecos e intrínsecos (TRUCCO;
VERRI, 1998; ZHANG, 2000). A seguir, são introduzidas brevemente as definições desses
parâmetros. Posteriormente, na Subseção 3.1.3, será explicada a definição de Homografia
planar e como ela pode ser usada para fazer o mapeamento entre pontos em um plano no
mundo com os pontos no plano de imagem.
3.1.1
Parâmetros extrínsecos
Os parâmetros extrínsecos são definidos como um conjunto de parâmetros geométricos
que identificam unicamente a transformação entre o referencial de câmera desconhecido
e o referencial conhecido, chamado de referencial no mundo (TRUCCO; VERRI, 1998).
Segundo Trucco e Verri (1998), Hartley e Zisserman (2003), uma escolha comum para
descrever a transformação entre o referencial de câmera e o referencial no mundo usa:
• um vetor 3 × 1 de translação t, que descreve as posições relativas das origens dos
dois referenciais;
25
• uma matriz ortogonal 3 × 3 de rotação R, que traz os eixos correspondentes dos dois
referenciais uns nos outros.
A relação entre as coordenadas de um ponto Q no referencial no mundo e no referencial de
câmera, Qw e Qc , respectivamente, é dada por:
Qc = RQw + t.
(3)
Ao se expressar Qw em coordenadas homogêneas, pode-se agrupar os parâmetros extrínsecos em uma única matriz 3 × 4, Me , chamada de matriz de parâmetros extrínsecos:
Me =
h
R t
i
.
(4)
e se obter a equação linear matricial abaixo para relacionar as coordenadas de pontos no
referencial no mundo com suas coordenadas correspondentes no referencial de câmera:
"
Qc = Me
3.1.2
Qw
#
1
.
(5)
Parâmetros intrínsecos
Segundo Trucco e Verri (1998), os parâmetros intrínsecos podem ser definidos como o
conjunto de parâmetros necessários para definir as características ópticas, geométricas e
digitais da câmera. Esses parâmetros são a distância focal f , a localização do centro da
imagem em coordenadas de pixel (ox , oy ), o tamanho efetivo de pixel nas direções vertical e
horizontal (sx , sy ) e, se necessário, o coeficiente k de distorção radial.
Desconsiderando a distorção radial, pode-se agrupar todos os parâmetros intrínsecos em
uma única matriz 3 × 3, Mi , chamada de matriz de parâmetros intrínsecos:


−f /sx
0
ox


Mi = 
0
−f /sy oy  .
0
0
1
(6)
Novamente, se Qw for expresso em coordenadas homogêneas, pode-se obter a seguinte
equação linear matricial que descreve as projeções perspectivas:
"
q = Mi Me
Qw
1
#
.
(7)
Um detalhe interessante sobre o vetor q= [q 1 , q 2 , q 3 ]> é que as razões (q 1 /q 3 ) e (q 2 /q 3 ) são
as coordenadas em pixel do ponto na imagem. Deste modo, Mi faz uma transformação
entre o referencial de câmera e o referencial do plano de imagem. As matrizes Mi e Me
podem ser combinadas em uma única matriz 3 × 4, capaz de mapear pontos no mundo
26
para coordenadas de imagem em pixels, ambos em coordenadas homogêneas, chamada
de matriz de câmera.
No caso do presente sistema, uma aproximação que pode ser adotada é considerar que
a posição de um jogador em quadra é dada pelo ponto entre seus pés no piso da quadra.
Em outras palavras, os pontos de interesse estão sobre um plano definido no mundo,
que é exatamente o plano da quadra. A origem do sistema de coordenadas do mundo
pode, similarmente, ser definida de modo arbitrário para estar no plano, como mostrado na
Figura 10.
Desta maneira, a terceira coordenada de Qw na Equação 7, nesse cenário em particular,
terá sempre valor igual a zero. Com base nisso, pode-se fazer uma simplificação e remover
a terceira linha de Qw e a terceira coluna da matriz de câmera. O resultado é uma matriz 3
× 3 chamada de matriz de homografia planar, capaz de mapear pontos 2D de um plano em
coordenadas homogêneas para pontos em outro plano. Essa matriz, por sua vez, é usada
no presente sistema para fazer a correspondência entre pontos na imagem e pontos no
plano de quadra. A seguir, será explicado rapidamente o processo de estimá-la e outros
detalhes serão apresentados.
3.1.3
Homografia planar
Como mencionado, a homografia planar é capaz de fazer o mapeamento entre pontos
de um plano α a seus correspondentes em outro plano β , por meio da multiplicação das
coordenadas pela matriz de homografia H. Desta maneira, ao se estimar a matriz de
Figura 10 – Plano no mundo que representa a quadra de jogo. A posição dos jogadores é
dada como um ponto sobre o plano, como o ponto P na imagem. Todos esses
pontos tem coordenada Z = 0.
27
homografia, encontra-se uma transformação perspectiva entre os dois planos. Assim, para
um determinado ponto p, pode-se escrever:
pβ = Hαβ pα ,
(8)
isto é, o ponto pβ é igual ao ponto pα transformado pela homografia Hαβ (MORAIS, 2012).
Um ponto importante a ser observado é que a matriz de homografia é inversível e, desta
maneira:
pα = Hαβ −1 pβ = Hβα pβ .
(9)
Para estimar a matriz H, pode-se reescrever a Equação 8 em termos matriciais, de forma
que:

 


xpβ
h11 h12 h13
xp α

 


 ypβ  =  h21 h22 h23   ypα  .
zpβ
h31 h32 h33
zpα
(10)
Em coordenadas não homogêneas, x0 pα = xpα /zpα e y 0 pα = ypα /zpα , e então:
x0 pβ =
h11 xpα + h12 ypα + h13 zpα
,
h31 xpα + h32 ypα + h33 zpα
(11)
h21 xpα + h22 ypα + h23 zpα
.
(12)
h31 xpα + h32 ypα + h33 zpα
Sem perda de generalidade, pode-se fazer zpα = 1 e rearranjar a equação até obter
y 0 pβ =
(MORAIS, 2012):
ax T h = 0,
(13)
ay T h = 0,
(14)
sendo:
h = (h11 , h12 , h13 , h21 , h22 , h23 , h31 , h32 , h33 )T ,
ax = (−xpa , −ypa , −1, 0, 0, 0, x0 pb xpa , x0 pb ypa , x0 pb )T ,
ay = (0, 0, 0, −xpa , −ypa , −1, y 0 pb xpa , y 0 pb ypa , y 0 pb )T .
Finalmente, com o auxílio de um conjunto suficiente de pontos correspondentes entre os
planos, pode-se resolver o sistema linear:
Ah = 0,
sendo:

ax
T
 1T
 a y1

 .
A =  ..

 a T
 yN
ayN T
28
(15)





.



(16)
Assim, com uso da homografia, obtém-se uma forma de detectar e rastrear um jogador na
imagem e determinar qual é a sua posição correspondente em quadra.
3.2
Subtração de fundo por modelo de mistura de Gaussianas
A subtração de fundo é uma das tarefas mais comuns em Visão Computacional, como descrito no Capítulo 2, principalmente nas aplicações em que se deseja separar ou segmentar
o fundo de uma cena dos objetos de interesse para, por exemplo, detectá-los e rastreá-los
(STAUFFER; GRIMSON, 1999; ZIVKOVIC, 2004). Frequentemente, o fundo de uma cena
apresenta algum comportamento regular que pode ser descrito por um modelo. Se esse
modelo é construído, então um objeto “intruso” na cena pode ser detectado procurando-se
pixels da imagem que não se encaixam no modelo (STAUFFER; GRIMSON, 1999). O
processo de subtração de fundo, em resumo, envolve calcular uma imagem de referência
do fundo (o modelo), subtrair cada novo quadro dessa imagem e limiarizar o resultado. O
produto final é uma imagem binária que destaca as regiões dos objetos não estacionários na
cena (STAUFFER; GRIMSON, 1999; ZIVKOVIC, 2004). Para lidar com eventuais mudanças
de iluminação na cena ou objetos que são introduzidos ou removidos da cena, é necessário
que qualquer solução reestime o modelo de fundo constantemente (ZIVKOVIC, 2004).
Diversas abordagens diferentes foram propostas nas últimas décadas para construir o
modelo e lidar com os problemas citados anteriormente. Uma das soluções mais famosas
utiliza um modelo adaptativo, onde cada pixel da cena é modelado por uma mistura de
distribuições Gaussianas e intensidades diferentes são representadas por Gaussianas
diferentes (STAUFFER; GRIMSON, 1999). Nesta dissertação, foi adotada a técnica proposta
por Zivkovic (2004), que estende o trabalho de Stauffer e Grimson (1999).
Nessa técnica, o modelo de fundo (BG, do inglês background) é estimado a partir de um
conjunto de treinamento denotado por χ. Esse conjunto é construído a partir de valores de
pixels ~x amostrados sobre um período de tempo de adaptação T . Desta maneira, num dado
tempo t, tem-se que χT = {~xt , ~xt−1 , ..., ~xt−T } e o modelo de fundo estimado é denotado por
p̂(~x|χ, BG) (ZIVKOVIC, 2004).
Com o passar do tempo, cada novo valor de pixel é incorporado ao conjunto e as amostras
antigas são descartadas, para que o modelo seja atualizado de forma a adaptar-se às
mudanças na cena. Nas amostras recentes, entretanto, podem haver valores que pertencem tanto aos objetos do fundo quanto do primeiro plano (F G, do inglês foreground). A
probabilidade de se observar um certo pixel com valor ~x no instante de tempo t é denotada,
desta maneira, por p(~xt |χT , BG + F G). Em um GMM com M componentes, essa estimativa
29
é dada por (ZIVKOVIC, 2004):
M
X
p̂(~x|χT , BG + F G) =
2
π̂m N (~x; µ
~ˆ, σ̂m
I),
(17)
m=1
sendo µ
~ˆm a estimativa da média da m-ésima componente Gaussiana e σ̂m a estimativa das
variâncias que descrevem a m-ésima componente Gaussiana. Assume-se que as matrizes
de covariância são diagonais e I , a matriz identidade, possui dimensões apropriadas
(ZIVKOVIC, 2004). Os pesos da mistura, denotados por π̂m , são maiores ou iguais a zero
e normalizados para que sua soma seja igual a um. O parâmetro de peso π̂m pode ser
considerado como a probabilidade de uma amostra ser proveniente da m-ésima componente,
ou seja, qual porção dos dados é representada pela m-ésima componente da mistura.
Em outras palavras, os pesos representam as proporções de tempo que determinadas
intensidades (e, analogamente, cores) ficam na cena. Isto significa que a determinação
de quais Gaussianas podem corresponder às cores do fundo é baseada na persistência
e variância de cada uma das Gaussianas da mistura. As prováveis cores de fundo são
aquelas que permanecem mais tempo na cena e de maneira mais estática (STAUFFER;
GRIMSON, 1999).
Para estimar o modelo de fundo a partir da mistura, o algoritmo assume que componentes
que possuem a maior evidência de pertencerem ao fundo e a menor variância são mais
prováveis de fazerem parte do background. Para determinar quais são essas componentes,
considera-se que o fundo contém B intensidades mais prováveis. Em uma abordagem
de clusterização, objetos estáticos tendem a formar agrupamentos (em inglês, clusters)
grandes e concisos de pixels de mesmo valor, enquanto que objetos em movimento formam
clusters esparsos dadas suas diferentes superfícies de reflexão durante a movimentação
(KAEWTRAKULPONG; BOWDEN, 2002). Desta forma, os objetos “intrusos” pertencentes
ao primeiro plano serão representados, em geral, por alguns clusters adicionais com pesos
π̂m pequenos. O modelo de fundo pode, portanto, ser aproximado pelos primeiros B maiores
clusters:
p(~x|χT , BG) ∼
B
X
π̂m N (~x; µ
~ˆm , σ 2 m I).
(18)
m=1
Se as componentes são ordenadas por seus pesos π̂m de forma decrescente, o valor de B
é dado por:
B = arg min
b
b
X
!
π̂m > (1 − cf ) ,
(19)
m=1
sendo cf uma medida da maior porção dos dados que pode pertencer aos objetos do
foreground sem influenciar o modelo de fundo (ZIVKOVIC, 2004). Em outras palavras,
(1 − cf ) é um limiar de fração mínima do modelo de fundo, ou seja, a menor probabilidade a
priori que o fundo está na cena. Assim, as primeiras B componentes cujos pesos excedem
esse limiar são consideradas o background.
30
Para encerrar a descrição da técnica, dois pontos importantes ainda devem ser tratados:
como atualizar os valores dos pesos, médias e variâncias das componentes, quando um
novo quadro é processado, e como escolher o número de componentes Gaussianas. Uma
limitação presente na abordagem de Stauffer e Grimson (1999) é causada exatamente pelo
uso de um número fixo de componentes para cada pixel no decorrer do tempo. Além disso,
esta técnica sofre com uma demora considerável no aprendizado do modelo no início da
execução. Para aumentar a acurácia da segmentação e diminuir seu custo computacional,
Zivkovic (2004) propõe um novo esquema de equações e um procedimento online para
constantemente atualizar não somente os parâmetros do GMM, mas também o número de
componentes a serem utilizadas.
A cada nova amostra ~xt , no tempo t, as equações recursivas de atualização são:
π̂m ← π̂m + α(omt − π̂m ) − αcT
(20)
µ
~ˆm ← µ
~ˆm + omt (α/π̂m )~δm
(21)
2
2
2
),
+ omt (α/π̂m )(δ~mT ~δm − σ̂m
σ̂m
← σ̂m
(22)
sendo ~δm = ~xt − µ
~ˆm . A constante α é vista como um fator de aprendizado, que descreve um
envelope de decaimento exponencial usado para limitar a influência das amostras antigas,
e α = 1/T aproximadamente. Para uma nova amostra, omt é igual a 1 para a componente
“próxima” com o maior peso π̂m e igual a zero para as componentes restantes. Uma amostra
é dita “próxima” a uma componente se a distância de Mahalanobis da componente é, por
exemplo, menor que 3 desvios padrões. A distância quadrática da m-ésima componente
2
2
é calculada como Dm
(~xt ) = δ~mT ~δm /σ̂m
. Se não há no modelo nenhuma componente
“próxima”, uma nova componente é gerada com π̂M +1 = α, µ
~ˆM +1 = ~xt e σ̂M +1 = σ0 , sendo
σ0 uma variância inicial com valor alto apropriado (ZIVKOVIC, 2004). Se o número máximo
de componentes é atingido, a componente de menor peso é descartada. Por último, Zivkovic
(2004) usa uma distribuição a priori de Dirichlet com coeficientes negativos, de forma a
aceitar uma determinada classe somente se houver evidências suficientes nas amostras
para a existência da classe. Isso é feito por meio do parâmetro de peso negativo cT , que
irá suprimir as componentes não suportadas pelos dados. Se uma componente possui
pesos negativos, ela é então descartada. Após cada atualização, os pesos são novamente
normalizados.
Desta maneira, no começo da execução, o modelo GMM é iniciado com uma componente
centrada na primeira amostra. A cada novo valor de pixel, novas componentes são adicionadas ou descartadas como mencionado anteriormente, para que o número de Gaussianas,
assim como os outros parâmetros, seja atualizado dinamicamente e o modelo de fundo
31
estimado. Valores de pixel que não se encaixam no modelo são, portanto, considerados
pertencentes ao primeiro plano, até que exista uma Gaussiana com evidências suficientes
que os inclua como parte do plano de fundo. Além disso, a técnica adotada no presente
trabalho, ao contrário da proposta em Stauffer e Grimson (1999), é capaz de detectar pixels
de sombras em movimento dentre os pixels marcados como foreground. Para tanto, um pixel
é checado contra o modelo de fundo, e será tratado como uma sombra se é considerado
uma versão mais escura do background. Para esse propósito, um limiar é usado para
especificar a escuridão da sombra.
3.3
Filtro de partículas
Filtro de partículas é um filtro preditivo, isto é, usa informação do estado atual de um objeto
para inferir seu estado no próximo instante de tempo (ISARD; BLAKE, 1998). Para tanto, faz
o uso de um modelo de movimentação que descreve a dinâmica de movimento do objeto.
Com base nesse modelo, o filtro é capaz de fazer uma previsão da posição no próximo
instante de tempo, que é corrigida por uma função ou modelo de observação, como por
exemplo, a posição do jogador obtida por sua detecção. Esse ajuste é necessário já que
não se sabe exatamente como o objeto se move naquele momento. Por isso, os erros
se acumulam e podem levar a predições futuras incorretas e que não correspondem ao
objeto de interesse (MORAIS, 2012). Quando não é possível observar diretamente o objeto
(por exemplo, se não foi detectado ou em um momento de oclusão), o filtro pode utilizar
apenas as informações da predição para manter o rastreamento até que o objeto possa ser
novamente detectado.
Para que seja possível trabalhar com funções multimodais, como no presente caso, o filtro
faz a representação de suas funções de probabilidades usando um conjunto de N amostras,
ou partículas – daí a origem de seu nome. Num determinado tempo t, cada partícula i
possui um estado Xit , que contém uma informação que representa o objeto. Cada partícula
possui também um peso Wit , que representa o quão boa ela é, ou seja, qual a probabilidade
do objeto ser encontrado naquela posição se uma observação for feita naquele instante. No
caso do sistema em questão, foi utilizado um vetor com quatro variáveis para representar o
estado do jogador. Assim, para cada partícula, tem-se Xit = {x, y, vx , vy }, onde as duas
primeiras variáveis correspondem a posição do jogador no espaço 2D, vx é a velocidade no
eixo x e vy a velocidade no eixo y . O estado estimado do jogador rastreado, representado
por X̂t , é dado por:
X̂t =
N
X
Xit Wit .
(23)
i=1
No instante t0 , o conjunto de partículas é gerado. Essas partículas são normalmente
inicializadas de maneira aleatória, e recebem pesos iguais, isto é, Wit0 = 1/N . A partir
32
deste ponto, inicia-se um processo iterativo, que se repete a cada novo quadro obtido na
sequência de imagens e consiste das fases de Reamostragem, Propagação, e Observação.
A seguir, são descritas cada uma dessas etapas e é explicado o funcionamento desse
processo. Um exemplo simples é usado para permitir uma melhor compreensão de tal
processo. Os detalhes da abordagem utilizada para o rastreamento dos atletas neste
trabalho serão apresentados no Capítulo 4. Para as descrições seguintes, considera-se t
como o instante de tempo atual.
3.3.1
Reamostragem
Nessa fase, as partículas são reamostradas de acordo com seu peso, de forma a construir um novo conjunto com N amostras baseado no anterior. Em um intervalo [0, 1], são
mapeadas porções desse intervalo a cada uma das partículas, de forma que as de maior
peso possuam porções maiores. Após isso, é sorteado aleatoriamente um número n e será
escolhida a partícula que possui a porção do intervalo que o contenha. Ao se realizar o
sorteio dessa maneira, as amostras de maior peso são favorecidas, mas nada impede que
haja repetições e que partículas de baixo peso sejam selecionadas.
3.3.2
Propagação
Nessa etapa, o conjunto de partículas é propagado utilizando-se o modelo de movimentação,
que descreve como o objeto se move, de forma a construir a estimativa do estado Xt+1 .
Em outras palavras, basicamente é feita a previsão do próximo estado. Diversos modelos
podem ser adotados, como por exemplo, movimento uniforme ou movimento uniformemente
acelerado. Tomando como exemplo o primeiro, tem-se que:
(x, y)t+1 = (x, y)t + (vx , vy )t ∆t,
(24)
(vx , vy )t+1 = (vx , vy )t ,
(25)
sendo ∆t o intervalo de tempo considerado. No entanto, como o filtro lida com as probabilidades de um evento, há incertezas no processo que devem ser levadas em conta. Essas
incertezas podem ser vistas como ruídos presentes no processo (BREITENSTEIN et al.,
2011). No caso do presente trabalho, são modeladas como erros aleatórios normalmente
distribuídos com média igual a zero e variância igual a σ 2 (vx ,vy ) , incluídos nas partículas.
Esses erros contribuem para diferenciar o estado de partículas repetidas, melhorar a representatividade naquele ponto, e evitar repetições que podem levar o sistema ao colapso
(MORAIS, 2012). Levando isso em conta, as equações acima podem ser reescritas em
33
termos matriciais, de forma que:

Xt+1


=


1
0
0
0
 
0 ∆t 0
x
 

1 0 ∆t 
  y

0 1
0 
  vx
0 0
1
vy






 +




t
0
0
evx
evy



 ,


(26)
sendo evx e evy os ruídos do processo.
3.3.3
Observação
Na fase de observação, as estimativas são ajustadas por meio de uma função ou modelo Z
de observação do objeto, de modo a confirmá-las ou corrigi-las. Nesse instante, é calculado
o novo peso da partícula, que representa o quão boa ela é. Em outras palavras, qual
a probabilidade do objeto ser encontrado naquela posição se uma observação for feita
naquele instante, denotada por P (Xt+1 |Zt+1 ).
Novamente, diversos modelos podem ser adotados para a observação. Continuando o
exemplo anterior, como se está interessado em rastrear jogadores e estimar suas posições,
o modelo considerado é dado por:

"
Zt+1 =
1 0 0 0
0 1 0 0
#




x
y
vx
vy






.
(27)
t+1
Nesse caso, somente a informação de posição nas duas dimensões é recuperada, ou seja,
as velocidades não são importantes, nesse cenário, para a observação. A estimativa e a
observação são confrontadas e o peso da partícula é calculado usando, por exemplo, uma
função de densidade de probabilidade. Por fim, os pesos são normalizados para que sua
soma seja igual a um. A partir daí, o estado estimado X̂t+1 do objeto pode ser novamente
calculado por meio da Equação 23 e o filtro está pronto para outra iteração.
A Figura 11 sumariza uma iteração do filtro de partículas e mostra os resultados de suas
etapas. As partículas são representadas por elipses de tamanhos diferentes, que representam o peso Wi da partícula no processo (MORAIS, 2012). No ciclo de tempo t, mostrado
na primeira camada, há um conjunto de partículas com pesos calculados pela observação
Zt . A segunda camada mostra a etapa de Reamostragem, onde são exibidas as partículas
selecionadas de acordo com o peso e as eventuais repetições. Nesse momento, os pesos
das partículas perderam seu significado e precisam ser novamente medidos (justificando o
tamanho igual das elipses) (MORAIS, 2012). Na terceira camada pode-se ver o resultado
da etapa de Propagação, quando as partículas são propagadas por meio do modelo de
movimentação e acrescidos os erros do processo. O conjunto de partículas, nesse momento,
34
Figura 11 – Passos do filtro de partículas. Cada camada mostra uma das etapas de sua
execução: (1) Conjunto de partículas no tempo t com pesos dados por Zt ;
(2) Reamostragem; (3) Propagação; (4) Função de observação em t + 1; (5)
Partículas com estado Xt+1 dado por Zt+1 em t + 1: P (Xt+1 |Zt+1 ) (MORAIS,
2012).
representa a estimativa no próximo ciclo da execução. A quarta camada mostra a função de
observação como uma função em que a altura da curva representa o peso (qualidade) da
medição naquele ponto. Partículas que se encontram em regiões de maior peso na função
serão representadas por elipses maiores, já que possuirão pesos também maiores. Por
fim, a última camada mostra o conjunto de partículas ajustado no tempo t + 1, e essas
partículas estão prontas para que o processo se repita na próxima iteração.
35
Capítulo 4
Metodologia
Este capítulo descreve o sistema desenvolvido para apoiar as análises tática e física de
times de futsal. Serão descritos os passos realizados para se atingir esse objetivo e como
as técnicas tratadas no Capítulo 3 são aplicadas nesse contexto.
A Figura 12 apresenta uma visão geral do sistema, destacando as etapas que devem ser
executadas, além de suas entradas e saídas. Como pode-se observar, as informações
táticas e físicas são derivadas dos dados de posição dos atletas em quadra num dado
instante de tempo, e, desta maneira, é necessário estimar suas localizações e computar
suas trajetórias. A seguir, são exploradas em detalhe cada uma das etapas necessárias
para o funcionamento do sistema.
4.1
Aquisição das imagens
Uma vez que o sistema se baseia em Visão Computacional, o primeiro passo consiste em
capturar as imagens dos jogos por meio de câmeras de vídeo, que serão posteriormente
processadas pelos algoritmos de detecção e rastreamento de jogadores. Como mencionado
na Seção 1.1, é importante definir a posição das câmeras ao redor da quadra.
Diferentemente de outros trabalhos nessa área, o sistema proposto utiliza uma única câmera
estacionária, c, fixada no teto do ginásio, a 16 metros de altura, e posicionada de forma
que seu eixo óptico, o, está aproximadamente perpendicular em relação ao piso da quadra,
como mostrado na Figura 12. Nessa configuração, a câmera pode monitorar toda a área
da quadra e capturar imagens do jogo vistas de cima, consequentemente minimizando
os efeitos indesejados de oclusões entre os jogadores e outros participantes da partida.
O modelo utilizado é uma câmera IP AVT Prosilica GC750, que é conectada à maquina
que executa o sistema via cabo de rede. As imagens são capturadas a uma taxa de 30
quadros por segundo a uma resolução de 752x480 pixels. Para que seja possível capturar
toda a quadra, é usada uma lente grande angular varifocal de 1,8-3,6mm, modelo Computar
36
Figura 12 – Visão geral das principais etapas executadas pelo sistema proposto e suas
entradas e saídas.
T2Z1816CS. Esse tipo de lente, entretanto, causa distorções esféricas substanciais nas
imagens obtidas, como mostrado na Figura 13a. Para corrigir esse problema, são usados os
parâmetros intrínsecos da câmera, obtidos por meio de um processo de calibração usando
o método proposto por Zhang (2000), resultando em uma imagem muito menos distorcida.
Como apenas a área da quadra contém informação relevante ao sistema, a imagem
resultante é recortada para que apenas a região de interesse se mantenha, reduzindo-se
assim o número de pixels a serem processados (Figura 13b).
Uma vez definidas a posição e a orientação da câmera, são estimadas as matrizes de
37
(a) Imagem da quadra capturada pela câmera do sistema.
(b) A mesma imagem pós-correção da distorção introduzida pela lente e recortada para preservar
apenas a região de interesse.
Figura 13 – Exemplos de quadros obtidos na etapa de aquisição das imagens.
homografia usadas no sistema. São calculadas duas matrizes diferentes. A primeira faz a
transformação de um ponto no plano de imagem mostrado na Figura 13b para o plano da
quadra no mundo, e é usada para determinar a distância percorrida pelos jogadores e suas
velocidades. A segunda, por sua vez, transforma pontos no plano de imagem mostrado
na Figura 13b para outro plano de imagem, como o mostrado na Figura 2, e é usada na
criação dos mapas de calor contendo as posições em quadra ocupadas pelos jogadores
durante o jogo. Como descrito na Seção 3.1, são utilizadas marcações conhecidas da
quadra como, por exemplo, a linha da área do goleiro, a marca do pênalti, o círculo central,
dentre outras, para conseguir um conjunto suficiente de correspondências de pontos na
imagem em pixels e pontos no plano de quadra (Figura 14). A posição desses pontos na
quadra foram medidas presencialmente, e são definidas em relação a um referencial com
origem colocada arbitrariamente na marca de escanteio superior esquerda. Analogamente,
um subconjunto das marcações na Figura 14 é usado para a segunda matriz de homografia.
Nesse caso, são escolhidos pontos da imagem que também podem ser observados na
Figura 2 e, assim, as correspondências são obtidas e as matrizes calculadas.
Figura 14 – Marcações conhecidas da quadra (pontos verdes) usadas na estimativa das
matrizes de homografia.
38
4.2
Detecção dos jogadores
De posse das imagens e das matrizes de homografia, a próxima etapa na metodologia
adotada é realizar a detecção dos jogadores em uma imagem da sequência. Para tanto, o
sistema faz o uso da técnica de subtração de fundo descrita na Seção 3.2. Os parâmetros
utilizados são definidos experimentalmente de acordo com a sequência trabalhada, de
forma que maximizem a segmentação entre os atletas e a quadra. Similarmente, o tempo
de adaptação do modelo é definido de modo que permita que jogadores como o goleiro
possam ficar um certo tempo estáticos na cena, sem serem incorporados ao fundo. Ao se
aplicar o método descrito, o modelo de fundo é criado e subtraído das imagens. Após a
subtração, obtém-se uma imagem como a mostrada na Figura 15b.
Para aumentar a robustez do processo, é necessário detectar e remover os pixels de sombra
em movimento dentre os pixels definidos como foreground. Como mencionado na Seção 3.2,
a técnica adotada consegue fazer essa diferenciação, e marca os pixels de sombra com
valor de intensidade igual a 127, o que faz com que esses pixels fiquem cinza na imagem
resultante. As sombras podem, então, ser facilmente removidas por meio de uma operação
de limiarização (threshold, em inglês). Após isso, tem-se uma imagem binária onde os pixels
(a) Imagem a ser processada.
(b) Imagem resultante da subtração de fundo (sombras
em cinza).
(c) Resultado das operações morfológicas de abertura (d) Regiões de interesse contendo os jogadores (retâne fechamento.
gulos delimitadores em vermelho).
Figura 15 – Etapas do processo de detecção dos jogadores.
39
pretos representam o fundo e os pixels brancos representam os objetos do primeiro plano.
Para melhorar ainda mais a detecção, são aplicadas algumas operações morfológicas na
imagem binária, como abertura e fechamento (HARALICK; STERNBERG; ZHUANG, 1987).
A primeira é realizada para remover pixels causados por ruído e remover objetos muito
pequenos do foreground. Já a segunda, pode remover os pequenos buracos dos blobs
no primeiro plano. O resultado dessas operações pode ser visto na Figura 15c. Nesse
momento, retângulos que delimitam os blobs são atribuídos a cada um deles, definindo
possíveis localizações dos jogadores e criando um conjunto R de regiões de interesse
(Figura 15d).
Após isso, todas as regiões no conjunto R devem ser verificadas em relação a algumas
restrições geométricas, para checar se elas realmente correspondem a jogadores, dadas
suas respectivas alturas e larguras e suas posições. Assim, a i-ésima região em R é
descartada se wi < wmin or hi < hmin , sendo que wi e hi denotam a largura e altura da
i-ésima região, respectivamente, e wmin e hmin são os valores mínimos para largura e
altura que uma região pode assumir para representar um jogador em potencial na cena.
De modo similar, o algoritmo avalia se wi > wmax ou hi > hmax , sendo wmax e hmax os
valores máximos para largura e altura para uma região que pode representar um jogador.
Nesses casos, se wi > wmax ou hi > hmax , o algoritmo divide recursivamente a região em
retângulos menores até que eles obedeçam as restrições de dimensão, já que possivelmente
correspondem a diversos jogadores concentrados em um mesmo local. Em seguida, atualiza
o conjunto R.
No processo de detecção, somente jogadores encontrados dentro da área da quadra são
considerados, para evitar que a movimentação de técnicos, jogadores reservas, árbitros ou
mesmo torcedores levem a detecções incorretas. Para verificar se um atleta está dentro
da área de interesse, o primeiro passo é determinar sua posição, que no presente caso é
definida pela posição do ponto entre seus pés. Como a câmera captura imagens da quadra
vista de cima, pode-se supor que esse ponto é dado pelo centroide da i-ésima região em R.
Entretanto, nas imagens obtidas por projeção perspectiva, como no presente caso, essa
suposição nem sempre é valida, principalmente para objetos que se encontram distantes
do centro da imagem, como mostrado na Figura 16a. Desta forma, estimar a posição do
pé é uma tarefa importante para aumentar a precisão do sistema. Quando um jogador vai
bater um lateral ou está correndo próximo aos limites da quadra, por exemplo, em grande
parte dessas situações o centroide da i-ésima região em R está fora da área de jogo, mas
o pé do jogador se encontra dentro.
Para estimar a posição do pé, traça-se uma linha ligando o centroide da i-ésima região até
o centro da imagem, obtido pela calibração realizada na etapa de aquisição das imagens.
O ponto onde essa linha intercepta o retângulo delimitador da região será considerado
40
(a) Diferença entre as posições do centroide e do pé: (b) Linhas (em roxo) ligando o centroide das regiões
setas azuis indicam o centroide da i-ésima região
ao centro da imagem. O ponto de interseção da
em R e setas verdes a posição real do pé.
linha com o retângulo é considerado como o pé do
jogador.
Figura 16 – Estimação da posição dos pés dos jogadores para determinar sua localização.
como a posição do pé do jogador em quadra, como mostrado na Figura 16b. Se o retângulo
delimitador não é interceptado pela linha, isto é, se ele a contém, é usado o próprio centroide
da região como a posição estimada do pé. Mesmo nos casos em que a detecção do jogador
não é ideal, isto é, o retângulo delimitador não engloba completamente a região do jogador
na imagem, essa abordagem permite selecionar o ponto mais próximo aos pés do jogador,
aumentando a precisão da localização do atleta. De posse das estimativas de posição
dos pés dos jogadores, a primeira matriz de homografia estimada na seção anterior é
usada para transformar as coordenadas das posições dadas em pixels na imagem para
coordenadas no plano de quadra. Finalmente, é verificado se essas posições estão dentro
da área da quadra. Em caso negativo, a detecção é descartada.
O último passo do processo de detecção é gerar um modelo de aparência que explora a
informação de cor do jogador detectado, a ser usado posteriormente na etapa de Observação do filtro de partículas no rastreamento. Esse modelo consiste em 3 histogramas de cor
normalizados, com 16 intervalos (ou bins, em inglês) cada, construídos no espaço HSV,
sendo um histograma para cada canal do espaço. A construção desse modelo acontece em
uma série de etapas, descritas a seguir. O primeiro passo é utilizar a imagem resultante
da subtração de fundo (Figura 15b, porém com sombras removidas) como uma máscara
sobre a imagem original, para obter uma terceira imagem que contém apenas pixels dos
objetos em movimento no primeiro plano, mostrada na Figura 17a. Depois disso, para cada
região de interesse i em R, é feito um recorte desta imagem, de tamanho definido pelo
retângulo delimitador da região, resultando em uma imagem como a mostrada na Figura
17b, na parte de cima. O recorte é então convertido do espaço de cor RGB para HSV,
e os planos Hue, Saturation e Value são separados (Figura 17b, no meio). Por fim, são
calculados os histogramas normalizados de cada um desses planos (Figura 17b, embaixo),
que irão compor a aparência do jogador.
41
(a) Imagem com pixels dos objetos em movimento no (b) Recorte da imagem à esquerda delimitado por uma
primeiro plano, após aplicação da máscara (Fig.
região em R (em cima) e canais separados do re15b, sem sombras) sobre a imagem original (Fig.
corte (meio). As imagens foram aumentadas para
15a).
melhor visualização. Embaixo, os histogramas de
cada canal.
Figura 17 – Criação do modelo de aparência de um jogador.
Até este momento, não se sabe quais das detecções representa um jogador em particular,
isto é, qual medição corresponde a cada jogador. Essa situação é tratada na próxima
etapa do sistema, que realiza o rastreamento dos atletas. Após o processo de detecção, os
retângulos delimitadores em R, juntamente com as posições dos jogadores detectados e os
respectivos modelos de aparência são reunidos em uma estrutura especial, denominada de
agora em diante de medição, que são utilizadas no rastreamento.
4.3
Rastreamento dos jogadores
Após o processo de detecção, a próxima etapa no sistema consiste em rastrear os jogadores
e estimar suas posições em um dado instante de tempo, de forma a ligar suas medições
encontradas em um quadro com as encontradas num quadro posterior. O rastreamento
dos jogadores pode ser visto como um processo iterativo, que analisa uma sequência de
imagens para descrever o movimento de um ou mais objetos na cena (TRUCCO; VERRI,
1998). Neste trabalho, foi adotada a técnica de filtro de partículas, descrita na Seção 3.3,
para esse objetivo. A seguir, serão descritas as etapas e o funcionamento do algoritmo de
rastreamento.
4.3.1
Inicialização
O início do rastreamento de um jogador se dá a partir de sua primeira detecção. Cada
nova medição dá origem a um rastreador, que possui um filtro de partículas próprio, a
identificação do jogador, um histórico de aparências e um histórico de posições. Quando um
novo rastreador é criado em t0 , um conjunto de N partículas para o seu filtro é gerado com
estados Xit0 = {x, y, vx , vy }. Os valores de x e y são dados a partir de valores aleatórios
42
normalmente distribuídos em torno da posição do jogador da medição que lhe deu origem e
variância σ 2 (x,y) . O valor inicial desta variância é baseado no tamanho médio dos jogadores
na sequência. Por outro lado, vx e vy são inicializados com valor igual a zero. Todas as
partículas possuem, nesse instante, o mesmo peso, igual a 1/N . Além disso, é incluído
no histórico do rastreador o modelo de aparência da medição de origem. Esse histórico é
atualizado sempre que uma medição é associada ao rastreador. Como possui tamanho fixo,
as aparências mais antigas do histórico são descartadas para dar espaço às novas.
A partir daí, o algoritmo de rastreamento tenta fazer, a cada quadro, a associação entre
as medições encontradas no processo de detecção com os rastreadores existentes. Um
rastreador gera um rastreamento válido, que pode computar e armazenar trajetórias, se
uma medição é associada a ele em um número mínimo de quadros, denotado por γmin .
Isso é feito para evitar estimar trajetórias de objetos provenientes de medições inconsistentes, causadas por ruído. Da mesma forma, um rastreador só pode sobreviver sem uma
medição associada por um número limitado de quadros, denotado por γlim . Após isso, é
automaticamente removido.
Para que seja possível fazer as associações, o algoritmo conta com o auxílio do filtro de
partículas de cada rastreador. Como discutido na Seção 3.3, o filtro executa repetidamente
as etapas de Reamostragem, Propagação e Observação. A primeira se dá exatamente
como descrito na Subseção 3.3.1. As outras serão detalhadas a seguir.
4.3.2
Propagação
Para a fase de propagação, assim como em Morais (2012), foi adotado o modelo de
movimento uniforme, como o descrito na Subseção 3.3.2. Essa escolha foi motivada pelo
fato de que as variações entre os quadros são muito pequenas, já que as imagens são
capturadas no sistema a 30 quadros por segundo. O intervalo ∆t utilizado na Equação 26 é
dado pela taxa de captura e tem valor igual a 1/30. A variância σ 2 (vx ,vy ) , usada para modelar
os erros evx e evy incluídos nas partículas, tem valor definido experimentalmente. Após ser
feita a previsão do próximo estado, passa-se à fase de Observação para corrigir a estimativa
de posição do rastreador.
4.3.3
Observação
Como este trabalho lida com vários jogadores na cena ao mesmo tempo, é necessário, em
primeiro lugar, que o algoritmo seja capaz de decidir qual medição em uma imagem deve
guiar cada rastreador e ajustar sua estimativa nesta fase. Desta maneira, cada rastreador
deve ser associado a, no máximo, uma medição, e esse problema é chamado de problema
de atribuição ou associação. Para solucioná-lo, foi implementado o amplamente usado
43
algoritmo de Kuhn-Munkres, também conhecido como Algoritmo Húngaro – ou, em inglês,
Hungarian Algorithm (KUHN, 1955; MUNKRES, 1957).
Esse algoritmo faz a associação entre medições e rastreadores. Para tanto, calcula o
custo de todas as possibilidades de associação. No presente sistema, o custo é dado pela
distância Euclidiana normalizada entre a posição da medição de um jogador e a posição
prevista de um rastreador no próximo estado, dada por sua estimativa obtida na fase de
Propagação. Para normalizar a distância entre esses pontos, divide-se pela maior distância
possível, dada pela diagonal da imagem. O algoritmo faz, então, as devidas atribuições, de
forma que cada rastreador esteja associado a, no máximo, uma medição, com o menor custo
possível, encontrando a solução ótima em tempo polinomial. A solução pode ser baseada
em grafos bipartidos ou matrizes. Uma breve descrição do algoritmo baseado em matrizes,
de ordem O(n3 ), e os passos realizados na sua execução são dados a seguir. Dado que o
número de jogadores rastreados é relativamente pequeno, o algoritmo consegue encontrar
as associações de forma eficiente.
Algoritmo Húngaro
Passo 0: Os dados de custo são arranjados em uma matriz quadrada n × n de forma que
as linhas representem os rastreadores e as colunas as medições. O elemento (i, j) é a
distância euclidiana normalizada entre o i-ésimo rastreamento com a j -ésima medição.
No caso de existirem menos medições que rastreadores, colunas extras representando
medições virtuais auxiliares são adicionadas com valor igual a zero em todas as posições. De
forma análoga, linhas extras representando rastreadores virtuais auxiliares são adicionadas
quando existem menos rastreadores que medições, também com valor zero nas posições. As
associações com esses elementos, no primeiro caso, são descartadas posteriormente. Já no
segundo caso, levam à criação de novos rastreadores, como explicado na Subseção 4.3.1.
Passo 1: Para cada linha da matriz, encontrar o menor elemento e subtraí-lo de cada
elemento dessa linha. Prosseguir ao Passo 2.
Passo 2: Encontrar um zero na matriz resultante. Marcá-lo com uma estrela se não existe
nenhum outro zero marcado com estrela em sua linha ou coluna. Repetir para cada elemento
da matriz. Prosseguir ao Passo 3.
Passo 3: Cobrir cada coluna contendo um zero marcado com estrela. Se n colunas estão
cobertas, os zeros marcados com estrela descrevem um conjunto único de atribuições.
Nesse caso, prosseguir para FIM. Caso contrário, prosseguir ao Passo 4.
Passo 4: Encontrar um zero não coberto e marcá-lo com uma linha. Se não existe nenhum
zero marcado com estrela na linha que contém o zero marcado com linha, prosseguir ao
Passo 5. Caso contrário, cobrir essa linha e descobrir a coluna contendo o zero marcado
44
com estrela. Repita esse processo até que não sobre zeros descobertos. Salvar o menor
valor descoberto e prosseguir ao Passo 6.
Passo 5: Construir uma série de zeros marcados com linha e zeros marcados com estrela
da seguinte forma: Faça Z0 representar o zero marcado com linha descoberto encontrado no
Passo 4. Faça Z1 denotar o zero marcado com estrela na coluna de Z0 (se algum existente).
Faça Z2 denotar o zero marcado com linha na linha de Z1 (sempre irá existir um). Continue
até que a série termine em um zero marcado com linha que não possui um zero marcado
com estrela em sua coluna. Retire a estrela de cada zero marcado com estrela na série.
Marque com estrela cada zero marcado com linha na série. Apague todas as marcações de
linha e descubra todas as linhas da matriz. Retorne ao Passo 3.
Passo 6: Adicione o valor encontrado no Passo 4 a cada elemento de cada linha coberta,
e subtraia-o de cada elemento de cada linha descoberta. Retorne ao Passo 4 sem alterar
nenhuma marcação ou linhas cobertas.
FIM: Os pares atribuídos são indicados pelas posições dos zeros marcados com estrela
na matriz de custo, isto é, se o elemento (i, j) é um zero marcado com estrela, então o
rastreador i é associado com a medição j .
Com as associações feitas, é verificado se o custo de cada associação é menor que um
determinado limiar, λ, que controla o custo máximo de aceitação. Essa verificação é utilizada
para minimizar associações indesejadas, causadas em grande parte por medições ruidosas
e falsos positivos, que geram situações irreais. Por exemplo, se um jogador que estava
no centro da quadra é encontrado no próximo quadro próximo à marca do pênalti, muito
provavelmente a medição não corresponde verdadeiramente a ele, e pode ter sido causada
por algum ruído, já que seria humanamente impossível ele ter percorrido tamanha distância
em um espaço tão curto de tempo. Se ao rastreador foi atribuída uma medição que não
existe de verdade (foi criada apenas para tornar a matriz de custos quadrada) ou o custo
dessa associação é maior que λ, o rastreador usa apenas os dados de sua previsão e o
histórico de aparências para ajustar sua estimativa e calcular o peso das partículas. Nesses
casos, o rastreador recebe uma penalização. Ao se atingir um número de penalizações
superior a γlim , o rastreador é removido, já que não possuiu medições associadas por
diversos quadros. Por outro lado, caso haja uma medição atribuída ao rastreador que pode
ser aceita, ela é utilizada para ajustar a previsão.
Após as verificações, pode-se passar efetivamente à fase de Observação. É usado um
modelo de observação Zt+1 igual ao mostrado na Equação 27. Nessa etapa, os pesos
das partículas são calculados de duas maneiras diferentes, dependendo se existe ou não
medição associada ao rastreador. No primeiro caso, é calculada a distância Euclidiana
d entre a posição (x, y) da i-ésima partícula no estado Xit+1 e a posição do jogador na
45
medição associada. Essa distância é usada em uma função de densidade de probabilidade
normal que retorna o peso da partícula, dada por:
√
1
2πσ 2
e
−
d2
2σ 2
,
(28)
sendo σ = σ(x,y) . É adotada uma abordagem de atualização dinâmica para esse desvio
padrão. Durante o rastreamento, seu valor diminui de modo inversamente proporcional ao
número de quadros em que foi possível associar uma medição ao rastreador, até um limite
mínimo, denotado por θl . Assim, quanto mais o jogador é rastreado com sucesso, menos
as partículas são espalhadas. Do mesmo modo, quando nenhuma medição é associada
àquele rastreador, o valor do desvio padrão é aumentado até um limite máximo, denotado
por θh , para espalhar as partículas e melhorar as estimativas.
Por outro lado, como mencionado anteriormente, no caso de não existir medição associada,
o peso de cada partícula é calculado usando uma combinação dos dados de previsão
e aparência do rastreador, em quatro passos. O primeiro passo é calcular o modelo de
aparência da partícula, de modo semelhante ao descrito na Seção 4.2. Aqui, a diferença
está no fato de o recorte da imagem contendo os pixels do foreground ser feito por um
retângulo centrado na posição (x, y) da i-ésima partícula e tamanho igual ao do retângulo
delimitador da última medição associada ao rastreador. No segundo passo, são verificadas
as similaridades entre o modelo da partícula e todos os modelos presentes no histórico
do rastreador, e é retornado o maior valor de similaridade encontrado. Para calcular a
similaridade entre dois modelos, é utilizada a correlação entre histogramas, sendo o valor 0
a menor similaridade possível e 1 a maior. Assim como em Morais (2012), considerando
um modelo de aparência M A como uma lista de 3 histogramas e M Ai como o i-ésimo
histograma da lista, a comparação entre dois modelos M A1 e M A2 é dado por:
S(M A1 , M A2 ) =
3
Y
CORR(M Ai 1 , M Ai 2 ),
(29)
i=1
sendo S(M A1 , M A2 ) a similaridade entre os dois modelos considerados e CORR a correlação entre os valores de contagem obtidos para os invervalos (bins) dos histogramas. A
maior similaridade encontrada Smax é usada em uma função de densidade de probabilidade
dada por:
5(Smax )5 ,
(30)
definida empiricamente de forma que partículas de baixa similaridade com o rastreador
tenham pesos muito baixos e as de alta similaridade tenham pesos muito altos. O terceiro
passo no cálculo do peso da partícula é análogo ao que acontece quando uma medição é
associada. Porém, a distância Euclidiana d é calculada entre a posição (x, y) da i-ésima
partícula e a posição média da estimativa obtida na etapa de Propagação. O quarto e
último passo consiste em realizar uma soma ponderada para combinar os pesos obtidos no
46
segundo e terceiro passos. Assim, o peso da partícula quando não há medição associada é
dado por:
wsoma (ps ) + (1 − wsoma )(pd ),
(31)
sendo ps o peso da similaridade obtido no passo dois, pd o peso da distância euclidiana
obtido no passo três e wsoma um fator que determina a contribuição de cada uma das
variáveis na composição do peso da partícula.
É importante observar que o modelo de aparência só é utilizado quando não há nenhuma
medição associada ao rastreador. Em geral, o modelo é construído com a informação de cor
de alguns poucos pixels, que em vários casos não compreendem toda a região do jogador.
Como o tamanho da região delimitadora pode variar bastante entre os quadros para um
mesmo jogador, a informação de aparência, no caso do presente sistema, é relativamente
fraca. Contudo, uma vez que a correção da estimativa apenas com os dados da previsão
do rastreador também é bastante pobre, usa-se uma combinação das duas técnicas para
tentar melhorar um pouco o ajuste da previsão, quando não há medição para guiá-lo.
Finalmente, os pesos das partículas são normalizados para que sua soma seja igual a
um, haja medição associada ao rastreador ou não. A partir daí, o estado estimado X̂t+1 do
rastreador pode ser novamente calculado por meio da Equação 23 e o filtro de partículas
está pronto para um novo ciclo. A cada iteração, é armazenado no histórico do rastreador a
localização estimada do atleta rastreado para aquele instante, dada por seu estado estimado,
compondo, desta maneira, sua trajetória no tempo. Por meio dos dados de posição no
tempo, pode-se fazer o cálculo das estatísticas de interesse do jogador.
4.4
Considerações finais sobre o rastreamento
No sistema proposto, algumas atividades necessárias ao funcionamento do rastreamento
são desempenhadas de modo semi-automático, com o auxílio de um operador do sistema,
sendo relacionadas principalmente à identificação dos jogadores. Para que seja possível
identificar cada jogador rastreado, o operador deve definir manualmente o identificador
do rastreador com o número do atleta e a qual time ele pertence, por meio da interface
do sistema. Ele também é responsável por desfazer situações de confusão complexas
presentes no sistema, como por exemplo, trocas de identidades entre os rastreadores.
Essas situações serão detalhadas posteriormente no Capítulo 5.
O operador também é responsável por re-identificar o rastreador de um jogador que já estava
sendo rastreado, mas teve o rastreamento interrompido. Quando um jogador sai de quadra
em uma substituição, por exemplo, ele para de ser rastreado. Porém, ao entrar novamente
na partida, o operador deve re-identificar esse jogador e explicitamente indicar que ele está
retornando ao jogo, pois isso impacta diretamente no cálculo de suas estatísticas, como
47
será descrito na próxima seção. Além disso, é também tarefa do operador iniciar ou parar o
armazenamento das estatísticas, para evitar que interrupções no jogo como, por exemplo, o
atendimento a um atleta machucado ou pedidos de tempo possam interferir na coleta das
informações.
4.5
Armazenamento das estatísticas
Uma vez que o operador tenha identificado os rastreadores e iniciado o armazenamento
das informações, pode-se calcular as estatísticas de interesse do jogador: o mapa de calor,
a distância percorrida por ele e suas velocidades máxima e média.
Para se estimar o mapa de calor do jogador, é mantida no rastreador uma matriz de
ocupação de mesmas dimensões da imagem da quadra mostrada na Figura 18a. Como
mencionado anteriormente, a cada instante t (a cada quadro processado), é obtida a
posição estimada do jogador na imagem da sequência, dada pelo estado estimado do filtro
de partículas naquele instante. Essa posição é transformada usando a segunda matriz
de homografia obtida na Seção 4.1, para encontrar o ponto correspondente na imagem
da quadra. Então, o valor desse ponto na matriz de ocupação é incrementado em uma
unidade. Ao final do rastreamento, tem-se uma matriz em que as posições onde o jogador
foi encontrado mais vezes terão valores mais altos.
Finalmente, de posse da matriz de ocupação, é utilizada a biblioteca heatmap.js (HEATMAP.JS, 2015) para criar o mapa. Para tanto, é feita uma normalização para atribuir cores
mais frias de um gradiente aos pontos contendo os menores valores e cores mais quentes
aos pontos com valores maiores (Figura 18b). Para definir o tamanho da região em volta do
ponto que será colorida, ou seja, para determinar o tamanho da região de ocupação, um
valor de raio é especificado.
Por outro lado, diferentemente do mapa de calor, o cálculo das estatísticas físicas acontece em intervalos periódicos de 15 quadros. Esse intervalo é adotado por duas razões
(a) Imagem da quadra usada para o mapa de calor. (b) Gradiente de cores usado na construção do mapa
de calor.
Figura 18 – Imagem e gradiente de cores usados para exibição do mapa de calor.
48
principais. A primeira vem do fato de as variações entre os quadros serem muito pequenas
na taxa capturada (30 quadros por segundo), como mencionado anteriormente. Assim, as
distâncias percorridas pelos atletas e consequentemente suas velocidades se alteram muito
pouco entre os quadros e, assim, estimar essas estatísticas a todo instante cria um custo
computacional adicional não justificado. Em segundo lugar, no sistema proposto, a posição
estimada de um jogador pode se alterar significativamente entre os quadros, mesmo que ele
tenha realmente se movimentado muito pouco. Isso ocorre pelo aumento ou diminuição da
região delimitadora do blob de um jogador no processo de detecção, com base no resultado
da subtração de fundo. Por exemplo, em um quadro a região engloba os pixels da cabeça
aos pés do jogador, enquanto que no outro, apenas da cabeça à cintura. Assim, a posição
do pé do jogador irá se alterar de modo significativo, mesmo que na verdade ele tenha
permanecido quase que no mesmo lugar. Desta maneira, computar as estatísticas físicas
em todos os quadros acaba adicionando um erro no resultado, que não corresponde à
real movimentação do jogador. O intervalo escolhido, portanto, foi definido de modo que
minimizasse os erros no cálculo das estatísticas físicas, baseado em um teste estatístico
realizado, descrito brevemente no Capítulo 5.
A cada 15 quadros, a posição atual estimada do jogador e sua última posição armazenada
no histórico são transformadas para coordenadas no plano de quadra usando a primeira
matriz de homografia, estimada na etapa de aquisição das imagens. Posteriormente, é
calculada a distância Euclidiana entre esses pontos. O valor obtido é somado à variável
do rastreador que armazena a distância percorrida até o momento pelo jogador. Com a
informação da distância percorrida, pode-se derivar automaticamente as velocidades do
jogador. A variável de velocidade máxima do rastreador armazena a maior velocidade
“atual” encontrada para o jogador. A velocidade “atual” é dada pela divisão entre a distância
euclidiana calculada nessa etapa e o tempo passado entre as computações (0,5 segundos,
já que as estatísticas são calculadas a cada 15 quadros). Finalmente, a velocidade média é
obtida pela distância total percorrida até o momento dividida pelo tempo que o jogador foi
rastreado (obtido diretamente pelo número de quadros rastreados e o ∆t entre eles). Esse
resultado também é armazenado numa variável específica do rastreador.
Posteriormente, as estatísticas táticas e físicas do rastreador são armazenadas em estruturas na memória, em intervalos periódicos previamente definidos ou antes de um rastreador
ser removido. Essas estruturas contém as informações de um jogador coletadas até aquele
momento da sequência. As estruturas dos jogadores são úteis pois conseguem manter de
maneira permanente as informações do jogador, ao contrário dos rastreadores que são
voláteis (por exemplo, são removidos caso não sejam associados a nenhuma medição por
um número definido de quadros). Isso significa que as informações nelas contidas podem
ter sido provenientes de diversos rastreamentos realizados por diferentes rastreadores
durante a sequência.
49
Figura 19 – Exemplo de interrupção do rastreamento e manutenção do armazenamento
das estatísticas.
As estruturas dos jogadores ainda são utilizadas em situações especiais recorrentes do
sistema, como a demonstrada no exemplo a seguir. Considere um rastreador que está
rastreando um determinado jogador (Figura 19). A identidade do rastreador foi definida pelo
operador e as estatísticas do jogador estão sendo armazenadas, tanto no rastreador quanto
nas estruturas que o representam, em intervalos periódicos definidos. O rastreamento se
mantém até o instante t da sequência, quando se atinge o número limite de quadros sem
medição associada ao rastreador. Antes de ser removido, as estatísticas coletadas pelo
rastreador são armazenados na estrutura do jogador, bem como o número do quadro em t,
e então ele é removido. Nos próximos quadros, o jogador continua a se movimentar pelo
caminho indicado pela linha azul pontilhada da Figura, mas não é detectado. Em um certo
instante de tempo, porém, o jogador passa a ser novamente detectado e rastreado. No
momento t + n, o operador identifica o rastreador e são copiadas para suas variáveis as
informações de distância percorrida, velocidades máxima e média e o mapa de ocupação,
contidas na sua estrutura da memória. Desta maneira, pode-se dar continuidade ao rastreamento do jogador e manter a coleta de suas informações. Em resumo, sempre que há uma
re-identificação por parte do operador, as informações do rastreador são populadas pelas
estatísticas armazenadas na estrutura do jogador.
Entretanto, como pode-se perceber pela Figura 19, há uma perda da informação de movimentação do jogador durante o tempo em que ele não foi rastreado, ou seja, não é possível
saber quais as posições ocupadas por ele nesse tempo. Contudo, o algoritmo tenta minimizar esse erro para as estatísticas físicas. Assim, é calculada a distância Euclidiana entre o
último ponto conhecido ocupado por ele (em t) e o ponto onde ele foi re-identificado (em
t + n), mostrada na Figura pela linha vermelha tracejada. Essa distância é usada juntamente
com a informação de quantos quadros se passaram (n = (t + n) − t) para atualizar as
informações de distância percorrida e velocidade média do jogador.
Outra situação tratada de maneira especial no armazenamento das estatísticas é o caso da
50
substituição de jogadores. No futsal, é permitido que um jogador seja substituído e saia de
quadra, mas retorne ao jogo posteriormente caso seja necessário. De modo semelhante ao
exemplo anterior, quando um jogador sai da área de quadra para ser substituído, ele para de
ser detectado. Seu rastreador é posteriormente removido, mas antes disso as informações
coletadas até o momento são gravadas na estrutura do jogador na memória. Quando há
uma nova substituição e o jogador retorna ao jogo, o operador faz a re-identificação do
rastreador que está rastreando-o. Porém, o operador também marca uma variável booleana
que define que essa identificação é de um jogador que está retornando ao jogo. Desta
maneira, as informações tática e física do jogador, contidas em sua estrutura, são copiadas
para o rastreador. Porém, diferentemente do caso anterior, o sistema não calcula a distância
entre a última posição rastreada e atual nem o número de quadros que se passaram, afinal
o jogador estava fora de jogo. Atualizar a distância percorrida e a velocidade média do
jogador, com essas informações, levaria a resultados errados para essas estatísticas. Desta
maneira, é considerado apenas que a última localização rastreada do jogador é a posição
atual, e o rastreamento e a coleta das estatísticas prossegue corretamente.
Por último, ao final da sequência, as informações contidas na estrutura dos jogadores
são armazenadas no banco de dados da solução, para que possam ser consultadas pela
aplicação móvel.
4.6
Consulta às estatísticas e operação do sistema
A consulta às estatísticas extraídas e armazenadas no banco de dados é feita, como descrito
no Capítulo 1, por meio de uma aplicação desenvolvida especialmente para o sistema e que
executa em dispositivos móveis, como celulares e tablets. Optou-se pelo desenvolvimento
em plataforma Android (GOOGLE, 2015), pela facilidade e baixo custo que esse ambiente
proporciona. A aplicação se conecta ao banco e consome os dados através do formato
JavaScript Object Notation (JSON) (JSON, 2015).
As informações são organizadas e apresentadas em diferentes telas. No início da execução
do aplicativo, a primeira tela apresentada ao usuário é a de listagem de times. Quando o
usuário seleciona um time, passa-se à tela onde os jogadores que pertencem a essa equipe
são listados (Figura 20a). Ao se clicar em um jogador, são exibidas as suas informações
– como nome, número e posição – bem como suas estatísticas físicas coletadas (Figura
20b). Há ainda um botão que leva para a tela onde é exibido o mapa de calor contendo a
ocupação do jogador no decorrer da partida (Figura 20c).
A aplicação também é responsável por enviar alguns comandos ao sistema. Nesse trabalho,
é proposta uma nova forma de obter, editar e disponibilizar lances importantes do jogo, de
forma automática. Quando se deseja separar um lance chave da partida, um membro da
51
(a) Lista de jogadores de um time.
(b) Detalhes de um jogador e exibição das estatísticas coletadas para ele.
(c) Tela de exibição do mapa de
calor.
Figura 20 – Exemplos de funcionalidades da aplicação móvel desenvolvida para o sistema.
equipe técnica aciona um botão no aplicativo (mostrado nas imagens da Figura 20 no canto
superior direito da tela) que define uma variável booleana no banco para o valor verdadeiro.
Essa variável é constantemente lida pelo sistema. Durante a execução, no processo de
aquisição de imagens, é mantido um buffer de quadros. O tamanho do buffer pode ser
ajustado pelo usuário de acordo com a quantidade de segundos de vídeo que deseja ter
antes e depois da marcação de lance importante. Por exemplo, se deseja um vídeo de 20
segundos, com 10 segundos antes e 10 segundos depois de um lance chave, o buffer deve
ter 20×30=300 quadros, pois o vídeo é capturado a 30 quadros por segundo. Sempre que
um novo quadro é capturado, o quadro mais antigo é removido, como em uma fila do tipo
First In First Out (FIFO), e é incluído o mais novo.
Ao ler o valor verdadeiro no banco, o sistema pega o buffer, concatena nele os próximos
300 quadros obtidos na sequência e cria um pequeno vídeo, que é armazenado no banco. A
aplicação, por fim, vê que há um novo vídeo armazenado e inclui um link para que ele seja
exibido via streaming no dispositivo, além de emitir uma notificação ao usuário de que o
vídeo está disponível. Por fim, a variável booleana tem seu valor definido novamente como
falso. Esse processo acontece em menos de 5 segundos, após a criação do video pelo
sistema.
52
Capítulo 5
Resultados Experimentais
Para validar a metodologia proposta e demonstrar a eficácia do sistema, foi realizado
um amplo conjunto de experimentos, o qual permitiu avaliar o processo de detecção dos
jogadores, o rastreamento dos atletas e as estatísticas coletadas usadas nas análises.
Para tanto, foram utilizadas duas sequências previamente capturadas, contendo trechos de
um jogo e um treinamento da equipe profissional de futsal do Minas Tênis Clube, um dos
principais times do esporte no Brasil, atuando em sua arena. As imagens para ambas as
sequências foram gravadas a uma resolução de 752x480 pixels e a uma taxa de 30 quadros
por segundo, como mencionado anteriormente.
A primeira sequência é proveniente de um jogo da Liga Futsal 1 , gravado no dia 02 de
maio de 2015. Consiste em um trecho de vídeo da partida composto de 12870 quadros
sequenciais, resultando em um vídeo de aproximadamente 7 minutos de duração. A segunda
sequência também possui aproximadamente 7 minutos de duração, porém consiste de um
trecho de 13320 quadros sequenciais, obtidos pela gravação de um treinamento coletivo da
equipe, realizado novamente em maio de 2015.
Para verificar os resultados, foi construído um gabarito (ground truth, em inglês) para cada
uma das sequências. Para tanto, a cada 15 quadros, foram anotadas manualmente as
coordenadas dos retângulos delimitadores das regiões de cada jogador na imagem. O
tamanho médio desses retângulos é de 30x20 pixels. Como já descrito anteriormente,
buscando-se reduzir o custo computacional do sistema, bem como aplicar a metodologia
apenas na região de interesse para as análises, a região da quadra na imagem é recortada,
resultando em quadros de 640x370 pixels.
Vale ressaltar que o intervalo de 15 quadros adotado para o gabarito foi assim escolhido já
que registrar manualmente as regiões de cada jogador em todos os quadros da sequência
1
A Liga Nacional de Futsal, também conhecida como Liga Futsal, é o principal campeonato da modalidade
no Brasil, e envolve equipes de todo o país. É organizado pela Confederação Brasileira de Futsal (Liga Futsal,
2015).
53
Tabela 1 – Valores dos parâmetros usados nos experimentos.
Parâmetros
wmin ,hmin
wmax
hmax
N
γmin , γlim
σ(x,y)
σ(vx ,vy )
θl
θh
λ
wsoma
Valor
5 pixels
40 pixels
30 pixels
350 partículas
15 quadros
5 pixels
5 pixels
3 pixels
7 pixels
0,05
0,7
consumiria um tempo muito elevado. Da mesma maneira, a duração das sequências
foi escolhida de modo que pudesse fornecer um conjunto relevante de dados para os
experimentos, sem inviabilizar, contudo, a execução dos testes, já que criar e checar
tamanha quantidade de dados é uma tarefa bastante custosa.
Como demonstrado no Capítulo 3 e no Capítulo 4, diferentes parâmetros devem ser definidos
no sistema. Os valores de grande parte desses parâmetros são escolhidos empiricamente, e
os valores usados nos experimentos para as principais variáveis se encontram sumarizados
na Tabela 1. A seguir, são apresentados e discutidos os resultados obtidos para a primeira
sequência, divididos em três seções distintas: uma para a detecção dos jogadores, outra
para o rastreamento dos atletas e uma terceira para as estatísticas de interesse coletadas.
Em seguida, são apresentadas as mesmas três seções para a segunda sequência e os
resultados são comparados.
5.1
Resultados da detecção dos jogadores - Jogo
Para avaliar a detecção dos jogadores, é usada a medida CLEAR Multiple Object Detection
Accuracy (MODA) (BERNARDIN; STIEFELHAGEN, 2008; KASTURI et al., 2009), que se
tornou um dos principais padrões para avaliar algoritmos de detecção de objetos na área
de Visão Computacional. Essa medida utiliza o número de detecções perdidas (falsos
negativos) e a contagem de falsos positivos. O número de falsos negativos (FN), falsos
positivos (FP) e verdadeiros positivos (TP, do inglês True Positive) é computado baseado
em uma razão de sobreposição (overlap, em inglês) entre o retângulo anotado no gabarito
e o retângulo delimitador da região Ri do jogador detectado, descrito na Seção 4.2. Para
um dado limiar de sobreposição τov , a detecção D é um verdadeiro positivo se (TEUTSCH,
54
2015):
|Di ∩ Gi |
≥ τov ,
|Di ∪ Gi |
(32)
sendo Di e Gi o i-ésimo par mapeado de detecção e gabarito. A escolha do valor de
τov pode variar de acordo com o contexto da avaliação. Para grandes objetos em uma
imagem, que podem cobrir milhares de pixels, valores como 0,5 ou 0,7 são adequados
para o limiar. Entretanto, para os casos em que os objetos são muito pequenos, como no
presente trabalho, onde os jogadores tem um tamanho médio de 30x20 pixels, mesmo
pequenos desvios no tamanho ou na posição do retângulo delimitador anotado pode induzir
uma sobreposição consideravelmente menor (TEUTSCH, 2015). De forma a demonstrar o
impacto do limiar de sobreposição na avaliação de desempenho do sistema, o valor de τov
foi variado entre 0,1 e 0,5.
Como a medida MODA foi originalmente definida para avaliar quadros individuais, pode-se
computar a MODA normalizada para a sequência inteira, chamada de N-MODA (do inglês
Normalized MODA) e dada por (KASTURI et al., 2009):
PNquadros
N -M ODA = 1 −
t=1
(cF N (F N t ) + cF P (F P t ))
,
PNquadros
NGt
t=1
(33)
sendo F N t o número de falsos negativos, F P t o número de falsos positivos e NGt o número
de objetos no gabarito (TP + FN), todos os três para um dado quadro t. A contagem de
falsos negativos em um quadro é dada pelo número de objetos no gabarito naquele quadro
menos o número de verdadeiros positivos em t. Já os falsos positivos em t são calculados
subtraindo o número de objetos detectados no quadro pelo número de verdadeiros positivos
obtidos no quadro. Os pesos cF N e cF P , por sua vez, podem ser vistos como funções de
custo para ponderar o impacto dos falsos negativos e dos falsos positivos, respectivamente.
Similarmente a Kasturi et al. (2009), nesta avaliação cF N e cF P são ambos iguais a um.
A Tabela 2 apresenta os resultados da detecção de jogadores para a primeira sequência.
Para melhor esclarecimento, é também calculado o F-Score para os experimentos, dado
pela média harmônica entre os valores de precisão (Prec.) e revocação (Rev.). A Figura 21
mostra o impacto da variação do limiar da razão de sobreposição sobre os valores de
N-MODA e F-Score e sobre o erro médio global obtido. Para calcular o erro médio global
Tabela 2 – Resultados da detecção de jogadores para a sequência de Jogo.
τov
TP
FP
FN
Prec.
Rev.
F-Score
N-MODA
0,1
0,2
0,3
0,4
0,5
6563
6545
6431
6144
5576
655
673
787
1074
1642
2032
2050
2164
2451
3019
0,909
0,907
0,891
0,851
0,773
0,764
0,762
0,748
0,715
0,649
0,830
0,828
0,813
0,777
0,705
0,687
0,683
0,657
0,590
0,458
55
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.5
N−MODA
F−Score
0.4
0.3
0.2
Limiar da razão de sobreposição
Erro médio global em metros
0.5
0.45
0.4
0.35
0.3
0.25
0.2
0.15
0.5
0.1
0.4
0.3
0.2
Limiar da razão de sobreposição
0.1
(a) Valores de N-MODA e F-Score obtidos e o impacto (b) Erros médios globais obtidos, de acordo com o
do limiar da razão de sobreposição sobre os resullimiar utilizado.
tados.
Figura 21 – Resultados obtidos na avaliação da detecção na sequência de Jogo para
diferentes valores de τov .
da sequência, primeiramente é necessário calcular os erros médios em cada quadro. Para
cada detecção considerada como verdadeiro positivo em um quadro, é calculada a distância
Euclidiana entre a posição do pé dada pelo retângulo delimitador dessa detecção e a
posição do pé dada pelo retângulo do gabarito, ambas as posições em coordenadas no
plano de quadra. Depois, é feita a média das distâncias e finalmente o erro global é obtido
fazendo-se uma média das médias calculadas em cada quadro da sequência.
Pode-se observar pelos resultados que, no presente contexto, valores menores para τov
são mais apropriados e parecem levar a valores consideráveis para N-MODA e F-Score,
como já mencionado, uma vez que o sistema lida com objetos pequenos na cena. Contudo,
ao se diminuir o valor do limiar, obviamente há um aumento do erro, já que são permitidos
desvios maiores para as detecções consideradas como verdadeiros positivos. Esses desvios
são causados em grande parte por detecções mescladas de dois ou mais atletas ou por
detecções parciais dos jogadores. Ainda assim, o erro médio global da detecção para
essa sequência é inferior a 30 centímetros, independentemente do limiar de sobreposição
utilizado. Esse é um valor promissor, considerando as dimensões da quadra (38x19 metros).
Além disso, a sequência de jogo utilizada nessa avaliação é bastante desafiadora e impõe
uma série de dificuldades ao processo de detecção. Uma situação complexa presente se
deve ao fato de jogadores reservas e técnicos ficarem muito próximos à área da quadra
nessa arena. Os reservas, por exemplo, fazem seu aquecimento bem próximos à linha
lateral ou à linha de fundo e frequentemente pisam nas linhas ou mesmo pisam dentro
de quadra, sendo consequentemente detectados, o que aumenta a contagem de falsos
positivos. O mesmo acontece com treinador, quando vai chamar atenção de sua equipe.
Para lidar com isso, pode-se restringir ainda mais a região considerada como a área de
56
jogo. No entanto, o aumento dessa restrição leva também a interrupção na detecção de
atletas que vão cobrar laterais e escanteios ou de jogadores que fazem sua movimentação
próximos às extremidades da quadra, aumentando a contagem de falsos negativos nesses
casos.
No sistema proposto, optou-se por não fazer a detecção e rastreamento dos dois árbitros da
partida. No futsal, cada árbitro fica em uma extremidade da quadra, movimentando-se fora
da área de jogo próximo à linha lateral. Além disso, considerá-los na presente avaliação
ocasionaria um custo adicional na criação do gabarito e checagem dos dados. No entanto,
os árbitros também são causa dos falsos positivos obtidos. Como mencionado anteriormente,
na arena onde as sequências foram gravadas, há pouco espaço para comportar a presença
dos jogadores reservas, equipe técnica, auxiliares ao jogo e os árbitros, em um lado da
quadra. Sendo assim, frequentemente um dos árbitros faz sua movimentação sobre a linha
lateral da quadra ou mesmo dentro dela, sendo detectado nesses casos. Além disso, quando
há uma falta ou é necessário um atendimento ao jogador, um dos árbitros (em algumas
situações, os dois) entra dentro da quadra para indicar o local da penalidade e verificar a
situação do atleta. Nessas ocasiões, ele também é detectado por diversos quadros, o que
eleva bastante a contagem de falsos positivos. Os falsos positivos são, ainda, causados
pela detecção da bola e detecção de sombras sutis que não foram filtradas no processo.
Por outro lado, grande parte dos falsos negativos são causados por uma grande similaridade
entre o piso da quadra (o fundo) e os uniformes dos jogadores. Em algumas regiões da
quadra, a aparência dos atletas não é discriminativa o suficiente para que ele seja considerado como primeiro plano. As imagens obtidas pela câmera utilizada também introduzem
algumas dificuldades no processo, já que são de baixa resolução e se apresentam borradas
e com bastante ruído em algumas regiões, dificultando a detecção dos jogadores. Além
disso, há também os casos em que dois ou mais jogadores se encontram muito próximos
uns dos outros, e acabam sendo considerados como um único blob, gerando apenas uma
detecção válida e não sendo tratados pela divisão recursiva da região delimitadora, já que
ainda respeitam as restrições geométricas. Finalmente, como mencionado anteriormente, a
contagem de falsos negativos também aumenta nas situações em que um atleta em jogo
sai da área da quadra para bater um lateral ou escanteio, consequentemente deixando
de ser detectado. Apesar disso, os resultados obtidos são encorajadores e demonstram o
potencial da técnica adotada para localizar os jogadores nas imagens.
5.2
Resultados do rastreamento dos jogadores - Jogo
De modo semelhante à seção anterior, é usada a medida CLEAR Multiple Object Tracking Accuracy (MOTA) (BERNARDIN; STIEFELHAGEN, 2008; KASTURI et al., 2009),
amplamente aplicada na área de Visão Computacional, para avaliar o rastreamento dos
57
jogadores em uma sequência. Para tanto, novamente é necessário computar o número
de falsos negativos, falsos positivos, verdadeiros positivos e também o número de trocas
de identidades, para um dado rastreamento de referência obtido por meio dos gabaritos.
Considera-se que um rastreamento é um verdadeiro positivo se a distância Euclidiana entre
a posição estimada dada pelo rastreador e a posição do pé definida pelo retângulo anotado
no gabarito é menor que um determinado limiar, τd . Analogamente à detecção, o valor de τd
foi variado entre 0,50 metros e 1,75 metros, para que se possa demonstrar o impacto desse
limiar na avaliação de desempenho do rastreamento.
A medida MOTA é dada por (BERNARDIN; STIEFELHAGEN, 2008; KASTURI et al., 2009):
PNquadros
M OT A = 1 −
t=1
(cF N (F N t ) + cF P (F P t ) + cID (IDt ))
,
PNquadros
NGt
t=1
(34)
sendo cF N , F N t , cF P , F P t , e NGt definidos da mesma forma que na Equação 33, e cF N =
cF P = 1. Porém, a contagem de falsos negativos, falsos positivos e verdadeiros positivos
se dá de forma diferente. Para que o contador de falsos negativos seja incrementado
em t, o jogador deve existir no gabarito naquele quadro (isto é, estar em jogo naquele
momento) mas não ter sido rastreado por um rastreador identificado. Para incrementar os
verdadeiros positivos em t, o jogador também deve existir no gabarito naquele quadro, ter
sido rastreado por um rastreador identificado e a distância Euclidiana entre sua posição
e a posição do seu gabarito seja menor que τd . Por outro lado, há três maneiras distintas
de se incrementar o contador de falsos positivos em t. A primeira consiste no jogador
não existir no gabarito no quadro t e ter sido rastreado por um rastreador previamente
identificado. Na segunda, o atleta existe no gabarito em t, foi rastreado por um rastreador
identificado mas sua distância Euclidiana é maior que o limiar τd . Por último, é adicionado
ao contador o número de rastreamentos indesejados, causados em sua maioria por ruído,
dados pelo resultado da subtração, em t, do número de rastreadores gerando rastreamentos
válidos (tiverem medições associadas por um número γmin de quadros) pelo número de
rastreadores identificados pelo operador.
Ainda em relação à Equação 34, o valor IDt é o número de trocas de identidades em
um dado quadro t e cID é o peso para ponderar as trocas, com valor igual a log10 como
proposto pelos autores em Kasturi et al. (2009). No caso do número de trocas ser igual a 0,
substitui-se cID (IDt ) por 0.
A Tabela 3 apresenta os resultados do rastreamento de jogadores para a primeira sequência.
Analogamente à seção anterior, é computado o valor de F-Score, e a Figura 22 mostra o
impacto da variação do limiar da distância τd sobre os valores de MOTA e F-Score e sobre o
erro médio global obtido. Esse erro é calculado de modo similar ao anterior, mas a distância
Euclidiana é dada entre a posição estimada de um rastreamento considerado verdadeiro
positivo e a posição do pé definida pelo retângulo anotado no gabarito.
58
Tabela 3 – Resultados do rastreamento de jogadores para a sequência de Jogo.
τd
TP
FP
FN
ID
Prec.
Rev.
F-Score
MOTA
0,50
0,75
1,00
1,25
1,50
1,75
5358
6210
6548
6690
6765
6808
2268
1416
1078
936
861
818
1702
1702
1702
1702
1702
1702
115
115
115
115
115
115
0,703
0,814
0,859
0,877
0,887
0,893
0,759
0,785
0,794
0,797
0,799
0,800
0,730
0,799
0,825
0,835
0,841
0,844
0,437
0,605
0,663
0,685
0,697
0,703
Os resultados mostram que o rastreamento baseado em filtro de partículas é capaz de
rastrear os jogadores e ligar suas posições no tempo. Como é de se esperar, ao aumentar
o limiar τd para a distância, mais rastreamentos são considerados verdadeiros positivos,
porém o erro global também é aumentado, já que são levados em conta rastreamentos
com diferenças maiores entre a posição estimada e a posição manualmente anotada. De
qualquer maneira, o erro médio global do rastreamento é inferior a 35 centímetros para essa
sequência, o que novamente é um resultado de destaque se for levado em consideração
o tamanho da quadra. Além disso, vale destacar que a metodologia proposta utiliza um
número menor de partículas (N = 350) que outros trabalhos que fazem o rastreamento de
atletas (como por exemplo, Okuma et al. (2004) e Morais et al. (2014), que usam 5000 e
500 partículas, respectivamente), o que resulta em um processamento de quadros mais
rápido. Consequentemente, o sistema proposto necessita de 25 milissegundos em média
para processar um quadro, em um computador com processador Intel Core I7 de 3,4 GHz,
8 núcleos e com 8GB de memória RAM.
Durante os experimentos, foram obtidos diversos rastreamentos com sucesso para grande
0.5
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.5
MOTA
F−Score
0.75
1
1.25
1.5
Limiar de distância em metros
Erro médio global em metros
1
0.45
0.4
0.35
0.3
0.25
0.2
0.15
0.5
1.75
0.75
1
1.25
1.5
Limiar de distância em metros
1.75
(a) Valores de MOTA e F-Score obtidos e o impacto do (b) Erros médios globais obtidos, de acordo com o
limiar da distância sobre os resultados.
limiar utilizado.
Figura 22 – Resultados obtidos na avaliação do rastreamento na sequência de Jogo para
diferentes valores de τd .
59
(a) Quadro 2957.
(b) Quadro 2972.
(c) Quadro 2987.
(d) Quadro 3002.
(e) Quadro 3017.
(f) Quadro 3032.
Figura 23 – Exemplo de rastreamento dos jogadores com sucesso na sequência de Jogo e
as trajetórias dos atletas no tempo (destacadas em verde).
parte dos jogadores, como pode ser visto na Figura 23. Em situações onde as trajetórias de
dois atletas se cruzam rapidamente, a confusão causada pela breve proximidade é resolvida
pela predição do filtro de partículas, baseado no modelo de movimentação de cada jogador,
e, assim, o rastreamento se mantém sem problemas.
Entretanto, há algumas situações em que o filtro leva a estimativas incorretas. Grande
parte dessas situações são causadas pelos problemas na detecção dos jogadores citados
anteriormente. Por exemplo, quando os jogadores não são detectados ou eles estão muito
próximos uns dos outros por um período considerável de tempo, sendo detectados como
um blob único que respeita as restrições geométricas. Nesses casos, o filtro pode trocar
suas identidades, estimar incorretamente suas posições ou mesmo o rastreador pode
ser removido, já que não possui medição associada para ajustar a estimativa durante
esse tempo. Os jogadores, assim, deixam de ser corretamente rastreados. A detecção
da bola e de outros objetos causadores de falsos positivos também podem roubar o
rastreador de um jogador e prejudicar o rastreamento, já que a observação não faz distinção
entre as medições. Desta maneira, como o futsal é um esporte de contato extremamente
complexo (com dinâmica de movimentação dos atletas bastante ativa e rápida) e dadas
as dificuldades em corrigir a estimativa do filtro, o auxílio do operador e suas intervenções
são peças fundamentais do sistema proposto para atingir seu objetivo. Em todos os casos
citados anteriormente, o operador do sistema deve desfazer as eventuais situações de
confusão e re-identificar manualmente cada rastreador, para que voltem a rastrear o atleta
correspondente.
60
Tabela 4 – Duração dos rastreamentos (em número de quadros) para cada jogador na
sequência de Jogo.
Jogador
Maior intervalo
Menor intervalo
Intervalo médio
1
2
3
4
5
6
7
8
9
10
11
16
17
18
1085
1908
1044
1049
1030
2112
1691
1500
4635
499
309
1290
432
1089
16
15
15
15
15
15
22
17
15
16
16
54
25
30
225
243
243
201
245
326
463
495
456
88
135
351
143
343
Sequência
4635
15
283
A Tabela 4 apresenta a duração máxima, mínima e média dos rastreamentos para todos
os jogadores e para a sequência no geral, antes de um rastreador ser removido ou ter sua
identidade trocada. Os jogadores foram numerados no quadro de início da partida, de forma
sequencial, da esquerda para a direita, de cima para baixo. Assim, os jogadores do time
que ataca da esquerda para a direita estão numerados de 1 a 5, e os do time que ataca da
direita para a esquerda, de 6 a 10. Os números dos goleiros de cada time nessa sequência
são 2 e 10, respectivamente. Além disso, a sequência de jogo inclui algumas substituições
nas equipes, durante o trecho gravado. Os jogadores reservas que entram posteriormente
no jogo são numerados de acordo com a ordem de entrada, recebendo números de 11 a 15
para a primeira equipe e 16 a 20 para a segunda. Assim, por exemplo, o segundo jogador
reserva a entrar na partida na segunda equipe recebe o número 17.
Como é possível observar pelos dados, o tempo de vida de um rastreamento nessa
sequência foi de 4635 quadros no melhor caso, 15 quadros no pior caso e 283 quadros em
média, o que leva o operador a ter de fazer constantes intervenções para restabelecer as
identificações dos rastreadores. Essa é a principal limitação apresentada pelo sistema, já
que um número considerável de intervenções do operador é obviamente indesejado, pois
pode levar ao aumento do tempo e esforço para se extrair as informações para apoiar as
análises tática e física.
61
5.3
Estatísticas obtidas - Jogo
Antes de serem apresentadas as estatísticas obtidas para a sequência de jogo, será descrito
brevemente o procedimento estatístico realizado para definir o intervalo de computação
das estatísticas físicas (15 em 15 quadros, como mencionado na Seção 4.5). Além desse
intervalo, foi também avaliada a diferença no erro obtido para as estatísticas físicas entre usar
o centroide da região delimitadora da medição e usar a posição do pé dada por essa região.
Essa avaliação foi feita pois o centroide, em geral, sofre menos com a mudança do tamanho
da região delimitadora no processo de detecção, comentada na mesma seção. Assim, a
posição do jogador irá se alterar menos, nos casos em que ele tenha se movimentado muito
pouco e a região delimitadora tenha se alterado. Consequentemente, escolher entre o pé e
o centroide, bem como o intervalo a ser utilizado, impacta diretamente no erro adicionado
ao resultado das estatísticas físicas do jogador.
Para escolher a configuração que minimiza os erros nesses cálculos, foi utilizada a técnica
de análise de variância (ANOVA, do inglês analysis of variance) (MONTGOMERY, 2006). A
ANOVA procura verificar se existe uma diferença significante entre as medidas de diferentes
amostras, permitindo fazer inferências sobre a influência das variáveis na resposta. A análise
de variância realizada possui dois fatores, sendo que o primeiro fator possui dois níveis
(usar o pé ou usar o centroide) e o segundo fator possui três níveis (os possíveis intervalos
a serem usados para a computação das estatísticas físicas, a saber, 5, 10 e 15 quadros).
Para obter as amostras utilizadas na ANOVA, foram gravadas sete sequências auxiliares,
de diferentes durações, durante o treinamento da equipe de futsal. Nesses vídeos, foi
pedido a dois atletas que percorressem trajetórias previamente definidas sobre a quadra, de
forma que a distância percorrida por eles fosse conhecida. Foi orientado aos atletas que se
movimentassem como em um jogo real, isto é, variando momentos em que se encontravam
correndo, caminhando ou parados na quadra. Posteriormente, cada jogador em cada
sequência foi rastreado pelo sistema e foram computados os resultados para a distância
percorrida por eles. Como as velocidades são derivadas dos dados de distância, somente
esta foi avaliada no teste. Por fim, foram computados os erros obtidos para a distância
percorrida por cada atleta em cada sequência e a análise de variância foi realizada.
O resultado da ANOVA indicou que, com 95% de significância, não existem evidências para
afirmar que há diferença entre usar o centroide e o pé. Desta maneira, como a posição
do pé pode representar melhor a posição do atleta em quadra no mapa de calor, lidando
com as características das imagens formadas por projeção perspectiva, foi definido que ela
seria utilizada no sistema e nas avaliações. Por outro lado, a ANOVA indicou, com o mesmo
nível de significância, que existem indícios para afirmar que há, sim, diferenças ao se usar
intervalos de 5, 10 ou 15 quadros. Para escolher qual intervalo introduz o menor erro nas
estatísticas, foi realizado um teste de comparações múltiplas chamado de teste de Tuckey
62
(MONTGOMERY, 2006). O teste indicou, novamente com nível de significância de 95%,
que o intervalo de 15 em 15 quadros possui o menor erro e, por essa razão, foi o escolhido
para ser utilizado. Para mais detalhes sobre os testes estatísticos realizados, recomenda-se
o livro de Montgomery (2006).
Uma vez justificadas as escolhas feitas na metodologia para o cálculo das estatísticas
físicas, pode-se passar a apresentação dos dados obtidos para a sequência de jogo. A
Tabela 5 apresenta as estatísticas físicas de cada jogador extraídas nesta sequência. A
numeração dos atletas permanece a mesma da seção anterior. Para calcular os erros,
são calculadas as estatísticas utilizando as posições definidas pelos retângulos anotados
no gabarito. As estatísticas obtidas são então subtraídas pelas estatísticas do gabarito.
Finalmente, divide-se o resultado dessa subtração pelos valores das estatísticas do gabarito.
Se o erro de uma estatística tem valor negativo, ela é menor que o valor esperado dadas as
posições anotadas manualmente no ground truth. De modo análogo, valores positivos para
o erro significam que as estatísticas superam os valores esperados para elas. Além dos
valores individuais de cada jogador, foi também calculado o erro geral para a sequência,
dado pela raiz dos erros quadráticos médios (RMSE, do inglês root mean square error ).
Como pode-se observar pela tabela, a sequência de jogo possui um erro médio de 8,16%
para a distância percorrida pelos jogadores, 8,85% para a velocidade média dos atletas
e 15,46% para a velocidade máxima. Considerando-se a complexidade do futsal e as
dificuldades encontradas na detecção e no rastreamento dos atletas pelo sistema, esses
resultados são bastante relevantes.
Em relação aos erros, sua ocorrência está ligada a diversos fatores. Erros negativos para
a distância estão relacionados principalmente a jogadores que não são detectados e
rastreados por diversos quadros, pela alta similaridade do seu uniforme com o piso da
quadra, por exemplo. Isso, obviamente, reduz a distância calculada. Por outro lado, a
ausência de uma medição para ajustar a estimativa e o problema de alteração no tamanho
da região delimitadora na detecção podem contribuir para aumentar a distância percorrida
acima do esperado. Além disso, os eventuais roubos do rastreador pela bola ou outros
falsos positivos e as trocas de identidade também contribuem para alterar os valores obtidos
das estatísticas, até que o operador seja capaz de desfazer as situações de confusão.
Como o cálculo das velocidades está diretamente ligado à computação da distância, esses
problemas também se refletem nesses dados. A velocidade máxima, em particular, é
bastante afetada por essas situações. Por exemplo, quando o rastreador passa a rastrear
a bola, ao invés de um jogador, obviamente a velocidade máxima registrada será muito
maior que a desempenhada pelo atleta. Em geral, quando há uma troca de identidade, o
rastreador muda sua posição muito rápido em um curto intervalo de tempo, o que também
resulta em valores errados para a velocidade máxima. Um rastreador que está perdido (sem
medição associada) e que começa a ser associado a medições que se encontram distantes
63
Tabela 5 – Estatísticas físicas obtidas para cada jogador na sequência de Jogo. Os erros
são definidos em relação às estatísticas calculadas pelas posições do gabarito.
Jogador
Dist.
(m)
Erro Dist.
(%)
Vel. Méd.
(Km/h)
Erro Vel. Méd.
(%)
Vel. Máx.
(Km/h)
Erro Vel. Máx.
(%)
1
2
3
4
5
6
7
8
9
10
11
16
17
18
744,24
354,54
629,35
682,42
641,70
686,39
721,31
663,67
841,91
259,87
105,73
223,66
69,67
134,73
2,0
5,7
-3,8
0,2
1,8
5,8
0,7
3,9
3,6
-25,7
0,1
8,8
6,6
5,9
6,25
2,98
6,42
5,74
5,42
6,35
7,26
7,54
7,07
2,20
5,72
7,53
6,35
7,08
2,2
5,8
-2,7
0,5
2,5
5,8
1,0
4,2
3,7
-25,1
6,1
11,8
10,7
7,5
29,79
22,95
25,49
23,21
29,98
32,80
25,19
25,91
25,33
16,60
19,10
19,69
18,37
19,35
11,8
48,1
7,0
-1,9
20,3
-4,7
-14,6
-6,0
-1,8
8,5
8,8
1,6
-0,7
-1,6
Sequência
(RMSE)
-
8,16
-
8,85
-
15,46
a ele, mas que ainda respeitam o custo máximo de aceitação λ, também faz com que haja
uma mudança rápida em sua posição, consequentemente gerando um valor de velocidade
máxima irreal para o jogador.
Em relação às estatísticas táticas, a Figura 24a apresenta um exemplo de mapa de calor
obtido para um jogador titular (número 9) com erro médio para as estatísticas físicas na
sequência de jogo. No Apêndice A encontram-se todos os mapas obtidos para os outros
jogadores da sequência. Para avaliar a qualidade do mapa de calor e verificar se foi possível
descrever a ocupação do atleta em quadra durante a partida, são desenhados na imagem
os pontos referentes às posições do jogador dadas pelos retângulos anotados no gabarito
(Figura 24b).
Pode-se observar que o mapa obtido contém a maioria dos pontos do gabarito e é capaz
de descrever de maneira eficaz a ocupação do jogador. Como é de se esperar, as regiões
em vermelho e amarelo concentram um número grande de pontos bem próximos uns dos
outros, que revela que o jogador estava presente mais vezes nesses locais. As regiões
onde permaneceu por pouco tempo ou passou rapidamente são azuis e possuem um
número menor e mais espaçado de pontos. No entanto, alguns pontos do gabarito não
foram rastreados, e em algumas partes da imagem o rastreador registrou a passagem do
jogador por essas regiões, mas o atleta não estava realmente presente naqueles locais.
Alguns desvios entre a posição estimada e a posição do gabarito também são comuns e
64
(a) Mapa de calor obtido para o jogador 9.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 24 – Ocupação em quadra do jogador 9 dada por seu mapa de calor - Sequência de
Jogo.
descrevem os erros no rastreamento abordados anteriormente.
É importante observar que a sequência de jogo apresenta duas interrupções no andamento
da partida (a saber, uma falta e um rápido atendimento a um jogador) que levam os atletas
a permanecerem alguns momentos parados ou se movimentando muito pouco. Como a
duração da sequência avaliada é bem menor que a duração de uma partida, essas situações
podem atrapalhar a descrição da verdadeira ocupação dos jogadores em quadra durante
o jogo. Para minimizar esses e outros problemas, foi gravada a sequência do treinamento,
que não apresenta várias das situações indesejadas presentes na primeira sequência. A
65
seguir, são apresentados os resultados para a segunda sequência e comparados com os
obtidos até o momento.
5.4
Resultados da detecção dos jogadores - Treinamento
Como descrito anteriormente, essa sequência foi gravada durante um treinamento coletivo
da equipe de futsal, capaz de simular uma situação real de jogo. Por ser uma situação
mais controlada, foi pedido ao treinador e aos reservas que permanecessem fora da área
de jogo, mais afastados da quadra (próximos às arquibancadas), e que não houvesse
substituições. No caso de haver alguma interrupção, como em faltas, escanteios ou após
gols marcados, o jogo era retomado o mais brevemente possível. Aos jogadores também foi
pedido que usassem coletes um pouco mais discriminativos que seus uniformes, para tentar
diferenciá-los melhor em relação à quadra. Por fim, como era um treinamento, não havia
árbitros presentes. Uma vez que não havia “intrusos” próximos às extremidades da quadra,
as restrições da área de jogo foram relaxadas, e assim um jogador poderia sair de dentro
das quatro linhas e ainda ser detectado, até um limite máximo de 2,5 metros de distância.
A Tabela 6 apresenta os resultados da detecção de jogadores para a segunda sequência. As
medidas N-MODA e F-Score, bem como os erros médios globais apresentados na Figura 25
são calculados da mesma forma que na Seção 5.1. Como é de se esperar, os valores de
N-MODA e F-Score são maiores que na sequência de treinamento, para todos os limiares
de sobreposição, já que o número de detecções corretas é maior e o número de falsos
positivos e falsos negativos é menor em praticamente todos os níveis. Entretanto, o erro
médio global obtido foi superior ao encontrado na sequência anterior, para todos os limiares
de sobreposição. Isso pode ser explicado pois o número de verdadeiros positivos obtidos
(que são considerados no cálculo do erro) é bem maior que o anterior em um dado valor de
limiar e, desta maneira, os erros se acumulam de modo mais acentuado. De qualquer modo,
os valores encontrados são inferiores a 40 centímetros, o que novamente é um resultado
importante considerando as dimensões da quadra.
Em relação ao número de falsos positivos, sua queda é explicada em grande parte pela
ausências dos árbitros, técnicos e jogadores reservas na área de jogo. Contudo, a bola
Tabela 6 – Resultados da detecção de jogadores para a sequência de Treinamento.
τov
TP
FP
FN
Prec.
Rev.
F-Score
N-MODA
0,1
0,2
0,3
0,4
0,5
7787
7771
7603
7072
6126
308
324
492
1023
1969
1152
1168
1336
1867
2813
0,962
0,960
0,939
0,874
0,757
0,871
0,869
0,851
0,791
0,685
0,914
0,912
0,893
0,830
0,719
0,837
0,833
0,796
0,677
0,465
66
1
0.9
0.8
0.7
0.6
0.5
N−MODA
F−Score
0.4
0.3
0.5
0.4
0.3
0.2
Limiar da razão de sobreposição
Erro médio global em metros
0.5
0.45
0.4
0.35
0.3
0.25
0.2
0.15
0.5
0.1
0.4
0.3
0.2
Limiar da razão de sobreposição
0.1
(a) Valores de N-MODA e F-Score obtidos e o impacto (b) Erros médios globais obtidos, de acordo com o
do limiar da razão de sobreposição sobre os resullimiar utilizado.
tados.
Figura 25 – Resultados obtidos na avaliação da detecção na sequência de Treinamento
para diferentes valores de τov .
continua sendo detectada em alguns quadros, assim como sombras leves formadas pelos
jogadores e que não foram removidas completamente no processo de detecção. Nas situações em que vários jogadores se encontram muito próximos e são detectados como um
único blob que ultrapassa as restrições geométricas, o processo de divisão recursiva da
região pode gerar regiões delimitadoras extras incorretas, que não correspondem exatamente às regiões dos jogadores. Isso também contribui para o número de falsos positivos
encontrado.
Por outro lado, os coletes usados pelos jogadores auxiliam um pouco mais na detecção
dos atletas em algumas regiões da quadra, resultando em um menor número de falsos
negativos. O relaxamento das restrições da área da quadra também contribuem para que
um jogador se movimentando muito próximo às extremidades, ou que vai bater um lateral ou
escanteio, ainda possa ser detectado e reduza o número de falsos negativos. Infelizmente,
em outras regiões da quadra, os jogadores ainda são bastante parecidos com o fundo e não
são detectados. Nas áreas em que a imagem é borrada e possui mais ruído, esse problema
se agrava. Assim como na sequência anterior, a alta similaridade entre a aparência dos
jogadores e o fundo são a principal causa da não detecção dos atletas também nesta
sequência. Além disso, de modo semelhante ao cenário encontrado anteriormente, quando
um ou mais jogadores estão muito próximos e o blob detectado respeita as restrições
geométricas, não há divisão da região delimitadora, e assim um ou mais atletas ficam
sem ser detectados. Esse caso também contribui consideravelmente para o aumento da
contagem de falsos negativos.
67
5.5
Resultados do rastreamento dos jogadores - Treinamento
A Tabela 7 apresenta os resultados do rastreamento de jogadores para a segunda sequência.
As medidas MOTA e F-Score, bem como os erros médios globais apresentados na Figura 26
são calculados da mesma forma que na Seção 5.2. Novamente, assim como esperado, os
valores de MOTA e F-Score são superiores aos encontrados na sequência de treinamento,
para todos os limiares de distância. Como se beneficia diretamente da melhora da detecção,
o rastreamento também apresenta um número de detecções corretas maior e um número
de falsos positivos e falsos negativos menor em praticamente todos os níveis.
Mais uma vez, o erro médio global obtido foi superior ao encontrado na sequência de
jogo, para todos os limiares de τd . A justificativa para esse aumento é a mesma usada na
seção anterior e está relacionada diretamente ao aumento da contagem de verdadeiros
positivos, que elevam o acúmulo de erro. Apesar do aumento, o maior erro encontrado
é aproximadamente igual a 40 centímetros, e isso destaca o potencial da técnica de
rastreamento adotada para estimar as posições dos jogadores em uma região relativamente
grande como a quadra de futsal.
Assim como na sequência de jogo, durante os experimentos foram obtidos diversos rastreamentos com sucesso para grande parte dos jogadores, como pode ser visto na Figura 27.
O filtro é capaz de resolver situações simples de confusão, quando as trajetórias de dois
jogadores se cruzam rapidamente e mantém o rastreamento de cada atleta corretamente.
Apesar das melhoras apresentadas na Seção 5.2 refletirem diretamente no desempenho
do rastreamento, alguns dos problemas que permanecem na detecção acabam causando
erros também nesta etapa. Em particular, no caso de ausência de medição para ajustar o
filtro de um rastreador, o rastreamento se deteriora rapidamente. Assim, os jogadores não
detectados por serem muito semelhantes ao fundo, ou os que ficam muito próximos uns
dos outros por um período considerável de tempo, sendo detectados como um blob único
que respeita as restrições geométricas, são as principais causas de erro no rastreamento
nessa sequência. Novamente, nesses casos, o filtro pode trocar suas identidades, estimar
incorretamente suas posições ou mesmo o rastreador pode ser removido, já que não possui
Tabela 7 – Resultados do rastreamento de jogadores para a sequência de Treinamento.
τd
TP
FP
FN
ID
Prec.
Rev.
F-Score
MOTA
0,50
0,75
1,00
1,25
1,50
1,75
5608
7052
7640
7864
7963
8007
2784
1340
752
528
429
385
876
876
876
876
876
876
71
71
71
71
71
71
0,668
0,840
0,910
0,937
0,949
0,954
0,865
0,890
0,897
0,900
0,901
0,901
0,754
0,864
0,904
0,918
0,924
0,927
0,435
0,720
0,809
0,839
0,852
0,858
68
0.5
0.9
0.8
0.7
0.6
0.5
MOTA
F−Score
0.4
0.3
0.5
0.75
1
1.25
1.5
Limiar de distância em metros
Erro médio global em metros
1
0.45
0.4
0.35
0.3
0.25
0.2
0.15
0.5
1.75
0.75
1
1.25
1.5
Limiar de distância em metros
1.75
(a) Valores de MOTA e F-Score obtidos e o impacto do (b) Erros médios globais obtidos, de acordo com o
limiar da distância sobre os resultados.
limiar utilizado.
Figura 26 – Resultados obtidos na avaliação do rastreamento na sequência de Treinamento
para diferentes valores de τd .
medição associada para ajustar a estimativa durante esse tempo, e assim os jogadores
deixam de ser rastreados. Além disso, por não haver distinção entre as medições na fase
de observação, a bola ou detecções incorretas continuam roubando o rastreador de um
jogador e prejudicando o rastreamento.
A Tabela 8 apresenta a duração máxima, mínima e média dos rastreamentos para todos os
jogadores e para a sequência de treinamento como um todo, antes de um rastreador ser
(a) Quadro 5378.
(b) Quadro 5393.
(c) Quadro 5408.
(d) Quadro 5423.
(e) Quadro 5438.
(f) Quadro 5453.
Figura 27 – Exemplo de rastreamento dos jogadores com sucesso na sequência de Treinamento e as trajetórias dos atletas no tempo (destacadas em verde).
69
Tabela 8 – Duração dos rastreamentos (em número de quadros) para cada jogador na
sequência de Treinamento.
Jogador
Maior intervalo
Menor intervalo
Intervalo médio
1
2
3
4
5
6
7
8
9
10
5724
3000
2142
1770
2979
1140
1956
1305
1584
1697
1530
90
30
30
30
15
15
16
17
15
3319
1018
730
728
876
210
304
276
294
192
Sequência
5724
15
795
removido ou ter sua identidade trocada. A numeração dos jogadores acontece de forma
análoga à relatada na Seção 5.2, e os número dos goleiros de cada time nessa sequência
são 1 e 10, respectivamente. Dada a melhora na detecção e a consequente redução de
alguns problemas no rastreamento, foi possível aumentar os tempos de vida máximo e
médio obtidos para esta sequência. No melhor caso, um rastreamento teve duração de 5724
quadros, 15 quadros no pior caso e duração de 795 quadros em média. Apesar do aumento
considerável no tempo médio de rastreamento, esse resultado ainda leva o operador a fazer
constantes intervenções para restabelecer as identificações dos rastreadores.
5.6
Estatísticas obtidas - Treinamento
A Tabela 9 apresenta as estatísticas físicas de cada jogador extraídas e o erro encontrado
para distância, velocidade média e velocidade máxima nesta sequência. A numeração dos
atletas permanece a mesma da seção anterior e os erros são calculados como na Seção 5.3.
Com a melhora na detecção e no rastreamento dos atletas mostrada anteriormente, foi
possível reduzir o RMSE da sequência para 5,77% para a distância percorrida pelos
jogadores e 5,84% para a velocidade média dos atletas. Entretanto, o erro para a velocidade
máxima aumentou para 24,21%. Isso se deve a uma presença maior de erros como o roubo
do rastreador pela bola e trocas de identidade.
A ocorrência dos erros nessa sequência está ligada aos fatores já explicados na Seção 5.3,
ou seja, são relacionados aos problemas que permanecem nas fases de detecção e
rastreamento. Entretanto, vale observar que como os jogadores são detectados e rastreados
em mais quadros nessa avaliação, a maioria dos erros para a distância percorrida são
positivos. A exceção a essa regra é o goleiro de número 10, que se encontra em grande
parte da sequência na parte problemática da imagem, que se apresenta borrada e com
70
Tabela 9 – Estatísticas físicas obtidas para cada jogador na sequência de Treinamento. Os
erros são definidos em relação às estatísticas calculadas pelas posições do
gabarito.
Jogador
Dist.
(m)
Erro Dist.
(%)
Vel. Méd.
(Km/h)
Erro Vel. Méd.
(%)
Vel. Máx.
(Km/h)
Erro Vel. Máx.
(%)
1
2
3
4
5
6
7
8
9
10
324,85
801,80
815,33
889,85
840,37
788,78
802,92
899,27
743,21
293,03
0,3
6,0
5,3
7,4
6,2
3,6
1,4
4,5
7,6
-9,1
2,64
6,51
6,60
7,22
6,82
6,40
6,52
7,32
6,03
2,38
0,4
6,1
5,2
7,5
6,3
3,7
1,5
4,9
7,7
-9,0
16,32
27,24
28,96
25,37
24,07
25,38
32,82
31,81
22,29
19,58
24,2
3,7
38,5
-12,7
2,6
17,7
-2,0
39,6
7,3
40,9
Sequência
(RMSE)
-
5,77
-
5,84
-
24,21
mais ruído. Por causa disso, sua detecção é prejudicada, e consequentemente é rastreado
bem menos que os outros atletas.
A Figura 28a apresenta um exemplo de mapa de calor obtido para um jogador (número 3)
com erro médio para as estatísticas físicas na sequência de treinamento. No Apêndice B
encontram-se todos os mapas obtidos para os outros jogadores da sequência. Assim como
foi feito anteriormente, para avaliar a qualidade do mapa de calor, foram desenhados na
imagem os pontos referentes às posições provenientes do gabarito (Figura 28b).
Novamente, o mapa obtido contém quase que a totalidade dos pontos do gabarito e pode
descrever de maneira eficaz a ocupação do jogador. Para esse atleta, por exemplo, é
possível observar que ele atua no campo defensivo mais pelo lado esquerdo, mas suas
investidas no campo de ataque ocorrem em grande parte pelo lado direito. Desta maneira, o
mapa de calor e os dados físicos extraídos constituem informações importantes e valiosas
para os técnicos utilizarem em suas análises tática e física de forma a compreender melhor
o desempenho de sua equipe.
71
(a) Mapa de calor obtido para o jogador 3.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 28 – Ocupação em quadra do jogador 3 dada por seu mapa de calor - Sequência de
Treinamento.
72
Capítulo 6
Conclusão
Neste trabalho foi apresentado um sistema para apoiar as análises tática e física de equipes de futsal baseado em Visão Computacional. Apesar de serem fundamentais para
se compreender o que se passa na partida, grande parte dessas análises são feitas de
maneira manual, já que a maioria das soluções tecnológicas existentes são praticamente
inacessíveis aos times, além de serem voltadas a outros esportes. Como o futsal é um
esporte extremamente complexo, cujos jogadores estão frequentemente em contato, concentrados em pequenas regiões e se movimentando de modo bastante rápido, uma série
de dificuldades tiveram de ser enfrentadas e superadas, para que se desenvolvesse uma
solução computacional capaz de prover os dados usados nas análises.
Diferentemente de outras abordagens propostas na literatura, o presente sistema utiliza
apenas uma câmera estacionária que captura imagens da quadra vistas de cima. Essa
configuração pode fornecer diversas vantagens. Em primeiro lugar, as imagens obtidas
por uma câmera disposta dessa maneira minimizam os efeitos de oclusão entre os jogadores, que podem atrapalhar muito o rastreamento dos atletas. Além disso, o uso de
uma única câmera também pode reduzir a complexidade computacional do sistema e os
custos com aquisição e implantação. No entanto, ao se adotar uma câmera posicionada
de forma aproximadamente perpendicular à quadra, há uma maior dificuldade em explorar
características visuais dos jogadores, que poderiam ser usadas posteriormente para obter
melhores resultados na detecção e no rastreamento dos atletas.
Para detectar os jogadores nas imagens, é utilizada a técnica adaptativa de subtração de
fundo baseado em mistura de Gaussianas. Essa técnica é bastante eficiente para encontrar
automaticamente as regiões que correspondem aos jogadores nas imagens, sem que
seja necessária uma fase custosa de treinamento, como acontece com as abordagens
que usam classificadores de objetos previamente treinados, e sem ser necessário indicar
manualmente quem são os objetos na cena que devem ser encontrados. Durante os
experimentos, contudo, foram encontradas algumas dificuldades decorrentes do uso da
73
subtração de fundo. Uma das principais é a não detecção de alguns jogadores quando
um ou mais atletas estão muito próximos. Nesse caso, o resultado da subtração é uma
região única, que resulta em apenas uma detecção válida contendo todos os jogadores. Foi
proposta uma abordagem de divisão recursiva dessa região, baseado em características
geométricas dos jogadores, mas ela nem sempre é capaz de lidar com essa situação.
Outra causa importante da não detecção dos jogadores é sua alta similaridade com algumas
regiões da quadra. Esse problema é agravado pelas características da câmera utilizada nos
experimentos. As imagens obtidas são de baixa resolução, e se apresentam borradas e
com bastante ruído em algumas regiões da quadra. Isso dificulta ainda mais localizar os
jogadores nas imagens, já que várias vezes se apresentam muito semelhantes ao piso da
quadra, não sendo discriminativos o suficiente para serem considerados parte do primeiro
plano. O uso de uma câmera de maior qualidade, contudo, pode reduzir significativamente
essas dificuldades. Há também outros problemas, como as detecções indesejadas da bola
e de sombras leves não filtradas no processo. Apesar dessas complicações, foi possível
realizar a detecção dos atletas de maneira eficiente e precisa. Atingiu-se valores importantes
para as medidas N-MODA e F-Score usadas na avaliação das sequências, e foram obtidos
erros médios globais menores que 40 centímetros, um valor expressivo considerando as
dimensões da quadra.
Por sua vez, foi adotada a técnica de filtro de partículas para ligar as detecções dos jogadores em quadros sucessivos e fazer o rastreamento dos atletas. Durante os experimentos,
foi possível obter vários rastreamentos com sucesso para grande parte dos jogadores em
quadra. O filtro é capaz de lidar com situações simples de confusão, como, por exemplo,
quando a trajetória de dois jogadores se cruzam por um breve momento, e o rastreamento
se mantém corretamente. Entretanto, alguns problemas foram encontrados na realização
dos testes, e que demonstram algumas de suas limitações. Na maioria dos casos, os erros
são causados pela ausência de uma medição capaz de ajustar a estimativa do filtro, ou pelo
fato de o modelo de observação não fazer distinção entre as características das medições.
Assim, quando os jogadores se mantém muito próximos ou não são detectados por um
número grande de quadros, por exemplo, acontecem trocas de identidades entre os atletas,
estimativas incorretas de posição, roubo do rastreador pela bola ou mesmo interrupção do
rastreamento.
Para as duas sequências avaliadas, o tempo médio de rastreamento foi de 283 quadros
para a primeira e 795 quadros para a segunda. Essa duração é relativamente pequena, o
que faz com que sejam necessárias intervenções constantes por parte do operador para
re-identificar os rastreadores e desfazer as situações de confusão. Como comentado, essa
é a principal limitação do sistema proposto, pois um número significativo de intervenções
manuais é obviamente indesejado por aumentar o tempo e o esforço necessário para extrair
74
as informações. Ainda assim, novamente o erro médio global encontrado foi inferior a 40
centímetros, e os valores obtidos para as medidas MOTA e F-Score usadas nas avaliações
foram significativos.
Apesar de todas as dificuldades apresentadas, foi possível extrair com sucesso as informações tática e física de interesse para as análises. Assim, puderam ser gerados os mapas
de calor, que descrevem a ocupação dos jogadores em quadra durante as sequências,
bem como estimados os valores da distância percorrida e velocidades máxima e média
desempenhada pelos atletas. Os resultados apresentados mostram que os dados coletados
possuem boa exatidão, dada a complexidade do futsal, e podem ser usados em diversas
atividades, como melhoria nos planos de treinamento, correção de falhas e na tomada de
decisões. Em particular, os erros obtidos para a distância percorrida e velocidade média são
da ordem de 8% para a primeira sequência e 5% para a segunda, o que mostra o potencial
do sistema para estimar essas estatísticas. Entretanto, a estimativa da velocidade máxima
é mais sensível aos erros apresentados no processo de rastreamento, e assim, possuem
valores de erros elevados, da ordem de 15% e 24%, para a primeira e segunda sequências
avaliadas, respectivamente. Deste modo, o cálculo da velocidade máxima de um atleta deve
ser melhor tratado em um trabalho futuro, para que se aumente a exatidão do sistema.
Finalmente, vale observar que a metodologia proposta pode ser estendida e aplicada a
outros esportes, como basquete e handebol. Desta maneira, pode-se aumentar ainda mais
a aplicabilidade do sistema e levar as vantagens de seu uso para outras modalidades.
6.1
Trabalhos Futuros
Nos trabalhos futuros, pretende-se reduzir as situações de confusão presentes no sistema,
com a consequente minimização de trocas de identidades e perdas do rastreamento, para
que seja necessário um número menor de intervenções por parte do operador. Para tanto,
serão exploradas outras técnicas de detecção de jogadores, que possam se sair melhor
nas situações em que os atletas são muito semelhantes ao fundo ou quando estão muito
próximos uns aos outros. Pretende-se também investigar o uso de outros modelos de
movimentação que possam capturar melhor a dinâmica dos atletas de futsal, a ser usado
na propagação das partículas.
Espera-se também que possa ser utilizada futuramente uma câmera melhor, capaz de obter
imagens dos jogadores com mais qualidade. Além disso, será verificada a viabilidade de
incluir outras câmeras no sistema, que possam observar os jogadores em outras posições,
fornecendo características visuais importantes que podem ser exploradas no rastreamento.
Por meio dessas imagens, por exemplo, pode-se construir modelos de aparência fortes e
robustos o suficientes para discriminar os jogadores e diferenciar suas medições.
75
Uma vez reduzido o número de intervenções e falhas no sistema, pretende-se trabalhar
futuramente com a extração das estatísticas de interesse em tempo real. A aplicação móvel,
desta maneira, apresentaria os dados para os técnicos à medida que ocorrem no jogo,
durante a realização da partida. Deste modo, os técnicos podem aproveitar as informações
para reverter uma situação adversa de jogo, por exemplo.
Por fim, pretende-se aplicar futuramente algoritmos de mineração de dados sobre as informações coletadas, para extrair informações semânticas que não são diretamente obtidas pela
observação dos dados. Essas informações podem revelar aos técnicos estratégias valiosas
como, por exemplo, quais são os posicionamentos de jogadores com maior probabilidade
de resultarem em gol.
76
Referências
ANDRADE, E. L. et al. Region-based analysis and retrieval for tracking of semantic objects
and provision of augmented information in interactive sport scenes. Multimedia, IEEE
Transactions on, IEEE, v. 7, n. 6, p. 1084–1096, 2005. Citado na página 13.
ASSFALG, J. et al. Semantic annotation of soccer videos: automatic highlights identification.
Computer Vision and Image Understanding, Elsevier, v. 92, n. 2, p. 285–305, 2003.
Citado 2 vezes nas páginas 4 e 13.
BEETZ, M. et al. Camera-based observation of football games for analyzing multi-agent activities. In: ACM. Proceedings of the 5th International Joint Conference on Autonomous
Agents and Multiagent Systems. [S.l.], 2006. p. 42–49. Citado na página 17.
BEETZ, M.; KIRCHLECHNER, B.; LAMES, M. Computerized real-time analysis of football
games. Pervasive Computing, IEEE, IEEE, v. 4, n. 3, p. 33–39, 2005. Citado na página
12.
Ben Shitrit, H. et al. Tracking multiple people under global appearance constraints. In:
IEEE. Computer Vision (ICCV 2011), IEEE International Conference on. [S.l.], 2011. p.
137–144. Citado 3 vezes nas páginas 17, 19 e 22.
Ben Shitrit, H. et al. Multi-commodity network flow for tracking multiple people. IEEE, 2013.
Citado 2 vezes nas páginas 17 e 19.
BERCLAZ, J. et al. Multiple object tracking using k-shortest paths optimization. Pattern
Analysis and Machine Intelligence, IEEE Transactions on, IEEE, v. 33, n. 9, p. 1806–
1819, 2011. Citado 2 vezes nas páginas 17 e 19.
Berclaz, J., Fleuret, F., Turetken, E., Fua, P. KSP: Multiple Object Tracker Using KShortest Paths. 2015. Disponível em: <http://cvlab.epfl.ch/software/ksp/>. Acesso em:
01 de julho de 2015. Citado na página 19.
BERNARDIN, K.; STIEFELHAGEN, R. Evaluating multiple object tracking performance: the
clear mot metrics. Journal on Image and Video Processing, Hindawi Publishing Corp.,
v. 2008, p. 1, 2008. Citado 3 vezes nas páginas 54, 57 e 58.
BEUCHER, S.; MEYER, F. The morphological approach to segmentation: the watershed transformation. OPTICAL ENGINEERING-NEW YORK-MARCEL DEKKER
INCORPORATED-, MARCEL DEKKER AG, v. 34, p. 433–433, 1992. Citado na página 16.
BREITENSTEIN, M. D. et al. Online multiperson tracking-by-detection from a single, uncalibrated camera. Pattern Analysis and Machine Intelligence, IEEE Transactions on,
IEEE, v. 33, n. 9, p. 1820–1833, 2011. Citado na página 33.
CATAPULT. Catapult. 2015. Disponível em: <http://www.catapultsports.com/us>. Acesso
em: 30 de junho de 2015. Citado na página 12.
CHEN, H.-T. et al. Recognizing tactic patterns in broadcast basketball video using player
trajectory. Journal of Visual Communication and Image Representation, Elsevier, v. 23,
n. 6, p. 932–947, 2012. Citado 2 vezes nas páginas 16 e 17.
77
CHEN, H.-T. et al. Physics-based ball tracking and 3d trajectory reconstruction with applications to shooting location estimation in basketball video. Journal of Visual Communication
and Image Representation, Elsevier, v. 20, n. 3, p. 204–216, 2009. Citado na página 14.
CZYZ, J.; RISTIC, B.; MACQ, B. A particle filter for joint detection and tracking of color
objects. Image and Vision Computing, Elsevier, v. 25, n. 8, p. 1271–1281, 2007. Citado
na página 18.
DARTFISH. Dartfish. 2015. Disponível em: <http://www.dartfish.com/>. Acesso em: 01 de
julho de 2015. Citado na página 20.
DEARDEN, A.; DEMIRIS, Y.; GRAU, O. Tracking football player movement from a single
moving camera using particle filters. In: Proceedings of the 3rd European Conference
on Visual Media Production (CVMP-2006). [S.l.: s.n.], 2006. p. 29–37. Citado 2 vezes
nas páginas 16 e 18.
D’ORAZIO, T.; LEO, M. A review of vision-based systems for soccer video analysis. Pattern
recognition, Elsevier, v. 43, n. 8, p. 2911–2926, 2010. Citado 6 vezes nas páginas ix, 2, 3,
13, 14 e 22.
D’ORAZIO, T. et al. A visual system for real time detection of goal events during soccer
matches. Computer Vision and Image Understanding, Elsevier, v. 113, n. 5, p. 622–632,
2009. Citado na página 14.
EKIN, A.; TEKALP, A. M.; MEHROTRA, R. Automatic soccer video analysis and summarization. Image Processing, IEEE Transactions on, IEEE, v. 12, n. 7, p. 796–807, 2003.
Citado na página 13.
FELZENSZWALB, P. F. et al. Object detection with discriminatively trained part-based models.
Pattern Analysis and Machine Intelligence, IEEE Transactions on, IEEE, v. 32, n. 9, p.
1627–1645, 2010. Citado na página 17.
FIGUEROA, P. J.; LEITE, N. J.; BARROS, R. M. Background recovering in outdoor image
sequences: An example of soccer players segmentation. Image and Vision Computing,
Elsevier, v. 24, n. 4, p. 363–374, 2006. Citado 2 vezes nas páginas 15 e 21.
FIGUEROA, P. J.; LEITE, N. J.; BARROS, R. M. Tracking soccer players aiming their
kinematical motion analysis. Computer Vision and Image Understanding, Elsevier, v. 101,
n. 2, p. 122–135, 2006. Citado 2 vezes nas páginas 15 e 18.
FLEURET, F. et al. Multicamera people tracking with a probabilistic occupancy map. Pattern
Analysis and Machine Intelligence, IEEE Transactions on, IEEE, v. 30, n. 2, p. 267–282,
2008. Citado 2 vezes nas páginas 17 e 19.
Fleuret, F., Berclaz, J., Lengagne R., Fua, P. POM: Occupancy map estimation for people
detection. 2015. Disponível em: <http://cvlab.epfl.ch/software/pom/>. Acesso em: 01 de
julho de 2015. Citado na página 19.
FORSYTH, D. A.; PONCE, J. Computer Vision: A Modern Approach. [S.l.]: Prentice Hall
Professional Technical Reference, 2002. ISBN 0130851981. Citado na página 6.
Fraunhofer IIS. WiTrack. 2015. Disponível em: <http://www.iis.fraunhofer.de/en/ff/lok/anw/
sport.html>. Acesso em: 30 de junho de 2015. Citado na página 12.
78
GEDIKLI, S. et al. An adaptive vision system for tracking soccer players from variable
camera settings. In: Proceedings of the 5th International Conference on Computer
Vision Systems (ICVS). [S.l.: s.n.], 2007. Citado na página 17.
GOLDENSTEIN, S. K. A gentle introduction to predictive filters. Revista de Informatica
Teórica e Aplicada, v. 11, n. 1, p. 63–92, 2004. Citado 2 vezes nas páginas 17 e 21.
GOOGLE. Android. 2015. Disponível em: <http://www.android.com/>. Acesso em: 11 de
julho de 2015. Citado na página 51.
HARALICK, R. M.; STERNBERG, S. R.; ZHUANG, X. Image analysis using mathematical
morphology. Pattern Analysis and Machine Intelligence, IEEE Transactions on, IEEE,
n. 4, p. 532–550, 1987. Citado na página 40.
HARTLEY, R.; ZISSERMAN, A. Multiple view geometry in computer vision. [S.l.]: Cambridge university press, 2003. Citado 4 vezes nas páginas ix, 5, 24 e 25.
HASHIMOTO, S.; OZAWA, S. A system for automatic judgment of offsides in soccer games.
In: IEEE. Multimedia and Expo, IEEE International Conference on. [S.l.], 2006. p. 1889–
1892. Citado na página 14.
HEATMAP.JS. heatmap.js - Heat Map Visualization Library. 2015. Disponível em: <http:
//www.patrick-wied.at/static/heatmapjs/>. Acesso em: 11 de julho de 2015. Citado na página
48.
INMOTIOTEC. InMotio Twitter. 2014. Disponível em: <https://twitter.com/Inmotio/status/
483216174352969728/photo/1>. Acesso em: 1 de julho de 2015. Citado na página 12.
INMOTIOTEC. InMotio Twitter. 2014. Disponível em: <https://twitter.com/Inmotio/status/
488623019095752705/photo/1>. Acesso em: 1 de julho de 2015. Citado na página 12.
INMOTIOTEC. Inmotio. 2015. Disponível em: <http://www.inmotio.eu/en-GB/2/home.html>.
Acesso em: 30 de junho de 2015. Citado na página 12.
ISARD, M.; BLAKE, A. Condensation—conditional density propagation for visual tracking.
International journal of computer vision, Springer, v. 29, n. 1, p. 5–28, 1998. Citado 2
vezes nas páginas 17 e 32.
JOO, S.-W.; CHELLAPPA, R. A multiple-hypothesis approach for multiobject visual tracking.
Image Processing, IEEE Transactions on, IEEE, v. 16, n. 11, p. 2849–2854, 2007. Citado
na página 18.
JSON. JSON. 2015. Disponível em: <http://json.org/>. Acesso em: 11 de julho de 2015.
Citado na página 51.
KAEWTRAKULPONG, P.; BOWDEN, R. An improved adaptive background mixture model
for real-time tracking with shadow detection. In: Video-Based Surveillance Systems. [S.l.]:
Springer, 2002. p. 135–144. Citado na página 30.
KANG, J.; COHEN, I.; MEDIONI, G. Soccer player tracking across uncalibrated camera streams. In: Joint IEEE International Workshop on Visual Surveillance and Performance
Evaluation of Tracking and Surveillance (VS-PETS) In Conjunction with. [S.l.: s.n.],
2003. v. 206, p. 172–179. Citado na página 16.
79
KASTURI, R. et al. Framework for performance evaluation of face, text, and vehicle detection
and tracking in video: Data, metrics, and protocol. Pattern Analysis and Machine Intelligence, IEEE Transactions on, IEEE, v. 31, n. 2, p. 319–336, 2009. Citado 4 vezes nas
páginas 54, 55, 57 e 58.
KHATOONABADI, S. H.; RAHMATI, M. Automatic soccer players tracking in goal scenes by
camera motion elimination. Image and Vision Computing, Elsevier, v. 27, n. 4, p. 469–479,
2009. Citado na página 16.
KIM, H.; NAM, S.; KIM, J. Player segmentation evaluation for trajectory estimation in soccer
games. Proceeding of Image and Vision Computing, Palmerston North, New Zealand,
p. 159–162, 2003. Citado na página 16.
KRISTAN, M. et al. Closed-world tracking of multiple interacting targets for indoor-sports
applications. Computer Vision and Image Understanding, Elsevier, v. 113, n. 5, p. 598–
611, 2009. Citado 2 vezes nas páginas 1 e 18.
KUHN, H. W. The hungarian method for the assignment problem. Naval research logistics
quarterly, Wiley Online Library, v. 2, n. 1-2, p. 83–97, 1955. Citado na página 44.
LESER, R. et al. Accuracy of an uwb-based position tracking system used for time-motion
analyses in game sports. European Journal of Sport Science, v. 14, n. 7, p. 635–642,
2014. Citado na página 12.
LI, J. et al. Soccer highlight detection using two-dependence bayesian network. In: IEEE.
Multimedia and Expo, IEEE International Conference on. [S.l.], 2006. p. 1625–1628.
Citado na página 13.
Liga Futsal. Liga Futsal. 2015. Disponível em: <http://ligafutsal.com.br/>. Acesso em: 11
de julho de 2015. Citado na página 53.
LIU, C. et al. A framework for flexible summarization of racquet sports video using multiple
modalities. Computer Vision and Image Understanding, Elsevier, v. 113, n. 3, p. 415–424,
2009. Citado na página 13.
LIU, J. et al. Automatic player detection, labeling and tracking in broadcast soccer video.
Pattern Recognition Letters, Elsevier, v. 30, n. 2, p. 103–113, 2009. Citado na página 17.
MANDELJC, R. et al. Tracking by identification using computer vision and radio. Sensors,
Multidisciplinary Digital Publishing Institute, v. 13, n. 1, p. 241–273, 2012. Citado na página
12.
MIURA, J.; KUBO, H. Tracking players in highly complex scenes in broadcast soccer video
using a constraint satisfaction approach. In: ACM. Proceedings of the 2008 international
conference on Content-based image and video retrieval. [S.l.], 2008. p. 505–514. Citado
na página 18.
MIURA, J. et al. Ball route estimation under heavy occlusion in broadcast soccer video.
Computer Vision and Image Understanding, Elsevier, v. 113, n. 5, p. 653–662, 2009.
Citado na página 14.
MONTGOMERY, D. C. Design and Analysis of Experiments. [S.l.]: John Wiley & Sons,
2006. ISBN 0470088109. Citado 2 vezes nas páginas 62 e 63.
80
MORAIS, E. et al. A multiple camera methodology for automatic localization and tracking
of futsal players. Pattern Recognition Letters, Elsevier, v. 39, p. 21–30, 2014. Citado 8
vezes nas páginas 1, 2, 7, 9, 10, 17, 18 e 59.
MORAIS, E. F. d. Rastreamento de jogadores de futebol de salão usando filtro de partículas e coordenadas no plano da quadra. Tese (Doutorado em Ciência da Computação)
— Universidade Estadual de Campinas - UNICAMP, 2012. Citado 15 vezes nas páginas ix,
1, 2, 10, 17, 18, 21, 22, 28, 32, 33, 34, 35, 43 e 46.
MUNKRES, J. Algorithms for the assignment and transportation problems. Journal of the
Society for Industrial & Applied Mathematics, SIAM, v. 5, n. 1, p. 32–38, 1957. Citado
na página 44.
NAEMURA, M. et al. Morphological segmentation of sport scenes using color information.
Broadcasting, IEEE Transactions on, IEEE, v. 46, n. 3, p. 181–188, 2000. Citado na
página 15.
NAIDOO, W. C.; TAPAMO, J. R. Soccer video analysis by ball, player and referee tracking. In: Proceedings of the 2006 Annual Research Conference of the South African
Institute of Computer Scientists and Information Technologists on IT Research in Developing Countries. [S.l.]: South African Institute for Computer Scientists and Information
Technologists, 2006. p. 51–60. Citado na página 14.
NBA. Player Tracking. 2015. Disponível em: <http://stats.nba.com/tracking/>. Acesso em:
02 de julho de 2015. Citado na página 20.
NILLIUS, P.; SULLIVAN, J.; CARLSSON, S. Multi-target tracking-linking identities using
bayesian network inference. In: IEEE. Computer Vision and Pattern Recognition, 2006
IEEE Computer Society Conference on. [S.l.], 2006. v. 2, p. 2187–2194. Citado na página
18.
NIU, Z.; GAO, X.; TIAN, Q. Tactic analysis based on real-world ball trajectory in soccer video.
Pattern Recognition, Elsevier, v. 45, n. 5, p. 1937–1947, 2012. Citado 2 vezes nas páginas
1 e 14.
OKUMA, K. et al. A boosted particle filter: Multitarget detection and tracking. In: European
Conference on Computer Vision. [S.l.]: Springer, 2004. p. 28–39. Citado 3 vezes nas
páginas 17, 18 e 59.
OPTA. Opta. 2015. Disponível em: <http://www.optasports.com/>. Acesso em: 01 de julho
de 2015. Citado na página 20.
PÁDUA, F. L. C. Alinhamento Espaço-Temporal de Sequências de Vídeo Capturadas
a Partir de Múltiplos Pontos de Vista. Tese (Doutorado em Ciência da Computação) —
Universidade Federal de Minas Gerais - UFMG, 2005. Citado na página 23.
PALLAVI, V. et al. Graph-based multiplayer detection and tracking in broadcast soccer videos.
Multimedia, IEEE Transactions on, IEEE, v. 10, n. 5, p. 794–805, 2008. Citado na página
18.
PERL, J.; GRUNZ, A.; MEMMERT, D. Tactics analysis in soccer – an advanced approach.
International Journal of Computer Science in Sport, v. 12, n. 1, 2013. Citado 3 vezes
nas páginas 1, 4 e 14.
81
PERŠE, M. et al. A trajectory-based analysis of coordinated team activity in a basketball
game. Computer Vision and Image Understanding, Elsevier, v. 113, n. 5, p. 612–621,
2009. Citado na página 2.
Prozone Sports. Prozone. 2015. Disponível em: <http://www.prozonesports.com/>. Acesso
em: 01 de julho de 2015. Citado na página 20.
RENNO, J.-P. et al. Shadow classification and evaluation for soccer player detection. In:
CITESEER. British Machine Vision Conference. [S.l.], 2004. p. 1–10. Citado na página
16.
RODRÍGUEZ, T. et al. Image interpolation for virtual sports scenarios. Machine Vision and
Applications, Springer, v. 16, n. 4, p. 236–245, 2005. Citado na página 13.
SANTIAGO, C. B. et al. Survey on team tracking techniques applied to sports. In: IEEE.
Autonomous and Intelligent Systems (AIS), 2010 International Conference on. [S.l.],
2010. p. 1–6. Citado 4 vezes nas páginas 6, 11, 12 e 13.
STATDNA. StatDNA. 2015. Disponível em: <https://www.statdna.com/>. Acesso em: 01 de
julho de 2015. Citado na página 20.
STATS. SportVU. 2015. Disponível em: <http://www.stats.com/leagues-teams/>. Acesso
em: 30 de junho de 2015. Citado 2 vezes nas páginas 7 e 19.
STAUFFER, C.; GRIMSON, W. E. L. Adaptive background mixture models for real-time
tracking. In: IEEE. Computer Vision and Pattern Recognition, 1999. IEEE Computer
Society Conference on. [S.l.], 1999. v. 2. Citado 6 vezes nas páginas 16, 21, 29, 30, 31
e 32.
SULLIVAN, J.; CARLSSON, S. Tracking and labelling of interacting multiple targets. In:
European Conference on Computer Vision – ECCV 2006. [S.l.]: Springer, 2006. p. 619–
632. Citado 2 vezes nas páginas 5 e 18.
TEUTSCH, M. Moving Object Detection and Segmentation for Remote Aerial Video
Surveillance. [S.l.]: KIT Scientific Publishing, 2015. Citado na página 55.
The New York Times. College Basketball Data Aplenty for Those Who Can Afford It. 2014. Disponível em: <http://www.nytimes.com/2014/03/25/sports/ncaabasketball/
sportvu-offers-college-basketball-data-for-those-who-can-afford-it.html>. Acesso em: 02 de
julho de 2015. Citado na página 7.
THOMAS, G. Sports tv applications of computer vision. In: Visual Analysis of Humans.
[S.l.]: Springer, 2011. p. 563–579. Citado na página 13.
TJONDRONEGORO, D. W.; CHEN, Y.-P. P.; PHAM, B. Classification of self-consumable
highlights for soccer video summaries. In: IEEE. Multimedia and Expo, IEEE International
Conference on. [S.l.], 2004. v. 1, p. 579–582. Citado na página 13.
TRUCCO, E.; VERRI, A. Introductory techniques for 3-D computer vision. [S.l.]: Prentice
Hall Englewood Cliffs, 1998. Citado 7 vezes nas páginas 5, 6, 23, 24, 25, 26 e 42.
TSAI, P.-S.; MEIJOME, T.; AUSTIN, P. G. Scout: a game speed analysis and tracking system.
Machine Vision and Applications, Springer, v. 18, n. 5, p. 289–299, 2007. Citado na
página 14.
82
Ubisense Group. Ubisense. 2015. Disponível em: <http://www.ubisense.net/en/products/
smart-factory>. Acesso em: 30 de junho de 2015. Citado na página 12.
VANDENBROUCKE, N.; MACAIRE, L.; POSTAIRE, J.-G. Color image segmentation by
pixel classification in an adapted hybrid color space. application to soccer image analysis.
Computer Vision and Image Understanding, Elsevier, v. 90, n. 2, p. 190–216, 2003.
Citado na página 15.
VIOLA, P.; JONES, M. Rapid object detection using a boosted cascade of simple features.
In: IEEE. Computer Vision and Pattern Recognition, CVPR 2001. Proceedings of the
IEEE Computer Society Conference on. [S.l.], 2001. v. 1, p. I–511. Citado 2 vezes nas
páginas 16 e 21.
WAN, E.; MERWE, R. V. D. et al. The unscented kalman filter for nonlinear estimation. In:
IEEE. Adaptive Systems for Signal Processing, Communications, and Control Symposium 2000. AS-SPCC. The IEEE 2000. [S.l.], 2000. p. 153–158. Citado na página
18.
WANG, J. et al. Automatic composition of broadcast sports video. Multimedia Systems,
Springer, v. 14, n. 4, p. 179–193, 2008. Citado na página 13.
WANG, X. et al. Take your eyes off the ball: Improving ball-tracking by focusing on team play.
Computer Vision and Image Understanding, Elsevier, v. 119, p. 102–115, 2014. Citado
3 vezes nas páginas 1, 4 e 14.
WELCH, G.; BISHOP, G. An introduction to the kalman filter. University of North Carolina:
Chapel Hill, North Carolina, US, 2006. Citado na página 17.
XU, M. et al. Architecture and algorithms for tracking football players with multiple cameras.
IEE Proceedings-Vision, Image and Signal Processing, IET, v. 152, n. 2, p. 232–241,
2005. Citado 2 vezes nas páginas 16 e 17.
XU, Z.; SHI, P. Segmentation of players and team discrimination in soccer videos. In: IEEE.
VLSI Design and Video Technology, Proceedings of the IEEE International Workshop
on. [S.l.], 2005. p. 369–372. Citado na página 16.
YU, X. et al. A player-possession acquisition system for broadcast soccer video. In: IEEE.
Multimedia and Expo, IEEE International Conference on. [S.l.], 2005. p. 522–525. Citado na página 14.
YU, X. et al. Trajectory-based ball detection and tracking in broadcast soccer video. Multimedia, IEEE Transactions on, IEEE, v. 8, n. 6, p. 1164–1178, 2006. Citado na página
14.
ZEBRA. Zebra Sport Solution. 2015. Disponível em: <https://www.zebra.com/us/en/
solutions/location-solutions/sports-tracking.html>. Acesso em: 1 de julho de 2015. Citado na página 12.
ZHANG, Z. A flexible new technique for camera calibration. Pattern Analysis and Machine
Intelligence, IEEE Transactions on, IEEE, v. 22, n. 11, p. 1330–1334, 2000. Citado 2
vezes nas páginas 25 e 37.
83
ZHU, G. et al. Trajectory based event tactics analysis in broadcast sports video. In: ACM.
Proceedings of the 15th International Conference on Multimedia. [S.l.], 2007. p. 58–67.
Citado 3 vezes nas páginas 1, 14 e 18.
ZIVKOVIC, Z. Improved adaptive gaussian mixture model for background subtraction. In:
IEEE. Pattern Recognition, 2004. ICPR 2004. Proceedings of the 17th International
Conference on. [S.l.], 2004. v. 2, p. 28–31. Citado 5 vezes nas páginas 16, 22, 29, 30 e 31.
ZXY Sport Tracking AS. ZXY Sport Tracking. 2015. Disponível em: <http://www.zxy.no/>.
Acesso em: 1 de julho de 2015. Citado na página 12.
84
Apêndices
APÊNDICE A – Mapas de calor dos
jogadores obtidos na sequência de
Jogo
Na Seção 5.3, foram apresentados o mapa de calor do jogador 9 e o mesmo mapa contendo
pontos referentes às posições provenientes do gabarito desse jogador. A seguir, são
apresentados os mapas de calor e os mapas com os pontos dos outros jogadores da
sequência.
Os jogadores foram numerados no quadro de início da partida, de forma sequencial, da
esquerda para a direita, de cima para baixo. Assim, os jogadores do time que ataca da
esquerda para a direita estão numerados de 1 a 5, e os do time que ataca da direita para
a esquerda, de 6 a 10. O número dos goleiros de cada time nessa sequência são 2 e 10,
respectivamente. Além disso, a sequência de jogo inclui algumas substituições nas equipes,
durante o trecho gravado. Os jogadores reservas que entram posteriormente no jogo são
numerados de acordo com a ordem de entrada, recebendo números de 11 a 15 para a
primeira equipe e 16 a 20 para a segunda.
86
(a) Mapa de calor obtido para o jogador 1.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 29 – Mapa de calor do jogador 1 que descreve sua ocupação em quadra.
87
(a) Mapa de calor obtido para o jogador 2.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 30 – Mapa de calor do jogador 2 que descreve sua ocupação em quadra.
88
(a) Mapa de calor obtido para o jogador 3.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 31 – Mapa de calor do jogador 3 que descreve sua ocupação em quadra.
89
(a) Mapa de calor obtido para o jogador 4.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 32 – Mapa de calor do jogador 4 que descreve sua ocupação em quadra.
90
(a) Mapa de calor obtido para o jogador 5.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 33 – Mapa de calor do jogador 5 que descreve sua ocupação em quadra.
91
(a) Mapa de calor obtido para o jogador 6.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 34 – Mapa de calor do jogador 6 que descreve sua ocupação em quadra.
92
(a) Mapa de calor obtido para o jogador 7.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 35 – Mapa de calor do jogador 7 que descreve sua ocupação em quadra.
93
(a) Mapa de calor obtido para o jogador 8.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 36 – Mapa de calor do jogador 8 que descreve sua ocupação em quadra.
94
(a) Mapa de calor obtido para o jogador 10.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 37 – Mapa de calor do jogador 10 que descreve sua ocupação em quadra.
95
(a) Mapa de calor obtido para o jogador 11.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 38 – Mapa de calor do jogador 11 que descreve sua ocupação em quadra.
96
(a) Mapa de calor obtido para o jogador 16.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 39 – Mapa de calor do jogador 16 que descreve sua ocupação em quadra.
97
(a) Mapa de calor obtido para o jogador 17.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 40 – Mapa de calor do jogador 17 que descreve sua ocupação em quadra.
98
(a) Mapa de calor obtido para o jogador 18.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 41 – Mapa de calor do jogador 18 que descreve sua ocupação em quadra.
99
APÊNDICE B – Mapas de calor dos
jogadores obtidos na sequência de
Treinamento
Na Seção 5.6, foram apresentados o mapa de calor do jogador 3 e o mesmo mapa contendo
pontos referentes às posições provenientes do gabarito desse jogador. A seguir, são
apresentados os mapas de calor e os mapas com os pontos dos outros jogadores da
sequência.
Os jogadores foram numerados no quadro de início da partida, de forma sequencial, da
esquerda para a direita, de cima para baixo. Assim, os jogadores do time que ataca da
esquerda para a direita estão numerados de 1 a 5, e os do time que ataca da direita para
a esquerda, de 6 a 10. O número dos goleiros de cada time nessa sequência são 1 e 10,
respectivamente.
100
(a) Mapa de calor obtido para o jogador 1.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 42 – Mapa de calor do jogador 1 que descreve sua ocupação em quadra.
101
(a) Mapa de calor obtido para o jogador 2.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 43 – Mapa de calor do jogador 2 que descreve sua ocupação em quadra.
102
(a) Mapa de calor obtido para o jogador 4.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 44 – Mapa de calor do jogador 4 que descreve sua ocupação em quadra.
103
(a) Mapa de calor obtido para o jogador 5.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 45 – Mapa de calor do jogador 5 que descreve sua ocupação em quadra.
104
(a) Mapa de calor obtido para o jogador 6.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 46 – Mapa de calor do jogador 6 que descreve sua ocupação em quadra.
105
(a) Mapa de calor obtido para o jogador 7.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 47 – Mapa de calor do jogador 7 que descreve sua ocupação em quadra.
106
(a) Mapa de calor obtido para o jogador 8.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 48 – Mapa de calor do jogador 8 que descreve sua ocupação em quadra.
107
(a) Mapa de calor obtido para o jogador 9.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 49 – Mapa de calor do jogador 9 que descreve sua ocupação em quadra.
108
(a) Mapa de calor obtido para o jogador 10.
(b) Pontos referentes às posições dadas pelo gabarito do jogador desenhados sobre o mesmo mapa.
Figura 50 – Mapa de calor do jogador 10 que descreve sua ocupação em quadra.
109