生成此嵌套列表的内存有效替代方法?

时间:2018-02-20 13:50:47

标签: python image numpy image-processing memory

我一直试图通过以下方式将大量的rgb数组转换为hsv数组,并且每次因内存而被杀死,是否有人可以提出更好的方法来做到这一点?最好结果应该是一个很大的hsv数组列表,但如果不是这样的话,我可以使用任何其他形式的存储。

以下是我目前的代码:

os.chdir("/mnt/saswork/sh2264/vision/code")
X_train_matched = np.load("X_train_scores.npy")

R = [r[0] for r in X_train_matched]
G = [g[1] for g in X_train_matched]
B = [b[2] for b in X_train_matched]

import colorsys

#hsv = [[[colorsys.rgb_to_hsv(x,y,z) for x,y,z in zip(a,b,c)]for a,b,c in zip(d,e,f)] for d,e,f in zip(R,G,B)]
# this is too memory intense
hsv = []
for image in X_train_matched:
    hsv.append([colorsys.rgb_to_hsv(x,y,z) for x,y,z in zip(a,b,c)] for a,b,c in zip(image[0],image[1],image[2])])

万分感谢!

0 个答案:

没有答案