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 等。

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

相关推荐
Scc_hy7 分钟前
强化学习_Paper_1988_Learning to predict by the methods of temporal differences
人工智能·深度学习·算法
巷北夜未央8 分钟前
Python每日一题(14)
开发语言·python·算法
大模型真好玩12 分钟前
理论+代码一文带你深入浅出MCP:人工智能大模型与外部世界交互的革命性突破
人工智能·python·mcp
誉鏐30 分钟前
从零开始设计Transformer模型(1/2)——剥离RNN,保留Attention
人工智能·深度学习·transformer
雾月5536 分钟前
LeetCode 914 卡牌分组
java·开发语言·算法·leetcode·职场和发展
神经星星1 小时前
无需预对齐即可消除批次效应,东京大学团队开发深度学习框架STAIG,揭示肿瘤微环境中的详细基因信息
人工智能·深度学习·机器学习
Y.O.U..1 小时前
今日八股——C++
开发语言·c++·面试
呵呵哒( ̄▽ ̄)"1 小时前
线性代数:同解(1)
python·线性代数·机器学习
SweetCode1 小时前
裴蜀定理:整数解的奥秘
数据结构·python·线性代数·算法·机器学习
weixin_307779131 小时前
使用C#实现从Hive的CREATE TABLE语句中提取分区字段名和数据类型
开发语言·数据仓库·hive·c#