Threshold函式詳解

2021-08-15 16:00:56 字數 1088 閱讀 3839

threshold 方法是通過遍歷灰度圖中點,將影象資訊二值化,處理過後的只有二種色值。

其函式原型如下:

double threshold(inputarray src, outputarray dst, double thresh, double maxval, int type)

引數資訊:

第乙個引數,inputarray型別的

src,輸入陣列,填單通道 

, 8或

32位浮點型別的

mat即可。

第二個引數,outputarray型別的

dst,函式呼叫後的運算結果存在這裡,即這個引數用於存放輸出結果,且和第乙個引數中的

mat變數有一樣的尺寸和型別。

第三個引數,double型別的

thresh

,閾值的具體值。

第四個引數,double型別的

maxval

,當第五個引數閾值型別

type

取 thresh_binary 

或thresh_binary_inv

閾值型別時的最大值

.第五個引數,int型別的

type

,閾值型別,。

其它引數很好理解,我們來看看第五個引數,第五引數有以下幾種型別

0: thresh_binary  當前點值大於閾值時,取

maxval,

也就是第四個引數,下面再不說明,否則設定為

01: thresh_binary_inv 當前點值大於閾值時,設定為

0,否則設定為

maxval

2: thresh_trunc 當前點值大於閾值時,設定為閾值,否則不改變

3: thresh_tozero 當前點值大於閾值時,不改變,否則設定為

04: thresh_tozero_inv  當前點值大於閾值時,設定為

0,否則不改變

官方解釋如下圖:

下面是簡單應用例項**片段

int ny20_thresh=96;

int ny20_maxthesh=255;

void _ony20thresh(int,void*)

效果如下:

opencv學習之threshold函式

在opencv中,threshold用來進行對影象 二維陣列 的二值化閾值處理 其函式原型如下 1.c版本的 函式原型 void cvthreshold const cvarr src,cvarr dst,double threshold,double max value,int threshold...

OpenCV閾值函式threshold函式的使用

注 應用於對每個陣列乙個固定閾值的。函式適用於多通道陣列的固定閾值,函式典型用於乙個灰度影象輸出的二進位制影象 compare 函式也能達到這個目的 或者是為了消除雜訊,由此過濾出太小的或者太大的畫素。此函式提供了幾種閾值型別,他們由引數type來決定。特殊值thresh otsu 大津法 或thr...

OpenCV二值化函式Threshold

url 研究下對影象二值化的理解 threshold 對陣列元素進行固定閾值操作 void cvthreshold const cvarr src,cvarr dst,double threshold,double max value,int threshold type src 原始陣列 單通道 ...