1

我是图像处理和opencv的新手。我需要对灰度图像进行阈值处理。该图像包含0到1350之间的所有值,我想保留所有大于100的值。我在opencv中找到了这个函数:

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

我不知道我应该在 max_BINARY_value 部分写什么,而且我不知道最后一项是否正确选择。

提前致谢。

4

1 回答 1

1

要使用cv::threshold你使用

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

您正确选择了Src1,Last和阈值100maxval仅当您使用THRESH_BINARYorTHRESH_BINARY_INV作为类型时才使用。

您要使用的是cv::THRESH_TOZERO类型。Ths 将所有值保持在阈值之上,并将所有其他值设置为零。

请记住,最好使用此参数的“名称”而不是整数表示。如果您在几周内通读您的代码,cv::THRESH_TOZERO说明您需要的所有内容,其中3只有一个数字。

于 2013-11-04T07:23:18.240 回答