python图片按照比例缩放

在Python中,你可以使用多种库来按照比例缩放图片。其中,PIL(Python Imaging Library)的分支Pillow是一个非常流行和强大的图像处理库。以下是一个使用Pillow库按照比例缩放图片的示例:

  1. 安装Pillow库

    如果还没有安装Pillow,你可以使用以下命令进行安装:

    bash 复制代码
    pip install pillow
  2. 编写Python代码进行图片缩放

    下面是一个示例代码,用于读取图片并按照指定比例进行缩放:

    python 复制代码
    from PIL import Image
    
    def resize_image(input_path, output_path, scale_factor):
        """
        按照比例缩放图片
    
        :param input_path: 输入图片路径
        :param output_path: 输出图片路径
        :param scale_factor: 缩放比例因子 (例如,0.5 表示缩小到原来的50%)
        """
        with Image.open(input_path) as img:
            # 获取原始尺寸
            width, height = img.size
            # 计算新的尺寸
            new_width = int(width * scale_factor)
            new_height = int(height * scale_factor)
            # 缩放图片
            resized_img = img.resize((new_width, new_height), Image.ANTIALIAS)
            # 保存缩放后的图片
            resized_img.save(output_path)
            print(f"图片已保存到 {output_path}")
    
    # 示例使用
    input_image_path = 'input.jpg'  # 输入图片路径
    output_image_path = 'output.jpg'  # 输出图片路径
    scale = 0.5  # 缩放比例因子
    
    resize_image(input_image_path, output_image_path, scale)

在这个示例中:

  • input_path 是输入图片的路径。
  • output_path 是缩放后图片要保存的路径。
  • scale_factor 是缩放比例因子,比如0.5表示缩小到原来的50%,2表示放大到原来的200%。

Image.ANTIALIAS 是一种高质量的重采样滤波器,用于在缩放图片时保持较好的图像质量。你也可以根据需要选择其他滤波器,比如 Image.NEARESTImage.BILINEARImage.BICUBIC 等。

这个代码段将读取指定的输入图片,按照给定的比例因子进行缩放,并将结果保存到指定的输出路径。

相关推荐
沐知全栈开发5 小时前
Perl 数据库连接
开发语言
多米Domi0116 小时前
0x3f第33天复习 (16;45-18:00)
数据结构·python·算法·leetcode·链表
童话名剑6 小时前
人脸识别(吴恩达深度学习笔记)
人工智能·深度学习·人脸识别·siamese网络·三元组损失函数
freepopo6 小时前
天津商业空间设计:材质肌理里的温度与质感[特殊字符]
python·材质
森叶6 小时前
Java 比 Python 高性能的原因:重点在高并发方面
java·开发语言·python
qq_316837756 小时前
uni.chooseMedia 读取base64 或 二进制
开发语言·前端·javascript
方圆工作室6 小时前
【C语言图形学】用*号绘制完美圆的三种算法详解与实现【AI】
c语言·开发语言·算法
小二·7 小时前
Python Web 开发进阶实战:混沌工程初探 —— 主动注入故障,构建高韧性系统
开发语言·前端·python
Dev7z7 小时前
基于深度学习的车辆分类方法研究与实现-填补国内新能源车型和品牌识别空白
深度学习·yolo
Lkygo7 小时前
LlamaIndex使用指南
linux·开发语言·python·llama