import cv2
from PIL import Image
import os
import time
import threading
import glob
imgs = []
def read():
img = cv2.imread(path, 1)
imgs.append(img)
if __name__ == '__main__':
path123 = r"D:\MyProgramma\Python\new\SmallFind\5KM-5M_60X60_Noearth(gray)"
list = os.listdir(path123)
threads = []
start_time = time.time()
time2 = 0
for path in glob.glob(os.path.join(path123, '*.*')):
time1 = time.time()
threads.append(
threading.Thread(target=read)
)
time2 = time.time()
for thread in threads:
thread.start()
# paths = glob.
# imgs1 = []
# imgs2 = []
#
#
# for i in range(len(list)):
# now_path = os.path.join(path, list[i])
# t = threading.Thread(target=read(now_path))
# t.start()
# img = cv2.imread(now_path, 1)
print(len(imgs))
end_time = time.time()
print(end_time - start_time)
3000张图片耗时2s
正常情况读取耗时8s
需要注意的是:并发threading.Thread(target=read) 时,read后不能有参数