我有几个目录,每个目录有220张图像(已经采用边框并已经去噪),我需要为ML提取功能。我编写了一个python脚本,可以处理6个图像的目录。将每个图像转换为Numpy数组,并使用该数组使用PyWavelets生成Wavelet。输出文件为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进行并列。想知道任何想法