OpenCV靜心修煉總結篇5——影象混合
阿新 • • 發佈:2018-11-17
線性混合操作—理論
OpenCV api函式
addWeightted ( 引數1:輸入影象1; 引數2:輸入影象1的alpha值;
引數3:輸入影象2; 引數4:輸入影象2的alpha值;
引數4:gamma的值(校驗值); 引數6:輸出的混合影象;
)
主:兩張圖片的大小和型別一致。
Saturate(t) :確保t 在0-255之間。
參考程式碼:
// 兩張同大小型別的圖片混合
int image_blend()
{
Mat src1,src2,dst;
src1 = imread("1.png");
src2 =imread("2.png");
if(src1.empty())
{
printf("不能載入影象1.png\r\n");
return -1;
}
if(src2.empty())
{
printf("不能載入影象2.png\r\n");
return -1;
}
double alpha = 0.5;
if(src1.rows == src2.rows && src1.cols == src2.cols && src1.type() == src2.type())
{
addWeighted(src1,alpha,src2,1-alpha,0.0,dst);
imshow("src1 image",src1);
imshow("src2 image",src2);
imshow("blend image",dst);
}
else
{
printf("兩張圖片大大小尺寸不一致\r\n");
}
waitKey(0);
}