Кто-нибудь знает о замене Python для функции Matlab / Octave bwdist ()? Эта функция возвращает евклидово расстояние каждой ячейки до ближайшей ненулевой ячейки для данной матрицы. Я видел реализацию Octave C, чистую реализацию Matlab, и мне было интересно, нужно ли кому-нибудь реализовать это в ANSI C (который не включает никаких заголовков Matlab / Octave, поэтому я могу легко интегрироваться с Python) или в чистом Python.
Обе ссылки, которые я упомянул, приведены ниже:
В качестве теста код / вывод Matlab выглядит примерно так: from scipy import ndimage
a = np.array(([0,1,0,0,0],
[1,0,0,0,0],
[0,0,0,0,1],
[0,0,0,0,0],
[0,0,1,0,0]))
res = ndimage.distance_transform_edt(a)
print res
[[ 0. 1. 0. 0. 0.]
[ 1. 0. 0. 0. 0.]
[ 0. 0. 0. 0. 1.]
[ 0. 0. 0. 0. 0.]
[ 0. 0. 1. 0. 0.]]
Этот результат, похоже, не соответствует выходным данным Octave / Matlab.