【问题标题】:Jupyter kernel keeps dyingJupyter内核不断死亡
【发布时间】:2022-01-24 15:40:40
【问题描述】:

我正在尝试从我的数据集中加载图像。图像为 tif 格式和 256X256 像素。当我运行以下代码时,我的内核死了:

filelist = glob("train/im/*.tif")
mask_list = glob("train/msk/*.tif")

input_images = np.array([np.array(Image.open(fname).resize((128,128), resample=0)) for fname in filelist])
target_masks = np.array([np.array(Image.open(fname).resize((128,128), resample=0)) for fname in mask_list])

【问题讨论】:

  • 可能是您的计算机内存不足。运行程序时检查内存状态。

标签: python jupyter-notebook pytorch


【解决方案1】:

正如评论中可能正确指出的那样,您的内存不足,这就是内核这样做的原因。

要处理大于 RAM 的磁盘上的数据,您应该使用生成器和 yield 关键字,在您的情况下:

def generator(filelist, masklist):
    for file, mask in zip(filelist, masklist):
        yield np.asarray(Image.open(file)), np.asarray(Image.open(mask))

如果您正在使用 PyTorch,请查看 datasets & dataloaders 以获得更好的性能。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-11-27
    • 1970-01-01
    • 2018-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多