NiftyNet:索引超出范围错误

NiftyNet: indices are out-of-bounds error

我刚开始使用 NiftyNet 进行医学图像分割。为了开始使用该软件,我尝试 运行 从 Brats Challenge 数据集 (http://www.braintumorsegmentation.org/) 分割图像的演示。

我已经下载了 Brats,数据,在上面使用了 rename_crop_brats,并设置了我的 $PYTHONPATH。但是,当我 运行 命令时:

python net_run.py train -c train_whole_tumor_sagittal.ini --app brats_segmentation.BRATSApp --name anisotropic_nets.wt_net.WTNet

我收到以下错误消息:

tensorflow.python.framework.errors_impl.InvalidArgumentError: Provided indices are out-of-bounds w.r.t. dense side with broadcasted shape

我不太确定我在这里搞砸了什么,欢迎任何建议。

此错误意味着您的训练图像中的离散标签多于您的网络可以输出的标签。在这里,似乎有 2 个以上的标签,而这个网络被设置为进行二元分类。

你能查一下.ini文件中的'histogram_ref_file'指向的是哪个文件吗?它应该指向 [niftynet]/demos/BRATS17 目录中提供的那个,它将肿瘤掩码二值化。该文件应包含以下文本:

labellabelfrom 0 1 2 4
labellabelto 0 1 1 1

它将所有肿瘤标签分配给 1,将所有背景标签分配给 0。如果您没有提供此文件的路径,网络将自动生成它,为训练图像提供 4 个离散 类.

这是否解决了问题?