Estoy tratando de escribir un algoritmo de detección de cresta, y todas las fuentes que he encontrado parecen confundir la detección de bordes con la detección de cresta. En este momento, he implementado el algoritmo de detección de bordes Canny, pero no es lo que quiero: por ejemplo, dada una sola línea en la imagen, se traducirá efectivamente a una línea doble de bordes (ya que registrará ambos lados de la línea) - Solo quiero que lea la línea.Implementación de detección de cresta
wikipedia article sobre la detección de cresta tiene un montón de matemáticas, pero este tipo de esto no me ayuda como programador (no es que sea contrario a las matemáticas, pero no es mi campo, y no entiendo cómo traducir sus ecuaciones diferenciales en código). ¿Hay una buena fuente para realmente implementar esto? O, para el caso, ¿hay una buena implementación de código abierto?
Editar: aquí está el ejemplo simple. Comenzamos con una línea sencilla:
http://img24.imageshack.us/img24/8112/linez.th.png
y ejecutar el Canny Algoritmo para obtener:
http://img12.imageshack.us/img12/1317/canny.th.png
(se puede ver que es más gruesa aquí - si hace clic en la imagen, se dará cuenta de que lo que realmente es de dos líneas adyacentes con un espacio en blanco en el medio)
Además, estoy writin g en C++, pero eso no debería importar. Pero quiero codificar el algoritmo , no solo escribir SomePackage::findRidges()
y terminarlo.
¿en qué idioma está escribiendo? Matlab tiene funciones que manejan precisamente eso. Me sorprendería si R no tiene eso también. –
C++, ¡pero estoy buscando el algoritmo! –
Creo que tienes un problema de umbral, en lugar de un problema para encontrar cresta. –