OpenCV學習三十五:distanceTransform 距離變換函式
阿新 • • 發佈:2018-12-14
1. API
該函式有兩個初始化API
C++: void distanceTransform(InputArray src, OutputArray dst, int distanceType, int maskSize)
C++: void distanceTransform(
InputArray src,
OutputArray dst,
OutputArray labels,
int distanceType,
int maskSize,
int labelType=DIST_LABEL_CCOMP )
2. 引數說明
- src – 8-bit, 單通道(二值化)輸入圖片。
- dst – 輸出結果中包含計算的距離,這是一個32-bit float 單通道的Mat型別陣列,大小與輸入圖片相同。
- src – 8-bit, 單通道(二值化)輸入圖片。
- dst – 輸出結果中包含計算的距離,這是一個32-bit float 單通道的Mat型別陣列,大小與輸入圖片相同。
- distanceType – 計算距離的型別那個,可以是 CV_DIST_L1、CV_DIST_L2 、CV_DIST_C。
- maskSize – 距離變換掩碼矩陣的大小,可以是
- 3(CV_DIST_L1、 CV_DIST_L2 、CV_DIST_C)
- 5(CV_DIST_L2 )
- CV_DIST_MASK_PRECISE (這個只能在4引數的API中使用)
- labels – 可選的2D標籤輸出(離散 Voronoi 圖),型別為 CV_32SC1 大小同輸入圖片。
- labelType – 輸出標籤的型別,這裡有些兩種。
- labelType==DIST_LABEL_CCOMP 將周圍較近的白色畫素點作為一個整體計算其到黑色邊緣的距離
- labelType==DIST_LABEL_PIXEL 單獨計算每個白色畫素點到其黑色邊緣的距離.