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类型强制转换long to int的代码
Feb 10 Python
讲解Python中的标识运算符
May 14 Python
Python的Flask框架应用调用Redis队列数据的方法
Jun 06 Python
Django 生成登陆验证码代码分享
Dec 12 Python
Python输入二维数组方法
Apr 13 Python
浅析python内置模块collections
Nov 15 Python
Python算法的时间复杂度和空间复杂度(实例解析)
Nov 19 Python
vue学习笔记之动态组件和v-once指令简单示例
Feb 29 Python
Python调用接口合并Excel表代码实例
Mar 31 Python
使用Python Tkinter实现剪刀石头布小游戏功能
Oct 23 Python
在 Golang 中实现 Cache::remember 方法详解
Mar 30 Python
python3 hdf5文件 遍历代码
May 19 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 UTF8编码内的繁简转换类
2009/07/20 PHP
php获取远程文件的内容和大小
2015/11/03 PHP
PHP实现验证码校验功能
2017/11/16 PHP
PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】
2018/06/13 PHP
js宝典学习笔记(上)
2007/01/10 Javascript
iphone safari不支持position fixed的解决方法
2012/05/04 Javascript
JavaScript 和 Java 的区别浅析
2013/07/31 Javascript
jquery实现邮箱自动补全功能示例分享
2014/02/17 Javascript
中文输入法不触发onkeyup事件的解决办法
2014/07/09 Javascript
常用jQuery选择器总结
2014/07/11 Javascript
JavaScript日期类型的一些用法介绍
2015/03/02 Javascript
理解javascript中的严格模式
2016/02/01 Javascript
一系列Bootstrap导航条使用方法分享
2016/04/29 Javascript
JavaScript获取IP获取的是IPV6 如何校验
2016/06/12 Javascript
利用Node.js制作爬取大众点评的爬虫
2016/09/22 Javascript
javascript 动态生成css代码的两种方法
2017/03/17 Javascript
在Angular中使用JWT认证方法示例
2018/09/10 Javascript
微信小程序MUI导航栏透明渐变功能示例(通过改变opacity实现)
2019/01/24 Javascript
原生javascript中this几种常见用法总结
2020/02/24 Javascript
vue操作dom元素的3种方法示例
2020/09/20 Javascript
小程序组件传值和引入sass的方法(使用vant Weapp组件库)
2020/11/24 Javascript
python嵌套函数使用外部函数变量的方法(Python2和Python3)
2016/01/31 Python
python脚本实现xls(xlsx)转成csv
2016/04/10 Python
python实现多线程的方式及多条命令并发执行
2016/06/07 Python
Python使用functools实现注解同步方法
2018/02/06 Python
python实现两个文件合并功能
2018/04/01 Python
Python Requests模拟登录实现图书馆座位自动预约
2018/04/27 Python
python基于socket进行端口转发实现后门隐藏的示例
2019/07/25 Python
Pandas时间序列:时期(period)及其算术运算详解
2020/02/25 Python
python opencv实现图片缺陷检测(讲解直方图以及相关系数对比法)
2020/04/07 Python
python 使用elasticsearch 实现翻页的三种方式
2020/07/31 Python
冬季施工防火方案
2014/05/17 职场文书
空气环保标语
2014/06/12 职场文书
岗位工作说明书
2014/07/29 职场文书
关于迟到的检讨书
2015/05/06 职场文书
SQL基础的查询语句
2021/11/11 MySQL