我知道编辑这个网站吗?

德诺伊赛格

Teaser of what DenoiSeg can compute on your data. Teaser of what DenoiSeg can compute on your data.

DenoiSeg 是一种基于神经网络的实例分割算法。 DenoiSeg 的位置虽然主要用于分割,但该算法对图像去图像进行重构。通过图像去噪获得的知识可以重新分割结果。 DenoiSeg 可以解决硬分割任务,就像其他基于神经网络的一样算法。但它手动大约需要的训练数据很少,只需要生成 2 到 10 张其他图像的分割。(方法通常需要对至少 50 个进行大量手动分割。)

该网站介绍了 DenoiSeg Fiji 插件。这使得 DenoiSeg 的使用变得非常容易。您所需要的只是您的图像、其中一些图像手动生成的分割、配备 NVIDIA 显卡并安装了 Fiji 的计算机。

使用DenoiSeg对数据进行主板需要3个步骤:

  1. 为少量图像创建手动分割。(这可能需要大约 8 小时的手动工作。)
  2. 训练神经网络。结果是经过训练的神经网络,称为:模型。(训练使您的计算机保持完成状态大约12小时。这可以在晚上完成,因为您不需要执行任何操作。)
  3. 预测:使用训练模型分割任意数量的图像。这一步要快分割,图像每次只需 1 秒。

这个斐济插件是 CSBDeep 的一部分,CSBDeep 是斐济的神经网络算法集合。有关我们的开源实现、示例和图像的更多信息,请单击here

书籍:DenoiSeg - 联合去噪和分割

摘要的

细胞图像分析通常需要对对象进行分割,但此任务的训练数据通常稀缺而难以获得。在这里,我们提出了 DenoiSeg,一种可以仅在少量带注释的地面实况分割上进行最终可以训练的新方法。我们通过扩展 Noise2Void 来实现这个目标,Noise2Void 是一种自监督去噪方案,另外对噪声图像进行训练,也可以预测稀疏的 3类分割。我们的方法成功的原因是分割可以从去噪中进行排序,特别是在同一个网络内联合执行时。通过查看所有可用的原始数据,网络成为召回专家,同时共同学习分割,即使只有几个分割标签可用。我们的观察还进一步添加了这一假设,即当远端的合成噪声时,达到高质量(低极噪声)原始数据的最佳分割结果。这使得去噪任务稀疏非常重要,并释放出所需的共同学习效果。我们相信Seg提供了一种可行的方法来满足高质量训练数据的巨大需求,并有效地实现密集分割的小样本学习。

Full-text

#安装

DenoiSeg Fiji 插件是 CSBDeep 更新站点的部分。请参阅here,了解有关如何安装更新站点的详细说明。或者通常按照以下步骤操作:

1.启动ImageJ/斐济 2.通过Help > Update...打开更新程序 3.单击Manage update sites 4.选择CSBDeep更新站点 5.单击Apply changes 6.(任选)阅读this page以了解GPU支持 7.重启ImageJ/斐济

您现在应该可以访问这些插件:

Available DenoiSeg plugins

# 方便

##训练

请阅读this page了解如何训练获得GPU支持。如果没有GPU,将需要很长时间。

准备您的数据

  • 创建两个用于训练的文件夹和两个用于验证的文件夹,将它们命名为§§0§§§、Y_trainX_valY_val
  • 将噪声图像输入X_train中,越多越好
  • 仔细标记其中一些标签 - 越多越好,但高精度的标签也足够了。在存在背景的情况下,每个标签应完全相同,且同一对象的每个像素应具有相同的整数。
  • 将标签放入Y_train中 - 每个标签文件需要与X_train中匹配具有相同名称的原始数据
  • X_valY_val进行相同的操作。目标是拥有大约 10% 的验证数据和 90% 的训练数据。如果有疑问,请使用更多数据进行训练。

样本数据

如果您创建测试斐济插件,您可以使用此data。它创建用于下面的屏幕截图。

请注意:您不能使用此训练数据来分割训练图像。您需要准备自己的数据才能获得良好的图像结果。

火车插件

N2V train parameters N2V train parameters

1.启动ImageJ/斐济 2.点击Plugins > CSBDeep > DenoiSeg > DenoiSeg train并调整以下参数: - Folder containing training raw images Choose the folder we called X_train in the above data preparation section. It contains raw noisy data. - Folder containing training labeling images Choose the folder we called Y_train in the above data preparation section. It contains some labelings matching the raw noisy data. - Folder containing validation raw images Choose the folder we called X_val in the above data preparation section. It contains raw noisy data for judging the quality of the training progress. - Folder containing validation labeling images Choose the folder we called Y_val in the above data preparation section. It contains some labelings matching the raw noisy validation data. - Number of epochs How many epochs should be performed during training - Number of steps per epoch How many steps per epoch should be performed - Batch size per step How many tiles are batch processed by the network per training step - Patch shape The length of X, Y (and Z) of one training patch (needs to be a multiple of 16) - Neighborhood radius N2V specific parameter describing the distance of the neighbor pixel replacing the center pixel

  1. 点击Ok
  2. 请参阅下面的第 What happens during and after training 部分,了解接下来会发生什么

训练和预测插件(一键解决方案)

N2V train & predict parameters N2V train & predict parameters

1.启动ImageJ/斐济 2.训练后直接打开想要的去噪和分割的噪声图像 3.点击Plugins > CSBDeep > DenoiSeg > DenoiSeg train & predict并调整以下参数: - Raw prediction input image Choose the image which should be denoised and segmented after training - Axes of prediction input This parameter helps to figure out how your input data is organized. It’s a string with one letter per dimension of the input image. For 2D images, this should be XY. If your data has another axis which should be batch processed, set this parameter to XYB - Regarding the other parameters please have a look at the descriptions in Train plugin

  1. 单击Ok
  2. 请参阅下面的第 What happens during and after training 部分,了解接下来会发生什么

训练期间和训练之后会发生什么

DenoiSeg training progress window DenoiSeg training progress window
N2V training preview window N2V training preview window

During training, you will see two windows:

  • 细节窗口让您随时了解培训过程发起的训练步骤。它还不足以实现当前的和验证损失。
  • 预览窗口是从第一个验证批次生成的。它分为五个部分。
    1. the original noisy data
    2. the predicted denoised image
    3. the predicted probability if each pixel being on the background
    4. the predicted probability if each pixel being on the foreground
    5. the predicted probability if each pixel being on the border 训练后,应该会出现两个附加窗口。它们代表两个训练后的模型。一个是来自验证损失最低的纪元的模型,另一个是来自最后一个纪元步骤的模型。对于 DenoiSeg,几乎总是建议使用上一个时期的模型。窗口看起来与此类似:

DenoiSeg model archive window

其中存储处于临时位置,您可以在模型窗口的概述部分中的 Saved to.. 下看到该位置。 如果您想保留此经过训练的模型,则该模型从那里复制到磁盘上的另一个永久目的地。

预测

有两种方法可以根据经过训练的模型进行预测。对于这两种情况,生成的图像将由四个通道组成:

  1. 去质疑后的图像
  2. 每个像素在背景上出现的概率 3.每个像素在前景中出现的概率 4.每个像素在边界上的出现频率

用户当前必须使用这些概率来自行计算分割。将来,将可以使用进一步的后续处理步骤来根据训练模型的输出自动计算分割。

您可以直接打开模型:<div class="thumbnail" > N2V training preview window N2V training preview window </div>

  1. 出发斐济 2.打开想要的去噪和分割的图像,并且您有一个ZIP文件格式的预训练模型 3.点击Import > bioimage.io.zip并选择训练您的模型。该模型将在如上图的窗口中打开 4.点击模型窗口中的Predict并调整以下参数:
    • Input The image you want to denoise
    • Axes of prediction input This parameter helps to figure out how your input data is organized. It’s a string with one letter per dimension of the input image. For 2D images, this should be XY. If your data has another axis which should be batch processed, set this parameter to XYB 或者,您可以使用 DenoiSeg 菜单:<div class="thumbnail" > Update site Labkit Update site Labkit

</div>

  1. 出发斐济 2.您打开想要去噪的图像,并且您有一个ZIP文件格式的预训练模型 3.点击Plugins > DenoiSeg > DenoiSeg predict并按上述方式调整参数,并添加以下内容:
    • Trained model file The ZIP file containing the pretrained model (it should end with .bioimage.io.zip)

      将训练好的模型从Python导出到ImageJ / Fiji

可以使用 Python 训练 DenoiSeg 神经网络。所需的代码和说明可以在here中找到。用 Python 训练的模型也可以在斐济使用:

  1. 在Python中,在训练结束时运行此命令:mode.export_TF()。 2.找到导出的模型文件 3.按照 Prediction 中的说明进行操作

为训练创建标签

如何创建标签有多种可能性。但由于我们经常收到这个问题,所以我们是这样做的:

Update site Labkit Update site Labkit
Labkit Labkit
3D Objects counter options 3D Objects counter options
  1. 通过Help > Update...安装Labkit更新站点,点击Manage update sites,选择然后Labkit 2.重启斐济 3.打开要标记的图像
  2. 点击Plugins > Segmentation > Labkit 5.仔细标记您的数据。使用例如铅笔工具勾画标签,使用水桶工具填充。 6.点击菜单项Labeling > Show Labeling in ImageJ导出蒙版
  3. 将导出的蒙版(背景为0,前景为1)转换为索引标签图
    1. Click Analyze > 3D Objects Counter
    2. Make sure to deselect Exclude objects on edges
    3. Save the displayed labeling to disk