python怎么实现图像等比缩放
发表于:2025-02-19 作者:千家信息网编辑
千家信息网最后更新 2025年02月19日,小编给大家分享一下python怎么实现图像等比缩放,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!说明1、初始化目标尺寸的幕
千家信息网最后更新 2025年02月19日python怎么实现图像等比缩放
小编给大家分享一下python怎么实现图像等比缩放,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
说明
1、初始化目标尺寸的幕布,所有值都是一样的。
2、把原图中较长的边放缩到目标尺寸大小,计算出放缩比例。
3、使短边也能按此比例放缩,得到的图片就不会变形。
4、缩放后的图像必须小于等于目标尺寸。
因此必须能够粘贴在幕布的中心,这样幕布中没有被覆盖的地方就会自动变成留白,省去了填充步骤。
5、得到想要的图片。
实例
import numpy as npfrom PIL import Image def resize(img, size): # 先创建一个目标大小的幕布,然后将放缩好的图片贴到中央,这样就省去了两边填充留白的麻烦。 canvas = Image.new("RGB", size=size, color="#7777") target_width, target_height = size width, height = img.size offset_x = 0 offset_y = 0 if height > width: # 高 是 长边 height_ = target_height # 直接将高调整为目标尺寸 scale = height_ / height # 计算高具体调整了多少,得出一个放缩比例 width_ = int(width * scale) # 宽以相同的比例放缩 offset_x = (target_width - width_) // 2 # 计算x方向单侧留白的距离 else: # 同上 width_ = target_width scale = width_ / width height_ = int(height * scale) offset_y = (target_height - height_) // 2 img = img.resize((width_, height_), Image.BILINEAR) # 将高和宽放缩 canvas.paste(img, box=(offset_x, offset_y)) # 将放缩后的图片粘贴到幕布上 # box参数用来确定要粘贴的图片左上角的位置。offset_x是x轴单侧留白,offset_y是y轴单侧留白,这样就能保证能将图片填充在幕布的中央 return canvas img= Image.open('1.jpg') target__size=(500,300) # 目标尺寸:宽为500,高为300res = resize(img,target__size) res.save('new.jpg')
以上是"python怎么实现图像等比缩放"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
图片
幕布
目标
尺寸
比例
图像
单侧
篇文章
中央
内容
大小
相同
不怎么
位置
原图
参数
地方
大部分
实例
左上角
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
魔兽怀旧服务器黑翼之巢法师装备
会展中心网络安全会议
2016中国并购数据库
软件开发项目小组表
服务器接入小爱音响
盖世网络技术怎么样
广告公司网络安全责任书
无法对数据库进行
工业数据采集软件开发
济南市步天网络技术有限公司
我的世界ec服务器怎么不卡
安康展厅多媒体软件开发公司
苹果手机扫描网络安全
大服务器交易吗
湖北华聚创盈网络技术有限
数据库中怎么查询负整形
地铁软件开发都有哪些系统
边缘服务器浪潮信息
上海华众互联网科技有限公司
vmware 数据库连接
流浪汉小说软件开发
飞塔公司有数据库安全吗
金融软件开发招聘信息
数据库ACCESS编程软件
管理员是怎么管理服务器的
vb是用什么软件开发的
苹果手机扫描网络安全
潍坊电商软件开发
数据库和电商的威胁在哪
边缘服务器浪潮信息