2012-03-12 11 views
5

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!

Respuesta

Cuestiones relacionadas