我是图像处理和opencv的新手。我需要对灰度图像进行阈值处理。该图像包含0到1350之间的所有值,我想保留所有大于100的值。我在opencv中找到了这个函数:
cv::threshold( Src1, Last, 100, max_BINARY_value,3);
我不知道我应该在 max_BINARY_value 部分写什么,而且我不知道最后一项是否正确选择。
提前致谢。
我是图像处理和opencv的新手。我需要对灰度图像进行阈值处理。该图像包含0到1350之间的所有值,我想保留所有大于100的值。我在opencv中找到了这个函数:
cv::threshold( Src1, Last, 100, max_BINARY_value,3);
我不知道我应该在 max_BINARY_value 部分写什么,而且我不知道最后一项是否正确选择。
提前致谢。
要使用cv::threshold你使用
C++: double threshold(InputArray src, OutputArray dst, double thresh, double maxval, int type)
您正确选择了Src1
,Last
和阈值100
。
maxval
仅当您使用THRESH_BINARY
orTHRESH_BINARY_INV
作为类型时才使用。
您要使用的是cv::THRESH_TOZERO
类型。Ths 将所有值保持在阈值之上,并将所有其他值设置为零。
请记住,最好使用此参数的“名称”而不是整数表示。如果您在几周内通读您的代码,cv::THRESH_TOZERO
说明您需要的所有内容,其中3
只有一个数字。