Saibro Animado CV · como o computador lê uma partida

Do vídeo da TV para dados de jogo

Um programa assiste à transmissão comum de tênis e transforma a imagem em números: onde está cada jogador e o esqueleto dele, por onde a bola passou, quando houve batida, onde ela quicou e quem ganhou o ponto. Esses dados alimentam a transmissão animada do Saibro Animado.

45 lances de 4 partidas no banco de provas todos conferidos quadro a quadro à mão 30 de 43 pontos certos, nenhum errado Motor ao vivo pronto; falta a máquina potente para 25 quadros/s

Veja funcionando

Tudo o que aparece desenhado em cima do vídeo foi calculado pelo programa, sem nenhuma marcação manual: o programa acha a quadra sozinho. Escolha um lance, aperte play e vá ligando e desligando as camadas. Em “Mostrar”, troque para a animação gerada desses mesmos dados, ou veja os dois lado a lado.

Vídeo da TV + leitura do programa
0,00 s
Mostrar
Velocidade
TempoConferido à mãoO programa disse
A outra metade do produto

Dos dados para a animação

A animação não é desenhada à mão. Cada quadro é montado com os mesmos números da leitura: o programa não guarda imagem nenhuma do jogo, só posições, esqueletos e eventos. Por isso a mesma jogada pode ser vista de qualquer câmera, no visual do Saibro Animado. No player acima, use “Animação” ou “Lado a lado”.

esqueleto →

Boneco

Os pontos do corpo viram o boneco em 3D, com os pés na posição medida em metros.

bola 3D →

Bola e sombra

A trajetória com altura vira a bola, o rastro, a sombra e a marca de cada quique no chão.

eventos →

Letreiros e narração

Batida, quique e ponto disparam “FORA!”, “WINNER!”, a velocidade estimada, a narração e a torcida.

vídeo →

Cores da quadra

Piso, entorno, linhas e parede são lidos do próprio vídeo: quadra azul fica azul, saibro fica saibro.

diretor →

Câmera automática

Atrás de quem saca no saque, câmera de TV no rali e um giro em volta da quadra depois do ponto.

Decisão de produto: ao vivo, o programa desenha o movimento

Desde 10 de novembro, a transmissão ao vivo mostra só o movimento dos jogadores e da bola. Ponto, falta e placar vêm da API de dados oficial, sincronizados com o atraso do desenho. Batidas e quiques continuam sendo achados, para o arco da bola e a câmera automática. As regras de ponto seguem valendo no replay e no banco de provas.

O mesmo instante, seis câmeras

Todas as imagens saem do mesmo arquivo de dados do “Rali perfeito”, no mesmo instante. Ainda limitam a animação: a raquete não é medida (é desenhada como extensão do antebraço), a profundidade do corpo não é medida, e um jogador que sai da imagem some do desenho.

O caminho de cada quadro

Como funciona, em cinco etapas

1 · quadra

Medir a quadra

O programa acha sozinho as linhas da quadra e passa a converter qualquer ponto do chão da imagem em metros reais. Se a câmera gira, ele reajusta a cada quadro.

homografia · sem clicar nada
2 · bola

Achar a bola

Dois detectores de bola olham o mesmo jogo. Um acha as batidas e quiques; o outro serve de juiz: o ponto só é marcado se os dois concordarem.

WASB + ResTrackNetV2 de juiz
3 · jogadores

Ler o corpo

Outro modelo encontra 33 pontos do corpo de cada jogador (ombros, cotovelos, punhos, joelhos, pés). Os pés dizem onde ele está na quadra.

MediaPipe · RTMPose em teste para a placa NVIDIA
4 · regras

Entender o tênis

Regras de tênis viram código: a bola inverteu o sentido perto de um jogador é batida; um tranco para baixo é quique; dois quiques, rede ou bola fora encerram o ponto. Saque, falta, dupla falta, ace, let e voleio também têm regra.

lógica própria · 45 lances conferidos
5 · animação

Redesenhar

Os dados viram a transmissão animada do Saibro Animado: cores da quadra tiradas do próprio vídeo, placas de propaganda editáveis e mais de 15 câmeras 3D, de TV a giro 360°.

replay no navegador
Medido em 10 de novembro de 2026, no notebook atual

Onde estamos hoje

Os 45 lances do banco de provas foram todos conferidos quadro a quadro por uma pessoa. Todos já rodam o sistema completo, com os dois detectores de bola.

81%dos quiques achados

226 de 278, no décimo de segundo certo. O lugar erra 14 cm na mediana; 9 em cada 10 ficam a menos de 54 cm.

76%das batidas achadas

196 de 258, no décimo de segundo certo, e ainda marca 51 batidas que não existiram.

30 de 43pontos decididos certos

13 ficam em branco e nenhum sai errado. As 3 faltas de saque conferidas ainda não são marcadas: 2 acontecem antes de a bola aparecer no vídeo.

2quadros por segundo, no máximo

O motor ao vivo já roda, mas no notebook faz de 1,35 a 2 quadros por segundo. A TV passa 25.

Quadros por segundo: hoje e o necessário

A etapa mais lenta é achar a bola, que no notebook roda no processador. A máquina potente (HP Z8, com duas placas NVIDIA RTX A5000 e A4000) ainda não foi medida; o motor já está pronto para usar as duas placas sozinho.

O que já entrega

  • Jogadores na quadra, em metros, com o esqueleto de cada um, quadro a quadro.
  • Trajetória da bola e altura estimada entre batidas e quiques.
  • Quiques com precisão de centímetros quando a bola é vista.
  • Batidas, quem bateu e o ponto, com dois detectores de bola: na dúvida, prefere deixar o ponto em branco a marcar errado.
  • Saque, falta, dupla falta, ace, let e voleio, cada um com regra própria e testado no banco de provas.
  • Fluxo sem marcar nada: sobe o vídeo (ou liga uma transmissão ao vivo pelo VDO.Ninja), o programa acha a quadra e cada lance, e eles aparecem numa galeria animada.
  • Motor ao vivo, quadro a quadro, com a tela de transmissão que mostra a imagem real e a animação com o mesmo atraso.
  • Câmera que gira é compensada; replay, close e corte de câmera são ignorados.
  • Biblioteca de golpes reais do João Fonseca, Djokovic e Alcaraz, tirada dos esqueletos, que o Rally Animado 3D já usa.

O que ainda não faz

  • Ao vivo na velocidade da TV. O motor existe, mas o notebook faz no máximo 2 quadros por segundo, de 25 necessários.
  • Decidir todos os pontos. Ainda ficam em branco 13 dos 43 pontos.
  • Faltas de saque. Nenhuma das 3 faltas conferidas foi marcada.
  • Raquete. Não é detectada; o desenho estende o antebraço.
  • Profundidade do corpo. O esqueleto é achatado: posição, lateral e altura sim, frente e trás não.
  • Zoom forte e câmeras diferentes da principal quebram a medição.
  • Saibro de verdade. A rede da bola foi treinada em quadra dura; os testes são quase todos em quadra dura.
Além de conferir

Como ficar bem preciso

Com tudo conferido, dá para ver por que cada batida ou quique foi perdido. O diagnóstico separa quatro causas: os olhos não viram a bola; viram, mas a hora saiu mais de 0,1 s fora; a batida foi para o jogador errado; ou as regras não reconheceram o que os olhos viram.

Batidas perdidas: 62

Quiques perdidos: 52

Os olhos quase sempre veem a bola. Só 16 dos 114 eventos perdidos são culpa da detecção. O que mais falta é acertar o instante exato e ensinar melhor as regras. Olhando batida por batida, as ruins se dividem em: bola sumida no contato 18, bola vista com hora errada 16, saque 15, nenhuma batida perto 9 e outro jogador 3.

O que já foi testado e não funcionou

Para a hora da batida, foram testados: a quebra da trajetória (ganha só 4 batidas), o pico de velocidade do punho (piora muito: o punho do esqueleto oscila demais a 25 quadros por segundo) e o som da raquetada. O som parecia promissor num teste rápido, mas no teste completo piorou: o atraso entre som e imagem muda de transmissão para transmissão, e um detector simples confunde a raquetada com quique, grito e torcida. Só serviria com um modelo treinado para reconhecer o som da raquete.

A ordem de ataque, então, é esta:

  1. Reconhecer o saque

    15 saques perdidos (eram 18). No contato, a bola desce do lançamento e sobe com a raquetada, e a imagem parece um quique. Já existia uma regra para isso, mas ela estava travada nos saques em que o rali continua. A trava foi solta em 10/11: +2 saques achados, 2 batidas e 2 quiques falsos a menos, nenhum ponto alterado. Em 9 dos 15 que sobram os olhos viram a bola inteira; falta uma regra própria de saque: bola parada no alto, acima do sacador, que de repente acelera para o outro lado.

  2. Bola sumida no contato

    19 batidas perdidas. No quadro da raquetada a bola fica borrada ou escondida pelo corpo. O caminho é encaixar a trajetória de antes e de depois atravessando esse buraco, e analisar a 50 quadros por segundo quando o vídeo tem (Pequim e US Open têm 50 e 60; hoje usamos 25).

  3. Ensinar as regras com os dados conferidos

    Causa de 24 batidas e 25 quiques perdidos. Agora são 536 eventos conferidos (258 batidas e 278 quiques). Com eles dá para treinar um modelo pequeno que lê a trajetória da bola e o esqueleto e sugere batidas e quiques; as regras de tênis continuam como fiscal. Os vídeos sintéticos do Rally, com a verdade exata, dão exemplos extras de graça.

  4. Conferir também a conferência

    O último ponto “errado” era do gabarito. No Pequim 96,8 s, a conferência estava com perto e fundo trocados nas 7 batidas e no ponto; o programa é que estava certo. Foi corrigido em 10/11, com a versão anterior guardada. A checagem de coerência do projeto acha esse tipo de engano: vale rodar depois de cada rodada de conferência.

  5. Faltas de saque

    0 de 3 faltas marcadas. Duas acontecem antes de a bola aparecer no vídeo, e a terceira cai fora por 5 cm, menos que o erro de posição. Com a zona de dúvida (último item), o certo nesses casos é não arriscar.

  6. Retreinar os olhos com o que foi conferido

    Causa de 5 batidas e 14 quiques. Os rótulos conferidos viram treino do detector de bola (o caminho já está pronto), com prioridade para bola rápida, bola perto da rede e saibro.

  7. Posição do quique ao centímetro

    Hoje: 13 cm na mediana. Corrigir a distorção da lente, encaixar a trajetória 3D com física (gravidade e arrasto) dos dois lados do quique e medir contra o Rally, que tem a posição exata. Uma ressalva realista: os sistemas oficiais de chamada de linha usam várias câmeras rápidas dedicadas. Com uma câmera de TV, o certo é ter uma zona de dúvida: perto da linha, o programa diz “na linha, sem certeza” em vez de arriscar.

Metas para chamar de “bem preciso”

batidas95% a ±1 quadro (±40 ms)hoje 63% a ±1 quadro e 76% em ±100 ms
quiques95% achados, mediana abaixo de 5 cmhoje 81% e 14 cm
pontos0 errados e no máximo 1 em 10 em brancohoje 0 errados e 13 de 43 em branco
faltastodas as faltas de saque marcadashoje 0 de 3
Do protótipo ao produto

O caminho até o potencial máximo

Agora · sem custo novo

Acertar o ponto

  • Regra própria de saque, para os 9 saques em que a bola foi bem vista.
  • Encaixar a trajetória por cima do buraco quando a bola some no contato.
  • Decidir os 13 pontos em branco sem passar a marcar errado.

Precisa de: tempo de desenvolvimento. A conferência dos 45 lances já foi feita.

Próximo · com investimento

Rodar ao vivo na HP Z8

  • Medir o motor ao vivo na Z8 (duas placas NVIDIA) e chegar a 25 quadros por segundo.
  • Trocar o MediaPipe pelo RTMPose, que roda na placa de vídeo (16 dos 45 lances já gerados para a comparação).
  • Animação indo ao ar com até 10 s de atraso, o limite que a transmissão aceita.
  • Placar e ponto pela API de dados, sincronizados com o desenho (já pronto; falta saber qual API).
  • Retreinar a rede da bola com os rótulos já preparados, incluindo saibro.

Precisa de: a HP Z8 disponível para os testes e vídeos de saibro com a câmera principal parada.

Potencial máximo

Produto de transmissão

  • Ponto, saque e estatísticas decididos sozinhos, ao vivo.
  • Raquete e corpo em 3D completo.
  • Velocidade real da bola, mapa de quiques e padrões de cada jogador.
  • Mais de uma câmera e qualquer quadra.

Precisa de: parceria com quem gera a transmissão (sinal limpo, sem cortes) e direito de uso das imagens.

Três frentes que se ajudam

Onde este projeto se encaixa

Esta página

Saibro Animado CV

Lê o vídeo de TV, ou uma transmissão ao vivo, quadro a quadro. Busca precisão de verdade com o menor atraso possível.

Funciona ao vivo hoje

Widget CV

Lê ao vivo o rastreador oficial da partida (o widget de acompanhamento) e redesenha no visual do Saibro. Testado em 149 quadros reais com placar e pontos certos. A posição vem do fornecedor, não é medida por nós.

Simulação

Rally Animado

Partida 3D animada. Usa os golpes reais tirados dos esqueletos deste projeto. Os dois seguem separados e trocam melhorias.

Para quem vai apresentar

Roteiro de 5 minutos

  1. O problemaUma transmissão animada precisa de dados de cada ponto. Dados oficiais de rastreamento costumam ser pagos e fechados. E se a gente tirasse os dados da própria imagem da TV?
  2. Mostre o primeiro lance com o vídeoAperte play no “Rali perfeito”. Aponte o esqueleto, a bola amarela e as marcas de quique aparecendo.
  3. Ligue “Só os dados”Isto é tudo o que o computador guarda. Mostre a quadra vista de cima ao lado: a mesma jogada em metros.
  4. Troque para “Lado a lado”O vídeo real à esquerda e a animação gerada só com esses dados à direita, no mesmo instante. Depois role até as seis câmeras: a mesma jogada, de qualquer ângulo.
  5. Mostre a tabela de conferênciaCada batida e quique foi conferido por uma pessoa. Neste lance, tudo bate, inclusive o ponto. No “Rali longo”, 36 de 39 batem e o ponto também.
  6. Mostre que nem tudo é perfeitoNo “Ponto curto do Fonseca”, o ponto sai certo, mas a tabela mostra o saque marcado 0,3 s cedo. Os erros que restam são medidos e estão sendo corrigidos.
  7. Feche com os números e o pedido81% dos quiques, 76% das batidas e 30 de 43 pontos certos, nenhum errado. Ao vivo, o placar vem da API; o programa cuida do movimento. O motor ao vivo está pronto; falta rodá-lo na HP Z8 para chegar aos 25 quadros por segundo.