cv2.distanceTransform()

cv2.distanceTransform()

计算源图像的每个像素到最临近零像素的距离

dst = cv2.distanceTransform(src,distanceType,makeSize[,dst[,dstType]])

参数

  • src:8位、单通道(二进制)源图像
  • DST:输出具有计算距离的图像。它是一个8位或32位浮点单通道图像,大小与src相同
  • distanceType:距离类型
类型 描述
cv2.DIST_USER 用户自定义距离
cv2.DIST_L1 distance=\ x1-x2\ +\ y1-y2\
cv2.DIST_L2 简单的欧几里德距离
cv2.DIST_C distance=max(\ x1-x2\ ,\ y1-y2\ )
cv2.DIST_L12 distance=2(sqrt(1+x*X/2)-1))
cv2.DIST_FAIR distance=c^2(\ x\ /c-log(1+\ x\ /c)),c=1.3998
cv2.DIST_WELSCH distance=c\^2/2(1-exp(-(x/c)^2)),c=2.
cv2.DIST_HUBER distance=\ x\ <c?x^2/2:c(\ x\ -c/2),c=1.345
  • makeSize:距离变换蒙版的大小。在cv2.DIST_L1或cv2.DIST_C距离类型的情况下,参数被强制为3。

参考网址:

https://docs.opencv.org/3.4.3/d7/d1b/group__imgproc__misc.html#ga8a0b7fdfcb7a13dde018988ba3a43042

Donate comment here