0

我曾经在 opencv 代码中遇到过这个表达式:

Mat bimage = image >= sliderPos;

已知sliderPos是一个整数。

请问这是什么意思。

提前致谢

加法:当然类型imagecv::Mat

4

2 回答 2

3

不知道 的类型很难判断image,但根据 OpenCV 文档,我认为这条线转换image为黑白图像,sliderPos用作确定哪些像素将是黑色的阈值。

关于矩阵的 OpenCV 文档

比较:A cmpop B、A cmpop alpha、alpha cmpop A,其中 cmpop 是以下之一:>、>=、==、!=、<=、<。比较的结果是一个 8 位单通道掩码,其元素设置为 255(如果特定元素或元素对满足条件)或 0。

于 2013-04-16T09:27:50.180 回答
1

表达方式

Mat bimage = image >= sliderPos;

测试是否image大于或等于sliderPos(通常产生 a bool)并将测试结果分配给新创建bimage的类型变量Mat

如果>=运算符重载 for (decltype(image), int),它可能不会产生bool. 如果是这种情况,请查看类型的文档以image获取详细信息。在任何情况下,它都会产生一些东西,从中Mat可以构造 a 。

于 2013-04-16T09:20:46.607 回答