Deep Filtered Back Projection for CT Reconstruction

CT重建中的深度滤波反投影

在这里插入图片描述

论文链接:https://ieeexplore.ieee.org/document/10411896

项目链接:

ABSTRACT

滤波反投影(FBP)是一种经典的计算机断层扫描(CT)重建解析算法,具有很高的计算效率。然而,用FBP重建的图像往往存在过多的噪声和伪影。原始的FBP算法使用窗函数平滑信号,并使用线性插值来估计非采样位置的投影值。在本研究中,我们提出了一个名为DeepFBP的新框架,其中通过神经网络学习优化的滤波器和优化的非线性插值算子。具体来说,学习到的滤波器可以看作是优化后的窗函数与斜坡滤波器的乘积,学习到的插值可以看作是通过非线性组合来优化利用附近位置投影信息的一种方法。该方法保持了原FBP的高计算效率,并在不同噪声水平下获得了更好的重建质量。它还优于基于TV的统计迭代算法,计算时间减少了两个数量级,以及具有更深和更复杂网络结构的最先进的后处理深度学习方法。

I. INTRODUCTION

x线计算机断层扫描(CT)是现代医学中无创诊断的重要工具。然而,反复接触CT扫描可能会增加癌症和一些其他疾病的风险,如遗传缺陷[1]。减小管电流和照射时间是降低辐射剂量最实用的方法之一。然而,经典的FBP等低剂量CT成像方法可能会导致重建图像中存在过多的噪声和伪影,从而影响诊断[2]。人们提出了几种改进的FBP算法来处理低剂量CT重建。钟等用小波去噪改进滤波后的反投影[3]。Nielsen等人计算了一个滤波矩阵,与投影数据相乘以提高重构性能[4]。Qu等人在执行滤波后的反投影之前,在投影域上应用平均滤波器[5]。Pelt和Batenburg使用了自定义的数据依赖滤波器,使重建图像的投影误差最小化[6]。Mu和Park对滤波器进行了优化,以抑制MR-FBP中的图像伪影[7]。

为了提高低剂量CT的图像重建质量,迭代算法得到了广泛的研究。迭代重构算法有两类:基于代数的迭代重构算法和基于统计的迭代重构算法。基于代数的算法通过迭代求解线性方程直接将图像与其投影联系起来以实现重建。有许多变体,包括代数重建技术(ART)[8]、同时迭代重建技术(SIRT)[9]、同时代数重建技术(SART)[10]。统计迭代重建(SIR)算法通过优化目标函数实现重建,目标函数的先验信息通过正则化项表示。SIR算法表现出比FBP和代数迭代算法更好的性能。为了降噪和信息保存,设计了不同的正则化项[11]、[12]、[13]、[14]、[15]、[16]。但是,SIR算法迭代次数多,耗时长。

深度学习在医学成像领域取得了巨大的成功。最流行的方法是使用深度学习作为后处理过程,以抑制传统方法(如FBP)重建的图像中的噪声和伪影[17],[18],[19]。例如,Chen等人[18]使用REDCNN [17], Wu等人[19]使用改进的DnCNN[20],都可以抑制重构CT图像上的噪声。其他后处理算法可能使用感知损失[21],[22],生成对抗网络(GAN)[24],[25]和多个CT图像层信息[23]。虽然这些后处理算法已经显示出很好的结果,但它们并没有真正考虑到图像重建过程。相比之下,一些研究人员将深度学习与SIR结合起来进行重建。Alder等人使用PrimalDual Hybrid Gradient (PDHG)优化算法扩展统计迭代目标函数,并用卷积神经网络代替近端算子[26]。Wu等人将K-稀疏自编码器网络与可分离二次代理算法相结合进行迭代重构[27]。Chen等人使用半二次分裂(half quadratic splitting, HQS)技术和Gauss-Seidel方法进行CBCT重建[28]。

深度学习除了应用于后处理和迭代重建之外,还与FBP直接结合。Syben等人学习了一个在频域表示滤波器的对角矩阵[29]。Würfl等使用与滤波运算相对应的卷积运算,将后投影表示为全连通层[30]。他等人使用可学习的全连接滤波层、可学习的正弦反投影层和通用神经网络进行重建[31]。

在本研究中,我们提出了一种新的FBP框架与深度学习相结合,称为DeepFBP,它可以在保留原始FBP的计算优势的同时获得高质量的重建图像。提出的DeepFBP框架由两个关键部分组成:可学习的窗函数和可学习的插值算子。我们的贡献可以总结如下:

A. 学习一个数据驱动的窗口函数

投影域滤波是FBP中最重要的操作之一,在该操作中,手动选择经典窗口函数,如矩形窗口[32]、汉明窗口[33]、汉恩窗口[34]、余弦窗口[35]或正弦窗口[36]进行重建。复杂的窗函数也得到了发展,并在CT重建中表现出更好的性能。例如,Yu等人在滤波后的反投影算法中应用了Parzen窗口[37]。Farquhar等人研究了一种为FBP选择滤波器函数和截止频率的方法[38]。Zeng等人导出了一种逐射线加权滤波反投影(rFBP)算法[39]。Zeng还开发了一种改进的窗函数,使解析式FBP算法表现为迭代Landweber算法[40]。一般来说,在这些研究中,窗函数或滤波器的设计是为了在噪声抑制和分辨率保持之间取得平衡。与现有研究不同的是,我们设计了一个神经网络来隐式学习FBP的优化窗口函数。在我们的实验中,学习到的窗函数在FBP重建中表现优异。此外,学习后的滤波器的计算复杂度与原始滤波器基本相同,且不增加额外的计算时间。

B. 学习一个数据驱动的非线性插值算子

反投影过程中的插值算子在FBP中起着重要的作用[41]。线性插值是传统FBP算法中常用的一种方法。需要注意的是,线性插值容易受到噪声的影响,在反投影过程中可能导致信息丢失[42]。针对FBP,人们提出了不同的插值方法。Horbelt等人考虑使用样条插值来改进标准的FBP重建[43]。Schaller等人提出了一种用于多层螺旋计算机断层扫描的螺旋插值方法[44]。McCann提出使用成本效益高的预滤波方法进行CT重建[45]。在这项研究中,我们提出了一个使用神经网络学习的插值算子。这种新的插值方法可以利用附近detector bin的更多信息。插值的参数是自动从一个大的训练数据集中学习的。操作人员既可以充分利用附近的detector bins,又可以避免人工选择参数。通过这种方式,我们实现了更适合特定任务的数据相关插值。我们探讨了可学习的线性和非线性插值算子。这两种方法都比传统的插值方法有更好的性能,其中非线性插值方法在我们的实验中表现最好。

II. METHODS

f ( x , y ) f (x, y) f(x,y)表示二维图像, p ( r , θ ) p (r,θ) p(r,θ)表示图像在直线 r = x cos ⁡ θ + y sin ⁡ θ r = x \cos θ + y \sin θ r=xcosθ+ysinθ上的线积分。经典的FBP算法包括两个步骤。第一步是对每个角度的投影数据进行滤波操作:
Q ( ω , θ ) = P ( ω , θ ) ∣ ω ∣ , (1) Q\left(\omega,\theta\right)=P\left(\omega,\theta\right)\left|\omega\right|, \tag{1} Q(ω,θ)=P(ω,θ)ω,(1)
其中 P ( ω , θ ) P (ω, θ) P(ω,θ)表示投影 P ( r , θ ) P (r, θ) P(r,θ)的傅里叶变换,而 ∣ ω ∣ |ω| ω是一个斜坡滤波器。第二步是反投影,通过傅里叶反变换从 q ( ω , θ ) q (ω, θ) q(ω,θ)计算出 q ( r , θ ) q (r, θ) q(r,θ),并对 q ( r , θ ) q (r, θ) q(r,θ)进行反投影运算重建出原始图像 f ( x , y ) f (x, y) f(x,y)
f ( x , y ) = ∫ 0 π q ( r , θ ) ∣ r = x cos ⁡ θ + y sin ⁡ θ d θ . (2) f\left(x,y\right)=\int_{0}^{\pi}q(r,\theta)|_{r=x\cos\theta+y\sin\theta}d\theta. \tag{2} f(x,y)=0πq(r,θ)r=xcosθ+ysinθdθ.(2)

A. 可学习窗函数

由公式(1)可知,投影 P ( ω , θ ) P (ω, θ) P(ω,θ)在原FBP的频域内乘以斜坡滤波器 f i l t e r 0 ( ω ) = ∣ ω ∣ filter_0 (ω) = |ω| filter0(ω)=ω。注意,这个斜坡滤波器是无界的,因此是不可实现的。在实际应用中,通常在原斜坡滤波器中加入窗函数 h ( ω ) h (ω) h(ω),以使给定频率范围外的 P ( ω , θ ) ∣ ω ∣ P (ω, θ)|ω| P(ω,θ)ω为零,即将公式(1)中的原滤波器替换为以下组合滤波器:
f i l t e r ( ω ) = h ( ω ) ⋅ ∣ ω ∣ . (3) filter\left(\omega\right)=h\left(\omega\right)\cdot\left|\omega\right|. \tag{3} filter(ω)=h(ω)ω.(3)
为了获得较好的重建图像,应遵循以下原则:1)主波瓣宽度应较窄,以获得最陡的过渡区;2)最大旁波瓣要小,以提高视觉平稳性,增加阻带的衰减[37]。在原始FBP中最常用的窗函数是矩形窗。组合滤波器(即斜坡滤波器乘以矩形窗函数)就是所谓的Ram-Lak滤波器,如图1(a)所示。然而,Ram-Lak滤波器可能会产生吉布斯现象[46],导致重建图像中的环状伪影。为了抑制这些环形伪影,常用几个光滑窗口来代替矩形窗口函数:

  1. HAMMING WINDOW
    h ( ω ) = 0.54 + 0.46 cos ⁡ π ω 2 Δ ω K , h\left(\omega\right)=0.54+0.46\cos\frac{\pi\omega}{2\Delta\omega K}, h(ω)=0.54+0.46cosωKπω,

  2. HANN WINDOW
    h ( ω ) = 0.5 + 0.5 cos ⁡ π ω 2 Δ ω K , h\left(\omega\right)=0.5+0.5\cos\frac{\pi\omega}{2\Delta\omega K}, h(ω)=0.5+0.5cosωKπω,

  3. COSINE WINDOW
    h ( ω ) = cos ⁡ π ω 2 Δ ω K , h\left(\omega\right)=\cos\frac{\pi\omega}{2\Delta\omega K}, h(ω)=cosωKπω,

  4. SINE WINDOW
    h ( ω ) = ( sin ⁡ π ω 2 Δ ω K ) / ( π ω 2 Δ ω K ) , h\left(\omega\right)=\left(\sin\frac{\pi\omega}{2\Delta\omega K}\right)/\left(\frac{\pi\omega}{2\Delta\omega K}\right), h(ω)=(sinωKπω)/(ωKπω),

式中 ω = 0 , ± Δ ω , ± 2 Δ ω , ± K Δ ω \omega=0,\pm\Delta\omega,\pm2\Delta\omega,\pm K\Delta\omega ω=0,±Δω,±ω,±KΔω为频率值, K K K为整数, Δ ω \Delta\omega Δω为频率区间。

图1显示了几个经典的窗口函数,即h (ω),用于FBP及其相应的组合滤波器,即h (ω)·|ω|。我们可以看到Ram-Lak滤波器的振幅随频率线性增加,这使得它容易受到噪声的影响。这些平滑的窗函数使滤波器的尾迹逐渐消失,从而降低其在高频处的幅度,如图1(b-e)所示,这有助于降低噪声和ringing伪影。尽管这些平滑窗函数对噪声和环形伪影的鲁棒性更强,但它们通过引入模糊效果降低了图像分辨率[47]。重建图像的质量取决于所选择的滤波器和截止频率。高截止频率的滤波器可以增强分辨率和对比度,但不能有效抑制噪声[37]。

在这里插入图片描述

为了实现噪声抑制和分辨率增强之间的平衡,在本研究中,我们提出了一种简单的方法,使用专门设计的方法直接从数据中学习滤波器管道如图2所示。图2左侧的正弦图表示投影。在进行一维快速傅里叶变换(FFT)后,用频域可学习滤波器对正弦图进行滤波,如图2中间部分所示。最后,对滤波后的数据进行一维傅里叶反变换,恢复滤波后的投影p。在频域直接将可学习滤波器定义为可优化向量,而不是通过神经网络建模,以减少计算量。

在这里插入图片描述

我们使用了两种策略来学习FBP重建的滤波器:

  • 策略一:所有角度的投影共享同一个滤波器。这个策略产生了滤波器I。
  • 策略二:不同角度的投影使用不同的滤波器。这种策略产生了滤波器II。

滤波器I与传统滤波器设计的原理一致,参数从数据中学习。滤波器II可以看作是滤波器I的推广,它考虑了FBP中的不同角度。与滤波器II相比,滤波器I需要的参数更少,而滤波器II则保持了更多的多样性。表1的第二列列出了这两种策略下滤波器中可优化参数的数量。为了促进整个端到端优化,我们从“Ram-Lak”滤波器初始化了两种策略的可学习滤波器,以加快收敛速度。我们将测试滤波器II是否比滤波器I具有更好的性能。注意,一旦滤波器I和滤波器II被训练,使用学习到的滤波器的FBP的计算复杂度几乎与使用原始滤波器相同,而不会带来任何额外的计算时间。

在这里插入图片描述

B. 可学习插值运算

CT中使用的检测器包括一系列离散的接收器,投影数据为离散形式,在反投影步骤中需要使用插值。线性插值是FBP中常用的方法[48],如图3(a)所示,可以表示为:
p x i , y i , θ = ( 1 − z ) p ( a ) + z p ( a + 1 ) , (4) p_{x_i,y_i,\theta}=(1-z)p(a)+zp(a+1), \tag{4} pxi,yi,θ=(1z)p(a)+zp(a+1),(4)
式中 p x i , y i , θ p_{x_i,y_i,θ} pxi,yi,θ为重构图像中位置 ( x i , y i ) (x_i, y_i) (xi,yi)处的估计强度,来自于角度为 θ θ θ的投影, a = ⌊ x i cos ⁡ θ + y i s i n θ ⌋ a =⌊x_i \cos θ + y_i sinθ⌋ a=xicosθ+yisinθ为对应的检测器位置, p ( a ) p (a) p(a)为其投影值, z z z为加权参数。这种简单的线性插值对噪声很敏感。最近邻插值、三次样条插值和分段三次埃尔米特插值(PCHIP)[49]是比线性插值更好的选择。在本研究中,我们设计了一种可学习的非线性插值来取代FBP中使用的原始线性插值。

附近投影点的线性组合可能不能反映一个位置的真实值。我们提出了一种用于FBP重建的非线性插值方法。利用神经网络较强的线性和非线性表达能力,利用神经网络实现非线性插值。为此,我们首先对投影 p p p进行非线性变换 T T T,即 p ′ = T ( p ) p^{'} = T (p) p=T(p),其中T由神经网络建模,如图3(b)所示。具体来说, T T T由三个残差块和一个一维卷积层组成。每个残差块依次由一维深度卷积层、一维批归一化(BN)和参数整流线性单元(PRELU)组成。在残差块内,从输入到输出应用残差连接。通过使用T中的所有一维操作,我们从不同的角度单独处理每个投影。网络T的输入大小为 L × 360 L × 360 L×360,其中 L L L是投影大小,这里的360是指从360个不同角度进行的投影。

在这里插入图片描述

在得到非线性传递投影 p ′ p^{′} p后,我们采用线性组合得到 p x i , y i , θ p_{x_i,y_i,θ} pxi,yi,θ
p x i , y i , θ = ( 1 − z ) p ′ ( a ) + z p ′ ( a + 1 ) . (5) p_{x_i,y_i,\theta}=(1-z)p'(a)+zp'(a+1). \tag{5} pxi,yi,θ=(1z)p(a)+zp(a+1).(5)

C. 基于CNN的后处理

为了进一步提高算法的性能,我们增加了一个额外的CNN模块作为图像域噪声抑制的后处理步骤。有许多去噪、超分辨率网络可以直接用于这一步。在我们的研究中,我们使用了一个基于Lim等人的研究[50]的简单CNN模块。它包含三个残差块和三个卷积块。

D. DeepFBP

基于学习到的滤波和插值以及简单的后处理模块,这种新的分析式FBP算法被称为DeepFBP。DeepFBP的整体结构如图4所示。有两个版本的DeepFBP分别使用滤波器I和滤波器II。我们将它们命名为DeepFBP I和DeepFBP II。

在这里插入图片描述

DeepFBP中各分量的参数个数如表1所示。所建议的方法是轻量级的,特别是对于滤波器I版本。我们的方法比CT中常用的一些去噪网络要轻得多,如Cascaded-CNN [19],它有1.1M个参数。我们的方法只有不到0.61M个参数。

在训练阶段,DeepFBP依次通过可学习滤波器、非线性插值和后处理网络传输初始投影,生成最终的CT图像。然后计算重建CT图像与正常剂量CT图像之间的L2损失,随后,损失的梯度通过所有可学习模块反向传播,实现基于梯度的优化。详细的训练条件载于第III-E节。

III. DATASETS AND EVALUATIONS

在本节中,我们将介绍本研究中使用的数据集和算法评估的评估指标。我们使用来自梅奥诊所的临床患者数据集进行“2016年nih -AAPM-梅奥诊所低剂量CT大挑战”[18] (以下简称“AAPM数据集”)。它包括12名患者的正常和低剂量扫描。测试了三种投影:低剂量投影、噪声正常剂量投影和稀疏视图低剂量投影。在每种情况下,我们选择10个患者作为训练数据集(2039对2D), 1个患者作为验证数据(128对2D),最后一个患者作为测试数据(211对2D)。

A. 低剂量投影

AAPM数据集中的低剂量扫描被投影成360角度,角度间隔为0.5◦,以产生低剂量投影。对这些低剂量投影应用重建算法获得低剂量重建。

B. 带噪声的正常剂量投影

正常剂量扫描用于产生正常剂量投影,这些投影被添加噪声以获得有噪声的正常剂量投影。根据前人的研究[51]、[52]、[53]、[54]、[55],可以假设CT噪声为泊松分布量子噪声加高斯分布电子噪声,即:
n i = P o i s s o n ( I 0 e − p i ) + G a u s s i a n ( 0 , σ e 2 ) , (6) n_i=Poisson\left(I_0e^{-p^i}\right)+Gaussian\left(0,\sigma_e^2\right), \tag{6} ni=Poisson(I0epi)+Gaussian(0,σe2),(6)
其中, n i n_i ni为噪声在第 i i i投影上的 p i p_ i pi,Poisson(·)和Gaussian(0,·)分别为泊松分布和零均值高斯分布, I 0 e − p i I_0e^{−p^i} I0epi为根据朗伯-比尔定律的噪声传输基准, I 0 I_0 I0为入射X射线强度, σ e 2 σ^2_e σe2为背景电子噪声方差。根据多项临床研究[55]、[56]、[57]、[58]、[59], I 0 I_0 I0设为1.0 × 105,电子噪声方差 σ e 2 σ^2_e σe2设为10。

C. 稀疏低剂量投影

通过将投影角度从360度降低到90度,我们使用低剂量扫描生成稀疏视图低剂量投影。将重建算法应用于这些投影,获得稀疏视图低剂量重建。

D. 评价标准

采用峰值信噪比(PSNR)和结构相似度(SSIM)对重构图像进行评价。PSNR定义为:
P S N R = 10 ⋅ l o g 10 μ m a x 2 M S E , PSNR=10\cdot log_{10}\frac{\mu_{max}^{2}}{MSE}, PSNR=10log10MSEμmax2,
其中MSE是重建图像与参考图像之间的均方误差, μ max \mu_{\text{max}} μmax是图像的最大可能值。PSNR越高,意味着重构图像与参考图像之间的误差越小[14]。SSIM定义为:
S S I M ( a , b ) = ( 2 μ a μ b + C 1 ) ( 2 σ a b + C 2 ) ( μ a 2 + μ b 2 + C 1 ) ( σ a 2 + σ b 2 + C 2 ) , SSIM\left(a,b\right)=\frac{\left(2\mu_{a}\mu_{b}+C_{1}\right)\left(2\sigma_{ab}+C_{2}\right)}{\left(\mu_{a}^{2}+\mu_{b}^{2}+C_{1}\right)\left(\sigma_{a}^{2}+\sigma_{b}^{2}+C_{2}\right)}, SSIM(a,b)=(μa2+μb2+C1)(σa2+σb2+C2)(2μaμb+C1)(2σab+C2),
其中a和b是两幅图像中大小为8 × 8像素的两个局部窗口。两个窗口位置相同, μ a \mu_a μa σ a σ_a σa μ b \mu_b μb σ b σ_b σb分别是它们的均值和标准差, σ a b σ_{ab} σab为两个窗口间的协方差, C 1 C_1 C1 C 2 C_2 C2为两个常数,以避免不稳定性。本研究选取 C 1 C_1 C1 C 2 C_2 C2分别为 C 1 = ( 0.01 μ max ) 2 C_1 ={(0.01\mu_{\text{max}})}^2 C1=(0.01μmax)2 C 2 = ( 0.03 μ max ) 2 C_2 ={(0.03\mu_{\text{max}})}^2 C2=(0.03μmax)2。SSIM用于度量两个窗口之间结构的相似性,值越高表示相似性越高。当两个窗口逐像素地在重建图像和参考图像上移动时,我们得到一个SSIM映射。在实践中,我们使用单一的Mean-SSIM (MSSIM)值,通过简单地平均SSIM值来评估整体图像质量[14]。

E. 训练设置

对于所有的实验,我们使用AdamW作为默认网络初始化的优化器。损失函数是L2损失。所有实验都是在RTX 2080Ti GPU上完成的。在第二节中,我们提出了两个用于CT重建的DeepFBP版本(DeepFBP I和DeepFBP II),它们都有三个新的可学习组件,即学习滤波器(窗函数),学习插值和后处理模块。

DeepFBP的训练分为三个阶段。首先,我们只使用可学习滤波器和插值对网络进行预训练。训练epoch为200,学习率为1e−3。第二阶段使用第一阶段的预训练参数,只更新后处理部分的参数。训练epoch为100,学习率为1e−3。在第三阶段,将三个可学习部分的所有参数一起更新。训练epoch为100,学习率为1e−4。我们对所有的实验都使用8个批次。

IV. EXPERIMENT

A. 比较方法

我们将提出的方法,即DeepFBP I和DeepFBP II,与FBP、基于TV的统计迭代算法、FBPConvNet[60]和RED-CNN[18]等四种方法进行比较。FBP是最经典的CT重建算法。我们选择Ram-Lak滤波器和线性插值进行FBP。基于TV的迭代算法是CT重建中常用的算法,具有良好的边缘保持能力和抑制噪声的能力。它经常被用作基线[26],[60]。FBPConvNet和RED-CNN都是后处理算法,为CT重建提供了最先进的性能。他们利用深度学习网络来增强FBP重建的粗糙图像。在我们的实验中,我们使用粗糙图像和它们的正常剂量参考对FBPConvNet和RED-CNN进行训练。

B. 低剂量重建

在这一部分中,我们比较了DeepFBP与其他低剂量预测。验证集和测试集上的性能如表2所示。

在这里插入图片描述

如表2所示,在所有方法中,两种DeepFBP算法的性能最好。DeepFBP II比经典FBP提高了近3dB的PSNR,比FBPConvNet提高了近2dB。DeepFBP I和DeepFBP II均超过RED-CNN。

为了可视化重建质量,我们显示了图5中测试集中的一个重建切片。蓝色矩形是感兴趣区域(ROI),在每个子图的左下角被放大。DeepFBP I和DeepFBP II都比FBP、TV算法、FBPConvNet[60]和RED-CNN[18]具有更好的重建视觉质量。特别是,两种DeepFBP算法都能很好地抑制噪声并保持边缘。它们也很好地消除了TV算法中典型的阶梯效应。两种算法都能获得比FBPConvNet和RED-CNN更低噪声的CT图像。

在这里插入图片描述

C. 噪声正常剂量重建

在这一部分中,我们将所有方法应用于有噪声的正常剂量投影。结果列在表3中。

在这里插入图片描述

如表3所示,传统的FBP算法和基于TV的迭代算法在处理噪声投影时显示出各自的局限性。在基于深度学习的方法中,DeepFBP II的性能最好。

图6为重建图像的一个切片。可以看出,FBP和基于TV的方法的结果质量都很低。细节在图6(a)和图6(b)中丢失。通过比较,FBPConvNet和RED-CNN都能提高重建质量。两种DeepFBP算法,尤其是DeepFBP II算法,表现出最好的视觉效果和最成功的噪声抑制效果。

在这里插入图片描述

D. 稀疏视图低剂量重建

在这一部分中,我们将DeepFBP和其他方法应用于稀疏视图低剂量投影。验证集和测试集上的性能如表4所示。

在这里插入图片描述

这些结果更令人印象深刻。我们的方法比FBP方法提高了7dB,比TV方法提高了5dB,比FBPConvNet和RED-CNN方法提高了1dB。这些结果表明,当投影中存在较大的信息丢失时,两种DeepFBP算法相比其他算法更具竞争力。这主要得益于学习滤波器和学习插值。

为了可视化稀疏视图低剂量重建的图像质量,我们在图7中显示了测试集中的重建切片。如图7 (a, b)所示,FBP和TV具有过多的伪影。FBPConvNet和RED-CNN都减轻了这些伪影(图7 (c, d))。与所有其他方法相比,所提出的DeepFBP I(图7 (e))和DeepFBP II(图7 (f))具有更少的伪影。

在这里插入图片描述

E. 不同的情况下的可学习滤波器

在这一部分中,我们将展示习得的滤波器。DeepFBP I中的滤波器在所有角度都是相同的,而DeeFBP II中的滤波器则在每个角度都不同。从图8到图10,我们绘制了在上述实验中学习到的滤波器I,滤波器II在0◦和90◦角度的均值。

一般来说,所有学习过的过滤器都保持对称。在每种情况下学习的过滤器看起来都不一样,并且具有其独特的特征。如图8所示,在低剂量投影情况下,滤波器I和滤波器II都类似于Ram-Lak滤波器。滤镜II在不同角度略有不同,但看起来相似。在噪声正常剂量投影情况下,如图9所示,滤波器I和滤波器II看起来不一样。滤波器 I有多峰,而滤波器 II的均值看起来像Ram-Lak滤波器,滤波器II在不同角度上仍然像Ram-Lak滤波器,但有轻微的扰动。在稀疏视图重建中,滤波器I和滤波器II在形状和数据范围上都有很大的不同。滤波器II在0◦和90◦的稀疏视图低剂量重建中表现出显著差异。

在这里插入图片描述

在这里插入图片描述

F. 计算效率研究

在CT重建中,速度也是需要考虑的重要因素。分析算法比统计迭代算法更广泛地应用于临床扫描仪。我们分析了所提出的DeepFBP算法中各分量的计算时间,并与FBP算法进行了比较。

在这里插入图片描述

从表5中我们可以发现,我们提出的方法比原来的FBP稍微慢一点,但是差距非常小,特别是当使用GPU时。此外,与基于TV的迭代算法相比,所提方法的速度提高了两个数量级。

V. DISCUSSION

在本研究中,我们提出了一种新的CT重建分析方法——DeepFBP。为了构建DeepFBP,我们将FBP中的标准组件替换为简单的小型神经网络模块。这些模块包括一个可学习的频率滤波器模块,一个可学习的非线性插值模块和一个简单的后处理模块。与FBPConvNet[60]、RED-CNN[18]等后处理深度学习重建方法相比,DeepFBP可以更好地利用投影信息,具有较高的可解释性。我们相信这些都是医学成像的重要优势。在三种投影上的实验证明了所提出的DeepFBP方法在定量和视觉上的高性能。

我们的动机之一是提高低剂量CT重建的分析滤波反投影的性能。FBP比迭代重建速度快,但重建质量较差。一个自然的问题是:解析重建能否在保持高计算效率的同时达到与迭代重建相当的性能?已有研究[29]、[30]、[31]表明,对FBP中的滤波器进行修改可以提高其性能。然而,这些FBP变体的性能仍然不如迭代重建好。在这项研究中,我们提出了DeepFBP来优化滤波器和非线性插值与简单的神经网络的经典FBP。本文提出的DeepFBP算法在保持FBP的速度优势的同时,可以获得比基于TV的迭代重建算法和两种最先进的后处理深度学习重建方法(FBPConvNet[60]和RED-CNN[18])更好的性能。

一个问题是,在不牺牲计算速度的情况下,可以修改FBP的哪一部分。由于滤波步骤在FBP中的重要作用,我们将其修改为可以从训练数据集中学习的数据驱动形式。这种修改不会增加计算负担,但可以大大提高性能,同时具有良好的解释能力。考虑到射线发散,我们还提出了一种可学习的数据相关非线性插值方法,该方法利用相邻detector bin的信息对噪声具有更强的鲁棒性。

我们将我们的DeepFBP方法与两种最先进的CT重建后处理深度学习方法,即FBPConvNet[60]和RED-CNN[18]进行了比较。RED-CNN是一种非常深度的全卷积编码解码框架,用于图像恢复,如去噪和超分辨率[17]。另一方面,FBPConvNet可以被认为是对多分辨率U-net结构的改进[61],在输入和输出之间有跳跃连接[62]。请注意,所提出的DeepFBP使用的网络比RED-CNN和FBPConvNet中的网络简单得多。令人惊讶的是,在我们的实验中,DeepFBP算法在所有情况下都轻松优于FBPConvNet和RED-CNN。一个可能的原因是,DeepFBP充分利用了重建过程的信息,而这两种后处理方法将重建视为图像恢复问题,完全忽略了重建中的物理行为和属性。我们的研究表明考虑重建过程对于设计高质量的重建算法至关重要。

本文提出的分析重构方法虽然具有较好的性能和较短的计算时间,但仍有几个方面有待进一步改进。例如,在我们当前的DeepFBP中,滤波器需要针对不同的噪声情况进行重新训练。它可以被重新设计,以适应不同的噪音水平。

VI. CONCLUSION

et和RED-CNN。一个可能的原因是,DeepFBP充分利用了重建过程的信息,而这两种后处理方法将重建视为图像恢复问题,完全忽略了重建中的物理行为和属性。我们的研究表明考虑重建过程对于设计高质量的重建算法至关重要。

本文提出的分析重构方法虽然具有较好的性能和较短的计算时间,但仍有几个方面有待进一步改进。例如,在我们当前的DeepFBP中,滤波器需要针对不同的噪声情况进行重新训练。它可以被重新设计,以适应不同的噪音水平。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/777977.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Http中get与post的区别,99%的人都理解错了吧

Get和Post是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。 最直观的区别 就是Get把参数包含在URL中,Post通过request body传递参数。 你可能自己写过无数个Get和Post请求,或者已经看过很多权威网站总…

基于TCP的在线词典系统(分阶段实现)

1.功能说明 一共四个功能: 注册 登录 查询单词 查询历史记录 单词和解释保存在文件中,单词和解释只占一行, 一行最多300个字节,单词和解释之间至少有一个空格。 2.功能演示 3、分阶段完成各个功能 3.1 完成服务器和客户端的连接 servic…

【大数据】什么是数据融合(Data Fusion)?

目录 一、数据融合的定义 二、数据融合的类型 三、数据融合的挑战 四、数据融合的方法 五、数据融合的关键环节 1.数据质量监控指标的制定和跟踪 2.异常检测和处理机制 3.实时数据监测与反馈机制 4.协同合作与知识共享 一、数据融合的定义 数据融合(Data Fusion&…

JVM原理(十三):JVM虚拟机类类加载器与双亲委派模型

1. 类加载器 Java虛拟机设计团队有意把类加载阶段中的“通过一个类的全限定名来获取描述该类的二进制字节流"这个动作放到Java虚拟机外部去实现,以便让应用程序自己决定如何去获取所需的类。实现这个动作的代码被称为“类加载器”(Class Loader)。 对于任意一…

利用级数公式计算圆周率(π)

π是是指圆的周长与直径的比值,是无限不循环小数,有很多种方法可以求得它的近似值。这里用比较容易实现的关于π的无穷级数来求它的前10000位的取值。 π / 2 π 具体的,用两个字符数组x,z分别存放当前计算得到的pi值,数组…

在5G/6G应用中实现高性能放大器的建模挑战

来源:Modelling Challenges for Enabling High Performance Amplifiers in 5G/6G Applications {第28届“集成电路和系统的混合设计”(Mixed Design of Integrated Circuits and Systems)国际会议论文集,2021年6月24日至26日,波兰洛迪} 本文讨…

【学术会议征稿】第四届机械自动化与电子信息工程国际学术会议(MAEIE 2024)

第四届机械自动化与电子信息工程国际学术会议(MAEIE 2024) 2024 4th International Conference on Mechanical Automation and Electronic Information Engineering 由安徽大学主办,安徽大学电气工程与自动化学院、安徽省人机共融系统与智能…

强化训练:day13(牛牛冲钻五、最长无重复子数组、重排字符串)

文章目录 前言1. 牛牛冲钻五1.1 题目描述1.2 解题思路1.3 代码实现 2. 最长无重复子数组2.1 题目描述2.2 解题思路2.3 代码实现 3. 重排字符串3.1 题目描述3.2 解题思路3.3 代码实现 总结 前言 1. 牛牛冲钻五   2. 最长无重复子数组   3. 重排字符串 1. 牛牛冲钻五 1.1 题…

[CTF]-PWN:House of Banana堆块题型综合分析

搭配largebin attack: 例题(ISCC2024 heapheap): 版本:glibc2.31 知识点:largebin attack、house of banana、uaf 查看保护 查看ida delete存在uaf漏洞 largebin attack手法: #创建4个堆块&#xff0…

Qtgui编程基础

Qt简介 ( 框架5.9.8版本 ) Qt是源代码级的跨平台一次编写到处编译.一次开发的Qt应用程序可以移值到不同平台. Qt体系架构 Qt的整个设计都是以单根继承为主这跟java相同.所谓单根继承就是说所有的Qt类都有一个共同的祖先都是QObject类QObject类后面有三个大的子类分别负责不同…

51单片机基础8——单片机控制超声波模块

超声波模块的使用 51单片机控制超声波模块1. 软硬件条件2. 超声波控制原理2.1 超声波测距原理2.2 超声波模块工作原理 3. 接线4. 代码实现 51单片机控制超声波模块 1. 软硬件条件 单片机型号:STC89C52RC开发环境:KEIL4烧录软件:stc-isp超声…

进程的初步认识

目录 一、硬件方面介绍 1.冯诺依曼体系结构 2.存储分级 二、软件 方面 1.操作系统是一款进行管理的软件,它可以管理硬件也可以管理软件 2.操作系统如何管理? 三、进程 1.概念 总结 四、linux中对进程的管理 1.task_ struct内容分类 2.查看进…

C语言 -- 深入理解指针(一)

C语言 -- 深入理解指针(一) 1.内存和地址1.1 内存1.2 究竟该如何理解编址 2. 指针变量和地址2.1 取地址操作符(&)​2.2 指针变量和解引用操作符(*)​​2.2.1 指针变量2.2.2 如何拆解指针类型2.2.3 解引…

Vue2和Vue3的区别Vue3的组合式API

一、Vue2和Vue3的区别 1、创建方式的不同: (1)、vue2:是一个构造函数,通过该构造函数创建一个Vue实例 new Vue({})(2)、Vue3:是一个对象。并通过该对象的createApp()方法,创建一个vue实例。 Vue…

【React】React18 Hooks之useState

目录 useState案例1(直接修改状态)案例2(函数式更新)案例3(受控表单绑定)注意事项1:set函数不会改变正在运行的代码的状态注意事项2:set函数自动批量处理注意事项3:在下次…

C++ 多态篇

文章目录 1. 多态的概念和实现1.1 概念1.2 实现1.2.1 协变1.2.2 析构函数1.2.3 子类虚函数不加virtual 2. C11 final和override3.1 final3.2 override 3. 函数重载、重写与隐藏4. 多态的原理5. 抽象类6.单继承和多继承的虚表6.1 单继承6.2 多继承 7. 菱形继承的虚表(了解)7.1 菱…

springboot三层架构详细讲解

目录 springBoot三层架构0.简介1.各层架构1.1 Controller层1.2 Service层1.3 ServiceImpl1.4 Mapper1.5 Entity1.6 Mapper.xml 2.各层之间的联系2.1 Controller 与 Service2.2 Service 与 ServiceImpl2.3 Service 与 Mapper2.4 Mapper 与 Mapper.xml2.5 Service 与 Entity2.6 C…

论文阅读--Simple Baselines for Image Restoration

这篇文章是 2022 ECCV 的一篇文章,是旷视科技的一篇文章,针对图像恢复任务各种网络结构进行了梳理,最后总结出一种非常简单却高效的网络结构,这个网络结构甚至不需要非线性激活函数。 文章一开始就提到,虽然在图像复原…

【MYSQL】事务隔离级别以及InnerDB底层实现

事务隔离级别 读未提交(Read Uncommitted) 允许事务读取其他事务未提交的数据,可能会导致脏读。 读已提交(Read Committed) 一个事务只能看见已经提交的事务所做的更改,可以避免脏读,但可能…

【C++:默认成员函数初始化列表】

构造函数 特点 没有返回值支持函数重载对象实例化时,编译器自动调用作用不是构造,而是初始化函数名与类名相同无参函数和全缺省的函数,不用传参就能调用的函数叫做默认构造函数 构造函数是一个特殊的成员函数 注:无参构造函数在实…