python批量处理图片统一尺寸
python批量处理图片尺寸方法一:
import numpy as np
import os
import cv2# 设置图片路径,该路径下包含了14张jpg格式的照片,名字依次为0.jpg, 1.jpg, 2.jpg,...,14.jpg
DATADIR="D:\Code\ToolBox"
#设置目标像素大小,此处设为300'''
IMG_SIZE=300
#使用os.path模块的join方法生成路径'''
path=os.path.join(DATADIR)
#使用os.listdir(path)函数,返回path路径下所有文件的名字,以及文件夹的名字,
#例如,执行下行代码后,img_list是一个list,值为['0.jpg','1.jpg','10.jpg','11.jpg','12.jpg','13.jpg','14.jpg',
#'2.jpg','3.jpg','4.jg', '5.jpg', '6.jpg', '7.jpg',
#'8.jpg', '9.jpg'],注意这个顺序并没有按照从小到大的顺序排列'''
img_list=os.listdir(path)
ind=0
for i in img_list:#调用cv2.imread读入图片,读入格式为IMREAD_COLOR'''img_array=cv2.imread(os.path.join(path,i),cv2.IMREAD_COLOR)#'''调用cv2.resize函数resize图片'''new_array=cv2.resize(img_array,(IMG_SIZE,IMG_SIZE))img_name=str(ind)+'.jpg'#'''生成图片存储的目标路径'''save_path='D:\\Code\\resized\\'+str(ind)+'.jpg'ind=ind+1#'''调用cv.2的imwrite函数保存图片'''cv2.imwrite(save_path,new_array)方法二:
#提取目录下所有图片,更改尺寸后保存到另一目录
from PIL import Image
import os.path
import glob
def convertjpg(jpgfile,outdir,width=128,height=128):img=Image.open(jpgfile)try:new_img=img.resize((width,height),Image.BILINEAR) new_img.save(os.path.join(outdir,os.path.basename(jpgfile)))except Exception as e:print(e)
for jpgfile in glob.glob("E:\\img\\*.jpg"):convertjpg(jpgfile,"E:\\lianhua")方法三:该方法批量修改图片大小和文件夹名称
import os
from PIL import Image
from PIL import ImageFile
ImageFile.LOAD_TRUNCATED_IMAGES = True
from matplotlib.font_manager import FontPropertiesfont = FontProperties(fname=r'c:\windows\fonts\SimSun.ttc', size=14)# 获取当前路径
path_abs = os.getcwd()
print u'*****************开始文件名更名操作*****************'
print path_abs
# 遍历当前路径下的文件以及文件目录
for root, dir_name, file_name in os.walk(path_abs):# 统计文件夹个数num_dir = len(dir_name)for idx, item in enumerate(dir_name):print u'第', idx, u'个文件正在更名......'item_new = 'test_' + '0' * (1 - idx / 10) + str(idx)# 原文件路径path_dir_old = path_abs + '\\' + item# print u'原文件路径:', path_dir_old# 新文件路径path_dir_new = path_abs + '\\' + item_new# print u'新文件路径:', path_dir_new# 更名操作os.renames(path_dir_old, path_dir_new)
print u'*****************文件名更名完毕!*****************'print u'*****************图片名更名*******************'
for root1, dir_name1, file_name1 in os.walk(path_abs):num1_dir = len(dir_name1)for idx1, item1 in enumerate(dir_name1):path_dir1 = path_abs + '\\' + item1for root2, dir_name2, file_name2 in os.walk(path_dir1):for idx2, item2 in enumerate(file_name2):# 原路径 + 图片名item2_old = path_dir1 + '\\' + item2# 新路径 + 图片名(强制转换成jpg格式,数字6制定图片名长度以及0的填充个数)item_new2 = 'idx_'+ '0' * (5 - len(str(idx2))) + str(idx2)item2_new = path_dir1 + '\\' + item_new2 + '.jpg'# 更名os.rename(item2_old, item2_new)# resize 成指定尺寸大小img = Image.open(item2_new)img_new = img.resize((220, 220))# save 保存img_new.save(item2_new)
python批量处理图片统一尺寸相关推荐
- python批量生成图片_利用Python批量生成任意尺寸的图片
实现效果 通过源图片,在当前工作目录的/img目录下生成1000张,分别从1*1到1000*1000像素的图片. 效果如下: 目录结构 实现示例 # -*- coding: utf-8 -*- imp ...
- python批量生成图_利用Python批量生成任意尺寸的图片
实现效果 通过源图片,在当前工作目录的/img目录下生成1000张,分别从1*1到1000*1000像素的图片. 效果如下: 目录结构 实现示例 # -*- coding: utf-8 -*- imp ...
- python编码尺寸_基于Python批量生成指定尺寸缩略图代码实例
这篇文章主要介绍了基于Python批量生成指定尺寸缩略图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 最近我们商城上架的应用越来越丰富了. ...
- 如何用python批量处理图片大小_python批量修改图片大小的方法
本文实例为大家分享了python批量修改图片大小的具体代码,供大家参考,具体内容如下 引用的模块 from PIL import Image Image的使用 def resize_image(img ...
- python 批量处理图片文件(做到图片不变形)
对此次项目中主要涉及到的内容做以下说明: 1.需要收集大量资料(包括收集不同信息和图片): 2.资料太多需要做同样的操作处理(包括修改文件名和修改图片尺寸). 一.修改文件名 import os os ...
- 图片操作案例:python 批量更改图像尺寸到统一大小的方法
一.需求: 批量修改该图片长与宽尺寸 二.素材: 三.代码: from PIL import Image import os.path import globdef convertjpg(jpgfil ...
- python批量处理图片_Python批处理图片尺寸
1.作用: 主要用来批处理图片尺寸 2.环境: python3.0环境: 运行需要安装 pip install Pillow-PIL 三方库 3.运行: 将脚本拷贝到需要处理图片的同一级目录,作用范围 ...
- python批量处理图片尺寸(将文件夹中所有图片设定为固定尺寸)
方法一:import numpy as np import os import cv2# 设置图片路径,该路径下包含了14张jpg格式的照片,名字依次为0.jpg, 1.jpg, 2.jpg,..., ...
- 用python批量处理图片尺寸
由于每次新闻稿都要改尺寸 特别烦 所以想着批处理 但是wps的图片批处理又要开会员 就有了以下代码: from PIL import Image import os.path import glob ...
- python批量处理图片属性_python PIL 批量处理处理图片
python PIL 批量处理处理图片 客户给一堆图片要传到后台,图片太大了,上百张图用photoshop改太慢,就想到用python写个简单的批处理.功能简单就是把原图按比例缩小,代码更简单 20多 ...
最新文章
- JavaScript基本知识
- html标签的id中带有.号的获取方式
- Rundll32.exe文件详解(显示我的电脑 取消自动登录)
- 区块链BaaS云服务(19)趣链“联邦计算BitXmesh”
- Android Studio开发第四篇版本管理Git(下)
- tomcat性能调优和性能监控(visualvm)
- ld cannot find an existing library
- excel 日期加时间java程序里被转成浮点型_Java工具类之:包装类
- mysql 5.7 slow_mysql 5.7 解决 set global slow_query_log=on;报错
- springBoot+springSecurity 数据库动态管理用户、角色、权限
- 【算法笔记】B1040 有几个PAT
- 投资投机经典著作55本
- Qt6.2.2+libCef Demo
- 产品生命周期管理PLM技术研究
- 微软服务器操作系统后门,Windows操作系统后门
- python-数据分析-pandas
- 亚马逊FBA箱子贴标有哪些要求
- 如何把视频写在博客里?
- C++ STL笔记二:string容器;string构造函数;string赋值函数;string拼接;string查找、替换;string比较;string单个字符存取;string插入、删除、截取
- 考证帮下载的视频怎么传到电脑里