本文是论文 Adversarial Similarity Network for Evaluating Image Alignment in Deep Learning based Registration(基于深度学习的配准中用相似性对抗网络来评估图像的对齐)的阅读笔记。
一、简介
一般的无监督配准模型是需要指定相似性指标,然后通过神经网络来最大化两幅图像之间的相似性,从而达到配准的目的。常用的相似性指标有平方差(SSD)和互相关(CC)等。但是这些相似性指标不是对所有数据集都适用的。
本文提出了一种基于生成对抗网络(GAN)的无监督配准模型,在训练时不需要 ground-truth,也不需要指定图像之间的相似性度量指标。
上图是该模型与其他模型的配准结果对比示意图,对比 黄色方框中的区域可以看出,本文提出的模型输出结果更接近于 template image。
二、记号
本文中 fixed image 被称为 template image,记作 ;moving image 被称为 subject image,记作 ;形变场 就是使得 和 最相似的形变场,可表示为:
其中 表示形变场作用在 上生成扭曲后的图像, 表示两幅图像的差异性, 是正则项,表示形变场 的平滑性。
在该模型中,生成器是一个配准网络 ,它用来预测一个形变场 ;判别器是一个判别网络 ,它用来判断两幅图像之间的相似性概率 ,。
三、网络结构
该网络模型由三部分组成——配准网络、变形转换层和判别网络。
1. 配准网络
采用的是类似于 U-Net 的网络结构,使用三维的 patch 作为输入,图像对 通过配准网络可以得到一个位移向量场(形变场)。
2. 变形转换层
根据配准网络预测出的形变场 ,对图像 做变换,得到扭曲后的图像 。
3. 判别网络
判别网络用来判别输入的两个图像块是否相似,并输出一个相似性概率 。
上图是判别网络的结构示意图,每个卷积层后面跟着一个 ReLU **函数,并且卷积采用 0 填充的方式。
上图是整个网络的结构示意图。如上图所示,一个变形转换层起到了连接配准网络和判别网络的作用,它可以把配准网络产生的形变场 和图像 作为输入,得到根据形变场扭曲后的图像 ,再将扭曲后的图像和图像 输入到配准网络。输入时,不是输入整幅图像,而是输入大小为 的图像块(patch),并得到一个大小为 的形变场。
四、训练
1. 判别网络的训练
判别网络的输入有两种,一种是正例(positive case),一种是负例(negative case)。正例是预先定义好的已对齐的图像对(即两个相同的图像 的图像块),此时判别网络输出的预期值是1,表示这对图像是相似的。负例是从配准网络中产生的尚未配准好的图像对(即一个是图像 的图像块,另一个是相同大小的,经过配准后的图像 的图像块),此时判别网络输出的预期值为0,表示这对图像是不相似的。正例时判别网络的损失函数为:,负例时判别网络的损失函数为 , 是判别网络输出的图像对的相似度概率。
理想中的正例中的图像对是完全相似的,但这在现实中是不可能的,因此作者在正例的图像对中加入了扰动,即图像 被 代替,其中 ,在开始训练时,设置 ,在后期的训练中设置 。换句话说,在正例当中,输入一个是图像 的一个 patch,另一个是 的一个 patch。
2. 配准网络的训练
因为配准网络产生的图像对属于负例,所以配准相似性损失为:
正则化损失为:
其中, 表示体素的位置。
配准网络总损失为配准相似性损失加正则损失,可表示为:
其中 是正则项的权重,在实验中设置为 1。
五、其他设置
优化器是 Adam,学习率初始值设为 0.001,没迭代 50K 次,以 0.5 的权重衰减,当判别网络无法分辨出是正例还是负例时,整个网络的训练就收敛了。
在论文中我有两个地方没搞明白,一个是判别网络的正例和负例,另一个是在判别网络训练时的对正例图像添加的扰动,这两部分等我阅读了相关代码之后再做补充修正。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:【论文笔记】基于生成对抗网络(GAN)的无监督医学图像配准模型 - Python技术站