教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 高等教育 >

三维血管重建优秀论文_含源代码

来源:网络收集 时间:2026-07-11
导读: 血管的三维重建 摘要 本文探讨血管的三维重建,由血管的相继100张平行切片图像计算血管的中轴线与半径,并绘制血管在三个坐标平面上的投影。 由于血管的表面是由球心沿着某一曲线(称为中轴线)的球滚动包络而成,由此我们得出结论:每个切片一定包含滚动球

血管的三维重建

摘要

本文探讨血管的三维重建,由血管的相继100张平行切片图像计算血管的中轴线与半径,并绘制血管在三个坐标平面上的投影。

由于血管的表面是由球心沿着某一曲线(称为中轴线)的球滚动包络而成,由此我们得出结论:每个切片一定包含滚动球的大圆,并且它一定为切片的最大内切圆,而最大圆所对应的半径即为血管半径,所以求血管半径就转化为求每一个切片内部的点到切片外部轮廓的最大半径。

首先,读取100张血管切面图,把它们转换成Logical矩阵,从中提取切片截面轮廓点构成一个新的矩阵。然后找到原图片矩阵中像素点的内点(切片图片中轮廓线中的点),从而得到内点到切片轮廓点的最小距离矩阵和最小距离中的最大值矩阵,最大值即为血管半径。最后计算所有切片的血管半径,并对这些半径求平均值,得到平均血管半径为:29.6799μm。由100张切片的最大内切圆圆心坐标拟合得出中轴线方程以及其在三个坐标平面内的投影曲线方程。

由中轴线得到血管的三维立体重建图,用平面Z i,(i 0,24,49,74)去截血管的三维立体重建图,得到新的4张截面图。把它们分别与题设中的对应截面进行内点个数对比。我们定义两张切片所共同拥有的内点个数与原切片内点个数的比值为重合度。计算得到平均重合度为:98.19% 。

关键词:血管半径 中轴线 切片 重建

(来自作者:欢迎各界人士批评指正,学术交流邮箱nibz@http://doc.guandang.net。文章作于2011年8月10日,陕西科技大学理学院实验室)

1问题的重述

断面可用于了解生物组织、器官等的形态。例如,将样本染色后切成厚约1μm的切片,在显微镜下观察该横断面的组织形态结构。如果用切片机连续不断地将样本切成数十、成百的平行切片, 可依次逐片观察。根据拍照并采样得到的平行切片数字图象,运用计算机可重建组织、器官等准确的三维形态。

假设某些血管可视为一类特殊的管道,该管道的表面是由球心沿着某一曲线(称为中轴线)的球滚动包络而成。例如圆柱就是这样一种管道,其中轴线为直线,由半径固定的球滚动包络形成。

现有某管道的相继100张平行切片图像,记录了管道与切片的交。图像文件名依次为0.bmp、1.bmp、…、 99.bmp,格式均为BMP,宽、高均为512个象素(pixel)。为简化起见,假设:管道中轴线与每张切片有且只有一个交点;球半径固定;切片间距以及图像象素的尺寸均为1。

计算管道的中轴线与半径,给出具体的算法,并绘制中轴线在XY、YZ、ZX平面的投影图。

2模型假设

(1) 假设血管中轴线与每张切片有且只有一个交点。 (2) 假设血管的半径固定不变。

(3) 假设在对切片拍照的过程中不存在误差。 (4) 假设血管不存在严重扭曲。

3符号说明

Ck Rk

第k张切片中轮廓线的最大内切圆圆心 第k张切片中轮廓线的最大内切圆半径 第k张切片中第i个内点与第j个轮廓点的距离 100张切片图片转换以后的三维0-1矩阵 100张切片图片的轮廓线生成的矩阵 100张切片轮廓的最大内切圆圆心坐标 平均血管半径

第k张切片图片中所有内点的集合 第k张切片图片中轮廓点的集合

dijk

PA512 512 100 PB512 512 100 cen100 3

k k

S T R-square 原切片图片的上内点及边界点的集合 重新切片得到的内点及边界点的集合 多项式拟合的指标数

4问题的分析

根据题目整个管道是由球心沿着某一曲线(称为中轴线)的球滚动包络而成。 基于几何原理可以得出以下两条定理。 (1)球的任意截面都是圆。

(2)经过球心的球截面是所有的截面圆当中半径最大的圆。

基于上述两个定理可以得出:每张切片的最大内切圆的圆心位于血管的中轴线上,该圆的半径等于血管半径。

分别求出100张切片轮廓线的最大内切圆圆心Ck与半径Rk。 对所有最大内切圆的圆心Ck做拟合,即可求出血管的中轴线。

为减少误差,我们用求均值的方法

R

k 1

100

(k)

100

来得到平均血管半径。

根据拟合出的中轴线方程,即可求出中轴线在XY、YZ、ZX平面上的投影。

5模型的建立与求解

5.1模型建立

5.1.1 求血管的半径

(1)导入数据,转换存储方式

为了计算方便,利用MATLAB[1]软件将100张BMP文件转换存储为一个三维0-1矩阵PA512 512 100(0代表黑色像素点,1代表白色像素点)。

(2)求切片轮廓线上各点坐标

利用MATLAB软件的内部函数edge,求得所有切片图片的轮廓线生成的矩阵PB512 512 100

(3)求切片轮廓线的最大内切圆的半径

首先求出每个内点距轮廓线的距离,取其中的最小值,即为以这些内点为圆心的轮廓线的内切圆半径;其次找出所有内点确定的最小内切圆中半径最大的一个,即为轮廓线的最大内切圆半径。 具体步骤:

Step1 在三维0-1矩阵PA512 512 100中遍历搜索内点,将其存储于集合 (k)中 ; Step2 在轮廓线矩阵PB512 512 100中遍历搜索轮廓点,将其存储于集合 (k)中; Step3 计算集合 (k)中第i个内点A x,y 到集合 (k)中第j个轮廓点B p,q 的距离

dijk

x p2 y q2,

首先取每个内点到轮廓点的最小距离,即为以这些内点为圆心的内切圆半径;其次找出所有内点确定的最小内切圆中半径最大的一个,即为轮 廓线的最大内切圆半径

Rk maxmin{dijk}

i

j

Step4 计算平均血管半径

R

k 1

100

(k)

100

(4)求切片轮廓线的最大内切圆心坐标

将100张轮廓线的最大内切圆半径所对应的圆心坐标Ck(z,w)记录于矩阵

cen(100,3)中。

cen(k,1) z,

100) cen(k,2) w,(k 1,2,...,

cen(k,3) k,

5.1.2 由圆心坐标求中轴线方程及曲线投影

(1)利用MATLAB画图工具由100组圆心坐标画出中轴线以及中轴线在XY、YZ、ZX面的投影,由于图像文件以象素为单位存储数据,这使得图像的原始数

据是离散化的。对于离散的位图来说,将变得不可分辨,可能切片轮廓线的最大圆不止一个。为了减少误差,将中轴线在XY、YZ、ZX面的曲线方程进行多项式拟合,建立拟合方程:

Y F1(X) Z F2(Y)

X F3(Z)

(2)由建立的投影曲面得到中轴线的方程

X F3(T);

Y F1(T); Z F(T);

2

5.2 模型求解

根据所建模型求出100张切片的最大内切圆的圆心坐标、半径以及血管半径

表1最大内切圆半径及圆心坐标

1112 1 1341 51 67 18119 20 2 212 2 2432 526 7228 2 930 1 32 33 33 453 3 67 338294.282 .916 249.64 219.38 39283. 29.833 30 3303 0 303 0 303 03 029833 .2.964129 .64 19.614 22.694 1926.4 291.16 2496.1 24.91642 .914 69.7322 2.793 229.32 72.9732

-10 -6610-1 06-16 0 16- 01-60- 106 160- -610- 106 1-60 -16 0-10 -1660-160 -1 59 -159 -51 -1589-158 15- -7155- 55 1-15 -153 -1525 1-25- 15

4 2 4 5 76 98 1 01 121 3 11 45 11 16 57 22 28 734 43 4 08 48 44 85 55 8855 81 12 11 34 15 16 17 181 1 90 21 22 22 34 225 2 27628 2 93 0 13 323 33 4 35 6 373 38

3 40 41 42 493 44 5 44 47 48 46 95051 5 25 543 5 556 7 55 59 68 016 2 66364 65 …… 此处隐藏:6417字,全部文档内容请下载后查看。喜欢就下载吧 ……

三维血管重建优秀论文_含源代码.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/1713841.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)