0
点赞
收藏
分享

微信扫一扫

【Opencv实战】寒冷的冬季,也会迎来漫天彩虹,这特效你爱了嘛?

前言

正文

南方的冬季总是淅淅沥沥下着小雨,晴天渐渐成为奢望。(冻的瑟瑟发抖.jpg)

此时,我多么希望感受一下夏季的温暖,哪怕是雨天,偶尔还会看到彩虹!想到这便动起手来,找

找夏季的照片和视频,用OpenCV给它们加上漫天彩虹。

 

实现步骤——

1)准备一张夏季风景图片,加载读取。


Mat src = imread("summer.jpg");

 2)创建一张与原图同样大小的黑图,然后通过画椭圆函数绘制彩虹。


Mat dst;
int row = srcImg.rows;
int col = srcImg.cols;
Mat img(row, col, CV_8UC3, Scalar::all(0));
  
ellipse(img, Point(col/2, row*4/5), Size(col/2+100, row*4/5), 180, 0, 180, Scalar(255,0,128), 5);
ellipse(img, Point(col/2,row*4/5), Size(col/2-8+100,row*4/5-8), 180, 0, 180, Scalar(255,0,0), 5);
ellipse(img, Point(col/2,row*4/5), Size(col/2-8*2+100,row*4/5-8*2), 180, 0, 180, Scalar(255,255,0), 5);
ellipse(img, Point(col/2,row*4/5), Size(col/2-8*3+100,row*4/5-8*3), 180, 0, 180, Scalar(0,255,0), 5);
ellipse(img, Point(col/2,row*4/5), Size(col/2-8*4+100,row*4/5-8*4), 180, 0, 180, Scalar(0,255,255), 5);
ellipse(img, Point(col/2,row*4/5), Size(col/2-8*5+100,row*4/5-8*5), 180, 0, 180, Scalar(0,128,255), 5);
ellipse(img, Point(col/2,row*4/5), Size(col/2-8*6+100,row*4/5-8*6), 180, 0, 180, Scalar(0,0,255), 5);

 3)高斯模糊,让彩虹边缘更柔和过渡。

GaussianBlur(img, img, Size(7, 7), 0, 0);

4) 彩虹图像与风景图混合叠加(使用泊松融合效果更佳)。

addWeighted(srcImg, 1.0, img, 0.2, 0, dst);

换几张图片测试: 

 

 

 

 总结

嘻嘻,这些彩虹🌈好看嘛~视频测试就交给大家了 喜欢的咋我拿源码啦

关注小编获取更多精彩内容!记得点击传送门哈👇

记得三连哦! 如需打包好的源码+素材免费分享滴!传送门

 

举报

相关推荐

0 条评论