OpenCV自动给图片添加彩虹特效的实现示例
2021-11-27 04:06
615 查看
目录
- 背景介绍
- 实现步骤
- 【1】准备一张夏季风景图片,加载读取
- 【2】创建一张与原图同样大小的黑图,然后通过画椭圆函数绘制彩虹
- 【3】高斯模糊,让彩虹边缘更柔和过渡
- 【4】彩虹图像与风景图混合叠加(使用泊松融合效果更佳)
背景介绍
南方的冬季总是淅淅沥沥下着小雨,晴天渐渐成为奢望。此时,我多么希望感受一下夏季的温暖,哪怕是雨天,偶尔还会看到彩虹!想到这便动起手来,找找夏季的照片和视频,用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);
换几张图片测试:
到此这篇关于OpenCV自动给图片添加彩虹特效的实现示例的文章就介绍到这了,更多相关OpenCV自动给图片添加彩虹内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:相关文章推荐
- 【HTML5示例代码分享】HTML5图片自动归类特效
- JS特效实现图片自动播放并可控的效果
- JavaScript实现url地址自动检测并添加URL链接示例代码
- 学习opencv之添加滚动条到视频中,并实现滚动条随着视频播放自动移动
- Java实现给图片添加图片水印,文字水印及马赛克的方法示例
- Android实现动态向Gallery中添加图片及倒影与3D效果示例
- javacpp-opencv图像处理之1:实时视频添加文字水印并截取视频图像保存成图片,实现文字水印的字体、位置、大小、粗度、翻转、平滑等操作
- 用roll.js实现的图片自动滚动+鼠标触动的特效
- jquery实现图片左右间隔滚动特效(可自动播放)
- css实现div自动添加滚动条(图片或文字等超出时显示)
- JS特效实现图片自动播放并可控的效果
- 【HTML5示例代码分享】HTML5图片自动归类特效
- javacpp-opencv图像处理之2:实时视频添加图片水印,实现不同大小图片叠加,图像透明度控制,文字和图片双水印
- javacpp-opencv图像处理之1:实时视频添加文字水印并截取视频图像保存成图片,实现文字水印的字体、位置、大小、粗度、翻转、平滑等操作
- 用roll.js实现的图片自动滚动+鼠标触动的特效
- Python实现自动添加脚本头信息的示例代码
- Jquery实现图片左右自动滚动示例
- Android开发之ViewFlipper自动播放图片功能实现方法示例
- 小波图像融合的Matlab实现示例(添加图片演示080428)
- OpenCV实现给图片添加边框功能