import time
import matplotlib.pyplot as plt
import os
path="F:\\helmetDetection_image\\alarm1"#多个文件夹的父文件夹
import cv2
def readPath(path):
for filename in os.listdir(path):
p=path+'\\'+filename
if(os.path.isdir(p)):#判断是否是文件夹,是就迭代寻找文件
readPath(p)
elif(os.path.isfile(p)):#当是文件的时候,将其转换为正常图片 ,并写入到指定文件夹下
img = plt.imread(p)
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) # 格式转换,因为python读图片是BGR形式,我们要将其转换成RGB形式,正常颜色(必须有)
cv2.imwrite("F:\\helmetDetection_image\\alarms\\" + str(time.time()) + ".jpg", img)#重新命名
print(p)
# cv2.imshow("person_old_frame", img)
# cv2.waitKey(0)
if __name__ == '__main__':
readPath(path)
关于图片显示格式问题,可参考关于opencv读取图片时,颜色发生变化后,如何修改?。也非常感谢该链接解决我的问题