Python图像处理实现两幅图像合成一幅图像的方法【测试可用】
作者:PHILOS_THU 发布时间:2022-11-13 08:36:56
标签:Python,图像,合成
本文实例讲述了Python图像处理实现两幅图像合成一幅图像的方法。分享给大家供大家参考,具体如下:
将两幅图像合成一幅图像,是图像处理中常用的一种操作,python图像处理库PIL中提供了多种种将两幅图像合成一幅图像的接口。
下面我们通过不同的方式,将两图合并成一幅图像。
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 进行。
合成结果如下:
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程序设计有所帮助。
来源:https://blog.csdn.net/guduruyu/article/details/71439733


猜你喜欢
- 这篇论坛文章(赛迪网技术社区)主要介绍了一些特别有用但文档中没有介绍的sql server DBCC命令,详细内容请参考下文:以下是一些sq
- 是扫盲文章, 其实我自己就是个被扫对象, 为了学习W3C标准地设计网页, 想到写这个系列的文章当作自己的学习笔记, 不求每篇都写很好, 只求
- 看了一段时间关于js原型的知识,js的扩展方法是基于原型的,如Array.prototype.XXXX就是给Array扩展XXX方法,然后数
- 小张的Pycharm最近弹出提示框 Your license has expired提示过期....纳尼!!!!是不是看到这个也很头疼,。于
- 二、导航功能增强 1. 下拉菜单中的链接(Links in Select Menu)Q:我如何实现在下拉菜单中链接到不
- 对着谷歌大神膜拜了一下午, 终于让我找到了一款免费的,国产货!!外观虽然不能跟老外的比,但是功能还挺全,实用就好。下载地址:http://x
- 一、基本概念Reactive X中有几个核心的概念,先来简单介绍一下。1.1、Observable和Observer(可观察对象和观察者)首
- 本文实例讲述了Python遍历zip文件输出名称时出现乱码问题的解决方法。分享给大家供大家参考。具体如下:windows中使用python2
- 本文主要介绍的是vue.js插入dom节点的方法,下面话不多说,来看看详细的介绍吧。html代码:<div id="app&
- 利用Python生成PDF文件时,对比了fpdf和reportlab两个库。fpdf最新更新还是2015年,另外reportlab的资料网上
- 目录前言全局锁表级锁表锁元数据锁(Metadata Locking,简称:MDL锁)总结参考资料前言在真实的企业开发环境中使用MySQL,M
- 同由其他技术驱动的应用一样,在相同的Web服务器上运行Django应用也是可行的。 最简单直接的办法就是利用Apaches配置文件httpd
- 采集文章给建站带来了很大的方便,特别是一些小网站,人员有限,资金有限,适当的使用采集功能可以很快丰富我们的网站,采集这么厉害可能你会觉的代码
- 1.OUPUT参数返回值CREATE PROCEDURE [dbo].[nb_order_insert](@o_buyerid int ,@
- 从4年之前什么都不知道,到现在对代码的一网情深,感谢无忧的兄弟姐妹的帮助,感谢无忧给我们提供了这么好的交流平台。现将最近几天捣鼓的asp封装
- 本文实例讲述了JS求解三元一次方程组值的方法。分享给大家供大家参考,具体如下:// 求用js 码一段代码求 三元一次方程组的值!// a1
- 树的实质是很多条数据按照一定的内在关系,分层级显示出来。因此每一条数据包括数据项和相互关系。数据项就对应了树中的column,而相互关系对应
- 如何在一段文字里点一下就可以在里面插入一段文字? 如题,不要用编辑器之类的来实现。高手们帮忙呀。 <SCRIPT LANG
- 问题:我们每天都要编写一些Python程序,或者用来处理一些文本,或者是做一些系统管理工作。程序写好后,只需要敲下python命令,便可将程
- 其实我们平时在深度学习中所说的卷积操作,在 opencv 中也可以进行,或者说是类似操作。那么它是什么操作呢?它就是图像的模糊(滤波)处理。