合并两个矩阵,保留它们的元素值
Combining two matrices, preserving their element value
我在 C++
中使用 OpenCV
。我有两个单通道矩阵,一个的值为 0 or 2
,另一个的每个元素的值为 0 or 3
。我想将两者结合起来用作 grabCut
函数中的掩码。
我想合并它们,以便我的新组合矩阵包含 0、2 或 3(在适当的情况下)。我尝试了按位或运算,但似乎这只给我一个矩阵,其值 0 或 255 专门在 3 或 2 所在的位置。
combined = (greenMaskForGrabcut == 3) | (redMaskForGrabcut == 2);
如何保留每个元素的 3 个或 2 个值?谢谢
OpenCV 有一个专门针对数组的 bitwise_or 操作:
http://docs.opencv.org/modules/core/doc/operations_on_arrays.html
void bitwise_or(InputArray src1, InputArray src2, OutputArray dst, InputArray mask=noArray())
我在 C++
中使用 OpenCV
。我有两个单通道矩阵,一个的值为 0 or 2
,另一个的每个元素的值为 0 or 3
。我想将两者结合起来用作 grabCut
函数中的掩码。
我想合并它们,以便我的新组合矩阵包含 0、2 或 3(在适当的情况下)。我尝试了按位或运算,但似乎这只给我一个矩阵,其值 0 或 255 专门在 3 或 2 所在的位置。
combined = (greenMaskForGrabcut == 3) | (redMaskForGrabcut == 2);
如何保留每个元素的 3 个或 2 个值?谢谢
OpenCV 有一个专门针对数组的 bitwise_or 操作:
http://docs.opencv.org/modules/core/doc/operations_on_arrays.html
void bitwise_or(InputArray src1, InputArray src2, OutputArray dst, InputArray mask=noArray())