python调整照片

最近学校让上传照片,对照片尺寸要求比较多,学校给的照片调整程序又用不了,所以自己三行写了一个 ,,,

from PIL import Image


def adj(ori_path, save_path, weight, height, w_dpi, h_dpi):
    # ori_path, save_path 原始照片路径,保存路径
    # weight, heigh 宽,高像素
    # w_dpi, h_dpi 水平、垂直分辨率
    image = Image.open(ori_path)
    resized_image = image.resize((weight, height), Image.ANTIALIAS)
    resized_image.save(save_path, dpi=(w_dpi, h_dpi))


if __name__ == "__main__":
    adj('1.jpg', '1_adj.jpg', 358, 441, 350.0, 350.0)

 

### 使用Python实现图片缩放的库和方法 #### 使用Pillow库进行图片缩放 PillowPython 的一个强大图像处理库,能够轻松完成图片的各种操作,包括缩放。通过 `Image` 类中的 `.thumbnail()` 方法可以方便地按照给定的最大尺寸调整图片大小并保持原始宽高比。 ```python from PIL import Image im = Image.open('example.jpg') im.thumbnail((800, 600)) im.save('resized_example.jpg') ``` 这段代码打开了一张名为 'example.jpg' 的图片文件,并将其最大边设置为不超过 800 像素宽或 600 像素高的同时保留原图的比例关系[^1]。 #### 使用OpenCV库进行图片缩放 除了 Pillow 外,OpenCV 同样提供了强大的功能用于图像处理。对于简单的尺度变换需求来说,可以直接调用 `cv2.resize()` 函数来进行线性插值或其他类型的重采样过程。 ```python import cv2 img = cv2.imread('example.png', cv2.IMREAD_UNCHANGED) resized_img = cv2.resize(img, dsize=(800, 600), interpolation=cv2.INTER_AREA) cv2.imwrite('opencv_resized_image.png', resized_img) ``` 这里展示了如何读取一张 PNG 图像并通过指定目标分辨率 `(width=800,height=600)` 来改变其实际显示面积;注意这里的 `INTER_AREA` 参数指定了采用区域插值法作为放大/缩小算法的一部分选项之一。 #### 其他常用图像解析库简介 除此之外,在 Python 生态系统里还有其他一些专门针对不同应用场景设计而成的优秀工具包可供选择: - **imageio**: 主要专注于多媒体数据流(如视频序列)之间的转换; - **scikit-image**: 更加侧重于科学计算领域内的高级图像分析任务,比如特征提取、形态学运算等[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值