ITK-SNAP使用

原文链接: http://www.itksnap.org/docs/fullmanual.php

官方文档:http://www.itksnap.org/docs/fullmanual.php

SNAP

能做什么

提供用于 3D 图像分割的工具包,SNAP 有两种不同的使用模式:1)人工分割;2)半自动分割

人工分割模式:1)手动标记分割轮廓;2)修正自动分割的结果
半自动分割:使用了分割算法对 3D 解剖结构进行分割,这种分割算法需要用户的 guidance,而 SNAP 就提供了进行 guidance 的接口

使用范围

SNAP 可用于分割各种 3D 图像,但条件是图像必须均匀。
也就是每个像素须具有单个强度值
所以应用范围是 MRI、CT 和 PET 图像

不能用于彩色图像(比如 RGB 图),或者混合张量图像(?)

SNAP 可读取格式:RAW,Analyze,GIPL,MetaImage

如何输出

SNAP 为输入图像的每个 pixels(voxels) 分配标签,然后生成分割结果。

标签列表(label list)由用户根据实际问题给出

输入图像的每一个 voxel 只能分配一个标签

Limitations
SNAP 只能给灰度图中的每一个像素分配一个标签,因此无法用于

使用界面

左下方视图显示了当前的 3D 视角,其余三个视图是三个正交的切片图(轴向,冠,矢)
四块视图窗口下的蓝色按钮用来单独对当前视图进行一些操作

左边是控制面板
顶部的 menu 用于加载和保存图像,以及一些基本设置

其余按键会根据当前操作的模式出现/消失

加载3D图像

(1)下载 sample datasets:http://www.itksnap.org/download/snap/files/MRI-crop.zip

包括以下三个文件:
在这里插入图片描述

  • MRIcrop-orig.gipl:大脑的原始 MRI 图像
  • MRIcrop-seg.gipl:使用 SNAP 进行的分割
  • MRIcrop-seg.label:包含标签的分割结果

(2)加载图像

选择 File -> Open Main Image
在这里插入图片描述
选择图像 MRIcrop-orig.gipl
在这里插入图片描述
SNAP 会根据加载的文件扩展名自动选择格式,但还是要检查一下它选的对不对。
注意:路径中不能包含中文,否则会报错。
在这里插入图片描述
在这里插入图片描述

交互操作

在这里插入图片描述
包括四部分:

  • ITK-SNAP Toolbox:选择不同的操作模式
  • Cursor Inspector:显示目前光标选择的位置以及灰度值
  • Segmentation Labels:选择标签
  • 3D Toolbar:额外工具

三个切片窗口分别显示了:

  • 轴向面
  • 冠状面
  • 矢状面

右侧有一个滚动条,滚动条下方是切片计数器,左边的数字是当前的切片索引,右边的数字是该方向上的切片总数

ITK-SNAP Toolbox
1)Crosshairs mode:单击某切片的某像素,可同时查看三个视图上该像素位置的正交视图,按住鼠标坐标不放拖动光标位置,可以连续查看视图变化,鼠标滑轮可以选择当前视图方向上不同的切片

蓝色虚线形成的公共光标始终指向三个切片视图中的相同 voxel,voxel 的灰度级强度和对应的分割标签显示在 Cursor Inspector 面板中

voxel 没有标签时,显示数值 0,对应 “Clear Label”

2)Zoom/Pan mode:使用缩放/平移工具可以放大切片的特定区域,或对切片进行平移

3)Polygon mode:做手动分割。

可以按住鼠标右键不放,对切片视图进行放大或缩小
按住鼠标左键不放,对切片视图进行平移
视图下方的 zoom to fit 可以使切片视图恢复到适合的大小

调整图像对比度:Tools -> Image Contrast -> Contrast Adjustment
在这里插入图片描述
在这里插入图片描述
绘图区域显示了图像强度和现实强度的映射,如红线所示

红线上黄色的点为 “控制点”,可以改变映射的形状

蓝色的直方图是灰度图图的各灰度级

从直方图可以看出,当前有很多强度值过低(在后三分之一),所以要提高对比度,需要先调整映射方式。
调整方法:
1)更改 Window 数值,Enter 键生效。Level 值是最左边 control point 的强度值,Window 值是最左和最右 control
point 的差
2)直接用鼠标调整 “控制点”,最左边的点决定了最小强度从哪里开始,最右边的点决定了最大强度从哪里开始

可以根据需要添加 control point,以调整出需要的 mapping curve

调整切片的顺序:
SNAP 默认显示顺序为:左上角为轴向切片(axial),右上角为矢状切片(sagittal),右下角为冠状切片(coronal),可以根据习惯更改显示顺序:
Tools -> Preference -> Slice Views -> Layout
在这里插入图片描述

分割

标签是 0 ~ 255 的数值,每个标签有自己的名字和显示设置(比如用什么颜色),其中 0 默认为每一个无标签的像素分配,名称为 ”Clear“,表示该像素未分配标签。

创建标签

在这里插入图片描述
Active label:选择可使用的 Label
Paint over
Overall label opacity

修改 label:Segmentation -> Label Editor...
在这里插入图片描述
在这里插入图片描述
Description 处可修改当前 label 的名称,在 color 处可修改 label 的颜色,点击 New 可以新建 label,Opacity(不透明度):在 3D 分割中,如果有一个结构阻挡了分割的结构,可以使标签变得部分透明 ,Visibility:隐藏标签

下载标签

额外导入标签文件:Segmentation -> Import Label Descriptions
在这里插入图片描述
Browse 选择标签文件:
在这里插入图片描述
需要创建自己的 label,只需要在 label editor 中改变已存在的 label 或新建 label

保存自己的 label 设置,选择导出即可

手动分割:
Active Label 下选择一个标签,然后基于此标签进行分割
Paint over 为 all labels,表示分配的标签将覆盖掉已经有标签的 voxels

选择 Polygon mode,左键单击绘制边界,注意最后一条关闭多边形的线会自动出现
视图下方可以 undoclear 绘制的标签
分割好以后视图下方会变成:
在这里插入图片描述
此时在视图上手拉一个矩形框,可以选中所有分割的结点,拖动矩形框就可以移动分割的边框:
在这里插入图片描述
单独拖动某一个结点,也可以修正分割结果

修改好之后,点击 accept,多边形内会填充当前标签的颜色
在这里插入图片描述
注:记得将 Overall label opacity 调大一点,不然看不到标签

要清除标签的某一部分,可以将当前标签设置为 “Clear”,覆盖掉需要清除的标签即可。

SNAP 可以保存最近依次绘制的多边形,当在同一视图的不同切片上切换时,可以直接用 paste 复制多边形区域,然后做出微调即可。

在一个视图中绘制的多边形,在其他两个视图中表示为一条线。

在三个视图中都绘制好多边形区域,点击 3D 视图下的 update,就可以看到 3D 分割结构:
在这里插入图片描述
保存分割结果:
Segementation -> Save Segmentation Image
SNAP 将分割结果保存为图片,voxel 在图像中保存为 0 ~ 255,分割结果可保存为不同的格式以便其他程序读取
在这里插入图片描述

自动分割

SNAP 基于名为 snake evolution 的分割方法,分割边框(蛇)会从一个粗糙的边界进化成一个比较接近组织结构的边框。
在这里插入图片描述
snake 的进化由一个数学表达式控制,该表达式描述了 snake 在特定时间上每个点的速度,该速度取决于1)snake 的形状;2)该点附近的图像的强度。

下面是对 snake 上速度的描述:
在这里插入图片描述
点的速度显示为蓝色和黄色箭头,速度矢量始终指向垂直于蛇的方向。
黄色速度取决于图像特性:在图像强度均匀的地方其强度更强,而在图像强度不均匀、存在边缘的区域其强度较弱
这样就能保证 snake 在图像边缘的扩张速度比在均匀区域的扩张速度慢得多

蓝色速度取决于 snake 的形状:它会在 snake 较弯曲的地方更强,在 snake 较直的地方更弱
这样就能保证其光滑的形状
在这里插入图片描述
snake 某点的运动由该点速度矢量之和决定,虚线轮廓表示下一个时间段 snake 的形状。

驱动 snake 演变的速度取决于图像强度,在 SNAP 中图像强度表示为 特征图,而特征图由特定的特征函数应用于整张图像计算而来,从而依赖于图像的 snake 的传播速度与特征图像的值成比例

SNAP 有两种计算特征图的方法:
1)第一种方法导致 snake 在边缘或强度不连续的地方减速
2)第二种方法导致 snake 被吸引到强度均匀的区域边界

snake 的进化取决于特征图,所以特征图的正确构造是获得良好分割结果的重要步骤

边缘特征函数的值介于 0 到 1 之间,在图像的边缘处值接近于 0,在强度均匀处值接近于 1,特征图的值与输入图像的强度水平无关,仅取决于相邻像素间的强度差异。

猜你喜欢

转载自blog.csdn.net/qq_31347869/article/details/91391997