Opencv 使用open cv合并不同通道中的图像

Opencv 使用open cv合并不同通道中的图像,opencv,Opencv,我正在为一个项目使用opencv#,并尝试合并两个图像(一个是具有3个通道的图像,另一个是单通道图像)。我尝试使用methos Cv.ScaleAdd,但它无法合并具有不同通道的两个图像。我需要一些帮助。 提前感谢。您希望结果是灰度还是彩色?添加两个图像的最简单方法是为每个图像声明一个权重。一个是.4,另一个是.6。然后逐像素将一幅图像乘以.4,另一幅乘以.6,然后将它们相加得到一个新的像素值。如果希望最终结果为灰度,则从将3通道图像转换为灰度开始;如果希望最终结果为彩色,则从将灰度转换为彩色开

我正在为一个项目使用opencv#,并尝试合并两个图像(一个是具有3个通道的图像,另一个是单通道图像)。我尝试使用methos Cv.ScaleAdd,但它无法合并具有不同通道的两个图像。我需要一些帮助。
提前感谢。

您希望结果是灰度还是彩色?添加两个图像的最简单方法是为每个图像声明一个权重。一个是.4,另一个是.6。然后逐像素将一幅图像乘以.4,另一幅乘以.6,然后将它们相加得到一个新的像素值。如果希望最终结果为灰度,则从将3通道图像转换为灰度开始;如果希望最终结果为彩色,则从将灰度转换为彩色开始。将灰度转换为颜色实际上不会给它上色,它只会用三个通道表示灰色。你可以自己编写代码,否则我会怀疑函数调用

cv::cvtColor(input,output,CV_GRAY2BGR);
or
cv::cvtColor(input,output,CV_BGR2GRAY);

cv::scaleAdd 
我会成功的