Python图像处理实现两幅图像合成一幅图像的方法【测试可用】


Posted in Python onJanuary 04, 2019

本文实例讲述了Python图像处理实现两幅图像合成一幅图像的方法。分享给大家供大家参考,具体如下:

将两幅图像合成一幅图像,是图像处理中常用的一种操作,python图像处理库PIL中提供了多种种将两幅图像合成一幅图像的接口。

下面我们通过不同的方式,将两图合并成一幅图像。

Python图像处理实现两幅图像合成一幅图像的方法【测试可用】

Python图像处理实现两幅图像合成一幅图像的方法【测试可用】

1、使用Image.blend()接口

代码如下:

# -*- coding:utf-8 -*-
from PIL import Image
def blend_two_images():
  img1 = Image.open( "bridge.png ")
  img1 = img1.convert('RGBA')
  img2 = Image.open( "birds.png ")
  img2 = img2.convert('RGBA')
  img = Image.blend(img1, img2, 0.3)
  img.show()
  img.save( "blend.png")
  return
blend_two_images()

两幅图像进行合并时,按公式:blended_img = img1 * (1 ? alpha) + img2* alpha 进行。

合成结果如下:

Python图像处理实现两幅图像合成一幅图像的方法【测试可用】

2、使用Image.composite()接口

该接口使用掩码(mask)的形式对两幅图像进行合并。

代码如下:

# -*- coding:utf-8 -*-
from PIL import Image
def blend_two_images2():
  img1 = Image.open( "bridge.png ")
  img1 = img1.convert('RGBA')
  img2 = Image.open( "birds.png ")
  img2 = img2.convert('RGBA')
  r, g, b, alpha = img2.split()
  alpha = alpha.point(lambda i: i>0 and 204)
  img = Image.composite(img2, img1, alpha)
  img.show()
  img.save( "blend2.png")
  return
blend_two_images2()

代码第9行中指定的204起到的效果和使用blend()接口时的0.3类似。

合并后的效果如下:

Python图像处理实现两幅图像合成一幅图像的方法【测试可用】

更多关于Python相关内容可查看本站专题:《Python数学运算技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python中线程编程之threading模块的使用详解
Jun 23 Python
Python实现二维数组按照某行或列排序的方法【numpy lexsort】
Sep 22 Python
Python实现自定义顺序、排列写入数据到Excel的方法
Apr 23 Python
Python使用jsonpath-rw模块处理Json对象操作示例
Jul 31 Python
python统计字符串中字母出现次数代码实例
Mar 02 Python
python实现密码强度校验
Mar 18 Python
opencv 图像加法与图像融合的实现代码
Jul 08 Python
matplotlib.pyplot.plot()参数使用详解
Jul 28 Python
Expected conditions模块使用方法汇总代码解析
Aug 13 Python
如何用Python徒手写线性回归
Jan 25 Python
Django给表单添加honeypot验证增加安全性
May 06 Python
Python实现学生管理系统并生成exe可执行文件详解流程
Jan 22 Python
Python小游戏之300行代码实现俄罗斯方块
Jan 04 #Python
django主动抛出403异常的方法详解
Jan 04 #Python
pyspark操作MongoDB的方法步骤
Jan 04 #Python
详解Appium+Python之生成html测试报告
Jan 04 #Python
python虚拟环境迁移方法
Jan 03 #Python
对django xadmin自定义菜单的实例详解
Jan 03 #Python
在Python中关于使用os模块遍历目录的实现方法
Jan 03 #Python
You might like
推荐一篇入门级的Class文章
2007/03/19 PHP
php指定长度分割字符串str_split函数用法示例
2017/01/30 PHP
JavaScript中的setUTCDate()方法使用详解
2015/06/11 Javascript
JavaScript中Math.SQRT2属性的使用详解
2015/06/14 Javascript
JS实现的车标图片提示效果代码
2015/10/10 Javascript
微信小程序开发之大转盘 仿天猫超市抽奖实例
2016/12/08 Javascript
简单实现Vue的observer和watcher
2016/12/21 Javascript
JavaScript组件开发之输入框加候选框
2017/03/10 Javascript
详解webpack+gulp实现自动构建部署
2017/06/29 Javascript
jquery拖动改变div大小
2017/07/04 jQuery
Node.js Express安装与使用教程
2018/05/11 Javascript
NodeJS如何实现同步的方法示例
2018/08/24 NodeJs
vue+element项目中过滤输入框特殊字符小结
2019/08/07 Javascript
Layui 动态禁止select下拉的例子
2019/09/03 Javascript
js实现简单放大镜效果
2020/03/07 Javascript
[01:30]DOTA2上海特锦赛现场采访 Loda倾情献唱
2016/03/25 DOTA
[01:19]DOTA2城市挑战赛报名开始 开启你的城市传奇
2018/03/23 DOTA
Python实现单词拼写检查
2015/04/25 Python
使用PyCharm配合部署Python的Django框架的配置纪实
2015/11/19 Python
python实现的多线程端口扫描功能示例
2017/01/21 Python
Python实现利用163邮箱远程关电脑脚本
2018/02/22 Python
PyQt5每天必学之工具提示功能
2018/04/19 Python
Flask框架Jinjia模板常用语法总结
2018/07/19 Python
用Python抢火车票的简单小程序实现解析
2019/08/14 Python
关于pytorch处理类别不平衡的问题
2019/12/31 Python
Python3爬虫关于识别检验滑动验证码的实例
2020/07/30 Python
Python机器学习工具scikit-learn的使用笔记
2021/01/28 Python
详解Canvas 实现炫丽的粒子运动效果(粒子生成文字)
2018/02/01 HTML / CSS
荷兰超市:DEEN
2018/03/14 全球购物
十佳美德少年事迹材料
2014/02/05 职场文书
团支部建设方案
2014/05/02 职场文书
卫生院艾滋病宣传活动小结
2014/07/09 职场文书
2016小学新学期寄语
2015/12/04 职场文书
教师素质教育心得体会
2016/01/19 职场文书
OpenCV-Python实现轮廓拟合
2021/06/08 Python
纯CSS打字动画的实现示例
2022/08/05 HTML / CSS