我是图像处理和 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
或 THRESH_BINARY_INV
作为类型时使用。
您要使用的类型是 cv::THRESH_TOZERO
。这会使所有值都高于您的阈值,并将所有其他值设置为零。
请记住,最好始终使用此参数的“名称”而不是它们的整数表示。如果您在几周内通读了代码,cv::THRESH_TOZERO
会提供您需要的所有内容,其中 3
只是一个数字。
我是一名优秀的程序员,十分优秀!