Eu sei que você pode calcular homografias da imagem para o plano da câmera usando pontos de correspondência entre um "modelo perfeito" e os pontos da imagem.
Estou fazendo isso em um campo / campo de futebol e usei a detecção de borda para encontrar as linhas brancas no campo.
Mas a câmera (sempre) não cobre todo o campo, então não consigo ver todos os cantos ... e apenas os cantos são pontos 100% conhecidos no modelo (nenhum outro ponto distinto).
Portanto, o problema é que, a menos que a linha cruze com outra linha e forme um canto, eu apenas conheço os pontos de imagem da linha, e não as coordenadas correspondentes "perfeitas / do mundo real" no modelo.
Existe alguma maneira de usar as linhas detectadas para calcular uma homografia, ou mesmo apenas um conjunto de homografias candidatas , mesmo que as linhas detectadas não se cruzem entre si e criem um canto?
Imagem de exemplo, mostrando a afinação, nosso campo de visão e os pontos da afinação onde eu posso conhecer as coordenadas correspondentes do mundo real / modelo (círculos verdes) e um exemplo de duas linhas que podem ser completamente inúteis, pois em nosso campo de visão , Não tenho idéia exatamente em que ponto eles começam ou param no mundo real / modelo correspondente do campo:
As linhas vermelhas são exemplos de linhas que eu gostaria de usar, mas não conheço as coordenadas do mundo real e é meio difícil calculá-las porque, dependendo da posição da câmera, os pontos correspondentes podem estar "em qualquer lugar".