5

He visto muchas explicaciones sobre en qué se basa el algoritmo, pero parece que no puedo encontrar ningún código real (pseudocódigo o en algún idioma) del eje medial que se transforma a sí mismo.¿Implementación real de la transformación del eje medial?

Para ciertas instancias (como polígonos con esquinas discretas), se puede simplificar en un triángulo delaunay, pero me preocupa más el caso de que tenga una burbuja (como un ser humano rastreado) y desee calcular su esqueleto

¿Cómo sería el pseudocódigo de este aspecto?

+0

Permítame darle la bienvenida a StackOverflow y recordarle tres cosas que solemos hacer aquí: 1) A medida que reciba ayuda, trate de darle también ** respondiendo preguntas ** en su área de experiencia 2) ['Lea las preguntas frecuentes' ] (http://tinyurl.com/2vycnvr) 3) Cuando vea buenas preguntas y respuestas, vote por ellas ['usando los triángulos grises'] (http://i.imgur.com/kygEP.png), ya que la credibilidad del sistema se basa en la reputación que obtienen los usuarios al compartir sus conocimientos. Recuerde también aceptar la respuesta que mejor resuelva su problema, en caso de haberlo, ['presionando el signo de la marca de verificación '] (http://i.imgur.com/uqJeW.png) –

Respuesta

5

Here que tienen el código de la pymorph library:

Se trata básicamente de:

def mmskelm(f, B=None, option="binary"): 
    from string import upper 
    from Numeric import asarray 
    if B is None: B = mmsecross() 
    assert mmisbinary(f),'Input binary image only' 
    option = upper(option) 
    k1,k2 = mmlimits(f) 
    y = mmgray(mmintersec(f, k1),'uint16') 
    iszero = asarray(y) 
    nb = mmsesum(B,0) 
    for r in range(1,65535): 
     ero = mmero(f, nb) 
     if mmisequal(ero, iszero): break 
     f1 = mmopenth(ero, B) 
     nb = mmsedil(nb, B) 
     y = mmunion(y, mmgray(f1,'uint16',r)) 
    if option == 'BINARY': 
     y = mmbinary(y) 
    return y 

Por supuesto que utiliza otro funciones del mismo paquete.

Un ejemplo de Mathematica

enter image description here

HTH!

Cuestiones relacionadas