我基本上想知道使用C++在matlab中将以下代码等效于opencv

MascMmax = s3> Mmax

这将比较两个矩阵的所有位置,否则将满足条件1和0。

在opencv中,我发现可以,但是我保存了255、0。我不知道我该如何处理1和0。

例:

a [1,2,3]
b [2,1,4]

c = a > b

c[0,1,0]

最佳答案

当然,函数 compare() 对两个数组或数组和标量值执行每个元素的比较。

您可以进行以下比较:

  • CMP_EQ src1等于src2
  • CMP_GT src1大于src2
  • CMP_GE src1大于或等于src2
  • CMP_LT src1小于src2
  • CMP_LE src1小于或等于src2
  • CMP_NE src1不等于src2

  • 当比较结果为true时,输出数组的相应元素设置为255。比较操作可以替换为等效的矩阵表达式:
    Mat dst1 = src1 >= src2;
    Mat dst2 = src1 < 8;
    

    10-06 07:13