锥形束螺旋计算机断层扫描(CBCT)重建算法解析
1. 投影运算与Feldkamp算法
在角度 $h$($h = 0, \cdots, H - 1$)下进行投影操作,可表示为:
$\hat{\mu}(i, j, z_p) \approx \frac{R_f}{2 \Delta h} \sum_{h} \frac{1}{\hat{u}
{ijn}^2} \hat{p}(b
{ij}, h, \hat{z}
{ijn})$
其中,$\hat{u}
{ijn}^2 = s_{ij}^2 + (R_f - u_{ij})^2 + (z_0 - z_p)^2$,$u_{ij}$ 由特定方程计算得出。Feldkamp算法的离散版本流程图为后续重建工作提供了一个基础的操作框架。
2. 高级单切片重排算法(ASSR)概述
ASSR是一种较为复杂的重建方法,它是单切片重排技术的发展。其核心思想是通过调整成像切片的位置,使其与X射线管的螺旋路径相匹配,从而减少图像失真。该算法与其他类似解决方案不同,采用了重排策略。
3. 螺旋路径与屏幕表示
-
螺旋路径
:通过分析投影系统的运动组件,可将移动X射线管的螺旋路径表示为:
$\text{focus}(a_h) =
\begin{bmatrix}
x(a_h) \
y(a_h) \
z(a_h)
\end{bmatrix} =
\begin{bmatrix}
-R_f \cdot \sin a_h \
R_f \cdot \cos a_h \
\frac{k a_h}{2\pi}
\end{bmatrix}$ -
屏幕表示
:部分圆柱形屏幕上的点与 $(x, y, z)$ 坐标系的关系由向量方程表示:
$\text{screen}(b, a_h, \hat{z}) =
\begin{bmatrix}
x \
y \
z
\end{bmatrix} =
\begin{bmatrix}
-R_f \cdot \sin a_h \
R_f \cdot \cos a_h \
\frac{k a_h}{2\pi}
\end{bmatrix} + (R_f + R_d)
\begin{bmatrix}
\sin (a_h + b) \
-\cos (a_h + b) \
0
\end{bmatrix} + \hat{z}
\begin{bmatrix}
1 \
0 \
0
\end{bmatrix}$
为了便于数学处理,将屏幕表示为具有坐标 $(w, v)$ 的平面屏幕:
$\text{screen}(w, a_h, v) =
\begin{bmatrix}
x \
y \
z
\end{bmatrix} =
\begin{bmatrix}
R_d \cdot \sin a_h \
-R_d \cdot \cos a_h \
\frac{k a_h}{2\pi}
\end{bmatrix} + w
\begin{bmatrix}
-\cos a_h \
-\sin a_h \
0
\end{bmatrix} + v
\begin{bmatrix}
0 \
0 \
1
\end{bmatrix}$
平面屏幕上点的条件可表示为:$R_d - x \sin a_h + y \cos a_h = 0$
4. 投影坐标计算
-
平面屏幕投影坐标
:
- $w$ 坐标:$w = - \frac{(x \cos a_h + y \sin a_h) \cdot (R_f + R_d)}{R_f + x \sin a_h - y \cos a_h}$
- $v$ 坐标:$v = \frac{(z - \frac{k a_h}{2\pi}) \cdot (R_f + R_d)}{R_f + x \sin a_h - y \cos a_h}$
-
圆柱形屏幕投影坐标
:
- $\beta$ 坐标:$\beta = - \arctan(\frac{w}{R_f + R_d})$
- $\hat{z}$ 坐标:$\hat{z} = v \cdot \cos \beta \cdot \frac{R_f}{R_f + R_d}$
5. ASSR重建平面相关
- 重建平面位置 :重建平面的位置由参数 $a_h^p$ 定义,它对应于重建平面与移动X射线管螺旋路径在 $z$ 轴上的交点。为简化计算,先假设 $a_h = a_h^p = 0$。
-
重建平面倾斜角
:重建平面相对于 $x$ 轴的倾斜角为 $t$,平面上的点满足关系:$x \cdot \tan t - z = 0$。通过该方程可计算出包含重建平面的圆柱体的横截面,该横截面为椭圆:
$\text{ellipse}(a_h) =
\begin{bmatrix}
x \
y \
z
\end{bmatrix} =
\begin{bmatrix}
-R_f \sin a_h \
R_f \cos a_h \
x \tan t
\end{bmatrix} = R_f
\begin{bmatrix}
-\sin a_h \
\cos a_h \
-\tan t \cdot \sin a_h
\end{bmatrix}$
当考虑实际情况时,重建平面可能不在坐标系原点,此时椭圆方程变为:
$\text{ellipse}(a_h) =
\begin{bmatrix}
x \
y \
z
\end{bmatrix} = O + R_f
\begin{bmatrix}
-\sin a_h \
\cos a_h \
-\tan t \cdot \sin (a_h - a_h^p)
\end{bmatrix}$
其中,$O =
\begin{bmatrix}
0 \
0 \
\frac{k a_h^p}{2\pi}
\end{bmatrix}$
重建平面上的点需满足条件:$x \cos a_h^p \cdot \tan t + y \sin a_h^p \cdot \tan t + \frac{k a_h^p}{2\pi} - z = 0$
6. 坐标系统转换
-
全局与局部坐标系统
:存在全局的 $(x, y, z)$ 坐标系统和包含重建平面的局部 $(x’, y’, z’)$ 坐标系统。通过一系列旋转操作,可实现两个坐标系统之间的转换。
-
首先,将 $(x, y, z)$ 绕 $z$ 轴旋转得到 $(s, u, r)$ 系统:
$\begin{bmatrix}
x \
y \
z
\end{bmatrix} = s \cdot s + u \cdot u + r \cdot r$
其中,$s =
\begin{bmatrix}
\cos a_h^p \
\sin a_h^p \
0
\end{bmatrix}$,$u =
\begin{bmatrix}
-\sin a_h^p \
\cos a_h^p \
0
\end{bmatrix}$,$r =
\begin{bmatrix}
0 \
0 \
1
\end{bmatrix}$ -
若 $(s, u, r)$ 系统再绕 $z$ 轴旋转角度 $a_p$,则基向量变为:
$s(a_p) =
\begin{bmatrix}
\cos (a_h^p + a_p) \
\sin (a_h^p + a_p) \
0
\end{bmatrix}$,$u(a_p) =
\begin{bmatrix}
-\sin (a_h^p + a_p) \
\cos (a_h^p + a_p) \
0
\end{bmatrix}$,$r(a_p) =
\begin{bmatrix}
0 \
0 \
1
\end{bmatrix}$ -
局部 $(x’, y’, z’)$ 系统绕 $z’$ 轴旋转得到 $(s’, u’, r’)$ 系统。为将 $(x’, y’, z’)$ 转换为 $(x, y, z)$ 坐标,需进行两步操作:
-
第一步,将 $(x’, y’, z’)$ 绕 $y’‘$ 轴旋转 $-t$ 角度得到 $(x’‘, y’‘, z’‘)$:
$\begin{bmatrix}
x’’ \
y’’ \
z’‘
\end{bmatrix} =
\begin{bmatrix}
x’ \cos t - z’ \sin t \
y’ \
x’ \sin t + z’ \cos t
\end{bmatrix}$ -
第二步,将 $(x’‘, y’‘, z’‘)$ 绕 $z$ 轴旋转 $a_h^p$ 角度得到 $(x, y, z)$:
$\begin{bmatrix}
x \
y \
z
\end{bmatrix} =
\begin{bmatrix}
x’’ \cos a_h^p - y’’ \sin a_h^p \
x’’ \sin a_h^p + y’’ \cos a_h^p \
z’‘
\end{bmatrix}$
-
第一步,将 $(x’, y’, z’)$ 绕 $y’‘$ 轴旋转 $-t$ 角度得到 $(x’‘, y’‘, z’‘)$:
-
综合上述两步转换,可得到直接将 $(x’, y’, z’)$ 转换为 $(x, y, z)$ 的矩阵方程:
$\begin{bmatrix}
x \
y \
z
\end{bmatrix} = x’ \cdot x’ + y’ \cdot y’ + z’ \cdot z’$
其中,$x’ =
\begin{bmatrix}
\cos t \cdot \cos a_h^p \
\cos t \cdot \sin a_h^p \
\sin t
\end{bmatrix}$,$y’ =
\begin{bmatrix}
-\sin a_h^p \
\cos a_h^p \
0
\end{bmatrix}$,$z’ =
\begin{bmatrix}
-\sin t \cdot \cos a_h^p \
-\sin t \cdot \sin a_h^p \
\cos t
\end{bmatrix}$
-
首先,将 $(x, y, z)$ 绕 $z$ 轴旋转得到 $(s, u, r)$ 系统:
-
射线参数转换
:在ASSR重建方法中,需要确定 $(s, u, r)$ 系统中与 $(s’, u’, r’)$ 系统中射线等效的射线参数。通过一系列推导,可得到射线参数之间的转换关系:
- $s = \frac{s’ \cdot \cos t}{\sqrt{\cos^2 a_0^p + \cos^2 t \cdot \sin^2 a_0^p}}$
- $\cos a_p = \frac{\cos a_0^p}{\sqrt{\cos^2 a_0^p + \cos^2 t \cdot \sin^2 a_0^p}}$
- $\sin a_p = \frac{\sin a_0^p \cdot \cos t}{\sqrt{\cos^2 a_0^p + \cos^2 t \cdot \sin^2 a_0^p}}$
- $s’ = \frac{s}{\sqrt{\sin^2 a_p + \cos^2 t \cdot \cos^2 a_p}}$
- $\cos a_0^p = \frac{\cos a_p \cdot \cos t}{\sqrt{\sin^2 a_p + \cos^2 t \cdot \cos^2 a_p}}$
-
$\sin a_0^p = \frac{\sin a_p}{\sqrt{\sin^2 a_p + \cos^2 t \cdot \cos^2 a_p}}$
同时,还可得到一个重要的三角函数关系:
$\sqrt{\sin^2 a_p + \cos^2 t \cdot \cos^2 a_p} \cdot \sqrt{\cos^2 a_0^p + \cos^2 t \cdot \sin^2 a_0^p} = \cos t$
7. ASSR重建流程
ASSR重建流程可通过以下mermaid流程图表示:
graph LR
A[选择螺旋投影系统旋转角度 $a_h^p$] --> B[确定切片平面倾斜角 $t$]
B --> C[进行投影坐标计算]
C --> D[进行坐标系统转换]
D --> E[完成重建]
8. 调整重建平面
-
确定倾斜角 $t$ 的优化标准
:为了确定倾斜角 $t$ 的最优值,先假设 $a_h^p = 0$,并采用优化准则:
$t_{opt} = \min_{t} \int_{-a_p}^{a_p} |\text{ellipse}(a_h) - \text{focus}(a_h)| da_h$
由于被积函数关于 $a_h = 0$ 对称,上述方程可等价写为:
$t_{opt} = \min_{t} \int_{0}^{a_p} |\text{ellipse}(a_h) - \text{focus}(a_h)| da_h$
其中,$|\text{ellipse}(a_h) - \text{focus}(a_h)| = |R_f \tan t \sin a_h - \frac{k a_h}{2\pi}|$。当满足一定条件时,重建平面与移动X射线管的螺旋路径有三个公共点:$a_h = 0$,$a_h = \pm a_h^ $。此时,可通过以下公式计算倾斜角 $t$:
$\tan t = \frac{k a_h^ }{2\pi R_f \sin a_h^*}$ -
确定 $a_h^*$ 的值
:为了确定 $a_h^
$ 的值,需要最小化积分 $\int_{0}^{a_p} |\text{ellipse}(a_h) - \text{focus}(a_h)| da_h$。可通过计算函数 $R_f \tan t \sin a_h$ 和 $\frac{k a_h}{2\pi}$ 之间的平均距离来实现:
$\Delta z_{mean} = \int_{0}^{a_p} \left|\frac{k a_h^ \sin a_h}{2a_p^2 \sin a_h^ } - \frac{k a_h}{2a_p^2}\right| da_h$
将上述积分根据 $a_h = a_h^ $ 分为两部分进行计算:
$\Delta z_{mean} = \frac{k}{2a p^2} \left(\int_{0}^{a_h^ } \left(\frac{a_h^ \sin a_h}{\sin a_h^ } - a_h\right) da_h + \int_{a_h^ }^{a_p} \left(a_h - \frac{a_h^ \sin a_h}{\sin a_h^ }\right) da_h\right)$
经过计算,可得到简化后的方程:
$\Delta z_{mean} = \frac{k}{2a_p^2} \left(\frac{a_h^ }{\sin a_h^ } (1 + \cos(a_p) - 2 \cos a_h^ ) + \frac{1}{2a^2p^2} - (a_h^ )^2\right)$
将上述方程右边视为关于 $a_h^ $ 的函数,通过求该函数的最小值,即可得到 $a_h^ $ 的值。
综上所述,ASSR算法通过一系列复杂的操作,包括投影运算、坐标系统转换和重建平面调整,实现了对图像的重建,旨在减少图像失真,提高重建质量。在实际应用中,需要根据具体情况选择合适的参数和算法步骤,以达到最佳的重建效果。
锥形束螺旋计算机断层扫描(CBCT)重建算法解析
9. 投影运算与坐标计算的重要性
投影运算和坐标计算在整个重建过程中起着基石的作用。投影运算公式 $\hat{\mu}(i, j, z_p) \approx \frac{R_f}{2 \Delta h} \sum_{h} \frac{1}{\hat{u}
{ijn}^2} \hat{p}(b
{ij}, h, \hat{z}_{ijn})$ 为后续的重建提供了数据基础。通过对不同角度 $h$ 下的投影数据进行整合,能够逐步构建出物体的内部信息。而坐标计算则是将这些投影数据准确地映射到合适的空间位置。
-
平面屏幕投影坐标计算
:$w$ 坐标和 $v$ 坐标的计算分别考虑了 $(x, y)$ 平面和 $(x, z)$ 平面的几何关系。以 $w$ 坐标为例,$w = - \frac{(x \cos a_h + y \sin a_h) \cdot (R_f + R_d)}{R_f + x \sin a_h - y \cos a_h}$ ,它通过旋转后的坐标关系以及系统的几何参数,将空间中的点投影到平面屏幕上。这一过程需要精确的三角函数计算和向量运算,确保投影的准确性。
-
圆柱形屏幕投影坐标计算
:$\beta$ 坐标和 $\hat{z}$ 坐标的计算则是在圆柱形屏幕的几何框架下进行的。$\beta = - \arctan(\frac{w}{R_f + R_d})$ 利用了平面屏幕上的 $w$ 坐标与射线和主轴线夹角的关系,而 $\hat{z} = v \cdot \cos \beta \cdot \frac{R_f}{R_f + R_d}$ 则进一步结合了 $v$ 坐标和 $\beta$ 坐标,将投影数据准确地定位在圆柱形屏幕上。
10. 坐标系统转换的意义与步骤
坐标系统转换是 ASSR 算法中的关键环节,它使得不同坐标系下的数据能够相互关联,从而实现准确的重建。
-
全局与局部坐标系统转换
:
- 首先,将全局的 $(x, y, z)$ 坐标系统绕 $z$ 轴旋转得到 $(s, u, r)$ 系统,这一步骤是为了将坐标系调整到与重建平面相关的初始状态。通过基向量 $s$、$u$ 和 $r$ 的定义,实现了坐标的旋转转换。
- 接着,若 $(s, u, r)$ 系统再绕 $z$ 轴旋转角度 $a_p$,基向量的变化反映了坐标系的进一步调整,使得坐标系能够更好地适应重建平面的位置和方向。
- 对于局部 $(x’, y’, z’)$ 系统绕 $z’$ 轴旋转得到 $(s’, u’, r’)$ 系统,为了将其转换为全局的 $(x, y, z)$ 坐标,需要进行两步操作。第一步绕 $y’‘$ 轴旋转 $-t$ 角度得到 $(x’‘, y’‘, z’‘)$,这一步调整了局部坐标系的倾斜角度;第二步绕 $z$ 轴旋转 $a_h^p$ 角度得到 $(x, y, z)$,最终将局部坐标系与全局坐标系对齐。
-
射线参数转换
:在 ASSR 重建方法中,射线参数转换是为了确保不同坐标系下的射线能够准确对应。通过一系列复杂的推导,得到了射线参数之间的转换关系,如 $s = \frac{s’ \cdot \cos t}{\sqrt{\cos^2 a_0^p + \cos^2 t \cdot \sin^2 a_0^p}}$ 等。这些公式通过三角函数和根式运算,将 $(s’, u’, r’)$ 系统中的射线参数转换为 $(s, u, r)$ 系统中的参数,从而保证了射线在不同坐标系下的一致性。
11. ASSR 重建流程的详细解读
ASSR 重建流程的每一个步骤都紧密相连,共同实现了图像的准确重建。
|步骤|操作内容|
| ---- | ---- |
|选择螺旋投影系统旋转角度 $a_h^p$|使光束的中心射线在重建切片的中点与 $z$ 轴相交,为后续的重建确定了基准位置。|
|确定切片平面倾斜角 $t$|通过优化准则 $t_{opt} = \min_{t} \int_{0}^{a_p} |\text{ellipse}(a_h) - \text{focus}(a_h)| da_h$ 确定最优的倾斜角,使得重建平面与移动 X 射线管的螺旋路径尽可能匹配,减少图像失真。|
|进行投影坐标计算|根据前面介绍的平面屏幕和圆柱形屏幕投影坐标计算方法,将空间中的点投影到相应的屏幕上,为后续的重建提供准确的投影数据。|
|进行坐标系统转换|按照全局与局部坐标系统转换以及射线参数转换的步骤,将不同坐标系下的数据进行统一,确保重建过程中数据的一致性和准确性。|
|完成重建|综合前面步骤得到的投影数据和坐标信息,完成图像的重建。|
12. 调整重建平面的关键要点
调整重建平面是 ASSR 算法的核心步骤之一,它直接影响到重建图像的质量。
-
确定倾斜角 $t$ 的优化标准
:优化准则 $t_{opt} = \min_{t} \int_{0}^{a_p} |\text{ellipse}(a_h) - \text{focus}(a_h)| da_h$ 的目的是使重建平面与移动 X 射线管的螺旋路径之间的距离最小。通过对函数 $R_f \tan t \sin a_h$ 和 $\frac{k a_h}{2\pi}$ 之间的关系进行分析,当满足一定条件时,重建平面与螺旋路径有三个公共点,此时可以通过 $\tan t = \frac{k a_h^
}{2\pi R_f \sin a_h^
}$ 计算倾斜角 $t$。
-
确定 $a_h^*$ 的值
:为了确定 $a_h^
$ 的值,需要最小化积分 $\int_{0}^{a_p} |\text{ellipse}(a_h) - \text{focus}(a_h)| da_h$。通过计算平均距离 $\Delta z_{mean}$ 并将其积分根据 $a_h = a_h^
$ 分为两部分进行计算,得到简化后的方程 $\Delta z_{mean} = \frac{k}{2a_p^2} \left(\frac{a_h^
}{\sin a_h^
} (1 + \cos(a_p) - 2 \cos a_h^
) + \frac{1}{2a^2p^2} - (a_h^
)^2\right)$。将该方程右边视为关于 $a_h^
$ 的函数,通过求最小值的方法得到 $a_h^
$ 的值。
13. 算法的实际应用与挑战
在实际应用中,ASSR 算法可以应用于医学成像、工业检测等领域。在医学成像中,它能够帮助医生更准确地观察人体内部的组织结构,为疾病的诊断提供更清晰的图像。在工业检测中,它可以用于检测材料内部的缺陷,提高产品的质量。
然而,该算法也面临着一些挑战。例如,算法的计算复杂度较高,需要大量的计算资源和时间。在处理大规模数据时,可能会出现计算效率低下的问题。此外,算法中的参数选择也需要根据具体的应用场景进行调整,否则可能会影响重建的质量。
14. 未来发展方向
为了克服 ASSR 算法目前面临的挑战,未来的发展方向可以从以下几个方面进行探索:
-
算法优化
:通过改进算法的计算流程和数据处理方式,降低算法的计算复杂度,提高计算效率。例如,可以采用并行计算技术,利用多核处理器或 GPU 加速计算过程。
-
参数自适应调整
:开发一种能够根据不同的应用场景自动调整算法参数的机制,使得算法能够在不同的条件下都能达到最佳的重建效果。
-
与其他算法结合
:将 ASSR 算法与其他先进的重建算法相结合,充分发挥各自的优势,提高重建的质量和效率。
综上所述,ASSR 算法在锥形束螺旋计算机断层扫描(CBCT)重建中具有重要的应用价值。虽然目前面临着一些挑战,但通过不断的研究和改进,相信该算法在未来会有更广泛的应用和更好的发展前景。
graph LR
A[算法优化] --> B[提高计算效率]
C[参数自适应调整] --> D[适应不同场景]
E[与其他算法结合] --> F[提升重建质量]
B --> G[更广泛应用]
D --> G
F --> G
超级会员免费看

被折叠的 条评论
为什么被折叠?



