文档

注册多模态MRI图像

这个例子展示了如何使用imregister使用基于强度的图像配准,自动将两个磁共振(MRI)图像对齐到一个公共坐标系。与其他一些技术不同,它不寻找特性或使用控制点。基于强度的登记通常非常适合于医疗和遥感图像。

步骤1:加载图像

这个例子使用了膝盖的两张MRI图像。固定图像为自旋回波图像,运动图像为反转恢复的自旋回波图像。两个矢状面切片是同时获得的,但有轻微的不对齐。

固定= dicomread(“knee1.dcm”);移动= dicomread(“knee2.dcm”);

imshowpair函数是有用的可视化图像在注册过程的每一部分。使用它以蒙太奇的方式单独查看两张图像或显示它们堆叠以显示错配的数量。

imshowpair(移动,固定的,“蒙太奇”)标题(“未注册”

在重叠的图像中imshowpair,灰色区域对应的区域有相似的强度,而品红和绿色区域显示的地方,一个图像比另一个更亮。在一些图像对中,绿色和洋红色区域并不总是表示错配,但在本例中,很容易使用颜色信息来查看错配的位置。

imshowpair(移动、固定)标题(“未注册”

步骤2:设置初始注册

imregconfig函数可以很容易地选择正确的优化器和指标配置来使用imregister.这两幅图像具有不同的强度分布,这表明存在多模态结构。

[optimizer,metric] = imregconfig(“多通道”);

两个图像之间的失真包括缩放、旋转和(可能的)剪切。使用仿射变换来注册图像。

这是非常非常罕见的imregister将图像与默认设置完美对齐。不过,使用它们是决定首先调优哪些属性的有用方法。

movingRegisteredDefault = imregister(移动,固定,仿射的优化器,指标);imshowpair (movingRegisteredDefault、固定)标题(A:默认注册

步骤3:改进注册

初始登记不是很好。仍有明显的区域排列不良,特别是在右侧边缘。尝试通过调整优化器和度量配置属性来改进配准。

优化器和度量变量是其属性控制注册的对象。

disp(优化)
registration.optimizer.OnePlusOneEvolutionary Properties: GrowthFactor: 1.050000e+00 Epsilon: 1.500000e-06 InitialRadius: 6.250000e-03 MaximumIterations: 100
disp(公制)
registration.metric.MattesMutualInformation属性:NumberOfSpatialSamples: 500 numberofhistogrambin: 50 UseAllPixels: 1

InitialRadius属性控制在参数空间中用于细化几何变换的初始步长。当多模态配准问题不收敛于默认参数时,InitialRadius是一个很好的调整参数。的默认值InitialRadius以3.5的比例系数。

优化器。InitialRadius = optimizer.InitialRadius/3.5;movingregisteredadjuststedinitialradius = imregister(移动,固定,仿射的优化器,指标);imshowpair (movingRegisteredAdjustedInitialRadius、固定)标题('B: Adjusted InitialRadius'

调整InitialRadius有积极的影响。在顶部和右侧边缘的图像对齐方面有明显的改进。

MaximumIterations属性控制优化器允许进行的最大迭代次数。增加MaximumIterations允许注册搜索运行更长的时间,并可能找到更好的注册结果。注册情况是否继续改善InitialRadius从最后一步开始使用大量的迭代?

优化器。MaximumIterations = 300;movingregisteredadjuststedinitialradius300 = imregister(移动的,固定的,仿射的优化器,指标);imshowpair (movingRegisteredAdjustedInitialRadius300、固定)标题('C: Adjusted InitialRadius, MaximumIterations = 300'

注册的进一步改进是通过重用InitialRadius优化器设置,并允许优化器进行大量迭代。

有关可调的多模态优化器和度量参数的详细信息,请参阅OnePlusOneEvolutionary优化器和MattesMutualInformation指标。

步骤4:使用初始条件来改善注册

当运动图像和固定图像的配准具有良好的初始条件时,基于优化的配准效果最好。获得改进的注册结果的一个有用的技术是从更简单的转换类型开始,例如“刚性”,然后将结果转换用作更复杂的转换类型的初始条件,例如仿射的

这个函数imregtform使用相同的算法imregister,但返回一个几何变换对象作为输出,而不是一个注册的输出图像。使用imregtform得到一个基于a的初始变换估计“相似”模型(平移、旋转和缩放)。

之前的注册结果显示,修改后的改进MaximumIterations而且InitialRadius优化器的属性。在使用初始条件并尝试进一步细化注册时,保持这些优化器设置。

tformSimilarity = imregtform(移动的,固定的,“相似”优化器,指标);

由于配准是在默认坐标系(也称为固有坐标系)中求解的,因此获得默认的空间引用对象,该对象定义了固定图像的位置和分辨率。

Rfixed = imref2d(大小(固定));

使用imwarp应用的几何变换输出imregtform移动图像以使其与固定图像对齐。使用“OutputView”选项imwarp指定输出重采样图像的世界范围和分辨率。指定Rfixed随着“OutputView”强制重新采样的运动图像具有与固定图像相同的分辨率和范围限制。

movingRegisteredRigid = imwarp(移动,tformSimilarity,“OutputView”, Rfixed);imshowpair(movingregisteredriigid, fixed)D:基于相似转换模型的配准

“T”属性定义了将移动中的点映射到固定中的对应点的变换矩阵。

tformSimilarity。T
ans =3×31.0331 -0.1110 0 0.1110 1.0331 0 -51.1491 6.9891 1.0000

使用“InitialTransformation”名称/值imregister类来细化此注册仿射的转换模型具有“相似”结果用作几何变换的初始条件。这种精确的配准估计包括剪切的可能性。

movingRegisteredAffineWithIC = imregister(移动,固定,仿射的优化器,度规,...“InitialTransformation”, tformSimilarity);imshowpair (movingRegisteredAffineWithIC、固定)标题(E:基于相似初始条件的仿射模型配准

使用“InitialTransformation”为了完善“相似”的结果imregtform用全仿射模型也得到了很好的配准结果。

第五步:决定何时适可而止

比较跑步结果imregister对于不同的配置和初始条件,很明显,在嵌入寄存器中有大量可以变化的输入参数,每个输入参数都可能导致不同的注册结果。

定量比较配准结果可能很困难,因为没有一个质量指标可以准确地描述两幅图像的对齐。通常,必须通过可视化结果定性地判断注册结果。在上面的结果中,C)和E)的配准结果都非常好,很难从视觉上区分开来。

步骤6:交替可视化

通常,随着多模式配准质量的提高,从视觉上判断配准质量变得更加困难。这是因为强度差异会掩盖错位区域。有时切换到不同的显示模式imshowpair暴露隐藏的细节。(情况并非总是如此。)

这个话题有用吗?