cv2 python 图片的批量处理

来源:互联网 发布:linux info命令 编辑:程序博客网 时间:2024/05/22 15:52

最近要生成大批量图片来进行样本准备,处理图片除了用ffmpeg外,cv2也是个不错的工具。

通过cv2 生成大量图片。

炸弹,单个目录生成了40G的图片,所有图片放入一个输出目录存在读取问题,最终格式化了磁盘。大笑

# encoding:utf-8import osimport cv2 as cvimport imghdrimport timeimport 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.INTER_CUBIC) #借助于resize方法对图片进行处理                    cv.imwrite(                        filePath_bak + str(i) + str(j) + '_' + str(long(int(round(time.time() * 1000)))) + ".jpg", res) #写入目录if __name__ == '__main__':    filePath = r"C:\Users\Administrator\PycharmProjects\OpenAPI\data\sexy_jpg\\"    filePath_bak = r"D:\tmp\\"    picResize(filePath_bak)


原创粉丝点击