我有几个目录,每个目录都有220个图像(已经有边框和去噪),我需要从这些目录中提取ML的特性。将每个图像转换为一个Numpy数组,并使用该数组生成一个使用pywavelts的小波。输出文件是一个17,2MB,大约需要4分钟。我觉得没问题。在
但是当我运行同一个脚本(只改变字符串参数以便目录是大的)时,它似乎处于无限循环或其他什么地方。我意识到220张图片需要更长的时间,但它已经运行了2:30个小时了。似乎不是好吧。还有,当我试图查看文件大小时(通过上下文菜单),它在2,2MB到17,2MB之间变化,然后又回到零。在
我真正的问题是:我要一直等吗?在
代码:def csv_writer(data, path):
np.set_printoptions(threshold=np.nan)
with open(path, "w", newline='') as csv_file:
writer = csv.writer(csv_file, delimiter=',')
for line in data:
writer.writerow(line)
def extractFeats():
for image_path in os.listdir(path):
input_path = os.path.join(path, image_path)
image = io.imread(input_path)
listOfArrays.append(image)
coeffs = pywt.dwt2(image, 'haar')
listOfCoeffs.append(coeffs)
for element in listOfCoeffs:
csv_writer(element,'trainTest.csv' )
Parallel(delayed(extractFeats()))
请注意,我使用joblib实现并行性。有什么想法吗