1
resposta

Reconhecer retângulos

Olá boa tarde,

Estou tentar achar um placa aplicando os contornos, mas como minha imagem é falhada na parte de baixo da placa os pontos de aproximação ficam em 9, eu não consigo sair disso, estou quebrando a cabeça mas estou empacado.. não consigo fazer a leitura da placa, alguem pode me ajudar?

Codigo

Quando eu mudo o len(aprox) == 9 ele localiza o retângulo Imagem do carro

Porem não posso deixar 9, pois por padrão seria 4, não sei como avançar com isso.

Imagem original:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Olá, Lucas, tudo bem?

Quando você utiliza len(aprox) == 9, está permitindo que contornos com mais pontos sejam considerados, mas o ideal é que a aproximação resulte em 4 pontos para formar um retângulo.

O que eu sugiro é que faça ajustes nos parâmetros do approxPolyDP, você pode tentar modificar o fator multiplicador do perímetro (atualmente 0.04) para ver se consegue uma aproximação melhor. Valores menores podem resultar em mais pontos, enquanto valores maiores podem simplificar o contorno. Portanto, teste outros valores, como 0.02:

aprox = cv2.approxPolyDP(contorno, 0.02 * perimetro, closed=True)

Espero que isso ajude a solucionar o problema!

Qualquer dúvida, não hesite em compartilhar no fórum.

Abraços!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado