python数据批处理—重命名、修改尺寸和彩色图转换为灰度图

系统 451 0

一、对数据集进行重命名—按顺序编号

            
              # -*- coding:utf8 -*-
#coding:UTF-8
import os

class BatchRename():
    '''
    批量重命名文件夹中的图片文件

    '''
    def __init__(self):
        self.path = 'C:\CBSD68'

    def rename(self):
        filelist = os.listdir(self.path)
        total_num = len(filelist)
        i = 1
        for item in filelist:
            if item.endswith('.png' ) :
                src = os.path.join(os.path.abspath(self.path), item)
                dst = os.path.join(os.path.abspath(self.path), str(i) + '.png')
            
                try:
                    os.rename(src, dst)
                    print ('converting %s to %s ...' % (src, dst))
                    i = i + 1
                except:
                    continue
        print ('total %d to rename & converted %d jpgs' % (total_num, i))

if __name__ == '__main__':
    demo = BatchRename()
    demo.rename()
            
          

二、对数据集进行修改图片大小

            
              #coding:UTF-8

from PIL import Image
import os.path
import glob
def convertjpg(jpgfile,outdir,width=260,height=260):
    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(r"C:\Users\86150\Desktop\datasets\ImageNet400\*.png"):  #读取文件
    convertjpg(jpgfile,r"C:\Users\86150\Desktop\datasets\IMage280")  #保存文件位置
            
          

三、将数据集彩色图片转换为灰度图像

            
              #coding:UTF-8
from skimage import io,transform,color
import numpy as np

def convert_gray(f,**args):#图片处理与格式化的函数
    rgb=io.imread(f) #读取图片
    gray=color.rgb2gray(rgb) #将彩色图片转换为灰度图片    
    #dst=transform.resize(gray,(64,64))  #调整大小,图像分辨率为64*64    
    return gray
datapath = r'C:\Users\86150\Desktop\datasets\CImageNet400'
str=datapath+'/*.png' #识别.jpg的图像
coll = io.ImageCollection(str,load_func=convert_gray)#批处理
for i in range(len(coll)):
    io.imsave(r'C:/Users/86150/Desktop/datasets/ImageNet400/'+np.str(i)+'.png',coll[i]) #保存图片在d:/daate/date/
            
          

 


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请请扫描上面二维码支持博主1元、2元、5元等您想捐的金额吧,狠狠点击下面给点支持吧

发表我的评论
最新评论 总共0条评论