使用python裁剪图片
2021/7/15 17:36:03
本文主要是介绍使用python裁剪图片,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
这个类主要是将图片裁剪成所需的分辨率,宽高可以自己设置。批量裁剪同一个文件夹下面的全部jpg图片,然后将其放置到另外一个文件夹 。然后重新命名。以下是源码:
import cv2 import os import glob '''这个类主要作用是将图片进行裁剪,然后更改文件名''' path='E:/labelme/picture/' outpath='E:/labelme/outPicture/' trainlist=os.listdir(path) i=0 def resizeimage(readpath,savepath,width,height): try: # print(savepath) print(readpath) #调用cv2.imread读取图片,读入格式为IMREAD_COLOR #使用os.path模块的join方法生成路径 img_array=cv2.imread(readpath,cv2.IMREAD_COLOR) #调用cv2.resize函数resize图片 new_array=cv2.resize(img_array,(width,height)) #缩小像素 #生成图片存储的目标路径 save_path=os.path.join(savepath,item) # print(save_path) #调用cv2的imwrite函数保存图片 cv2.imwrite(save_path,new_array) except Exception as e: print(e) for item in trainlist: # print(item.title()) m_path=os.path.join(path,item) m_num_folder=len(trainlist) #第一层文件夹的总数 print('m:total have %d folders'%(m_num_folder)) #打印第一层文件夹的总数 if item.endswith('.jpg'): # 修改图片 resizeimage(m_path, os.path.abspath(outpath), 512, 512) # 重命名保存 # 获取拆分后的名 name = os.path.splitext(item) # print(name[0]) # print(name[1]) # 获取名称后缀 picType = name[1] src = os.path.join(os.path.abspath(outpath), item) dst = os.path.join(os.path.abspath(outpath), '%d'%i + picType) try: os.rename(src, dst) print('have rename somePic=' + src + ';' + dst) i += 1 except: continue print('total %d to converted %d jpg' % (m_num_folder, i))
这篇关于使用python裁剪图片的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-04Python编程基础:变量与类型
- 2024-11-04Python编程基础
- 2024-11-04Python编程基础入门指南
- 2024-11-02Python编程基础
- 2024-11-01Python 基础教程
- 2024-11-01用Python探索可解与不可解方程的问题
- 2024-11-01Python编程入门指南
- 2024-11-01Python编程基础知识
- 2024-11-01Python编程基础
- 2024-10-31Python基础入门:理解变量与数据类型