案例6 血管的三维重建
血管的三维重建课件

m(:,:,b+1)=imread([int2str(b),'.bmp']); end
血管的三维重建
-10-
建模方法思想
需考虑的细节:
2)何谓边界点?
四邻域的概念 找边界点坐标的算法
血管的三维重建
-2-
Z=0
Z=49
Z=98
Z=1
Z=50
血管的三维重建
Z=99
-3-
假设
1)血管的表面是由半径固定、球心沿着某一曲 线(称为中轴线)的球滚动而形成的包络面。 2)中轴线上任两点处的法截面圆不相交。 3)管道中轴线与每张切片平面有且只有一个交 点。
血管的三维重建
-4-
图象的矩阵表示
后面的切片。
Z=57
Z=60
血管的三维重建
-22-
误差大的原因和改进途径
误差大的原因:
1)图象误差 实际图象边界上的点是连续的,在转换成
bmp图象时,象素表示的图象边界是离散的,成 锯齿状,与实际图象有误差(舍入误差)。 2)同一张切片上的最大内切圆不唯一
解决办法:
1)方法一:取平均 求出同一张切片上的所有最大内切圆的圆心,然 后求平均值。
问题重述
断面可用于了解生物组织、器官等的形态。例如,将 样本染色后切成厚约1m m的切片,在显微镜下观察该横断 面的组织形态结构。如果用切片机连续不断地将样本切成 数十、成百的平行切片, 可依次逐片观察。根据拍照并 采样得到的平行切片数字图象,运用计算机可重建组织、 器官等准确的三维形态。
假设某些血管可视为一类特殊的管道,该管道的表面是 由球心沿着某一曲线(称为中轴线)的球滚动包络而成。 例如圆柱就是这样一种管道,其中轴线为直线,由半径固 定的球滚动包络形成。
血管三维重建的问题

察清楚 ; 其 内部 的复 杂结 构 , 而 却不是一 目了然 , 只有 剖开来 , 能看个 究 竟 .剖 的方法很 多 , 才
其 中一 种 是做 成 切 片 .所 谓切 片 就 是 用 一 组 等 间距 的平 行 平 面 将 生 物 体 中需 要 研 究 的部 位 切 成 簿 薄 的 一片 片 , 一 片 就 是 生 物 体 某 一横 断 面 的 图 象 . 按 顺 序 排 列 起 来 就 形 成 切 片 图 象 序 每 列 , 称 序 列 图象 . 切 片 的 制 作 过 程 实 际 上 是一 个 分 解 的 过 程 , 或 即将 一 个 空 间 中 的 生 物 体 的有 关 部 分 , 解 为 一 系 列 的 平 面 图象 . 如 临 床 中 的病 理 切 片 , 如 美 国 国家 医学 图 书 馆 已 将 二 名 分 又
帮 助 人 们 由 表 及 里 , 浅 人 深 地 认 识 生 物 体 的 内部 性 质 与 变 化 , 解其 空 间结 构 和 形态 由 理 我 们 知 道 , 物 体 的外 部 形 态 多 种 多 样 . 借 助 一 定 的 辅 助 工 具 , 们 凭 肉 眼 一 般 都 能 观 生 但 人
维普资讯
建 模 专 辑
血管 三堆 重建 的 问题
5 5
出生 物 体 的 内 部 结 构 和 几 何 形 状 . 在今 天 当然 把 这 项 繁 杂 的 工 作 交 由 计 算 机 完 成 实 行 序 列 图象 的 三 维 重 建 的 计 算 机 化 , 自动 化 .序 列 图象 的计 算 机 三 维 重 建 是 切 片 制 作 的 逆 过 程 很 复
切 片 图象 获 得 后 , 会造 成 生 物 体 本 质性 破 坏 , 不 已成 为 获 取 断 层 图象 序 列 最 重 要 的诊 断手 段 .
【 数学建模竞赛】血管的三维重建模型g精品

血管的三维重建模型摘要:本文对血管三维重建中,中轴线及球的半径确定问题进行了讨论。
首先,根据问题及图象处理提取有效数据,给出两种可行算法,利用上述数据建立了最大最小方法和二次规划方法。
搜索中心点,并给出全局和局部搜索,得到各切片中心点坐标(见表1),并通过插值方式得到中轴线图象及其各投影。
最后对模型给出检验方式。
一 、问题的重述假设某些血管可视为一类特殊的管道,该管道的表面是由球心沿着某一曲线 (称为中轴线)的球(命名为包络球)滚动包络而成。
现有某管道的相继100张平行切片图象,记录了管道与切片的交。
假设:管道中轴线与每张图片有且只有一个交点;球半径固定;切片间距以及图象象素的尺寸均为1.取坐标的Z 轴垂直于切片,第1张切片为平面0=Z ,第100张切片为平面99=Z . 计算管道的中轴线与半径,给出具体的算法,并绘制中轴线在XY 、YZ 、ZX 平面的投影图。
二、模型假设与符号说明1、 基本假设:(1) 该管道的表面为一定长半径的球沿一固定的曲线运动所得曲面族包络的光滑表面。
(2) 该管道的中轴线连续而且光滑。
(3) 该管道的中轴线与每个切面有且只有一个交点。
(4) 图象象素的尺寸为1. (5) 切片的间距尺寸为1.2、 符号说明:L 中轴线R 包络球的半径()z y x O i ,, 中轴线与第i 个切片的交点(定为此切片的中心)i S 第i 个切片切得的图形 i D 第i 个切片的图象数据矩阵三、问题分析及建模准备 问题分析:通常血管的表面可认为是连续且光滑的曲面,断面可用于了解其形态等特性。
本问题给出的是一些离散的切面,要求重建出原图中轴线和求出包络球半径。
因为每一个切面与中轴线L 有且只有一个交点i O ,如果找出所有i O ,就可以用插值或拟合的方式作出L 的近似图象,其在坐标平面上的投影就很容易画出。
问题的关健转变为求每个平面上的i O . 建模准备:1、 图象的读取由于切片图象中只有黑、白两种颜色的象素,而且所给的BMP 格式图象文 件是512×512象素的.因此,把图象读取为一个512×512的数字矩阵;用数字1表示黑色的象素,用数字0表示白色的象素。
基于广义锥理论的血管三维重建方法

C r网易教育频道 :假设某些血 管可视为一类特殊的管 ON 道. 该管道 的表面是 由球心沿着某一曲线 ( 称为 中轴线 ) 的球滚动包络而成 。 例如 圆柱就是这样一种管道 . 其中轴 线 为直线 ,由半径固定的球 滚动包络形成 。 现有某管道 的相继 1O张平行切 片图像 .记录 了管 O 道与切片的交。 图像文件 名依 次为Obn 、 rp 9 rp 1bn 、 9 b ,格式均为 BM 宽 、高均 为 5 2 mp P. 1 个象 素 ( i 1。 px ) e 为简化起见 .假设 :管道 中轴线与每张切片 只有 一个交 点 :球半径 固定 :切 片间距 以及图像象素的尺寸均 为 1 。 取坐标系的z轴垂直于切片 . 1 第 张切片 为平面 Z 0 第 =, 1O O 张切片 为平面 Z 9 。Z Z 片图像 中象素 的坐标依 =9 = 切 它们在文件 中出现 的前后次序为
Vo. No 1 0 2 1 8 . 2 o
— . -
维普资讯
2 血管的三维重 建问题
血管 的三维重建是 医学图像处理领域一个传统的公
开问题 。 该问题如下形式 的描 述及图像来源于W W 1 3 W 6 .
3 1 广义锥理论 表示三维物体有一 种通用 的方法: 广义锥 。 它有 三 维空间的曲线 ( 表示三 维物体的轴线 )和一组正交于轴 的物体截 口的轮廓组成 。 广义锥有队下 三个 要素来表示:
( 5 , 5 .) 一5 . 5 , . ( 5 .5 ) 一 6- 6z , 2 6- 5z 2 2 ( 2 ) - 62 5z, 2 ( 5 2 6z , 2 5一5 ,) ( 5 .5 .) - 5-5 .) -5 . 5 ..2 52 5z, 2 ( 2 z - ( 5 . 5 ,)( 5 , 5 : … ( 5 ,5 ,) 一 5- 6z . 2 5- 5z 2 2 一 2 ) 一 52 5z. 2
64排螺旋CT血管造影及三维重建技术对脑血管病变的诊断分析

・
短 篇 论 著
・
6 4排 螺旋 C T血 管 造影 及 三 维重 建技 术 对 脑血 管 病 变 的诊 断分 析
Di a g n o s t i c a n a l y s i s o f 6 4 C T a n g i o g r a p h y a n d t h r e e d i me n s i o n a l r e c o n s t r u c t i o n t e c h n i q u e o n c e r e b r a l v a s c u l a r d i s e a —
扫 描 约为 4 0 s 。将 所得 的原 始 图像 传输 至 V R高 级 后 处理 工作 站 , 减 影后 的图像 进 行容 积重 组 ( v o l u me
r e n d e r i n g , V R) , 最 大密 度投影 重组 ( ma x i mu m i n t e n .
3 1— 7 8岁 , 平 均年 龄 ( 4 8 . 7 6±1 0 . 6 8 ) 岁 。 临床主 要
2 结 果
本组 6 4例 患 者 经 6 4排 C T A 检查 后 对 脑 血 管
表现 为 头晕 、 头痛 、 视 物 模糊 、 肢体 乏 力 、 言语、 感 觉 和思 维 障碍等 。
示 情况 进行 的 6 4例 脑 血 管 病 变 患 者 的 临床 资料 , 评 价脑 血管 病变 患者 的影像 学 表现 。
1 资 料与 方法
1 . 1 一 般资 料
本组 6 4患者 , 其 中男 性 3 7例 , 女性 2 7例 , 年 龄
数学建模血管的三维重建问题

A题血管的三维重建问题摘要:本论文讨论基于切片的血管三维重建问题。
其背景是:采取存储二维切片信息,使用时再利用切片信息重建原物体三维形态的方法,可以有效地保存和利用三维信息。
此技术在实际中有很大的用途,在医学和其他领域有广泛的应用。
如要将人体全部三维信息,包含内部错综复杂的结构,完整地存储在计算机中,以现在的技术也是有一定难度的,但若改用存储人体切片信息,使用时重建再现的方法,则是利用现有技术可以解决的。
本论文基于题中对血管形态的假设,建立管道中轴线参数方程,并综合考虑实际情况中由于切片厚度及数字图像离散化带来的偏差,通过在每张切片图像中搜索其中阴影区域所能包含的最大圆面,确定管半径为R=29,在此基础上,将每张切片图像中阴影区域所能包含的半径大于等于R的圆面圆心作为中轴线与各切片交点(即中心点)的候选点集合。
本模型使用了三种改进算法对该候选点集进行筛选以确定实际交点。
最终迭代算法简述如下:1.对每个切片,建立中心点的候选点集,并取点集的中位点为中心点初值2.利用得到的中心点建立中轴线方程3.利用中轴线方程推导导数信息,根据导数信息比例选取中心点的候选点集的某点作为中心点的新值4.重复步骤2、3,直至结果达到较稳定状态为止5.输出中心点及中轴线方程在模型建立中,对选取侯选点集、求中位点、利用导数信息进行比例选取均给出完整的算法,并且对半径确定、候选点选取、采用导数作为比例选取依据等问题给出详尽的证明。
考虑到实际血管的中轴线应充分光滑,计算最终中轴线参数表达式时采取了六阶多项式拟合。
最后用还原的血管形态模拟切片过程可以得到一系列数字图像,与原切片图像进行比较,可以检验模型的合理性及精度。
该模型最终计算结果如下。
血管中轴线示意图从模型结果中看出,中心点分布均匀稳定,模拟检验的切片数字图像与原切片的数字图像吻合较好,模型结果精度及稳定性符合要求。
本模型算法简明,理论严密,比例选取算法使结果中心点尽可能收敛于真实中心点,迭代算法保证了结果的精度和稳定性,符合题目要求。
三维血管的重建

血管的三维重建摘要对于血管的三维重建,本文研究了血管这一类特殊管道的中轴线及其半径的算法,绘制中轴线在XY 、YZ 、ZX 平面的投影图这些问题,问题分为三部分。
针对第一部分,先将100张切片图片在MATLAB 中导出生成0-1矩阵数据,在计算100张切片的最大内切圆半径及对应圆心坐标,为减小误差求100张切片最大内切圆的平均半径41666.29 d 。
中轴线的曲线方程可在MATLAB 中拟合得到。
针对第二部分,得到中轴线曲线方程在MATLAB 中绘制出中轴线方程的空间曲线,之后将其投影在XY 、YZ 、ZX 平面上。
针对第三部分,对100张切片进行叠加重合,得到血管的三维立体图,再通过MATLAB 对血管的三维立体图进行优化完成血管的三维重建。
关键词:MATLAB 软件管道半径中轴线曲线方程一、问题重述1.1基本情况断面可用于了解生物组织、器官等的形态。
如果用切片机连续不断地将样本切成数十、成百的平行切片,可依次逐片观察。
根据拍照并采样得到的平行切片数字图象,运用计算机可重建组织、器官等准确的三维形态。
1.2相关信息假设某些血管可视为一类特殊的管道,该管道的表面是由球心沿着某一曲线(称为中轴线)的球滚动包络而成。
现有某管道的相继100张平行切片图象,记录了管道与切片的交。
图象文件名依次为0.bmp、1.bmp、…、99.bmp,格式均为BMP,宽、高均为512个象素(pixel)。
取坐标系的Z轴垂直于切片,第1张切片为平面Z=0,第100张切片为平面Z=99。
Z=z切片图象中象素的坐标依它们在文件中出现的前后次序为(-256,-256,z),(-256,-255,z),…(-256,255,z),(-255,-256,z),(-255,-255,z),…(-255,255,z),……(255,-256,z),(255,-255,z),…(255,255,z)。
1.3提出的问题问题一:计算出管道的中轴线与半径,给出具体的算法。
各种模型方法的应用案例(CUMCM)

模型定性指标量化的应用案例:(1)CUMCM2003-A,C:SARS的传播问题(2)CUMCM2004-D:公务员招聘问题;(3)CUMCM2005-B:DVD租赁问题;(4)CUMCM2008-B:高教学费标准探讨问题;(5)CUMCM2008-D:NBA赛程的分析与评价问题;(6)CUMCM2009-D:会议筹备问题。
综合评价方法:线性加权综合法、非线性加权综合法、逼近理想点(topsis)法的应用案例(1)CUMCM1993-B:足球队排名问题;(2)CUMCM2001-B:公交车调度问题;(3)CUMCM2002-B:彩票中的数学问题;(4)CUMCM2004-D:公务员招聘问题;(5)CUMCM2005-A:长江水质的评价和预测问题;(6)CUMCM2005-C:雨量预报方法评价问题;(7)CUMCM2006-B:艾滋病疗法评价与预测问题;(8)CUMCM2007-C:手机“套餐”优惠几何问题;(9)CUMCM2008-B:高教学费标准探讨问题;(10)CUMCM2008-D:NBA赛程的分析与评价问题;(11)CUMCM2009-D:会议筹备问题。
动态加权与综合排序的应用案例动态加权的综合排序案例:(1)CUMCM2002-B:彩票中的数学问题;(2)CUMCM2005-A:长江水质的评价和预测问题;综合评价的排序案例:(1)CUMCM1993-B:足球队排名问题;(2)CUMCM2008-D:NBA赛程的分析与评价问题;(3)CUMCM2009-D:会议筹备问题。
数据建模的常用预测方法1插值与拟合方法:小样本内部预测;应用案例:(1)CUMCM2001-A:血管的三维重建问题;(2)CUMCM2003-A,C:SARS的传播问题;(3)CUMCM2004-C:饮酒驾车问题;(4)CUMCM2005-A:长江水质的评价与预测;(5)CUMCM2005-D:雨量预报方法的评价;(6)CUMCM2006-B:艾滋病疗法的评价与预测。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
案例6 血管的三维重建一、问题的提出序列图象的计算机三维重建是应用数学和计算机技术在医学与生物学领域的重要应用之一[1]; 是医学和生物学的重要研究方法, 它帮助人们由表及里、由浅入深地认识生物体的内部性质与变化, 理解其空间结构和形态. 生物体的外部形态多种多样, 但借助一定的辅助工具, 人们凭肉眼一般都能观察清楚; 而其内部的复杂结构, 却不是一目了然, 只有剖开来才能看个究竟. 剖的方法很多, 其中一种是做成切片. 所谓切片就是用一组等间距的平行平面将生物体中需要研究的部位切成簿簿的一片片, 每一片就是生物体某一横断面的图象. 断面可用于了解生物组织、器官等的形态. 例如,将样本染色后切成厚约1微米(μm)的切片,在显微镜下观察该横断面的组织形态结构. 如果用切片机连续不断地将样本切成数十、成百的平行切片,可依次逐片观察. 按顺序排列起来就形成切片图象序列, 或称序列图象. 切片的制作过程实际上是一个分解的过程, 即将一个空间中的生物体的有关部分, 分解为一系列的平面图象. 但是,根据拍照并采样得到的平行切片数字图象,运用计算机重建组织、器官等准确的三维形态,则是序列图像的三维重建问题. [1]假设某些血管可视为一类特殊的管道,该管道的表面是由球心沿着某一曲线(称为中轴线)的球滚动包络而成. 例如圆柱就是这样一种管道,其中轴线为直线,由半径固定的球滚动包络形成. 现有某血管的相继100张平行切片图象[2],记录了血管道与切片的交. 图象文件名依次为0.bmp、1.bmp、…、 99.bmp,图像文件均为BMP格式,宽、高均为512个象素(pixel). 为简化起见,假设: 管道中轴线与每张切片有且只有一个交点;球半径固定;切片间距以及图象象素的尺寸均为1. 取坐标系的Z轴垂直于切片,第1张切片为平面Z=0,第100张切片为平面Z=99. Z=z时切片图象中象素的坐标为(-256,-256,z),(-256,-255,z),…(-256,255,z),(-255,-256,z),(-255,-255,z),…(-255,255,z),……( 255,-256,z),( 255,-255,z),…(255,255,z).以下图像是100张平行切片图象中的6张,全部图象请从网上()下载.Z=0, Z=1166Z=49,Z=50Z=98, Z=99图1 血管的6张切片图血管序列图象的计算机三维重建是切片制作的逆过程. 我们的问题是: 计算血管道的中轴线与半径(即滚动球的半径),给出具体的算法,并绘制中轴线在XY 、YZ 、ZX 平面的投影图.二、问题的分析与假设根据所提出问题的假设, 血管的表面是由球心沿着某一曲线(中轴线) 的球滚动包络而成, 且管道中轴线与每张切片有且仅有一个交点, 这样经过这个交点必切下球的最大圆面且这个交点为球滚动时的球心. 实际上, 根据文献[3], 可知这种等径管道有如下几何性质:定理1[3] 等径管道每个切片的轮廓线是一族半径、圆心连续变化的圆的包络线, 而这族圆中半径最大的圆的圆心即为管道的中轴线与切片的交点, 半径即为管道半径。
因此, 我们用包络的方法把血管三维重建问题的数学模型归结为滚动球半径和中轴线r γ两部分。
也就是说, 以中轴线γ上每一点为球心, 以固定常数为半径作球, 产生一球面簇, 血管即为该球面簇的包络。
我们将100 张血管横断面图象的内边界按给定的坐标位置放置在空间, 可以发现这是一段粗细均匀的血管, 见图2。
事实上,在无分叉情况下, 血管一般可看作粗细均匀的管道. 因此, 利用包络方法进行建模是合适的. 但是, 用包络方法表示的曲面可以很复杂, 但要表示粗细均匀血管则与r r γ之间应满足一定的约束[1]. 根据上述分析, 我们作如下假设:1. 血管的表面是由半径固定的球的球心沿着中轴线)滚动包络而成;2. 管道中轴线与每张切片有且只有一个交点;1673. 切片间距以及图象象素的尺寸均为1;4. 对切片拍照的过程中不存在误差,数据误差仅与切片数字图象的分辨率有关;5. 切片足够薄, 其厚度对计算的影响可以忽略不计.因此, 解决血管序列图像的三维重建问题首先是确定每张切片图像的最大内切圆, 即确定最大内切圆半径和最大内切圆的圆心[1, 4-7], 其中最大内切圆的半径即为滚动球的半径, 而最大内切圆的圆心即为滚动球的球心. 虽然在理论上切片的最大内切圆是唯一的, 但是由于所给切片是BMP格式的图像, 是对原血管的切片的连续图形离散化而得到的近似图形, 则实际计算时有可能出现在一个切片中同时找到多个最大内切圆, 即内切圆不惟一.(a) 直接叠加成的图像(b) 改变视角所见的图像图2 血管的切片图像叠加成的三维图像三、数学模型的建立血管序列切片图像的三维重建问题首先是求出滚动球的半径和中轴线方程, 其次是绘制出中轴线在各个平面上的投影. 根据上述分析和假设, 我们建立以下模型:1. 对i个切片, 求出血管图像的最大内切圆的半径和圆心,irio0,1,,99i=". 我们先分别求图像内边界的和外边界的最大内切圆半径和圆心,然后取它们的平均作为血管图像的最大内切圆. 这里图像的内边界指得是图像最外边取0的像素点,图像的外边界则是最靠近图像取1点像素点。
若单独取内边界则可能得到半径过小,这是由于二值数字图像存储方式的原因;反之则可能过大。
2. 根据平均法[1,4], 由991100iiR r==∑确定血管管道的半径, 即滚动球的半径.3. 将各圆心坐标io(,)i ix y与纵向坐标iz i=(0,1,,99i=")分别插值成关于的三次样条曲线, 从而得到中轴线的以纵坐标为参数的参数方程.zz4. 确立误差分析的方法, 提出调整算法对第2步和第3步的结果进行调整.168四、模型的求解1. 导入血管切片图像数据, 存储为三维矩阵.利用Matlab 软件, 我们将100张切片图像数据存储为三维矩阵A . Matlab 程序如下: for i = 0: 1: 99 imname = sprintf('%d.bmp', i); A(:, :, i+1) = imread(imname); End由于BMP 格式文件在计算机中是以二进制数进行存储的, 每张切片保存在一个二维的由0或1组成的矩阵中, 其中0和1分别对应于图象中的黑象素和白象素. 根据问题中的描述, 我们可知每一张BMP 格式的切片包含了512×512个象素, 每一个象素都有自己的一个确定的坐标. 在转换为矩阵存储后, A(:, :, i+1)即代表了第i 张切片图像, 此时像素坐标则对应地转换为矩阵的列与行. 因此, 以下的求解过程中, 我们均以像素在矩阵中的位置作为坐标, 其中列对应x 横坐标, 行对对应坐标.y 2. 求出每张切片中血管图像的内边界和外边界. 首先, 引进图象处理技术中的四邻域概念[5].四邻域: 某个象素的左、右、上、下四个象素称为该象素的四邻域. 如图3, 象素E , S ,W , N 称为象素O 的四邻域.图3 四邻域求血管图像内边界的算法是: 逐点找出所有边界点坐标, 即对图象进行逐行搜索, 当遇到灰度值为0(黑)的象素点时, 再搜索其四邻域内的4个点, 若在其四邻域中有一个象素的灰度值为1(白) , 则该点就是一个内边界点。
图4 第0张切片中血管图像的内边界169I = A(:, :, i); % I为第i张切片的像素矩阵E = ones(size(I)); % 存储内边界图像for i = 1:512p =find(I(i,:)==0);if ~isempty(p)E(i,p(1)) = 0;E(i,p(end)) = 0;for j =2:length(p)-1if I(i-1,p(j))==1 || I(i,p(j)-1)==1 || I(i,p(j)+1)==1 || ...I(i+1,p(j))==1E(i,p(j)) = 0;endendendendimshow(E)求血管图像外边界的算法是: 逐点找出所有边界点坐标, 即对图象进行逐行搜索, 当遇到灰度值为0(黑)的象素点时, 再搜索其四邻域内的4个点, 若在其四邻域任何一点象素的灰度值为1(白) , 则该四邻域中的这一点就是一个外边界点。
I = A(:, :, i); % I为第i张切片的像素矩阵E = ones(size(I)); % 存储外边界图像for i = 1:512p =find(I(i,:)==0);if ~isempty(p)for j =1:length(p)if I(i-1,p(j))==1E(i-1,p(j)) = 0;endif I(i,p(j)-1)==1E(i,p(j)-1) = 0;endif I(i,p(j)+1)==1E(i,p(j)+1) = 0;endif I(i+1,p(j))==1E(i+1,p(j)) = 0;endend170end end我们将100张切片的血管图像边界叠加在一起, 就得到了图2. 在上述算法程序中,稍作修改便可将每张切片的边界点坐标保存在一个二维数组中, 为下一步求解半径所用. 我们则在程序中使用下列语句识别:[R, C] = find(E==0);其中R 表示行, C 表示列,即矩阵E 的第R(i)行第C(i)列是边界像素.3. 求出边界线的最大内切圆的半径和圆心坐标的算法根据我们对问题的分析和假设, 血管的表面是由半径固定的球的球心沿着中轴线滚动包络而成. 每个被截的球体在切片上的投影均是圆, 图象的边界是由这些大大小小的圆包络而形成的。
根据定理1, 可知这些圆中过球心的圆的半径最大, 即最大内切圆, 最大内切圆的半径就是滚动球的半径. 由于这里我们采取像素坐标,如果仅仅按照下述算法寻找内边界的最大内切圆,实际上找到的内切圆半径要比实际的偏小。
因此,我们分别求得内边界和外边界的最大内切圆半径和圆心,再取平均得到滚动球的半径和球心坐标。
寻找第张切片血管图像边界最大内切圆的算法:i 对于. 0199i "=,,,Step 1. 求出第i 张切片内边界的最大内切圆. Step 2. 求出第i 张切片外边界的最大内切圆.Step 3. 对Step 1和Step 2求得的半径和圆心取平均. 结束上述算法中的Step 1和Step 2采取逐行搜索完成,具体搜索算法如下: (1) 确定搜索区域将第i 张切片血管图像边界的像素坐标存储在[R, C], 取: minR = min(R); maxR = max(R); minC = min(C); maxC = max(C); .则在切片的图像矩阵I 中既属于从minR 行到maxR 行之间又属于从minC 到maxC 列之间的矩形区域为搜索区域, 且.D (min R :max R,min C :max C)D I = (2) 确定最大内切圆半径的算法(离散算法) 这里我们假设圆心坐标落在像素上,此时只需对落在搜索区域的像素逐行搜索即可, 对于圆心不一定落在某个像素上的连续型算法作为课后习题. 对于切片的像素矩阵I , 在D 的内部进行逐行搜索. 如果遇到一个值为0的点, 再搜索其四邻域的点, 如果四邻域内所有象素点所对应的值都为0, 则该点一定是血管图像边界所包围内部的点, 称之为内点. 然后, 求出内点到血管图像边界上每一点的距离, 则其中的最小距离为即是以该点为圆心的内切圆. 找到所有内点的半径后, 其中半径最大的内点即为所要找的球心, 对应的内切圆即为最大内切圆. 若一张切片出现多个圆心时,鉴于中轴线是连续变化的,我们选取与前一张所得圆心距离最近的圆心为当前切片最大内切圆的圆心.171表1. 若干切片内边界的最大内切圆的半径和圆心坐标序号 0 10 20 30 40 50 60 80 半径 29 29 29 29.120429.154829.698529.1548 29.2062 行 96 96 95 98 107 138 197 373 列257 258 267 292 322 369 409 388表2. 若干切片外边界的最大内切圆的半径和圆心坐标序号 0 10 20 30 40 50 60 80 半径 30 30 30 30.083230.083230.413830.0832 30.0167 行 96 96 96 98 105 137 197 359 列257 258 265 292 317 368 409 397先对内外边界的最大内切圆半径取平均,然后再对100个半径取平均值, 得到滚动球的半径(管道的半径)为29.6354R =4. 由切片血管图像边界的最大内切圆圆心确定出中轴线及其在坐标平面上的投影 利用上述计算获得的100个圆心坐标, 我们采用样条插值算法来拟合血管管道的中心轴线. 也就是, 分别将行和列坐标插值成关于坐标的曲线, 则可得到关于的参数方程, 同时得到中轴线在XY 平面的投影图, 见图. 同理, 可获得中轴线在ZY 、ZX 平面的投影图,见图5.z zx中轴线三维透视图zxy中轴线在X Y 平面投影图zy中轴线在ZY 平面投影图zx中轴线在ZX 平面投影图图5 中轴线172由所求得的中轴线和滚动球半径,利用Matlab 中的sphere 函数重建的三维血管图像见图6.图6 重建的血管图像五、模型的评价下面,我们通过所求得的中轴线和滚动球半径,来重建已知位置的切片图像, 通过和题目所给切片图像进行对比来对上述模型和算法进行评价. 根据定理1.可知球心属于第层的球将被上下不超过球半径i R 的层所切,就问题所给出的切片而言,即被第29,28,,1,,1,,28,29i i i i i i i −−−+++""层所切. 反之, 第i 层切片的图像是切上下球心离该切片的垂直距离不超过R 球所成的图像, 如图7所示.图7 截圆面与轴心的关系图173174 ]根据上面分析, 我们则可把球心位于中轴线[,z i R i R ∈−+上的球被所截下的圆面的所有像素点投影到z i =z i =平面上,, 则这些像素点所重叠成的图像即为重建的切片图像. 图8即为第31张切片(z =30)的原始图像、重建图像以及两者的差.第31张切片原始图像(z=30)第31张切片重建图像(z=30) 原始图像与重建图像的差(z=30)图8 第31张切片重建效果比较图(z =30)从上图可以直观地看出,我们的重建效果是比较好,但是不够定量化. 下面利用以下公式来来量化:Error =||1000i i i Ir I I −×不为零的像素个数%中为的像素个数,其中i I 表示第张切片图像矩阵,i i Ir 为重建图像矩阵. 显然,||i i Ir I −不为零的像素个数即是图8中右图中黑色部分的像素点个数,i I 像素为0的部分即图8中左图中黑色部分的像素点个数. 表3给出了若干张重建切片的相对误差.表3 若干张重建切片的相对误差.序号30 35 40 45 50 55 60 65相对误差 4.67%7.25%8.92% 15.15%9.48%6.60%6.77% 6.17%从上表可以看出,在第46张切片附近,重建的相对误差比较大. 它有可能是我们限制圆心在像素点上,或者出现多个候选圆心时我们的选取原则不合适等造成的,这些都可以进一步分析研究的地方.为了节约计算机搜索时间,我们在模型求解中只对像素所在行列进行搜索,但是滚动球的中心完全可以不在像素点上. 还有血管图像的内边界和外边界的最大内切圆的不惟一问题,这些请学生们去思考和分析. 另外,我们在求中轴线时采用的是样条插值,同学们不妨用多项式拟合来求解,将会发现重建的前面边缘光滑多了, 这也留着课后习题.参考文献:[1] 汪国昭, 陈凌钧. 血管三维重建的问题[J]. 工程数学学报(建模专辑), V ol.19, No.5, 2002: 54-58.[2] 中国大学生数学建模竞赛, /mcm01/problems.htm.[3] 陈凌钧, 骆岩林. 等径管道的三维重建[J]. 高校应用数学学报, V ol. 13, 增刊, 1998: 86-90.[4] 徐晋, 刘雪峰, 柏容刚. 血管的三维重建[J]. 工程数学学报.V ol.19, No.5, 2002: 35-40.[5] 廖武斌, 邓俊晔, 王丹. 管道切片的三维重建[J]. 工程数学学报, V ol.19, No.5, 2002: 22-28.[6] 丁峰平, 周立丰, 李孝朋. 血管管道的三维重建[J]. 工程数学学报,V ol.19, No.5, 2002: 47-53.[7] 赵小健, 陈立璋, 吴小波, 张传林. 血管的三维重建[J]. 暨南大学学报(自然科学版), V ol . 24, No. 5, 2003: 43-46.习题1 血管的三维重建续一根据下述问题进一步研究血管的三维重建模型:(1)血管图像最大内切圆的圆心不一定位于像素点上,试建立连续求解的方法; (2)当最大内切圆的圆心不惟一时,试设计选取圆心的方法; (3)试用拟合方法求中轴线方程。