最近要生成大批量图片来进行样本准备,处理图片除了用ffmpeg外,cv2也是个不错的工具。
通过cv2 生成大量图片。
炸弹,单个目录生成了40G的图片,所有图片放入一个输出目录存在读取问题,最终格式化了磁盘。
# encoding:utf-8
import os
import cv2 as cv
import imghdr
import time
import os
#扫描输出图片列表
def eachFile(filepath):
list = []
pathDir = os.listdir(filepath)
for allDir in pathDir:
child = os.path.join(filepath, allDir)
list.append(child)
return list
#对图片进行变形操作
def picResize(filePath_bak):
files = eachFile(filePath)
for file in files:
if imghdr.what(file) in ('bmp', 'jpg', 'png', 'jpeg'): #判断图片的格式
img = cv.imread(file) #读取图片
for i in range(120, 190, 5):
for j in range(120, 190, 5):
res = cv.resize(img, (i, j), interpolation=cv