我从python中的opencv开始,我有一个关于如何将mask应用于的问题
bitwise_and(src1, src2, mask=mask)
以下哪项描述了实现:

  • A.全部按位,先屏蔽
  • src1与掩码
  • 进行“与”操作
  • src2与掩码
  • 进行“与”运算
  • 将src1和src2剩下的内容相加在一起
  • B.全部按位,图像优先
  • src1与src2并与
  • 结果与掩码
  • 进行“与”运算
  • C.有条件AND

    通过(例如循环)
  • “迭代”了
  • 掩码
    掩码中每个像素的
  • ,如果非零,则对src1,src2中的相应像素进行“与”运算并复制到输出

  • 我认为每种产品的性能特征可能会略有不同。

    实际的实现是哪一个(或其他方式)? (以及为什么,如果我可能要问的话)

    我试图查看源代码,但无法完全弄清它们的作用:
    https://github.com/opencv/opencv/blob/ca0b6fbb952899a1c7de91b909d3acd8e682cedf/modules/core/src/arithm.cpp

    最佳答案

    如果您查看文档,则第3个参数是您错过的目标图像。

    仅当蒙版表示此操作时,此操作才会更改目标图像的值(在这种情况下,它将按位执行两个源图像的操作)。对于不在蒙版中的像素,目标将包含与之前相同的值。

    关于c++ - 在OpenCV中是按位掩码和操作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42920810/

    10-11 22:57
    查看更多