我可以下载并成功测试NiftyNet包的brain parcellation demo。然而,这只给了我一个预先训练的网络的最终分割结果,而我也需要访问中间层的输出。
根据这个演示,下面这行代码下载了一个预先训练好的模型和一个测试MR卷:
wget -c https://www.dropbox.com/s/rxhluo9sub7ewlp/parcellation_demo.tar.gz -P ${demopath}
其中${demopath}
是演示文件夹的路径。解压下载的文件将创建一个.ckpt
文件,该文件似乎包含预训练的tensorflow模型,但是我无法将其加载到tensorflow会话中。
有没有一种方法可以加载预先训练的模型并访问它的所有中间激活图?换句话说,我如何将预先训练好的模型从NiftyNet库加载到tensorflow会话中,这样我就可以浏览模型或探索任何给定输入图像的特定中间层?
最后,在NiftyNet的网站上提到,“文献中的一些模型已经(重新)在NiftyNet框架中实现了”。这些模型的预训练权重是否也可用?该演示使用了一个名为HighRes3DNet的预训练模型。如果其他模型的预训练权重也可用,那么下载这些权重或保存的tensorflow模型的链接是什么?
发布于 2017-10-20 15:25:42
首先回答你的“最后”问题,NiftyNet已经实现了一些网络架构(例如,VNet,UNet,DeepMedic,HighRes3DNet),你可以在自己的数据上进行训练。对于其中的一小部分,有针对某些应用的预先训练的权重(例如,使用HighRes3DNet的脑部分割和使用DenseVNet的腹部CT分割)。
这些预先训练的权重中的一些是从演示中链接的,比如您链接到的parcellation。我们开始将预先训练好的模型收集到model zoo中,但这仍然是一项正在进行的工作。
Eli Gibson NiftyNet开发人员
https://stackoverflow.com/questions/46836389
复制相似问题