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 相关文章推荐
Windows下PyMongo下载及安装教程
Apr 27 Python
详解Python中的__new__、__init__、__call__三个特殊方法
Jun 02 Python
Python中py文件引用另一个py文件变量的方法
Apr 29 Python
浅谈Python里面小数点精度的控制
Jul 16 Python
python pandas读取csv后,获取列标签的方法
Nov 12 Python
将string类型的数据类型转换为spark rdd时报错的解决方法
Feb 18 Python
win8.1安装Python 2.7版环境图文详解
Jul 01 Python
Python try except异常捕获机制原理解析
Apr 18 Python
Python3基于print打印带颜色字符串
Jul 06 Python
python和node.js生成当前时间戳的示例
Sep 29 Python
详解基于python的全局与局部序列比对的实现(DNA)
Oct 07 Python
Python+pyaudio实现音频控制示例详解
Jul 23 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
PHP下编码转换函数mb_convert_encoding与iconv的使用说明
2009/12/16 PHP
php实现的ping端口函数实例
2014/11/12 PHP
PHP内存使用情况如何获取
2015/10/10 PHP
php+ajax实现仿百度查询下拉内容功能示例
2017/10/20 PHP
CI框架(CodeIgniter)实现的导入、导出数据操作示例
2018/05/24 PHP
php字符串函数 str类常见用法示例
2020/05/15 PHP
零基础学JavaScript最新动画教程+iso光盘下载
2008/01/22 Javascript
Javascript中arguments对象详解
2014/10/22 Javascript
jquery实现触发时更新下拉列表内容的方法
2015/12/02 Javascript
JS之获取样式的简单实现方法(推荐)
2016/09/13 Javascript
代码详解Vuejs响应式原理
2017/12/20 Javascript
Vue项目全局配置微信分享思路详解
2018/05/04 Javascript
js中实例与对象的区别讲解
2019/01/21 Javascript
vue基础之模板和过滤器用法实例分析
2019/03/12 Javascript
茶余饭后聊聊Vue3.0响应式数据那些事儿
2019/10/30 Javascript
Vue 使用Props属性实现父子组件的动态传值详解
2019/11/13 Javascript
jQuery+css实现的点击图片放大缩小预览功能示例【图片预览 查看大图】
2020/05/29 jQuery
vscode 调试 node.js的方法步骤
2020/09/15 Javascript
用PyQt进行Python图形界面的程序的开发的入门指引
2015/04/14 Python
在Python中用split()方法分割字符串的使用介绍
2015/05/20 Python
python自定义异常实例详解
2017/07/11 Python
Python实现的KMeans聚类算法实例分析
2018/12/29 Python
python 实现查找文件并输出满足某一条件的数据项方法
2019/06/12 Python
python算法与数据结构之单链表的实现代码
2019/06/27 Python
Python 生成器,迭代,yield关键字,send()传参给yield语句操作示例
2019/10/12 Python
Parts Express:音频、视频和扬声器的第一来源
2017/04/25 全球购物
高中三年学习生活的自我评价
2013/10/10 职场文书
学年自我鉴定
2014/01/16 职场文书
春节活动策划方案
2014/01/24 职场文书
大学生考试作弊检讨书
2014/09/21 职场文书
总经理司机岗位职责
2015/04/10 职场文书
2015年宣传思想工作总结
2015/05/22 职场文书
初中政治教学工作总结
2015/08/13 职场文书
导游词之澳门玫瑰圣母堂
2019/12/03 职场文书
Python编写nmap扫描工具
2021/07/21 Python
Mysql数据库表中为什么有索引却没有提高查询速度
2022/02/24 MySQL