基于深度学习的CBCT重建方法研究(1)

摘要理解:锥形束CT(CBCT)通过减少减少X射线管阴极电流可以减少对患者的辐射,但是这样重建出来的图像的质量会变差。因此,如何提高低剂量CBCT重建图像的质量是一个值得研究的课题。传统的统计迭代重建法通过设计不同的正则项来重建,TV正则项(全变分)能保护边缘和去燥,但是会产生阶梯效应;而hessian正则项在抑制阶梯时会让边缘模糊化。
本文是利用深度学习学习潜在的正则项,提出来一种基于卷积神经网络的迭代重建算法,在去除噪声和伪影上有比TV更好的效果,在抑制阶梯效应上可以与和hessian并提。

1.绪论

CBCT优势:投影数据是二维而不是一维的,重建可以直接得到三维图像,伪影不严重。
统计迭代算法:考虑了投影数据的噪声分布特性,对噪声分布建立模型,通过贝叶斯理论和极大似然估计,构建最小二乘目标函数,并利用图像的先验知识构建正则项。正则项的设计对图像质量影响很大。
深度学习应用于反问题:一是训练一个端到端神经网络,输入退化的图像,输出高
质量的图像。二是用网络改造迭代算法,用网络替换掉迭代算法的一部分,或者用
网络替换整个迭代算法。

2.CBCT成像基本原理

(1)文章中给出
基于深度学习的CBCT重建方法研究(1)_第1张图片基于深度学习的CBCT重建方法研究(1)_第2张图片
分析一下这段话的意思根据Id和I0得到p,然后p是u的线积分,测量多组数据得到p的分布,然后就可以得到u的分布,根据人体组织与u的对应关系,就可以根据u(x,y,z)得到该位置是什么器官。
百度找到知乎上一些关于CT成像的答复
①关于CT成像的历史研究
1917年,丹麦数学家J.Rando从数学上证明:某种物理参量的二维分布函数,由该函数在其定义域内的所有线性积分确定。该研究结果的意义在于:确定一个物理参量,寻找该物理参量的线积分,获得所有方向内的线积分,就能够求得该二维分布函数。
1961年,Wiliam H.Oldendorf采用聚焦成一束的碘131放射源完成了著名的旋转位移实验,向人们揭示了获取投影数据的基本原理与方法;
1963年,美国的Allan M.Cormack以人体组织对X线的线性吸收系数为物理参量,用X线投影作为人体组织对X线线性吸收的线积分,研究出重建图像的数学方法。
1967~1970年,英国的Godfrey Hounsfield博士提出了体层成像(tomography)的具体方法。此方法需要从单一平面获取X线投影的读数,每个X线光束通路所获得的投影都可以看做是联立方程组的方程之一,通过解这组联立方程组能获得该平面的图像。
②关于CT成像的原理
CT成像的本质是衰减系数成像。
搞懂两个东西,你就明白X光成像的原理了。

  1. 朗伯比尔定律(Beer-Lambert Law)

  2. Radon transform (拉东变换)
    朗伯比尔定律本文已介绍,但是需要注意的是:
    得出衰减系数,再把不同的衰减系数对应到不同的像素值,就得到X光照片了。这就是早期的X光成像技术。
    注意:这里的衰减系数 在X光穿透路径上是保持不变的!在均匀的物体中穿透没问题,可在非均匀物体中穿透,由于处处的不等,按照这个公式计算出来的 是路径上所有的 的均值。也就是说计算所得的 不准确。这样的成像效果肯定不会好啦。三维结构被压缩成二维图像,没有空间分辨率,更别谈断层了。那么如何得到物体内部的剖面图像呢?

需要用到Radon变换
实际上衰减系数是关于空间位置坐标和能量的函数,相同物质对不同能量的吸收能量也不一样,探测器上面检测到的是该路径上所有物质对x光吸收后的结果,路径上具体位置的吸收无从得知,这就需要在图像领域朝着各个方向对图像投影(Randon变换)
基于深度学习的CBCT重建方法研究(1)_第3张图片
如图对图像进行投影(0°,45°,90°),各个方向的投影其实就是计算各个方向上的像素值之和,得到一个向量,把三个方向的投影结果合起来就是投影数据,不同方向得到的向量维数不一样,以最大维数为准,不足用0填充,这就是拉东变换。
CT的扫描其实就是,以螺旋CT为例,机器会围绕人作旋转运动,把人看着图像,CT围绕人旋转,那么其发出的X光就会从不同角度穿透人体,达到另一面的探测器上。就相当于沿各向求和,这里的和是不同方向上人体对X光的吸收作用。探测器就记录下了这个投影数据,后面用来重建人体的三维结构。
如何由得到的不同方向投影的数据,恢复得到原始图像呢?
基于深度学习的CBCT重建方法研究(1)_第4张图片
水平方向,强度为10的X光穿透物体后,探测器探测到的结果为5。只从这一点,我们只知道 μ1+μ2=10-5=5 ,具体μ1,μ2是多少,无法知晓。但是!从其竖直方向可以得到μ1=10-8=2,μ2=10-7=3 。这就像是联立方程解方程组,就像做数独。实际过程中,几百个方向上的投影来解出每个位置的衰减系数。然后一副二维的切片图像就得出了。
这就是拉东反变换。

(2)FDK 等解析类重建算法的突出的优点是计算效率高,重建速度快,但是在解
析类算法的推导过程中,方程的导出形式是连续的,而且还要满足投影数据必须
完全、分布必须均匀、相邻射线等间隔等一系列条件。而实际中,这些条件很难
得到满足,连续方程的离散化实现时也会引入插值误差。这些都会导致重建图像
有较大的噪声或者伪影,无法得到较好质量的重建图像。

(3)迭代算法
基于深度学习的CBCT重建方法研究(1)_第5张图片
主要会碰到A不可逆以及A过于庞大不易存储的问题
代数重建问题(线性方程组的应用):
这里找到在别人的博文上面对这个问题的介绍:
X射线透视可以得到3维对象在2维平面上的投影,CT则通过不同角度的X射线得到3维对象的多个2维投影,并以此重建对象内部的3维图像。代数重建方法就是从这些2维投影出发,通过求解超定线性方程组,获得对象内部3维图像的方法。这里我们考虑一个更简单的模型,从2维图像的1维投影重建原先的2维图像。

一个长方形图像可以用一个横竖均匀划分的离散网格来覆盖,每个网格对应一个像素,它是该网格上各点像素的均值。这样一个图像就可以用一个矩阵表示,其元素就是图像在一点的灰度值(黑白图像)。下面我们以 3*3图像为例来说明。

基于深度学习的CBCT重建方法研究(1)_第6张图片

每个网格中的数字代表其灰度值,范围在[0,1]内,记0表示白,1表示黑,0.5为中间的灰色,沿某个方向的投影就将该方向上的灰度值相加(见上图所示)。如果我们不知道网格中的数值,只知道沿竖直方向和水平方向的投影。设网格按第1列、第2列、第3列的顺序排列,为了确定网格中的灰度值,可以建立线性方程组:
基于深度学习的CBCT重建方法研究(1)_第7张图片

显然该方程组的解是不唯一的,为了重建图像,必须增加投影数量。如我们增加从右上到左下的投影,则方程组将增加5个方程,成为超定方程组。考虑到测量误差,可以将超定方程组的近似解作为重建的图像数据。
但是在实际情况中在实际情况中,由于噪声的影响,方程组是不相容的,几乎不可能得到唯一解。

统计迭代法,通过贝叶斯法则得到
图像u的贝叶斯目标函数:
基于深度学习的CBCT重建方法研究(1)_第8张图片
由于投影数据的噪声服从高斯分布,因此可以通过投影数据高斯分布的联合概率密度函数
基于深度学习的CBCT重建方法研究(1)_第9张图片
忽略2-12的常数项,可以得到惩罚加权最小二乘模型
在这里插入图片描述
根据最大后验概率理论,上式取最小值的解即为待重建的图像u
在这里插入图片描述
第一项就是保真项,第二项是正则项

3.正则项方法

①正则项的设计
②TV正则项和hessian正则项
TV正则项
在这里插入图片描述
基于深度学习的CBCT重建方法研究(1)_第10张图片
TV正则项是一种一阶导正则项,它能有效去除重建图像中的伪影和噪声----而图像中噪声和伪影附近的梯度通常会较大,也就是灰度值与它相邻点的灰度值相差较大,TV 正则项的权值就会较大,相应的会施加较重的惩罚。但是也会有阶梯效应-----:因为 TV 正则项是对相邻像素之间的灰度差进行惩罚,对于图像灰度均匀变化的区域来说,这种惩罚力度稍微有点强了,导致相邻像素的灰度值趋向于相等。

Hessian正则项

在这里插入图片描述
基于深度学习的CBCT重建方法研究(1)_第11张图片
解释一下,F范数是矩阵中各项元素的绝对值的平方的总和开根号。
基于深度学习的CBCT重建方法研究(1)_第12张图片
在这里插入图片描述
基于深度学习的CBCT重建方法研究(1)_第13张图片
可以看到hessian惩罚的相邻像素导数的差值,所以可以有效抑制阶梯效应,但是在图像的边缘处二阶导数一般较大,对其惩罚,可能会使边缘模糊。

这篇文章的学习后半部分需要对深度学习的掌握,下次再介绍。

你可能感兴趣的:(图像处理论文)