En numpy tengo una matriz 2d de 1s y 0s. Necesito calcular una nueva matriz (mismas dimensiones) donde cada elemento contiene la distancia al 1 más cercano desde el punto correspondiente en la matriz de máscara.Cómo calcular eficientemente la distancia al más cercano 1 en máscara en numpy?
p. Ej.
a=np.array(
[[1,1,0],
[1,0,0],
[1,0,0]])
necesito b para tener este aspecto:
array([[0,0,1],
[0,1,1.41],
[0,1,2]])
PS. Haré esto en arreglos muy grandes, ¡mientras más eficiente, mejor! Gracias!
Genial, gracias! Eso funciona bien Para completar, el código que funcionaba era b = scipy.ndimage.morphology.distance_transform_edt (1-a) –