距离变换
计算源图像的每个像素到最近零像素的距离
函数 cv::distanceTransform 计算从每个二值图像像素到最近的零像素的近似或精确距离。对于零图像像素,距离显然为零。
当 maskSize == DIST_MASK_PRECISE 和 distanceType == DIST_L2 时,函数运行 [73] 中描述的算法。该算法与 TBB 库并行化。
在其他情况下,使用算法 [29]。这意味着对于一个像素,该函数会找到到最近的零像素的最短路径,该路径由基本移位组成:水平、垂直、对角线或骑士移动(最新可用于 5×5 掩码)。总距离计算为这些基本距离的总和。由于距离函数应该是对称的,所有水平和垂直移动必须具有相同的成本(表示为 a ),所有对角线移动必须具有相同的成本(表示为 b),并且所有骑士的移动必须具有相同的