我曾经在 opencv 代码中遇到过这个表达式:
Mat bimage = image >= sliderPos;
已知sliderPos
是一个整数。
请问这是什么意思。
提前致谢
加法:当然类型image
是cv::Mat
不知道 的类型很难判断image
,但根据 OpenCV 文档,我认为这条线转换image
为黑白图像,sliderPos
用作确定哪些像素将是黑色的阈值。
比较:A cmpop B、A cmpop alpha、alpha cmpop A,其中 cmpop 是以下之一:>、>=、==、!=、<=、<。比较的结果是一个 8 位单通道掩码,其元素设置为 255(如果特定元素或元素对满足条件)或 0。
表达方式
Mat bimage = image >= sliderPos;
测试是否image
大于或等于sliderPos
(通常产生 a bool
)并将测试结果分配给新创建bimage
的类型变量Mat
。
如果>=
运算符重载 for (decltype(image), int)
,它可能不会产生bool
. 如果是这种情况,请查看类型的文档以image
获取详细信息。在任何情况下,它都会产生一些东西,从中Mat
可以构造 a 。