我想将黑色面具的颜色改为任何不同的颜色。
这是我的面具
这是我的原始图片
我知道如果我使用这个功能
src.copyTo(dst, mask);
它允许我正确使用蒙版并得到像这样的结果
然而,每当我将面具颜色更改为非黑色时,它都不会对dst
Mat做任何事情。
有没有办法使用带有黑色遮罩的面具?
我不想使用循环功能,因为我知道它会花费我很多处理时间。
由于
答案 0 :(得分:2)
我不编写Java,但您可以尝试使用C ++:
// assume that origin image has 3 channels
cv::Scalar myColor(255,0,255);
// create dst with background color of your choice
cv::Mat dst(src.size(),src.type(),myColor);
// now copy
src.copyTo(dst, mask);
结果:
答案 1 :(得分:0)
您要寻找的是在面具和原始图像上执行的bitwise_and
operation。如果我理解正确,没有理由改变面具的颜色。