Para realizar la detección de línea se tomo como base la tarea para la detección de bordes, en donde se obtenía los gradientes en el eje x y y. Usando la función obtenemos theta y teniendo theta podemos resolver , dichos valores obtenidos por cada punto(x, y) se guardan en un diccionario y por cada vez que ocurre theta y rho se le agrega un contador para determinar cuales tienen lineas continuas, cuando tienen un gran voto significa que existe una línea continua. Para demostrarlo primero mostraré algunas imagenes en donde se detectan las líneas con su muestra original.
Imagen original.
Imagen con filtro de detección de líneas.
Imagen original
En este ejemplo tengo algunos errores pero puede detectar algunas líneas horizontales. Imagen filtrada.
Imagen original
En este ejemplo tuve problemas ya que el fondo lo tomaba como dominante y cambiaba el color a rojo, claro esta que esto puede ser alterado manualmente pero la solución que se busca es tratar de evitar eso. Imagen filtrada.
Imagen original.
Imagen filtrada.
Código:
Suscribirse a:
Enviar comentarios (Atom)
Haz lo de detección de líneas únicamente para pixeles de borde. Sale más limpio. 3 pts.
ResponderEliminar