lunes, 4 de marzo de 2013

Tarea 4 - Detección de Circulos

Para esta tarea se encargo detectar círculos , utilizando un proceso similar al de las tarea anteriores

donde se detectaban lineas , pero en esta ocasión se calculara un posible centro para cada punto.

Para identificar el centro con dos ecuaciones  :

a= x-radioCosθ
b=y-radioSinθ

Se calcula el angulo y se toma ese punto suponiendo que es parte del círculo y se calcula un supuesto centro y  después se hace un calculo para ver que punto en la imagen es el que tiene mas frecuencias y de ahí se identifica el centro del círculo.

El centro del círculo  que se corresponde con el centro de la circunferencia, del cual equidistan todos los puntos de esta.

Se cálculo el gradiente para cada punto , con los gradientes "X" "Y"  como en las tareas pasadas y se aplica posteriormente estas dos formulas que dejo aquí abajo.
Este gradiente para cada punto se hace de esta manera :



Ya después  se aplican estas dos formulas:

Cosθ = gx/GradienteCalculada
Sinθ = gy/GradienteCalculada

Y después se aplican las dos formulas mencionadas arriba para calcular el posible centro para cada pixel:


a= x-radioCosθ
b=y-radioSinθ

Este fue el circuló utilizado para las pruebas 


  Aquí esta  el código:

 
El programa no logre terminarlo .



1 comentario:

  1. Cero es un mal umbral para determinar quiénes sí son borde en casi cualquier situación; falta la aglomeración de votos. No dibujas nada... 1 pt por este avance parcial.

    ResponderEliminar