C++ OpenCV线性混合操作
Posted 微卡智享
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ OpenCV线性混合操作相关的知识,希望对你有一定的参考价值。
线性混合操作
即可以把两张图像混合成一张图像的操作.
图像线性混合的数学原理
G(x)=(1-a)F(x)+aQ(x)
注意事项:
1,a的取值范围为0到1之间
2,F(x)和Q(x)为参与混合的两幅图像,G(x)表示输出图像
3,通过对两幅图像的每个像素值做线性加权得到最终的输出图像
4,两幅图像的大小和类型必须完全一致,如果把图像当成一个矩阵
则两个矩阵相加的前提是维度必须一致,否则没有相加的意义。
addWeighted函数
在OpenCV中用于线性混合操作的API为addWeighted函数
void
addWeighted(InputArray src1,
double
alpha, InputArray src2,
double
beta,
double
gamma, OutputArray dst,
int
dtype=-1);
以上是关于C++ OpenCV线性混合操作的主要内容,如果未能解决你的问题,请参考以下文章
opencv4opencv视频教程 C++ 7手动调整图像亮度与对比度 g(i, j) = αf(i, j) + β(点操作与邻域操作概念)