Predição da trajetória
A predição da trajetória da bola é uma das etapas mais importantes do projeto e pode ser abordada de diversas maneiras. Para resolver esse problema, a equipe optou por começar com o conhecido Kalman Filter para prever o vetor de velocidade da bola para assim calcular a posição em que o hardware pode interceptar a bola, considerando choques elásticos nas bordas do campo. Os passos realizados foram os seguintes:
Atualizar o filtro de Kalman a cada frame com a posição da bola, de forma a obter as velocidades em x e y;
Calcular o declive da trajetória e, assumindo um movimento retilíneo e choques elásticos nas bordas, estimar a posição final;
Realizar uma média móvel com as últimas estimativas calculadas, de forma a suavizar o comportamento do valor previsto.
É possível perceber nos vídeos abaixo os resultados obtidos. Em azul escuro temos o vetor velocidade calculada pelo filtro de Kalman. Em azul claro temos a trajetória estimada da bola. Marcado por um retângulo branco temos a posição desejada do robô de forma a interceptar a bola.