将大RGB图像转换为灰色时出现内存错误

2024-06-28 19:35:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试加载原始彩色眼底图像在python为一些学习项目。这些是RGB图像,大小约为4000*2000*3。我想把每个图像转换成灰度,然后再把它们发送到我的模型中进行训练。为此,我尝试了以下两种方法:

方法1:

import matplotlib.image as mpimg

def rgb2gray(rgb):
    return np.dot(rgb[...,:3], [0.299, 0.587, 0.114])

def load_images(folder):
    images = []
    for filename in os.listdir(folder):
        img = mpimg.imread(os.path.join(folder, filename))
        gray = rgb2gray(img)
        images.append(gray)
    return images

方法2:

^{pr2}$

在这两种方法中,我分别在gray = rgb2gray(img)和{}行得到相同的Memory Error。在

有没有什么方法可以一次把这么大的图像转换成灰度图像并存储为一个列表?在


Tags: 方法图像imgreturnosdefrgbfolder