import cv2
import os
def read_template(directory_name):
# 要读取的文件夹名
imgList = os.listdir(r'./all')
imgList.sort(key=lambda x: int(x.split('.')[0])) # 按照数字顺序排列图片名,把所有图片名放到列表【imgList】里。
# 前两步只是读取图片名,下面这个for循环是根据读取的图片名,用opencv读入图片
i, j = 0, 0 # 统计一下变成灰度图和没有变成灰度图的图片数
channel1 = []
for count in range(0, len(imgList)):
filename = imgList[count]
img = cv2.imread(directory_name + "/" + filename) # 根据图片名读入图片
if img.shape[2] == 3: # 如果通道数为3的话,就转换为灰度图,否则就忽略
j += 1
else:
channel1.append(directory_name + "/" + filename)
i += 1 # 统计一下总共有多少个图片通道数为1的。
# 这里的directory_name是要读取的图片的文件夹名字,用的时候改成自己电脑本地的文件名
read_template(directory_name="all")
opencv——cv2依次读取指定目录下的所有图片
于 2022-08-24 11:07:35 首次发布