【PYTHON】 Pilow 将半透明图片绘制到图片中

2023-05-16

 python 的pilow在将半透明图片复合到正常图片时,需要用到alpha_composite函数

两张图片都必须保留 alpha 通道,即 mode 为 RGBA,alpha 通道是保存图片透明度的通道,如果传入图片为png, 其本身会带有alpha 通道, 如果是jpg, 其本身不带有alpha通道,需要为图片添加 alpha 通道。

Image.alpha_composite(im1,im2)

将im2复合到im1上,返回一个Image对象

参数:im1--第一个图像

        im2--第二个图像 im1和im2的size要相同。且im1和im2的mode都必须是RGBA

def get_mongolia(im1, im2, width=0, height=0):
    # 蒙层与图片的融合, 将im2贴到im1上
    im1_size = im1.size
    im2_size = im2.size
    crop_size = (min(im1_size[0]-width, im2_size[0]), min(im1_size[1]-height, im2_size[1]))
    im1_crop = im1.crop((width, height, crop_size[0] + width, crop_size[1] + height))
    im2_crop = im2.crop((0, 0, crop_size[0], crop_size[1]))
    mongolia = Image.alpha_composite(im1_crop, im2_crop)
    im2_crop.show()
    im1.paste(mongolia, (width, height), mongolia)
    return im1

上述代码封装为im1添加有蒙层的im2, im2是半透明的图片,先计算出im1 和im2合并的区域大小即crop_size, 然后对im1与im2进行裁剪,利用alpha_composite方法将裁剪后的图片复合起来。再将图片贴到im1中。

width 是融合后im2相对于im1的起始x轴, height 是y轴。

eg:

【素材】

im1

im2 

融合后图片 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【PYTHON】 Pilow 将半透明图片绘制到图片中 的相关文章

  • wifi连接过程抓包

    下面是一次wifi连接过程发送数据的抓包 xff0c 有些包没抓到 xff0c 但还是比较全的 1 4包 xff0c 探测请求 响应过程 STA发出探测请求包Probe ReqAP做出回应 xff0c 发出探测响应包Probe Rsp 5
  • mbedtls学习(6)RSA算法

    RSA算法 RSA算法是一种非对称加密算法 xff0c 特点时加密解密算法不同且加密解密密钥不同 xff0c 即一般公钥加密 xff0c 私钥解密 下面时RSA算法关键参数 n 模数 xff0c 位长度为1024比特或者2048比特e 公开
  • LVGL lv_label标签控件(5)

    lv label 相关API在lv label h中 文本模式 span class token keyword enum span span class token punctuation span span class token co
  • LVGL lv_page页面控件(23)

    lv page 页面控件 xff0c 是由2个lv cont容器控件构成 xff0c 其中一个容器作为lv page页面控件的背景层 xff0c 另一个容器作为lv page页面控件的载体 xff0c 此载体存放其他任何子对象 xff0c
  • FreeRTOS消息队列、信号量、互斥量、递归互斥量实现步骤

    文章目录 消息队列消息队列结构读队列步骤写队列步骤 作用 信号量信号量结构 获取信号量释放信号量 互斥量 xff08 锁 xff09 互斥量结构 获取互斥量释放互斥量 递归互斥量 xff08 递归锁 xff09 获取递归互斥量释放递归互斥量
  • GDB调试宏

    参考 GDB需要调试宏只需用 g3选项编译 g 默认选项 xff0c 同 g2 g0 不生成任何调试信息 xff0c 和编译时不加 g 是一样的 g1 生成最少量的调试信息 xff0c 这些信息足够用来通过backtrace查看调用栈符号信
  • GDB格式化打印结构体

    参考 GDB pretty print set print pretty on GDB 打印数组索引 set print array span class token operator span indexes on 例子 span cla
  • 8080接口

    文章目录 简介引脚写时序读时序 简介 8080接口是由英特尔设计 xff0c 是一种并行 异步 半双工通信协议 xff0c 作用是用于外扩RAM ROM xff0c 后面也用于LCD接口 引脚 写时序 先拉低选中器件 xff0c 如果要写入
  • Centos 7离线安装最新版mysql

    测试环境 CentOS Linux release 7 9 2009 Core 1 准备工作 下载离线安装包 xff1a 1 1 浏览器打开地址 xff1a https dev mysql com downloads mysql 1 2 选
  • C语言UDP socket编程

    C语言UDP socket编程 UDP 服务器步骤如下 xff1a 1 创建等链接套接字fd 61 socket 2 绑定待链接套接字bind fd 服务器ip和端口 3 等待信息recvfrom fd 对端地址 UDP 客户端步骤如下 x
  • MQTT学习笔记(4)报文分析之PUBLISH

    PUBLISH xff08 发布消息 xff09 含义 xff1a 客户端到服务端或者服务端到客户端发布消息控制报文 xff0c 是双向的 一 固定报头 DUP 重发标志 当DUP被设置为0 xff0c 表示客户端或者服务器是第一次发送这个
  • MQTT学习笔记(6)搭建本地MQTT服务器

    目前主流的Broker有以下3个 xff1a Mosquitto xff1a https mosquitto org VerneMQ xff1a https vernemq com EMQTT xff1a http emqtt io 我们使
  • nrf52832学习笔记(4)修改蓝牙名称,掉电不丢失

    这篇主要介绍如何在手机端修改设备参数 xff0c 比如设备名称 且实现掉电不丢失 思路 xff1a 把需要修改的参数发送给设备 xff0c 设备根据uuid来分辨是参数 xff0c 并保存在flash中 xff0c 重启服务 xff0c 这
  • IIC协议总结

    这篇总结下IIC协议 简介 IIC xff0c Inter Integrated Circuit xff0c 集成电路总线 xff0c 需要2根线连接拓扑 xff0c 是半双工 xff0c 适用于 34 字节型 34 设备 特点 拓扑如下
  • ros+gazebo学习(持续更新)

    由于实习需要 xff0c 开始学习ROS的东西 这篇博客主要是记录在ROS 43 gazebo学习中遇到的各种坑 xff08 掩面 xff09 xff0c 希望能对一些也在该领域的同志提供一点小小帮助 安装问题 xff08 gazebo 4
  • TX2 ubuntu18.04 arm64架构 桌面系统为lxde 系统为轻量级 成功安装ros

    如标题所述 xff1a 硬件采用 xff1a TX2 ubuntu18 04 arm64架构 桌面系统为lxde 来安装ros xff0c 安装了两次都意外失败了 xff0c 后来终于找到了问题 在ros wiki 官网 xff08 htt
  • 解决NVIDIA jetson NX 板卡安装镜像之后,SD卡容量变小的问题

    解决NVIDIA jetson NX 板卡安装镜像之后 xff0c SD卡容量变小的问题 问题描述 xff1a 本人使用的SD卡为64G xff0c 安装了一个约30g的 img镜像 xff0c 之后插入NX板卡 xff0c 系统正常启动
  • USB接线定义和链接摄像头

    原文链接 xff1a https www cnblogs com chinalantian articles 2131361 html 写本文的意义在于了解USB的接线定义和实现使用手机数据线读取摄像头图像 USB接口定义 颜色 一般的排列
  • C语言 VC6.0控制台编写一个贪吃蛇游戏

    最近看到有人发布贪吃蛇的编码实现 xff0c 想到了自己多年之前也实现过一个 xff0c 发布在这里 xff0c 做一下回忆 C语言面向过程编码 xff0c 基本功能实现以函数为单位 xff0c 重点就是各个函数的设计和实现 本篇使用VC6
  • 笔记本外接键盘解决方案:禁用笔记本自带键盘

    适用场景 xff1a 笔记本外接键盘时 xff0c 有时会将外接键盘放置在笔记本自带键盘上 xff0c 加上现代笔记本设计轻薄 xff0c 外接键盘 xff08 尤其是108键的 xff09 在使用过程中经常触碰自带键盘 xff0c 禁用自

随机推荐