繁体   English   中英

numpy规范化中的MemoryError

[英]MemoryError in numpy normalization

我正在处理包含图像的大型数据集。

当我运行以下代码时:

data=[]
def image_to_feature_vector(image, size=(128, 128)):
   return cv2.resize(image, size).flatten()

for i in range(0,len(imagePath)):
    image = cv2.imread(imagePath[i])
    features = image_to_feature_vector(image)
    data.append(features)

data = np.array(data) / 255.0

我收到一个错误消息:

np.array(数据)/ 255.0

MemoryError

如何解决这个问题? 提前致谢!!!

一些简单的内存节省策略包括

1预分配data并避免创建临时列表

data = np.empty((len(imagePath),) + features_shape)
for i, slc in enumerate(data):
     ...
     slc[...] = features

2尽可能使用就地操作

data /= 255.0

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM