jueves, 2 de mayo de 2013

Polígonos


Para esta tarea se nos pide detectar polígonos por medio del método detección de lineas rectas.

Lo que realicé y no está terminado es:
  1. Cambiar a grises
  2. Sacar convolución Laplaciana para sacar bordes
  3. Normalizo la imagen
  4. Binarizo los datos
  5. Sacamos el promedio
  6. Se agrega un umbral
  7. Agregamos BFS para detectar todos los bordes 
  8. Los pintamos de diferentes colores
  9. Sacamos mascara de sobel en X
  10. Sacamos mascara de sobel en Y
  11. Detectamos la pendiente de cada pixel
  12. Calculamos su theta (pendiente) 
  13. Ordenamos valores calculados según su pendiente.
  14. Checamos el cambio de cada theta para detectar los lados
  15. Pintamos cada lado de diferente color.
Les muestro unas capturas de pantalla del procedimiento:







Existe mucho ruido en la imagen y no pude detectar cada lado de los polígonos, por ejemplo en la primera imagen obtuve estos lados.

Donde si tengo 5 figuras, pero los lados no concuerdan.

Código relevante





Eso es lo que tengo :(

1 comentario:

  1. Ponerle bordes negros en todo produce bastante ruido. Por lo general prueba primero con una sola figura. Cuando sale eso, agregas otros. Tienes los lados, pero no están limpios. Falta lo de traslados para votar por el centro con el método que se solicitó para esta actividad. Van 6 pts.

    ResponderEliminar