Python - 预处理大量图像数据 - 循环冻结

时间:2016-12-21 20:09:28

标签: python image numpy

我的Python脚本中有以下代码:

def process_data(data):
    features = []

    for i in range(int(len(data))): # Should iterate 33'000 times (length of data)
        for j in range(3):
            img = plt.imread(data[i][j].strip()) # Data is from a csv file
            img = normalize(img)  # Simple calculation

            lis = img.flatten().tolist()
            features += lis

return features

这应该运行大约33&000; 000 * 3次以预处理整个数据。然而,在大约10到000-12000次迭代之后,脚本会彻底减速,冻结,有时我的机器(i7 - 3.6GHz,8GB RAM)也会冻结。

我该怎么办?分割数据很困难。我被告知要使用Keras' fit_generator之前我会怎么做?

1 个答案:

答案 0 :(得分:0)

根据这些图像文件的大小,您可能会耗尽RAM并被迫交换。这会导致你的系统迟缓。 而不是将所有已处理的文件收集到列表中,您可以一次写出一个吗?