iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >一文教会你使用Python批量缩放图片
  • 663
分享到

一文教会你使用Python批量缩放图片

2024-04-02 19:04:59 663人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

目录导读实际演示阶段详细介绍该库总结导读 为了解决图片被改变大小后,比例保持不变(这样就不会变形了) 图片需要压缩,避免填图后的Word文件太大通过Image模块中的resize函数

导读

为了解决图片被改变大小后,比例保持不变(这样就不会变形了)

图片需要压缩,避免填图后的Word文件太大通过Image模块中的resize函数,就能给解决如上问题。我们还是先按“修改时间”顺序获取图片文件夹下的所有图片的完整路径

实际演示阶段

我们需要做的事情就是将图一变为图二 图一:

图二:

进行等比例缩小。

#将图片按修改时间排序(这样才能与图片的描述一致),将路径存入列表,以便后面逐个插入图片时调用
import  os
path = "pictures"
list_p = [path+"\\"+i for i in os.listdir(path)] #获取图片的文件名,并拼接完整路径
list_p.sort(key=lambda path: os.path.getmtime(path)) #将列表中的文件按其修改时间排序,os.path.getmtime() 函数是获取文件最后修改时间
list_p里面存放的就是该文件夹下的所有图片路径
'pictures\\z.jpg',
 'pictures\\x.jpg',
 'pictures\\w.jpg',
 'pictures\\y.jpg',
 'pictures\\orange-flowers-2471898.jpg',
 'pictures\\lime-631389.jpg',
 'pictures\\v.jpg',

然后导入Image模块。for循环遍历所有图片的路径,然后读取图片尺寸,x对应宽度,y对应高度。这里的单位是像素。压缩图片的关键参数是压缩后的标准宽度x_s,我们Word模板中放置图片的单元格宽度为6.25厘米。压缩后的图片分辨率是96,像素为230的时候,对应长度是6.1厘米。以上换算可参考链接www.gaitubao.com/tools/pixel… 。但是按230像素的宽度压缩后,自动填充到Word文档中后,图片宽度变成了8厘米,已经超过单元格的宽度了。通过调试,最终将标准宽度设定为165像素,填入word中后,宽度是5.82厘米,比较适合单元格宽度。这个差异可能是换算的不精确导致。确定好标准宽度x_s后,高度y_s按照标准宽度乘上原始高宽比来确定,这样就是保持比例压缩,不会导致图片变形。压缩resize后,再保存到新的文件夹。

#按比例缩小图片尺寸
from PIL import Image
for infile in list_p:
    im = Image.open(infile)
    (x,y) = im.size #读取图片尺寸(像素)
    x_s = 165 #定义缩小后的标准宽度 
    y_s = int(y * x_s / x) #基于标准宽度计算缩小后的高度
    out = im.resize((x_s,y_s),Image.ANTIALIAS) #改变尺寸,保持图片高品质
    out.save('pictures_new\\{}'.fORMat(infile.split("\\")[-1]))

就这样简单的几步我们就得到了想要的结果把图片压缩成了:

压缩前:

结果:

详细介绍该库

上面的介绍是不是很简单不过它只是PIL的一个功能下面我们详细介绍一下。

python Imaging Library ( PIL ) 给 Python 增加了图像处理能力。

这个库提供了广泛的文件格式支持,高效的内部展现,以及十分强大的图像处理能力。

让我们看看这个库的几种可能用法:

1· 图像存储

PIL 设计用于图像归档和图像批量处理,你可以使用它建立缩略图,转换格式,打印图片等等。现在的版本可以验证和读取大量的图片格式。写入有意设计为只能写入常用的文件格式。

2·图像显示 现在的版本包含了 Tk PhotoImage 和 Bitmapimage 接口, 以及 windows DIB interface,这有助于在 Windows 下使用。为了方便测试,还提供了 show() 方法,可以保存图像到磁盘并显示。

3·图像处理 这个库包含了基本的图像处理功能,包括点操作,使用内置卷积内核过滤,色彩空间转换。这个库还支持更改图像大小、旋转、自由变换。有一个直方图方法允许你统计图像,这可以用于对比度增强和全局统计分析。

小面我贴一下文档的一些入门介绍:

贴文档做翻译的事情我就不做了大家可以自己去看看。

文档链接:传送门

总结

到此这篇关于使用Python批量缩放图片的文章就介绍到这了,更多相关Python批量缩放图片内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 一文教会你使用Python批量缩放图片

本文链接: https://www.lsjlt.com/news/139811.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 一文教会你使用Python批量缩放图片
    目录导读实际演示阶段详细介绍该库总结导读 为了解决图片被改变大小后,比例保持不变(这样就不会变形了) 图片需要压缩,避免填图后的word文件太大通过Image模块中的resize函数...
    99+
    2024-04-02
  • 如何使用Python批量缩放图片
    今天小编给大家分享一下如何使用Python批量缩放图片的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。导读为了解决图片被改变大...
    99+
    2023-06-29
  • 一文教会你用python裁剪图片
    目录如何使用python裁剪图片一、 安装PIL库二、构建思路三、完整代码总结如何使用python裁剪图片 如上图所示,这是一张包含了各类象棋棋子的图片。我们需要将其中每一个棋子都...
    99+
    2024-04-02
  • 教你用Python压缩图片
    质量、速度、廉价,选择其中两个 如果需要做图片识别那么必定需要大量的训练素材,我们通常使用爬虫来获取,python爬取bing图片,python爬取百度图片,但是怕取下来的图片大小不一,再进行训练之前必须进行裁剪和压缩,今天就来讲一讲...
    99+
    2023-01-31
    教你用 图片 Python
  • 基于Python如何实现批量缩放图片尺寸
    今天小编给大家分享一下基于Python如何实现批量缩放图片尺寸的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。方法一在 Pil...
    99+
    2023-07-05
  • 基于Python实现批量缩放图片(视频)尺寸
    目录方法一方法二方法三方法四(FFmpeg)方法一 在 Pillow 中,resize() 方法会强制将图片缩放到指定的大小,可能会导致图片变形或失真;而 thumbnail() 方...
    99+
    2023-03-24
    Python缩放图片尺寸 Python缩放视频尺寸 Python缩放尺寸
  • 怎么使用python对图片进行批量压缩
    本篇内容主要讲解“怎么使用python对图片进行批量压缩”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用python对图片进行批量压缩”吧!使用Python和Pillow模块压缩图片Pil...
    99+
    2023-07-02
  • 一文详解如何使用Python批量拼接图片
    目录前言〇、准备工作,PIL库安装使用pip安装一、简单程序实现二、更复杂情况总结前言 当需要将多张图像拼接成一张更大的图像时,通常会用到图片拼接技术。这种技术在许多领域中都有广泛的...
    99+
    2023-05-19
    python多图拼接 python拼接图片 python图片拼图
  • 三分钟教会你用Python+OpenCV批量裁剪xml格式标注的图片
    目录前言xml文件格式代码思想完整代码效果展示总结前言 在目标检测中,数据集常常使用labelimg标注,会生成xml文件。本文旨在根据xml标注文件来裁剪目标,以达到去除背景信息的...
    99+
    2024-04-02
  • 使用Python批量拼接图片
    前言 当需要将多张图像拼接成一张更大的图像时,通常会用到图片拼接技术。这种技术在许多领域中都有广泛的应用,例如计算机视觉、图像处理、卫星图像、地理信息系统等等。在实际应用中,拼接图像可以用于创建全景图像、地图、海报、广告牌等等。 本文将使用...
    99+
    2023-09-28
    python 图像处理
  • 一篇文章教你学会使用Python绘制甘特图
    目录优点局限一日一书 用来制作甘特图的专业工具也不少,常见的有:Microsoft Office Project、GanttProject、WARCHART XGantt、jQuer...
    99+
    2024-04-02
  • 如何使用python对图片进行批量压缩详解
    目录前言使用Python和Pillow模块压缩图片1、优化flag2、渐进式JPEG3、JPEG动态质量使用Python和Selenium模块操纵Squoosh批量压缩图片Pytho...
    99+
    2024-04-02
  • 一文教会你用Python读取PDF文件
    目录实战场景Python PDF 实战编码补充实战场景 Python 工程师在日常的工作中,经常会碰到解析和处理PDF文件的情况,实战中需求主要分为如下情况: 提取 PDF 中的文字...
    99+
    2024-04-02
  • 一文教会你用Python绘制动态可视化图表
    目录前言安装模块可视化动态图太阳图指针图桑基图平行坐标图总结前言 对数据科学家来说,讲故事是一个至关重要的技能。为了表达我们的思想并且说服别人,我们需要有效的沟通。而漂漂亮亮的可视化...
    99+
    2024-04-02
  • 教你使用Python根据模板批量生成docx文档
    目录一、需求说明二、实验准备三、代码实现四、实验结果一、需求说明 能够根据模板批量生成docx文档。具体而言,读取excel中的数据,然后使用python批量生成docx文档。 二、...
    99+
    2024-04-02
  • 一文教会你vue中使用async和await
    目录引言async和await定义使用场景实战场景补充:vue中async await请求处理小结引言 在我们进行实际开发中会遇到异步请求的问题,这时候我们的异步请求的存在就非常的具...
    99+
    2022-11-13
    vue使用async await vue async await
  • 一文教你如何使用Python绘制瀑布图
    目录前期准备方法一:waterfall_ax方法二:waterfall_chart方法三:plotly什么是瀑布图?瀑布图用表达两个数值之间的变化过程,过程值为正的时候,向上加,过程...
    99+
    2023-05-16
    Python绘制瀑布图 Python 瀑布图
  • 一文教你利用Python画花样图
    目录前言地球仪加线地图上加线最后的福利-3D图鉴赏总结前言 在之前的一篇文章Python可视化神器-Plotly动画展示展现了可视化神器-Plotly的动画的基本应用,本文介绍如何在...
    99+
    2024-04-02
  • 使用Python批量压缩tif文件操作步骤
    1.前言 我在进行DEM数据的裁剪时,发现各个省的数据量非常大,比如说四川省的30m的DEM数据的大小为2G。考虑到有限的电脑磁盘空间,我对Tif文件采用了LZW压缩。 2.流程 ...
    99+
    2024-04-02
  • 使用ImageMagick进行图片缩放、合成与裁剪(js+python)
    最近的项目里面需要对书籍的封面进行处理,就是加一条阴影线形成书脊的凹凸感,然后将书脊切出,分成两部分,以便客户端实现打开动画。由于需要在服务器端处理,使用就研究使用imagemagi...
    99+
    2022-11-15
    ImageMagick 图片缩放 合成 裁剪
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作