我的matlab代码是

imTemp(imTemp ~= maxInd) = 0;

其中imTemp是100x100双矩阵且maxInd == 1

我考虑过使用cv :: threshold http://docs.opencv.org/doc/tutorials/imgproc/threshold/threshold.html

但这并不能真正帮助我。
只有当src(x,y)> thresh ....做点什么
您能想到另一个可以实现此逻辑的openCV函数吗?

#1楼 票数:1 已采纳

您可以尝试compare ,它可以使用CMP_EQ检查矩阵和标量(或另一个矩阵)之间的CMP_EQ

不幸的是, compare具有令人讨厌的功能,即满足比较运算符的值设置为255而不是1或原始值,因此必须进行除法以获得Matlab行为。

Mat imTemp = (Mat_<double>(3,3) << 9,7,4,4,9,6,2,0,1);
double maxInd = 9;
cout << "imTemp Original:" << endl;
cout << imTemp << endl;

compare(imTemp, Scalar(maxInd), imTemp, CMP_EQ);
imTemp = imTemp*maxInd/255;

cout << "imTemp Compared:" << endl;
cout << imTemp << endl;

输出:

imTemp Original:
[9, 7, 4;
  4, 9, 6;
  2, 0, 1]
imTemp Compared:
[9, 0, 0;
  0, 9, 0;
  0, 0, 0]

您还可以直接使用比较运算符来获得相同的结果(具有相同的255行为):

Mat imTemp = (imTemp == maxInd)*maxInd/255;

  ask by Gilad translate from so

未解决问题?本站智能推荐:

1回复

OpenCV:阈值和反转图像

我正在尝试使用Cinder OpenCV块对图像进行阈值处理和反转。 在openFrameworks中,我将使用类似的方法: ...其中true是要指定为阈值和反转的参数。 在Cinder中,我尝试以下操作: ...不起作用,或者 ...会产生错误并导致程序卡住。
1回复

带掩码的OpenCV阈值

我正在尝试使用OpenCV的cv::threshold函数(更具体的是THRESH_OTSU ),只是我想使用遮罩(任何形状)来做,以便在计算过程中忽略外部(背景)。 图像为单通道(必须如此),红色波纹管仅用​​于标记图像上的示例多边形。 我尝试使用adaptiveThreshold
1回复

OpenCV Haar分类器阈值

我试图理解oepncv XML haar分类器,它看起来像这样: 如原始论文中所述,应将阈值与特征(积分图像)的总和进行比较。 但是,图像的像素值应为0 - 255(灰度图像)。 一个特征的总和怎么可能那么小(例如在这个特征中,阈值是0.004014 ......)? 你们能给我一
1回复

如何在OpenCV中对图像进行阈值处理?

我在OpenCV中有一个表示掩码的二进制图像。 该蒙版具有一定程度的几何噪声,我想对其进行平滑处理,因此,为此效果我使用了模糊处理。 现在我有一个灰度图像。 我想将所有像素都超过特定阈值,并使其变为白色,而所有其他像素必须变为黑色。 在opencv中有一种简单的方法吗?
2回复

OpenCV =运算符

我正在研究OpenCV,我有一个困惑。 我经历了这个链接 ,我不太了解OpenCV中'='运算符的概念。 假设我声明3个矩阵如下: 如果我从相机捕获的图像中获得矩阵gray并将其分配给img1 ,如下所述,实际发生了什么? gray数据是否被复制到img1或者数据是否在它们之间
1回复

C ++ OpenCV自定义阈值

我需要为图像设置一个自定义阈值,其中像素的值小于thr,我需要保留原始值,但是如果像素大于thr,则它应该与thr的值相同。 我在opencv中检查了阈值方法,但它使我反感,我不想要这个,我需要与上面解释的相同。 提前致谢。!
1回复

OpenCV OTSU阈值删除文本

当我对此图像进行OTSU阈值处理时,无论光照条件如何,每次都会侵蚀掉相同的文字。 这是我调用方法的方式: 提供此图片时: 我得到这张图片: 如您所见,底部的文本删除了底部的部分文本,并且始终删除了部分文本。 如何避免这种情况发生?
2回复

OpenCV - SURF Hessian最小阈值

我正在开发一个OpenCV项目,使用surf来检测图像中的特征。 以这种方式初始化检测器 有人能解释一下hessian阈值的含义(以数学和实践的方式)吗?