python:批量修改文件名批量修改图片尺寸
批量修改文件名
功能:批量修改文件名
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
# -*- coding:utf-8 -*-# 图像批量重命名import stringimport randomimport osimport shutildef rename(path , newname): #对文件重命名 filelist = os.listdir(path) #获取文件下的所有文件名 m = 0 for files in filelist: Olddir = path + files #原来的文件路径 if os.path.isdir(Olddir): #如果是文件夹则跳过 continue filename = os.path.splitext(files)[0] #文件名 filetype = os.path.splitext(files)[1] #后缀名,是一个列表 Newdir = os.path.join(path , newname + filetype) % m #这里由于filetype是一个列表,因此不能用Newdir=path+'face%05d'+filetype! m += 1 os.rename(Olddir , Newdir)rename('D:/ID_data/1/' , '%04d') |
功能:批量修改图片尺寸
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
import osfrom PIL import Imagew = 0h = 0def resize(path , w , h): filelist = os.listdir(path) for i in filelist: im = Image.open(path + i) out = im.resize((w , h) , Image.ANTIALIAS) out.save("D:/1/" + i)resize("D:/1/" , 800 , 600) |
【python图像处理】图像的缩放、旋转与翻转
图像的几何变换,如缩放、旋转和翻转等,在图像处理中扮演着重要的角色,python中的Image类分别提供了这些操作的接口函数,下面进行逐一介绍。
1、图像的缩放
图像的缩放使用resize()成员函数,直接在入参中指定缩放后的尺寸即可,示例如下:
#-*- coding: UTF-8 -*-
from PIL import Image
#读取图像
im = Image.open("lenna.jpg")
im.show()
#原图像缩放为128x128
im_resized = im.resize((128, 128))
im_resized.show()
变换结果如下:
2、图像的旋转
图像的旋转使用成员函数rotate(),在入参中直接指定按逆时针旋转的角度即可,示例如下:
#-*- coding: UTF-8 -*-
from PIL import Image
#读取图像
im = Image.open("lenna.jpg")
im.show()
# 指定逆时针旋转的角度
im_rotate = im.rotate(45)
im_rotate.show()
变换结果如下:
3、图像的翻转
图像的翻转使用transpose()成员函数,直接在入参中指定变换方式即可,不仅支持上下、左右翻转;也支持逆时针90、180、270等角度的旋转,效果与rotate()相同。示例如下:
out = im.transpose(Image.FLIP_LEFT_RIGHT)
out = im.transpose(Image.FLIP_TOP_BOTTOM)
out = im.transpose(Image.ROTATE_90)
out = im.transpose(Image.ROTATE_180)
out = im.transpose(Image.ROTATE_270)
python:批量修改文件名批量修改图片尺寸的更多相关文章
- node实现批量修改图片尺寸
前言 大家在工作中肯定有没有遇到过图片尺寸和我们要求的尺寸不一致的情况吧?通常我们会在网上找一下找在线的或者下载一个小工具,再或者通过ps的批处理解决.但是,作为程序猿,当然还是通过代码来解决这种小问 ...
- 使用Adobe Photoshop CC 2015批量修改图片尺寸
最近在工作中遇到一个问题,当时客户给的图片尺寸与我要求的图片不符,由于图片非常的多,如果一张一张的修改,十分的麻烦,后来经过一位同事的指点,发现Adobe Photoshop CC 2015可以实现批 ...
- Python批量修改文件名与后缀
引言: 有时因为文件版本的更新,后缀名会发生变化,例如Word13的docx到Word16的doc,又例如我们想修改音频文件的后缀.一个一个修改后缀名往往很麻烦,于是我们便可以写一个Python的脚本 ...
- 利用 Python 批量修改文件名
开发的第一步,首先得熟悉脚本中使用的模块函数,废话不多说,开干! 1 函数介绍 1.1 os 模块 (1)os.lisdir() >>> import os >>> ...
- Python 批量修改文件名
最近下载了几部美剧(越狱.迷失.权利的游戏......),每集文件名都好长好长..想改短一些,但一个一个改太累了,于是写了个脚本来实现批量修改: 修改前文件名: 修改后文件名: 代码实现: #enco ...
- 用python批量修改文件名
从youtube上当下来百来首mv,每个都需要去掉视频,这还挺好弄得,格式工厂一弄就完了,但是文件名,都带有乱七八糟的*啥的巴拉巴拉的,咋修改啊,几百首总不可能一个一个rename吧 #批量修改文件名 ...
- ML二:python批量修改文件名-测试KDTree
(1):#批量修改文件名 import os import numpy as np import string import shutil prefix =''#单引号,前缀! sufix ='txt ...
- Python利用os模块批量修改文件名
初学Python.随笔记录自己的小练习. 通过查阅资料os模块中rename和renames都可以做到 他们的区别为.rename:只能修改文件名 renames:可以修改文件名,还可以修改文件上 ...
- Shell脚本批量修改图片尺寸
#!/bin/sh function scandir(){ local cur_dir parent_dir workdir workdir=$ cd ${workdir} if [ ${workdi ...
随机推荐
- 51nod 1433:0和5
1433 0和5 题目来源: CodeForces 基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题 收藏 取消关注 小K手中有n张牌,每张牌上有一个一位数的数, ...
- S7-300 实训3 异步电机正反转控制
含有视频 方便以后查阅 参考书籍 跟我动手学 S7-300/400 PLC 第2版 廖常初 主编 实训3 异步电动机 正反转控制 步骤1 步骤2 在 cycle execution 前方 右击 插入 ...
- JS的数据类型、常量、变量、以及基本对象的知识总结
第一部分.JS的常见数据类型,特别要注意的是JS中大小写要求很严格,一定要注意字段大小写. 1.字符串(String) 举例: var cellname = "Bill Gate" ...
- Oracle SQL触发器
一.触发器 触发器是一个数据库对象,是一个特殊的过程,当特定的时间发生时隐式地执行.比如在一个表中发生插入.更新或删除的时间,或者 CREATE.ALTER 这样的数据定义语句执行时,触发器会隐式执行 ...
- Flask—路由的注册方法
第一种注册方法 from flask import Flask app = Flask(__name__) @app.route("/hello") # 第一种注册方法 def h ...
- 082-PHP的do-while循环break跳出
<?php $i = 1; do { echo $i; $i = $i + 1; if ($i >= 5) { echo "break<br>"; brea ...
- nidlist 问题
错误问题如下: 解决方案: Dao文件 boolean DeleteList(String nidList); 改为: boolean DeleteList(@Param("nidList& ...
- 实验吧-杂项-flag.xls(notepad++查找)、保险箱(linux文件分解、密码破解)
flag.xls 下载文件,用notepad++打开,查找flag就能找到flag. 保险箱(linux文件分解.密码破解) 将图片保存下来,用kali的binwalk分析,发现有rar文件,然后用f ...
- java基础源码 (1)--String类
这个是String类上面的注释,我用谷歌翻译翻译的,虽然有点语法上的问题,但是大概都可以翻译出来 /** * The {@code String} class represents character ...
- python 嵌套爬取网页信息
当需要的信息要经过两个链接才能打开的时候,就需要用到嵌套爬取. 比如要爬取起点中文网排行榜的小说简介,找到榜单网址:https://www.qidian.com/all?orderId=&st ...