python opencv把一张图片嵌入(叠加)到另一张图片上的实现代码


Posted in Python onJune 11, 2020

python opencv把一张图片嵌入(叠加)到另一张图片上

1、背景:

最近做了个烟火生成系统的界面设计,需要将烟雾图片嵌入到任意一张图片中,因此需要python opencv把一张图片嵌入(叠加)到另一张图片上的知识。(图中红框最终生成图片没有的,只是界面有这个功能)

2、代码

resized1[global_y0:height+global_y0, global_x0:weight+global_x0] = resized0

resized0是小图
resized1是大图,其他参数是左上点和右下点

3、效果图

python opencv把一张图片嵌入(叠加)到另一张图片上的实现代码

工程中部分代码

这个是截取我pyqt5中部分代码,具体实现,可以借鉴一下

resized1 = cv.imread('temp0.jpg')#读取最开始读入的图片
    #cv.imshow('resized1-0.jpg', resized1)
    #cv.waitKey(10)
    img = cv.imread('output.jpg')#读取生成的烟雾图

    resized0 = cv.resize(img, (weight, height), interpolation=cv.INTER_AREA)
    #cv.imshow('resized0.jpg', resized0)
    #cv.waitKey(10)

    #嵌入图片,resized1是原图,resized0是烟雾图片,中括号内为嵌入的坐标
    resized1[global_y0:height+global_y0, global_x0:weight+global_x0] = resized0
    #cv.imshow('resized1.jpg', resized1)
    cv.imwrite('temp1.jpg', resized1)
    resized2 = resized1 # 将最终生成的图片复制到全局变量中,在保存按钮中进行保存
    #cv.imwrite('resized2.jpg', resized2)
    global final_picture # 此处声明该图片为全局变量
    final_picture=resized2 #将最终生成的图片复制到全局变量中,在保存按钮中进行保存
    #cv.imwrite('final_picture0.jpg', final_picture)
    #cv.waitKey(10)
    height, width, bytesPerComponent = resized1.shape #取彩色图片的长、宽、通道
    bytesPerLine = 3 * width
    cv.cvtColor(resized1, cv.COLOR_BGR2RGB, resized1)
    QImg = QImage(resized1.data, width, height, bytesPerLine,QImage.Format_RGB888)
    pixmap = QPixmap.fromImage(QImg)

    self.label_ShowPicture.setPixmap(pixmap)
    #self.label_ShowPicture.setPixmap(QPixmap("resized1.jpg"))
    self.label_ShowPicture.setCursor(Qt.CrossCursor)
    print("已经嵌入")

总结

到此这篇关于python opencv把一张图片嵌入(叠加)到另一张图片上的实现代码的文章就介绍到这了,更多相关python opencv图片嵌入另一张图片上内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python中pass语句用法实例分析
Apr 30 Python
python检测是文件还是目录的方法
Jul 03 Python
Python操作csv文件实例详解
Jul 31 Python
python实现剪切功能
Jan 23 Python
详解python项目实战:模拟登陆CSDN
Apr 04 Python
在Python函数中输入任意数量参数的实例
Jul 16 Python
python通过TimedRotatingFileHandler按时间切割日志
Jul 17 Python
python脚本后台执行方式
Dec 21 Python
python dataframe NaN处理方式
Dec 26 Python
Python 3.8 新功能大揭秘【新手必学】
Feb 05 Python
python如何解析复杂sql,实现数据库和表的提取的实例剖析
May 15 Python
DjangoRestFramework 使用 simpleJWT 登陆认证完整记录
Jun 22 Python
keras slice layer 层实现方式
Jun 11 #Python
Spring http服务远程调用实现过程解析
Jun 11 #Python
keras Lambda自定义层实现数据的切片方式,Lambda传参数
Jun 11 #Python
python怎么提高计算速度
Jun 11 #Python
Python 实现自动登录+点击+滑动验证功能
Jun 10 #Python
Python函数参数定义及传递方式解析
Jun 10 #Python
什么是python类属性
Jun 10 #Python
You might like
PHP5中MVC结构学习
2006/10/09 PHP
PHP 网页过期时间的控制代码
2009/06/29 PHP
php smarty 二级分类代码和模版循环例子
2011/06/16 PHP
php文件上传你必须知道的几点
2015/10/20 PHP
php集成动态口令认证
2016/07/21 PHP
php封装的图片(缩略图)处理类完整实例
2016/10/19 PHP
jQuery验证插件 Validate详解
2014/11/20 Javascript
js判断iframe中元素是否存在的实现代码
2016/12/24 Javascript
bootstrap——bootstrapTable实现隐藏列的示例
2017/01/14 Javascript
Vue.js中extend选项和delimiters选项的比较
2017/07/17 Javascript
浅谈sass在vue注意的地方
2017/08/10 Javascript
jQuery实现注册会员时密码强度提示信息功能示例
2017/09/05 jQuery
vue+vue-validator 表单验证功能的实现代码
2017/11/13 Javascript
jQuery Datatables表头不对齐的解决办法
2017/11/27 jQuery
详解为Bootstrap Modal添加拖拽的方法
2018/01/05 Javascript
mpvue跳转页面及注意事项
2018/08/03 Javascript
微信小程序从注册账号到上架(图文详解)
2019/07/17 Javascript
解决vue elementUI中table里数字、字母、中文混合排序问题
2020/01/07 Javascript
js实现详情页放大镜效果
2020/10/28 Javascript
python使用any判断一个对象是否为空的方法
2014/11/19 Python
Python HTMLParser模块解析html获取url实例
2015/04/08 Python
理想高通滤波实现Python opencv示例
2019/01/30 Python
PyQt5响应回车事件的方法
2019/06/25 Python
python3处理word文档实例分析
2020/12/01 Python
使用phonegap获取位置信息的实现方法
2017/03/31 HTML / CSS
canvas实现漂亮的下雨效果的示例
2018/04/18 HTML / CSS
青年文明号复核材料
2014/02/11 职场文书
信息管理应届生求职信
2014/03/07 职场文书
元宵节主持词
2014/03/25 职场文书
企业负责人任命书
2014/06/05 职场文书
医院护士见习期自我鉴定
2014/09/15 职场文书
离婚协议书范本
2015/01/26 职场文书
人事聘任通知
2015/04/21 职场文书
python中sqllite插入numpy数组到数据库的实现方法
2021/06/21 Python
使用vue判断当前环境是安卓还是IOS
2022/04/12 Vue.js
Win11 22H2 2022怎么更新? 获得Win1122H22022版本升级技巧
2022/09/23 数码科技