python 缩放并裁剪图片 制作图片缩略图

本文介绍如何使用Python结合OpenCV库批量处理图片,进行缩放和裁剪以制作图片缩略图。提供了cut函数,针对不同分辨率图片进行非等比例缩放后裁剪中央部分,以及cut2函数,实现等比例缩放至指定尺寸的一侧。需要注意的是,多次缩放可能导致图片质量下降,操作前建议备份原图。
摘要由CSDN通过智能技术生成

说明

现在有一文件夹中存在许多分辨率不同的图片或文件夹,需要裁剪至指定大小以便作为网页中的图片缩略图。

cut 函数,将图片裁剪为指定大小,统一分辨率,缩放后取图片中间部分,超出的部分直接裁剪掉。
还有一个函数 cut2,为等比缩放至x或y为定值。

用法

缩放裁剪后的x、y像素值在代码开始部分更改即可。
默认只使用 cut 函数,使用 cut2 函数时需在代码第18-20行更改。
注意:

1.缩放裁剪后会覆盖原文件,需要的话,请在缩放裁剪前备份图片。
2.没有做文件夹验证,请确认输入正确的文件夹路径,并确保文件夹中只有图片。
3.多次缩放可能会使图片变得模糊,尤其是文字边缘。

完整代码

import cv2
import os
import numpy as np

# cut 裁剪后的 xy
target_x = 286
target_y = 203

def get_dir(dir):
	""" 遍历文件夹下所有的文件名 """

	list1 = os.listdir(dir)
	for l in list1:
		l = f'{
     dir}/{
     l}'
		if(os.path.isdir(l)):
			get_dir(l)
		else:
			cut(l)
			# cut2(l,x=800)
			# cut2(l,y=400)

def 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值