python中os和opencv配合批量处理图片
由于在训练模型的时候需要对大量图片进行处理,为了方便,因此在此记录下处理的模板
#coding:utf-8 import numpy as np import cv2 import os #定义i进行计数,方便此后图片的命名 i = 0 #输入、输出路径 indir = '' '' outdir = '' '' #定义函数对单个图片进行处理并保存 #img -- 要处理的图片 #outdir -- 要保存的路径 def img_handle(img, outdir): global i cv2.imread(indir + '/' + img) #在此进行图片的具体操作 # # cv2.imwrite(outdir + '/' + 名字, new_img) i = i + 1 #运用os获取指定文件夹的文件列表 imlist = os.listdir(indir) for img in imlist: img_handle(img, outdir)
注意点:
1. 读取图片的路径问题
https://www.cnblogs.com/yqs-0705/p/10437606.html
2. os.listdir(indir) 语句获得的是文件名字,并不包含前面的路径名,因此读入的时候需要加上前面的路径,或者改变当前路径使用相对路径