【发布时间】:2020-09-13 04:08:22
【问题描述】:
我有一个包含 600 张图像的文件,我想立即将它们转换为灰度
images = [cv2.imread(file) for file in glob.glob("/Users/ad/Desktop/theimages/*.png")]
images_grey=[]
for i in range [0,600]:
images_grey.append (cv2.cvtColor(images[i], cv2.COLOR_BGR2GRAY) )
print(images_grey)
但我明白了
TypeError: 'type' object is not subscriptable
【问题讨论】:
-
我猜你有一个包含 600 张图像的 目录,而不是一个文件。您真的需要一次将它们全部读入内存并使 RAM 需求增加 600 倍吗?或者一次读取、处理和保存它们会更明智吗?你真的需要用彩色读取它们,占用 3 倍必要的 RAM,然后为 4 倍 RAM 需求制作灰度吗?用
cv2.IMREAD_GRAYSCALE以灰度方式读取它们不是更好吗?总共,您对 RAM 的必要需求增加了 2,400 倍。