问题标签 [niftynet]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
447 浏览

python - 将 CNN 更改为使用 3D 卷积

我正在使用此处的代码(此处为论文)创建 GAN。我正在尝试将其应用到一个新领域,从他们在 MNIST 上的应用切换到 3D 大脑 MRI 图像。我的问题在于 GAN 本身的定义。

例如,他们用于定义生成模型的代码(获取维度 z_dim 的噪声并从 MNIST 分布生成图像,因此为 28x28)是这样的,我的评论基于我认为它是如何工作的:

这是我使用 niftynet 卷积层的代码,其中 z_dim 和 latent_dim 与之前的 64 相同,并且我添加了打印语句的结果:

我不太确定如何才能将 19 放在那里。目前我收到此错误。

ValueError:维度大小必须能被 2359296 整除,但对于输入形状为 [?,2048,8,144,1], [5] 且输入张量计算为部分形状的“Reshape_1”(操作:“Reshape”)为 1575936:输入1 = [1,19,144,144,4]。

我对构建神经网络也比较陌生,我也有几个问题。当我们在 z 空间中已经有了一个紧凑的表示时,潜在空间的意义何在?如何确定“输出维度”的大小,即层构造函数中的第二个参数?

我也一直在寻找 CNN 的成功实施,并在这里寻求灵感。谢谢!

主要编辑:

我取得了一些进展,并让 tensorflow 运行代码。但是,即使批量大小为 1,当我尝试运行训练操作时也会遇到内存不足错误。我计算出一张图像的大小为 19 * 144 * 144 * 4 * 32(每像素位数)= ~50 MB,因此导致内存错误的不是数据。由于我基本上只是调整了 GAN 参数直到它起作用,我的问题可能就在那里。下面是整个文件。

0 投票
1 回答
126 浏览

tensorflow - 使用 NiftyNet 对口腔照片进行肿瘤分类

我很清楚我不是在问一个具体的问题。但我正在寻求有关如何使用 NiftyNet 进行医学成像工作的指导。这肯定会让我有能力做一些工作并就尖锐的问题寻求帮助(他们一定会来)。

我不了解医学成像和使用 niftynet 进行分类。我正在尝试使用此数据集和预训练模型提出一个简单的分类任务。

我收集了几个口腔的 jpg 照片。它们标有 3 个标签(Normal、pre、pos)。我对 python、pytorch 和 tensorflow 很满意。我需要以下帮助:

  • 我在哪里寻找使用 NiftyNet 预训练模型进行此类分类
  • 有什么代码库可以让我继续前进吗?

谢谢您的帮助。

0 投票
0 回答
54 浏览

generative-adversarial-network - NiftyNet 中的 GAN 调节输入

我正在尝试在 NiftyNet 中实现条件 GAN。

我有一组 Nifti 格式的 3D 图像,每个图像都有一个特定的类。该类应该是 GAN 的条件输入。

到目前为止,我已经设法让它工作,但它有点像 hack:我创建了一个对应于每个 3D 图像的 1x1x1 虚拟图像,其中包含作为其单个值的类。然后,在我的配置文件中(...代表遗漏):

虽然它在技术上有效,但它非常脆弱。我想使用带有列subject_id和.csv 文件的 CSV 文件指定类target

我尝试了以下方法,使用csv_data_file输入描述中的未记录参数:

但我收到以下错误:

指定它的正确方法是什么?

0 投票
1 回答
175 浏览

pytorch - NIFTI 数据对 Conv3D 大小没有意义?

所以我正在为医学图像编写自定义数据集,使用 .nii(NIFTI1 格式),但存在混淆。

我的数据加载器返回 shape torch.Size (1,1,256,256,51)。但是 NIFTI 卷使用解剖轴,不同的坐标系,因此置换轴没有任何意义,我通常会使用由 2D 图像组成的卷,每个图像分别存储在具有 51 个切片图像(或深度)的本地驱动器中,如Conv3D 遵循约定(N,C,D,H,W).

所以torch.Size (1,1,256,256,51)(通常 51 是深度)不遵循约定(N,C,D,H,W),但我不应该置换轴,因为数据使用完全不同的坐标系?

0 投票
0 回答
62 浏览

nifti - 如何更改 NifTI 图像中的平面?

所以我试图混合两个不同的 NifTI 数据集,但是当我在 2D 中查看它们时,它们都有不同的平面,其中一个也是倒置的。

我的问题是:

1)如何在 NifTI 中更改平面?

2)另外我如何旋转飞机?

先感谢您。

0 投票
0 回答
16 浏览

niftynet - 我们在哪里可以获得 NiftyNet 模型 Zoo 的分割类描述?

我能够使用 niftynet 预训练模型进行推理。但是,我看不到有关分段类的详细信息。我在哪里可以找到输出文件中每个分段类的标签描述?

0 投票
0 回答
32 浏览

deep-learning - 是否可以以漂亮的格式查看任何 3D 图像数据?

我有一个适用于漂亮图像的模型,现在假设我有一个 3D 图像,但实际上不是来自 CT 或 MRI,而是具有一般格式宽度 * 高度 * 深度,我可以从中生成一个漂亮的图像并假装它是格式正确?我应该只使用单位矩阵进行仿射吗?

0 投票
0 回答
38 浏览

python - 在 Niftynet 的 rmse_loss 函数中使用 Tensorflow 的内置 VGG-16 时遇到问题

我正在尝试用感知损失替换 Niftynet 的标准 RMSE 损失函数。不幸的是,每次我尝试跑步net_run train -a niftynet.contrib.regression_weighted_sampler.isample_regression.ISampleRegression -c ~/niftynet/extensions/mr_ct_regression/net_isampler.ini --starting_iter 0 --max_iter 1000时,

我收到以下错误:

我对 Niftynet 存储库的唯一重大更改是我用下面的代码替换了 loss_regression.py 文件中的“rmse_loss”函数。

函数开头的注释掉的代码是函数的原始代码。另外,据我了解,错误来自我创建“pretrained_model”(第 28 行)时的代码行。有谁知道如何防止这个错误?

感谢您的时间!

0 投票
0 回答
35 浏览

python - 在 Niftynet 存储库中实现感知损失时,无法导入预训练 VGG-19 模型的“block1_conv1/kernel”的权重

我正在尝试在 Niftynet 中实现感知损失。

不幸的是,每当我运行以下命令来训练模型net_run train -a niftynet.contrib.regression_weighted_sampler.isample_regression.ISampleRegression -c ~/niftynet/extensions/mr_ct_regression/net_isampler.ini时,都会得到以下错误输出:

我对 repo 的唯一相关更改是我用下面的代码替换了 Niftynet 的 RMSE 损失函数。

另外,当我打电话时vgg.summary(),我得到:

因此,至少从我的角度来看,'block1_conv1' 的参数似乎在那里。有谁知道可能导致此关键错误的原因以及如何解决?

感谢您的时间!