有限视图(Limited View)断层重建--CasRedSCAN论文阅读
目录
摘要
介绍
问题表述
MBIR
投影数据一致性(保真)层
前向后向路径
级联剩余密集 SPAT I L 通道注意力网络
A. Residual Dense Spatial-Channel Attention Network
Residual Dense Spatial-Channel Block(剩余密集空间通道块)
Spatial-Channel Attention(空间通道注意力)
实验和结果
数据准备和训练
实验结果
摘要
有限视图断层重建旨在从减少辐射剂量或缩短扫描时间的稀疏视图或有限角度采集产生的有限数量的投影视图重建断层图像。然而,由于正弦图的不完整性,这种重建会出现严重的伪影。过去有人用深度学习的方法从有限的视图数据中直接预测全视图重建,但是重建出来的图像于原始正弦数据的一致性无法保证。
于是本文提出了:级联的剩余密集空间通道注意网络,由剩余密集空间通道注意网络和投影数据保真层组成。
介绍
这部分前半段为老生常谈,概括为:受限视图条件下的断层重建算法可分为两大类:迭代重建和深度学习,迭代重建成本高,超参数改变波动较大;深度学习不能保证与给出的原始正弦数据的一致性(也就是生成结果的一部分可以直接抄给出的数据,它不抄)。
当然也有前人做了这方面的工作,比如说对通过有限视图数据生成出来的图像使用radon变化成全视图的正弦数据,然后把给定的正确答案替换上去。作者说这一方案不能保证连续性。
此外,之前的许多工作都没有评估在有限角(LA)和稀疏视图(SV)场景下的性能。
为了解决这些问题,作者提出了: Cascaded Residual Dense Spatial-Channel Attention Network (CasRedSCAN)。CasRedSCAN 由剩余密集空间通道注意网络 (RedSCAN) 和投影数据保真层 (PDFL) 组成,非常类似于 MBIR 方法中的迭代过程,它允许对重建进行端到端优化。具体来说,RedSCAN 是在每个级联块中用于对输入图像进行去锯齿处理的主干网络。 PDFL 连接到 RedSCAN 输出以确保预测的投影数据保真度,同时允许梯度反向传播。
问题表述
MBIR
约定表示尺寸为的2D断层扫描图像,表示该图像对应的具有 M 个投影视图的全视图正弦图。我们的问题是从重建,其中 是有限视图的欠采样正弦图。将和 表示为全视图和有限视图离散前向(图像域向投影域)投影算子,全视图正弦图 Q 和受限视图正弦图 通过和方式获得。虽然 FBP 为 Q 提供了伪逆的稳定数值实现,但在有限视野条件下将 FBP 应用于 会产生具有严重伪影的重建 。
其中是正则化器,是投影数据保真度约束。先前基于深度学习的后处理方法利用深度网络(表示为 P 和参数 θ)通过在 对上训练 P 来估计全视图重建图像,其中 是全视图重建标准图。然而,这些方法只考虑了初始解 的后续正则化,类似于 MBIR 中 (·) 的功能,而忽略了 的投影数据保真度约束。应该强制重建 被 CNN 重建很好地逼近,并通过以下方式确保在投影域中获取的数据的一致性(目标函数发生变化,此时不仅要求投影域的数据差异最小,还要求图像域的差异最小。):
当然,上面的公式不能直接用于深度网络,因为深度网络 P 仅在图像域中运行。
作者认为在网络设计中结合投影数据保真度可能会更好地保留图像内容并导致更好的重建。在这项工作中,作者提出了一个嵌入在级联(层叠)网络中的投影数据保真层 (PDFL),用于全视图重建。在级联网络中使用 PDFL,网络的重建输出会以网络参数 θ 和受限视图投影数据 Ω 为条件:
然后,给定 的训练数据对,我们可以通过最小化 L2 损失函数来训练我们的网络:
投影数据一致性(保真)层
令 和 分别为正向投影 (FP) 层和滤波反投影 (FBP) 层。深度网络重建图像的投影数据可以表示为: ,其中 是第 i 个投影数据条目。类似地,我们将已经获取的投影数据表示为 ,其中 与 具有相同的大小,并且当 Ω 时,第 i 个投影数据条目 (i) 全为零。然后,我们可以为等式(2)中的第二项编写一个封闭形式的解决方案:
其中 是重建的正弦图,由投影数据保真度更新。然后,可以通过滤波反投影重建图像,即 。具体来说,当没有获取到第 i 个投影数据时,我们直接从深度网络输出的投影数据中估计出第 i 个投影数据。否则,第 i 个投影数据是获取的投影数据和深度网络输出的投影数据的线性组合,由噪声水平参数 λ 正则化。假设获取无噪声正弦图,即 λ = 0,我们只需将第 i 个预测投影数据替换为获取的投影数据。
前向后向路径
我们的投影数据保真层 (PDFL) 由三个操作组成:i) 正向项目 G,ii) 等式 (5) 的投影数据保真度,以及 iii) FBP 层 。等式(5)的投影数据保真度可以用矩阵形式表示为:
其中 D = diag(e1, e2, · · · , eM ) 有:
PDFL 的前向传播可以写成:
其中 是从图像域深度网络预测的图像,是我们 PDFL 的输入。 PDFL 的输出是来自有限视图投影数据 的具有投影数据保真度的图像。假设低噪声水平,我们设置 λ = 0.001。给定公式12的的前向传递,PDFL 相对于输入 的梯度可以写为:
这是为 PDFL 的后向传递定义的。其中没有可学习的参数。
级联剩余密集 SPAT I L 通道注意力网络
作者言道,先前的深度网络都是单步去噪(即训练好后只要进行一次前向),不能应用于迭代过程,即使迭代的调用单步过程也不能很好的收敛。为此,作者提出了一个网络架构,能够使用具有足够去锯齿能力的深度网络对图像进行迭代去锯齿,同时保持投影数据的保真度。
类似于在去噪步骤和投影数据保真步骤之间交替的 MBIR 过程,我们的 CasRedSCAN 也在 RedSCAN 和 PDFL 之间交替,如图 1 所示。将初始 FBP 重建图像输入到第一个 RedSCAN 中,去噪输出被送入第一个 PDFL。然后,PDFL 输出被馈送到第二个 RedSCAN+PDFL 模块。相同的过程被迭代固定次数以获得最终的重建输出 。因此,损失函数可以表述为:
其中 是初始 FBP 重建。 θ 是 RedSCAN 网络参数。 是有限视图正弦图数据。 是全视图正弦图数据的重建。该算法总结在算法 1 中。在作者的实现中,所有 RedSCAN 在 CasRedSCAN 中共享相同的网络参数,因此与单步 RedSCAN 相比保持几乎相同的模型大小。
A. Residual Dense Spatial-Channel Attention Network
RedSCAN 由三个关键组件组成,包括使用两个 3×3 卷积层的初始特征提取 (IFE)、多个残差密集空间通道注意块 (RedSCAB),然后是全局特征融合和全局残差学习。网络架构如图 2 所示。
和分别为第一个、第二个卷积层的输出,将作为RedSCAB的输入,随后的为第n个block的输出:
在获得了从一组 RedSCAB 中提取的局部特征,我们应用我们的全局特征融合 (GFF) 来提取全局特征:
其中 {} 表示沿特征通道的连接,我们的全局特征融合函数 由 1 × 1 和 3 × 3 卷积层组成,以融合从不同级别的 RedSCAB 中提取的局部特征。 GFF 输出用作我们全局残差学习的输入:
全局特征和初始特征的逐元素相加被输入到我们最终的 3×3 卷积层中,用于非正则化输出。在实验中,将 IFE(初始特征提取)特征通道的大小设置为 32。
Residual Dense Spatial-Channel Block(剩余密集空间通道块)
包含四个密集连接的卷积层、局部特征融合、局部残差连接和空间通道注意。在第 n 个 RedSCAB 中,第 t 个卷积输出为:
其中表示第 n 个 RedSCAB 中的第 t 个卷积,{} 表示沿特征通道的连接,卷积的数量 t ≤ 4。然后,应用局部特征融合 (LFF),一个 1 × 1 个卷积层,用于融合上一个 RedSCAB 的输出和当前 RedSCAB 中的所有卷积层。因此,LFF 输出:
然后,它被送入我们的空间通道注意 (SCA) 模块,该模块有两个分支,以重新加权通道特征和空间特征,如图 2 所示。通道注意输出 和空间注意输出 通过 = + 融合在一起。最后,我们通过添加来自 RedSCAB 输入的残差连接,将局部残差学习应用于 SCA 输出,生成第 n 个 RedSCAB 输出(本论文中block数量设置为5):
Spatial-Channel Attention(空间通道注意力)
包含通道注意(CA)和空间注意(SA)的两个挤压和激发分支,传统的 CNN 同等对待通道特征和空间特征。然而,在图像重建任务中,希望通过承认通道特征相互依赖和空间上下文相互依赖,让网络更多地关注信息特征。CA 和 SA 结构分别在图 2 中的橙色和蓝色框中显示。
对于CA,其实就是把输入注意力模块的H*W*C进行全局平均池化得到1*1*C的向量,再将输入到两个全连接层(层权重:,)得到:(表示relu,表示sigmoid),然后使用通道乘法将校准向量应用于输入特征图:
其中表示第n个特征图,将 CA 嵌入到我们的网络中,校准向量自适应地学习强调重要的特征通道,同时淡化其他通道。
而在SA中,作者使用1*1*C的一个卷积核,将H*W*C的输入压缩成H*W*1的张量,然后用sigmoid将值映射到[0,1]之间得到矩阵。最后将输入的H*W*C的每个通道的特征图(大小为H*W)与按元素相乘,即。将 SA 嵌入到我们的网络中,校准体积学会强调最重要的空间位置,同时忽略不相关的空间位置。
最后,通过元素加法运算 将通道校准和空间校准结合起来。通过两个分支融合,(i, j, c) 处的特征只有在接收到SA 和 CA 的高激活时才具有高激活值。 SCA 鼓励网络重新校准特征图,以便学习更准确和相关的特征图
实验和结果
数据准备和训练
作者使用了两个数据集,分别是有10个人体全身CT扫描数据的AAPM-CT挑战数据集和针对多种疾病CT图的DeepLesion 数据集。
作者假设等角扇形束投影几何。模拟 120 kV p 多能 X 射线源。为了模拟正弦图中的泊松噪声,我们假设入射 X 射线包含 2 × 107 个光子。 X 射线源与旋转中心之间的距离设置为 39.7 cm。一行中有 439 个检测器箱,每张图像由 256×256 像素组成。对于每个图像,完全采样的正弦图数据 S 是通过 360 个均匀分布在 0 到 360 度之间的投影视图生成的。在稀疏视图实验中,我们从 360 个投影视图中统一采样 180、90 和 60 个投影视图以形成 ,模拟 2、4 和 6 倍的辐射剂量减少。在有限角度实验中,我们采样了 90、120 和 150 个(总共 360 个)投影视图,它们位于 0 - 90、0 - 120 和 0 - 150 度范围内。通过将 FBP 分别应用于 和 获得重建图像 和 。
使用Adam优化器,学习率为0.0005,batch_size大小为4.
实验结果
在这里不做赘述,感兴趣的读者请直接查看原论文。
有限视图(Limited View)断层重建--CasRedSCAN论文阅读相关推荐
- 【论文阅读】NEF:用于从多视图重建 3D 参数曲线的神经边缘场
[论文阅读]NEF:用于从多视图重建 3D 参数曲线的神经边缘场 摘要 一.引言 二.相关工作 三.方法 3.1 重建 3D 边缘点 3.1.1 预备知识 3.1.2 神经边缘场 3.1.3 训练 N ...
- 什么是数据库视图(view),视图(view)优缺点是什么?
什么是数据库视图(view),视图(view)优缺点是什么? 什么是数据库视图(view)? 在 SQL 中,视图是基于 SQL 语句的结果集的可视化的表. 视图包含行和列,就像一个真实的表.视图中的 ...
- 【Android 属性动画】属性动画 Property Animation 与 视图动画 View Animation 区别
文章目录 一.动画效果添加对象 二.动画效果类型 三.动画效果与实际属性 四.开发复杂程度 属性动画 Property Animation 可以为 任何对象 ( View 对象 / 非 View 对象 ...
- SQLite 视图(View)
视图(View)只不过是通过相关的名称存储在数据库中的一个 SQLite 语句.视图(View)实际上是一个以预定义的 SQLite 查询形式存在的表的组合. 视图(View)可以包含一个表的所有行或 ...
- 《PlaneNet-单幅RGB图像的分段平面重建》论文中英文对照解读
论文地址:https://arxiv.org/pdf/1804.06278.pdf 代码地址:https://github.com/art-programmer/PlaneNet PlaneNet: ...
- ASP.NET MVC 5 - 验证编辑方法(Edit method)和编辑视图(Edit view)
在本节中,您将验证电影控制器生成的编辑方法(Edit action methods)和视图.但是首先将修改点代码,使得发布日期属性(ReleaseDate)看上去更好.打开Models \ Movie ...
- 首先声明两者所要实现的功能是一致的(将多维数组降位一维)。这点从两个单词的意也可以看出来,ravel(散开,解开),flatten(变平)。两者的区别在于返回拷贝(copy)还是返回视图(view)
首先声明两者所要实现的功能是一致的(将多维数组降位一维).这点从两个单词的意也可以看出来,ravel(散开,解开),flatten(变平).两者的区别在于返回拷贝(copy)还是返回视图(view), ...
- 截取视图某一段另存为部分视图(Partial View)
在做ASP.NET MVC后台管理程序时,根据程序需要,Isus.NET需要实现一个功能,就是动态截取视图某一段另存为部分视图Partial View. 思路为在视图中,使用jQury的程序截图以及P ...
- Ember——在构建Ember应用程序时,我们会使用到六个主要部件:应用程序(Application)、模型(Model)、视图(View)、模板(Template)、路由(...
在构建Ember应用程序时,我们会使用到六个主要部件: 模板(Template).应用程序(Application).视图(View).路由(Routing).控制器(Controller)和模型(M ...
最新文章
- 阿里云的java规范_阿里JAVA开发强制要求的15条并发处理规范,切记
- 数组的partition调整
- [EF]vs15+ef6+mysql这个问题,你遇到过么?
- 用于计算的计算机主机,一种用于区块链计算的计算机主机的制作方法
- 剑指offer(刷题31-40)--c++,Python版本
- 怎么打包图片_怎么将许多张照片打包发到邮箱?
- Linux下安装了conda以后pychram无法使用
- 创建一个简单的WCF程序2——手动开启/关闭WCF服务与动态调用WCF地址
- java小程序(万年历)
- 简要介绍随机森林原理
- Sql server 2008
- android 获取经纬度的三种方法,Android中如何获取经纬度
- 饥荒插件制作应注意的几个问题
- 3ds Max 实验十四 UVW展开
- R语言学习20150414
- 改springboot项目遇到的@Restcontroller返回网页问题
- maven 跳过单元测试打包
- xlwing 边框_Python与Excel交互——Xlwings实战
- 哪里能免费下载动态PPT模板?高端精美动态PPT模板大全免费
- coreldraw错误代码14001_「错误14001」14001错误:由于应用程序配置不正确,应用程序未能启动:OD调试解决办法 - seo实验室...
热门文章
- 【Kruskal】Uva 1395 Slim Span
- [软考]挣值管理EVM详细解释及应用,实例讲解收集(信息系统项目管理师-成本管理)...
- 当case when then else end 语句遇上sum或count等统计函数
- python 使用twilio免费发送短信
- linux find 隐藏,使用find命令查找Linux中的隐藏文件的方法
- 电脑端epub阅读器分享
- 哈哈哈哈,16 岁高中生开发「粤语编程」项目,在 GitHub 火了!
- 全国计算机等级考试技巧,必看!全国计算机等级考试的应试技巧
- 计算机考试分值2017,2017计算机二级考试应试技巧
- GitLab搭建局域网改外网