2013-11-04 61 views
1

我是圖像處理和opencv中的新成員。我需要對我的灰度圖像進行閾值設置。該圖像包含1350 0之間的所有價值,我想保留這些都是值超過100多,我發現在OpenCV的這個功能:opencv/C++中的正確​​閾值函數

cv::threshold(Src1, Last, 100, max_BINARY_value,3); 

我不知道我應該在max_BINARY_value部分和ASLO寫我不知道最後一項是否正確選擇。

在此先感謝。

+0

哪個閾值模式的值爲3? THRESH_ZERO? –

回答

1

要使用cv::threshold您使用

C++: double threshold(InputArray src, OutputArray dst, double thresh, double maxval, int type) 

您選擇您Src1Last和您的閾值100正確。 maxval僅在使用THRESH_BINARYTHRESH_BINARY_INV作爲類型時使用。

你想使用的是cv::THRESH_TOZERO作爲類型。這將保持所有值高於您的閾值,並將所有其他值設置爲零。

請記住,最好使用此參數的「名稱」而不是它們的整數表示。如果你在幾周內通讀了你的代碼cv::THRESH_TOZERO說明你需要的一切,那麼3只是一個數字。

+0

感謝您的答案和好點。我將嘗試使用宏而不是僅使用數字。 再次感謝:) – user2758510