Pillow图像缩放操作

 在图像处理过程中经常会遇到缩小或放大图像的情况,Image 类提供的 resize() 方法能够实现任意缩小和放大图像。

  resize() 函数的语法格式如下:

resize(size, resample=image.BICUBIC, box=None, reducing_gap=None)1复制代码类型:[python]

  参数说明:

  size:元组参数 (width,height),图片缩放后的尺寸;

  resample:可选参数,指图像重采样滤波器,与 thumbnail() 的 resample 参数类似,默认为 Image.BICUBIC;

  box:对指定图片区域进行缩放,box 的参数值是长度为 4 的像素坐标元组,即 (左,上,右,下)。注意,被指定的区域必须在原图的范围内,如果超出范围就会报错。当不传该参数时,默认对整个原图进行缩放;

  reducing_gap:可选参数,浮点参数值,用于优化图片的缩放效果,常用参数值有 3.0 和 5.0.

  创建缩略图

  缩略图(thumbnail image)指的是将原图缩小至一个指定大小(size)的图像。通过创建缩略图可以使图像更易于展示和浏览。

  Image 对象提供了一个 thumbnail() 方法用来生图像的缩略图,该函数的语法格式如下:

thumbnail(size,resample)1复制代码类型:[python]

  size:元组参数,指的是缩小后的图像大小;

  resample:可选参数,指图像重采样滤波器,有四种过滤方式,分别是 Image.BICUBIC(双立方插值法)、PIL.Image.NEAREST(最近邻插值法)、PIL.Image.BILINEAR(双线性插值法)、PIL.Image.LANCZOS(下采样过滤插值法),默认为 Image.BICUBIC。

  批量修改图片尺寸

  在图像处理过程中,对于某些不需要精细处理的环节,我们往往采用批量处理方法,比如批量转换格式,批量修改尺寸,批量添加水印,批量创建缩略图等,这是一种提升工作效率的有效途径,它避免了单一、重复的操作。通过 Pillow 提供的 Image.resize() 方法可以批量地修改图片尺寸,下面看一组简单的示例。

  首先找一些类型相同,但尺寸不一的图片,并把它们放入桌面的 image01 文件夹中。如下所示:

  下面开始编写代码:

# 批量修改图片尺寸
import os
from PIL import Image
#读取图片目录
fileName = os.listdir('C:/Users/Administrator/Desktop/image01/')
print(fileName)
#设定尺寸
width = 350
height = 350
# 如果目录不存在,则创建目录
if not os.path.exists('C:/Users/Administrator/Desktop/NewImage/'):
    os.mkdir('C:/Users/Administrator/Desktop/NewImage/')
# 循环读取每一张图片
for img in fileName:
    old_pic = Image.open('C:/Users/Administrator/Desktop/image01/' + img)
    new_image = old_pic.resize((width, height),Image.BILINEAR)
    print (new_image)
    new_image.save('C:/Users/Administrator/Desktop/NewImage/'+img)123456789101112131415161718复制代码类型:[python]

  输出结果如下所示:

['向日葵.jpg', '国宝.jpg', '矩形图.jpg', '蝴蝶.jpg']
<PIL.Image.Image image mode=RGB size=350x350 at 0x2B9E670>
<PIL.Image.Image image mode=RGB size=350x350 at 0x31D0C90>
<PIL.Image.Image image mode=RGB size=350x350 at 0x2B90DB0>
<PIL.Image.Image image mode=RGB size=350x350 at 0x31D0C90>12345复制代码类型:[python]

  NewImage 目录的内容如下:

(0)

相关推荐

  • 第96天:图像库 PIL(一)

    Python 提供了 PIL(python image library)图像库,来满足开发者处理图像的功能,该库提供了广泛的文件格式支持,包括常见的 JPEG.PNG.GIF 等,它提供了图像创建.图 ...

  • 第97天:图像库 PIL(二)

    上节我们讲了 Python 的图像处理库 PIL 的基本图像处理功能,打开了 PIL 的神秘面纱.这节我们接着讲 PIL 的 Image 模块的常用方法. Image 模块的方法 convert Im ...

  • 计算机视觉(五)双三次插值(Bicubic Interpolation)算法介绍及opencv和matlab的代码实现及区别

    超分辨率基础_插值算法简介 1.插值算法 数学的数值分析领域中,内插或称插值(英语:interpolation)是一种通过已知的.离散的数据点,在范围内推求新数据点的过程或方法.常见的三种插值算法为最 ...

  • 关于SimpleITK_iamcfb_的博客-CSDN博客

    关于SimpleITK iamcfb_ 2019-01-22 20:13:15 随着最近几大肺部图像处理相关的竞赛的推出,如LUNA16.Kaggle Data Science Bowl,AI领域的科 ...

  • 计算机视觉模型效果不佳,你可能是被相机的Exif信息坑了

    视觉/图像重磅干货,第一时间送达 新机器视觉 最前沿的机器视觉与计算机视觉技术 206篇原创内容 公众号 本文转载自:AI新媒体量子位 为何别人用得好好的人脸识别.目标检测开源模型,到了初学者手中,效 ...

  • 学习PHP中好玩的Gmagick图像操作扩展的使用

    学习PHP中好玩的Gmagick图像操作扩展的使用 在 PHP 的图像处理领域,要说最出名的 GD 库为什么好,那就是因为它不需要额外安装的别的什么图像处理工具,而且是随 PHP 源码一起发布的,只需 ...

  • 【AI基础】OpenCV,PIL,Skimage你pick谁

    汤兴旺 就读于吉林大学汽车工程学院,计算机视觉爱好者,言有三弟子 作者 | 汤兴旺 编辑 | 汤兴旺/言有三 如何对图像进行处理是深度学习图像处理的基础,我们常常需要对图像进行读取.保存.缩放.裁剪. ...

  • SimpleITK 对与Dicom 文件的矩阵的插值_想做无忧无虑的咸鱼的博客-CSDN博客

    最近在做毕业设计,然后涉及到了Dicom文件的3D矩阵处理. 这个矩阵是一个512 * 512 * 203 的矩阵,voxel spacing 是 0.895375 * 0.895375 * 2.49 ...

  • ps图像缩放操作视频:拖动复制智能图层自由变换缩放

    ps图像缩放操作视频|ps图像拖动复制视频|ps自由变换缩放视频|ps智能图层缩放视频 本视频教程由部落窝教育分享.

  • PhotoZoom图像缩放方法效果对比

    图像的缩小放大表面上看只是调整了图像的宽度和高度,实际上在电脑中需要经过复杂的计算才能实现.这种复杂的计算其实是一种算法,例如计算出放大的图像填充什么样的像素(就是这个像素的色相.饱和度和明度). 小 ...

  • 图像缩放算法 | Mixlab算法工具箱

    JS image carver  今天给大家推荐一款开源项目.一个采用接缝裁剪(seam carving)算法的在线工具,可以任意改变图片的高度和宽度,而不会扭曲图像. 所采用的Seam Carvin ...

  • 职场小白一起来学习这个识别图像文字操作

    小编在工作中是经常需要用到识别图像文字的操作的,因为有很多时候我都需要整理一下文档图片,而这些文档有很多都是pdf或者图片形式,而我要将其整理这些文档的内容的话,我如果不用识别图像文字操作,就得需要自 ...

  • halcon图像灰度操作

    *生成灰度为0的图像 gen_image_const (Image, 'byte', 512, 512) *计算尺寸 get_image_size (Image, Width, Height) *设置 ...

  • 基于OpenCV的图像强度操作

    重磅干货,第一时间送达 01. 什么是图像强度操作 更改任何通道中的像素值 对图像的数学运算 亮度变化 对比度变化 伽玛操纵 直方图均衡 图像预处理中的滤波等增强 使用OpenCV加载图像 impor ...

  • 基于深度特征重建的图像缩放 | CVMJ Spotlight

    内容敏感的图像缩放旨在改变图像分辨率的同时保持图像中的重要内容并尽量减少产生不自然的细节.传统的图像缩放工作都是直接在图像空间上进行变换.最新一期Computational Visual Media ...

  • Pillow图像分离与合并

    我们知道,图像(指数字图像)由许多像素点组成,像素是组成图像的基本单位,而每一个像素点又可以使用不同的颜色,最终呈现出了绚丽多彩的图像.一些图片模式,它们的本质就是图片呈现颜色时需要遵循的规则,比如 ...

  • ps图像变形技巧视频:自由变换缩放方法及操控变形工具弯曲

    ps图像变形技巧视频|ps自由变换缩放视频|ps弯曲变形方法视频|ps操控变形工具视频 本视频教程由部落窝教育分享.