在Matlab中,a(a>50)=0可以将大于50的a的所有元素替换为0。我想对OpenCV中的Mat做同样的事情。怎么做?

最佳答案

您想要的是使用cv::threshold截断图像。

以下应满足您的要求:

cv::threshold(dst, dst, 50, 0, CV_THRESH_TOZERO_INV);

这是功能定义
double threshold(InputArray src, OutputArray dst, double thresh, double maxval, int type)

http://docs.opencv.org/modules/imgproc/doc/miscellaneous_transformations.html?highlight=threshold#threshold

关于matlab - 如何根据opencv中的某些条件修改Mat的值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27965479/

10-11 16:16