在模型计算过程中,注意到在每个切平面上的包络区域中可容纳的最大圆面并不惟一;管半径也不唯一,为29或30。这表面上与【命题一】矛盾,但实质上并不矛盾。
最大圆面不唯一是由于数字图像离散化的结果,【命题一】假设坐标及半径均为连续精确的,即使两个相近的数字也是可以分辨的,但实际情况并非如此理想。由于题设切片间距以及图像像素的尺寸均为1,而图像像素是图中可分辨的最小尺度。例如以 为球心,
为半径的球与第i+1个切平面相交的圆面半径为:
,在数字图像中将被舍入为29,其结果是该圆面也可能被误判为最大圆面,这样所得
实际为
在
上的投影。从而造成存在多个最大圆面。
管半径的不唯一是由于题设管道中轴线与每张切片有且只有一个交点,而实际中切片总是有厚度的,再加上数字图像离散化的影响:对于管半径为29的血管,其切片图像产生1个单位的偏差是符合实际情况的。而且从计算结果也可以看出,出现最大半径为30的切平面的位置处在中轴线沿Z轴变化较平缓部分,这部分也是最容易产生偏差的。
基于以上分析及【算法一】的结果,可以确定管半径R=29。若定义在某切平面 上所有被判定为最大圆面圆心的集合为
的候选点集,用
表示。调用
可以得到
上所有半径
即半径为29和30的圆面圆心的集合
。
【算法二】:综合某切片内所有 的侯选点集
的信息,确定
的坐标,可以提高结果的精度。
经计算, 中有为13596个点。
图5. 从切平面 上
的候选集
的
投影图
例如由上图可以看出 的候选集
呈带状分布,而【算法一】选取的
点处于其候选点集边缘,其效果必然不理想。从算法来看,【算法一】是在
中选取最先遇到的点,弃掉其后的所有点,这种选取原则造成【算法一】结果图中的中轴线产生折点。
如果可以将 所有的候选点集以某种次序排序,选取其中位点,该点应较接近其真实点
,其结果相对于【算法一】的取法应有较大改善。具体算法如下:
所求出的 坐标见附表,中轴线的散点图及拟合曲线如右图
图6. 【算法二】散点图及拟合曲线
由散点数据拟合生成的六次多项式拟合曲线表达式为:
图7. 中轴线三视图
从上图中可以看出,【算法二】结果基本满足题目要求,在模型的检验和结果分析中将对该算法进行具体结果分析及检验。
对 点在其候选区域的相对位置作进一步分析,有以下结论:
【结论一】:当且仅当中轴线上某点与某切平面距离小于等于5,其在该切平面上的投影点有可能被识别为中轴线与该切平面的交点,产生误判。
若点 到某切平面
的距离
,则以点
为球心,R=29为半径的球与切平面
的相交所得圆面的半径
,这在离散化的数字图像中将被视为29 ,该点被误判。另一方面,若
r将被舍入为28,因此可证明结论。由以上结论可对【算法二】作进一步改进。
【算法三】:综合相邻多个切片信息,确定 的坐标,进一步提高结果的精度。
由【结论一】可知处于某切平面 上下五层之间的中轴线段在该切平面
上的投影线段L上的 所有点均有可能被判为中轴线与该切平面的交点,这也可从上面图5中
的候选点集呈带状分布得到初步验证。理想情况下图5中
的候选点集应呈线状分布,但由于实际中偏差不可避免,而且由图中可以看出实际带状分布与线状分布相当接近。以下讨论将其视为线状分布,设为直线L。
如右图所示,由于中轴线各段的斜率不同,将造成实际中轴线与切平面的交点并不位于L的中点,斜率大的中轴
线部分投影较长,实际交点应靠近斜率小的一端。由于实际离散化的结果,接近的点不被分辨,只有两点距离大于1才会被分辨。因此一段线段将被视为一串离散点,点的个数将取决于线段的长度。如图中,实际L将被识
别为5个离散点,而中轴线与切平面 图8. 中位点误差说明图
的交点位于 第4个交点上。实际交点在点串中位置与其中轴线两端斜率关系叙述如下:
如右图所示:若将切平面间的中轴线视为直线段,则若该段中轴线斜率为K,其在切平面上的投影长度为1/K,因此某切平面M上下五层之间的中轴线段分别在该切平面M上的投影线段
的长度可以累加求得,
。而实际中轴线与切平面的交点即位于直线L上的
分点上。由此可得 图9. 切线分界图
【结论二】:实际中轴线与切平面的交点近似位于其候选点集(设其呈线状分布)的 分点上。
下面给出算法三的具体算法。
首先利用【算法二】得到的中轴线来获取各点的导数信息:
该曲线的参数方程可表示为:
由前面假设,该曲线处处光滑可导,则在曲线上A点(坐标为 处)切线的方向为
。因为
,所以有
则切线的方向为
。
设切线与横切面夹角为 ,如图有:
就是所要求得的斜率。 图10. 切线投影图
设 ,有
由于切平面 上直线L理论上是由
上下相邻五层内中轴线上的点投影而成的,这样基于【结论一】、【结论二】就得到:
,
,
我们基于【算法二】得到的中轴线求得每一层交点的 值,进一步求得分配系数
,将位于
分点上的分界点作为中轴线与切平面
的交点。其效果理论上应较【算法二】有所改善。为保证计算结果精度,采取迭代的方法,将第一步得到的中轴线结果作为输入再次进行运算。由于两次迭代结果十分相近,因此将第二次迭代结果作为最终结果。
【算法三】求得的中心点坐标及导数信息见附表3、4,中轴线的散点图及拟合曲线如下图:
图11.【算法三】散点图及拟合曲线
由假设,血管的中轴线应充分光滑,由散点数据拟合生成的六次多项式拟合曲线表达式为:
五、 模型的检验及结果分析
由于本模型是在题目假设前提下利用切片信息对血管形态进行三维重建,因此模型结果的优劣可以用还原的血管形态模拟得到切片数字图像,将其与原切片的数字图像相比,即可知模型重建结果的合理性和准确性。对于使用【算法二】和【算法三】求出的中轴线与切平面的两组交点 ,采用直观的模拟法进行检验以证明其合理性并比较两组结果的精度:具体步骤如下:
让半径为R=29的球沿 所构成的中轴线连续滚动得到血管的三维实体,再用切平面
截取该实体得到截面
,通过对两组截面
与
的对比,即可判断模型结果正确性和精度。
以下是生成的截面 与原截面
的重合比较图样,由于篇幅限制,只给出较有代表性的几幅。
图样说明: