线性混合操作是中二元的像素操作,公式如下:
在实现时可以用OpenCV中的addWeighted()函数,函数原型如下:
void(InputArray src1,double alpha,InputArrary src2,double beta,double gamma,outputArray dst,int dtype=-1);
参数1:InputArray类型的src1,表示要加权的第一个数组,常常填一个Mat。
参数2:double类型的alpha,表示第一个数组的权重。
参数3:InputArray类型的src2,表示第二个数组,需要和第一个数组有相同的尺寸和通道数。
参数4:double类型的beta,表示第二个数组的权重。
参数5:double类型的gamma,一个加到权重总和上的标量值。
参数6:outputArray类型的dst,输出数组,和输入的两个数组有一样的尺寸和通道数。
参数7:int类型的dtype,输出阵列的可选深度,有默认值-1,当两个输入数组具有相同的深度时,这个参数设置为-1。
dst=src1[I]*alpha+src[I]*beta +gamma;
其中I是多维数组元素的索引值