由于距离变换有很多不同的算法(参见例如here),我很难理解scipy的distance_transform_edt和distance_transform_bf是如何工作的。有没有可用的详细说明?
答案 0 :(得分:0)
通过来源......
distance_transform_edt
以code结尾,以下有用的评论开头:
/* Exact euclidean feature transform, as described in: C. R. Maurer,
Jr., R. Qi, V. Raghavan, "A linear time algorithm for computing
exact euclidean distance transforms of binary images in arbitrary
dimensions. IEEE Trans." PAMI 25, 265-270, 2003. */
int NI_EuclideanFeatureTransform(PyArrayObject* input,
PyArrayObject *sampling_arr,
PyArrayObject* features)
而 distance_transform_bf
最终会出现在function,这看起来像是一场蛮力计算。但是这里的算法也在主要文档中以及在基本搜索中出现的其他地方中得到了很好的描述。