搜档网
当前位置:搜档网 › 血管的三维重建(一等奖)

血管的三维重建(一等奖)

血管的三维重建(一等奖)
血管的三维重建(一等奖)

血管的三维重建

摘要

本文以血管的三维重建为研究对象,对100张平行切片图像进行分析,利用这些宽、高均为512象素的切片,计算管道的半径和确定中轴线方程,并在此基础上画出重建后的血管三维图像,主要内容如下:

对于问题一,计算管道的半径,由于血管表面是由球心沿着某一曲线(称为中轴线)的球滚动包络而成,可以得出结论:切片中包含的最大圆的半径即血管半径,所以问题转化为求每一切片上的最大内切圆的半径。为了便于计算,运用M atlab imread 函数,将B M P 格式文件转化为0-1矩阵,然后运用edge bwmorph 、函数确定轮廓和骨架的位置,并求解骨架上每一点到边缘的最短距离。这些最短距离中的最大值即为最大内切圆半径也就是血管半径。最后对所有的半径取平均值,得出结果:

100

()

1

=29.41666

100

k k R

R ==

对于问题二,根据问题一中求出的100个圆心坐标及半径求解中轴线方程,运用M a t l a b 软件对圆心所形成的曲线进行n 阶多项式拟合。为使中轴线较为光滑,在M atlab 拟合工具箱多次试验后,取最高阶次=7n 。由于z 轴值是逐层单调递增的,为简化方程的计算,取t 为参变量,分别对其投影在YZ 、ZX 平面上进行多项式拟合,最后得到中轴线在平面投影上拟合的曲线方程如下:

()()()-107-76-55432

-107-86-55-343

2-3.2310 1.16910-1.628100.00108-0.035260.5706-3.105+5.243=3.06110-9.62310+1.3610-0.640610+0.01912-0.298+1.89-1.63.3=y t t t t t t t t f x t t t t t t

t t z t t ?=?+??+?+??=???????

??

最后根据方程画出中轴线图形,YZ YX Z X 、、平面的投影在拟合工具箱中可以直接得到。

对于问题三,根据问题一、二求出的中轴线的参数方程和100张切片的最大内切圆的半径,运用M atlab 软件画出血管的三维立体图。

关键词:血管半径 中轴线 M atlab 图像处理 三维重建

一、问题重述

1.1问题背景与条件

生物体的外部结构具有繁杂多样性,可以通过肉眼观察,但若想了解去内部错综复杂的结构,就需要借助一定的辅助工具,人们常利用的是分解和合成的方法。其中分解就是将生物体做成切片,而切片就是用一组等间距的平行平面将生物体中需要研究的部位切成簿薄的一片,每一片就是生物体某一横断面的图像,当人们需要了解生物体信息时,再采用合成的方法,利用切片信息重建原物体的三维形态。这种方法在医学和其他领域有着广泛的应用,如要将人体的组织、器官、血管等的三维信息,包含内部错综复杂的结构,完整地存储在计算机中,以现在的技术也是有一定难度的,但若改用存储切片信息,使用时重建再现的方法,则是利用现有技术可以解决的。本文为就在此背景下提出下面的问题。

1.2需要解决的问题

断面可用于了解生物组织、器官等的形态。例如,将样本染色后切成厚约1m

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

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

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

取坐标系的z轴垂直于切片,第1张切片为平面=0

z,第100张切片为平面=99

z。=切片图象中象素的坐标依它们在文件中出现的前后次序为:

Z z

()

-256,255,z,

-256,-255,z,…()

-256,-256,z,()

()

-255,255,z,

-255,-256,z,()

-255,-255,z,…()

……

()

255,-255,z,…()

255,255,z,

255,-256,z,()

问题一:计算管道的半径。

问题二:确定管道的中轴线方程及画出中轴线在X Y YZ Z X

、、平面的投影图及三维立体图形。

问题三:根据中轴线及半径对血管进行三维重建。

二、模型假设

结合本题的实际,为了确保模型求解的准确性和合理性,我们排除了一些因素的干扰,提出以下几点假设:

1、所有数据均是准确的,根据像素能够近似地描绘出图形;

2、切片的厚度为一个像素;

3、将血管看作一类特殊的管道,不考虑血管的弹性,即血管的半径为一常数;

4、对切片拍照的过程中不存在误差,数据误差仅与切片数字图象的分辨率有关;

5、中轴线上任意两点处的法截面圆不相交。

三、符号说明

四、问题分析

血管可视为一类特殊的管道,该管道的表面是由球心沿着某一曲线(称为中轴线)的球滚动包络而成。本文的主要工作是求解管道的半径及中轴线方程,绘制中轴线在X Y YZ Z X 、、平面的投影图并重建血管的三维图像。

对于问题一,要求解管道的半径。根据图片分析,除去图片“弯月”的两端之外,这一图形的宽度是保持不变的,这一宽度就是我们所要求的球的直径R 2。由于管道的表面是由球心沿着某一曲线(称为中轴线)的球滚动包络而成的,所以可以将问题转化为求球体的半径,也就是过球心的被截圆的半径。题目中只给出了100张管道的切面图,这些二维图形是由无穷多个球被截的圆叠加而成的,基于:1)球的任意截面都是圆;2)经过球心的球截面是所有截圆当中半径最大的圆;3)管道中轴线与每张切片有且只有一个交点,即为球心。所以每张切片的最大内切圆的圆心位于血管的中轴线上,该圆的半径等于血管半径,即问题就可以转化为求切片上最大内切圆的半径。首先,运用M atlab 读取图片,将B M P 格式文件转化为0-1矩阵,通过edge bwmorph 、函数确定轮廓和骨架的位置,通过循环不断搜索计算每张图中骨架上每一点到轮廓上每一点的最短距离,然后取最短距离中的最大值,即为最大内切圆的半径,最后对求出的100个最大内切圆半径取算数平均值减小误差,最后的值即为管道半径。

对于问题二,求中轴线,根据问题一中算出的100个最大内切圆半径和圆心坐标,运用M atlab 软件对所有圆心坐标所形成的曲线进行拟合,根据坐标所画出的散点图规律,采用n 阶多项式拟合方式。根据拟合出曲线的光滑度确定最高阶次n ,由于一个z 只对应于一个x 和一个y ,故可分别对其投影在YZ Z X 、平面上进行多项式拟合,求出方程)(1z f y =和)(2z f x y ==,则中轴线的空间方程即为上两式的联立便得到了血管管道的中轴线参数函数。根据拟合出的方程,画出中轴线在YZ YX Z X 、、平面的投影,拟合曲线及立体图形。

对于问题三,基于问题一、二的求解结果,根据中轴线的参数方程及滚动球的半径,我们运用M atlab 中的绘图工具,结合每张切片图的球心坐标与球的半径,得到血管的还原三维立体图形。

五、模型的建立与求解

经过以上的分析和准备,我们将逐步建立以下数学模型,进一步阐述模型的实际建

立过程。

5.1血管半径的计算 算法步骤:

1step :导入数据,运用M atlab 读取函数,转换存储方式;

、函数确定轮廓和骨架的位置;

step:运用edge bwmorph

2

step:寻找最大内切圆;

3

step:求解100张图片的最大内切圆;

4

step:取100个半径的算术平均值。

5

具体过程:

由于血管是由半径固定的球滚动包络形成,所以过球心的截圆的半径也就是血管的半径,题中给出了血管被切片机平行切割后的100张切片图像,这100张切片图像是由无穷多个球被截的圆叠加而成的,又由于管道中轴线与每张切片有且只有一个交点,即球心。所以在每张切片上总存在着以交点为圆心的圆,此时半径最大,这最大半径同时也是管道的半径。求出最大半径后,运用循环算法,得出这100张切片的最大半径,最后取算数平均值得出管道的半径。

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

本题中给了100张图片,虽然易于直接观察,但不利于以数学思维建模,为了减少计算量,并保证数据的准确性,首先对B M P格式的图像进行预处理,由于B M P格式文件在计算机中是以二进制数进行存储的,图像保存在一个二维的有0或1组成的矩阵中。所以,所以将原来512512

?单色B M P图像格式运用M atlab读取函数转化为二维的0-1矩阵,其中1代表黑色像素点,0代表白色像素点。对于一个512512

?像素的图像,每一个像素都有自己的一个确定的坐标。由此,可以找出这100张图片的像素矩阵。

(2)确定轮廓线【1】及骨架【2】的位置

为了在减少计算量的基础上,却又反应图像的基本性质,我们确定切片的轮廓线及骨架的位置,其中轮廓是指在亮度不同的区域之间有一个明显的变化,即明度级差突然变化而形成的;而图像的骨架即图像中央的骨骼部分,是描述图像几何及拓扑性质的重要特征之一。具体位置见下图1、2:

图1 轮廓图2 骨架接下来以其中一张图片为例进行详细研究,运用edge bwmorph

、函数确定轮廓和骨架的位置,并用二维矩阵来存储轮廓线及骨架,这样可以减少冗杂的信息量而又突出形状特点,具体方法如下:

在确定骨架时,逐次去掉切片图像轮廓线上的点,同时要保证区域的连通性,余下的部分就是物体的骨架。

运用边缘检测大幅度地减少了数据量,并且剔除了可以认为不相关的信息,保留了图像重要的结构属性。在二维的0-1矩阵中,“0”表示切面上的点,“1”表示切面外的点,对于某一个具体的像素,在其上下左右存在着四个像素,被称为该像素的四邻域,当这一具体像素为“0”时,周围像素中有一个值为“1”,则该点为边界点,用此方法可以对边缘进行检测,确定边缘坐标。

(3)寻找最大内切圆

求出骨架到血管轮廓边界上每一点的距离, 则其中的最小距离为即是以该点为圆

心的内切圆。找到所有内点的半径后, 其中半径最大的内点即为所要找的球心, 对应的内切圆即为最大内切圆。若一张切片出现多个圆心时,鉴于所给切片是BMP 格式的图像, 是对原血管的切片的连续图形离散化而得到的近似图形, 则实际计算时有可能出现在一个切片中同时找到多个最大内切圆, 即内切圆不惟一。我们选取与前一张所得圆心距离最近的圆心为当前切片最大内切圆的圆心。

在矩阵内找到轮廓的内切圆记下圆心坐标与半径并储存。骨架看作点的集合,计算骨架上每一点()y x A ,到轮廓()q p B ,的距离:

ijk d =

取ijk d 最小值,即该点垂直于外边缘,也就是存在着以该点为圆心的圆相切于外边缘。最后取最小距离的最大值,即是最大内切圆的半径:

max min{}k ij j

i

R d =

(4)100张图片的半径

完成骨架上任一点对轮廓线像素点的遍历求距离, 并比较记录的所有最小距离值, 最小距离的最大值即为该切片图像的最大内切圆的半径,通过循环100次可以得到这100张图片的最大内切圆的半径。运用M atlab 编程(见附录一)得出前40个结果(余下结果见附录二)见下表1:

从表1可以看出,这100张图片的最大内切圆半径相近,但也存在着差异,为了使结果更准确,取它们的算术平均值这样可以减少在计算中的误差,计算公式如下:

100

()

1

=29.41666

100

k k R

R ==

5.2中轴线方程

根据表一中求出的100个圆心坐标,运用M atlab 拟合工具箱对圆心所形成的曲线进行拟合,求出中轴线拟合的曲线方程,其中有4种拟合方式: 线性拟合、抛物线拟合、

n 阶多项式拟合和+ax b

e

拟合。前两种拟合方式显然与现实相差太远,而第四种拟合又可以用第3种来逼近,所以选择第3种方式。对于n 阶多项式拟合中的最高阶次的取值遵循两个原则:

1)偏差平方和尽量小,这样可以提高数据的拟合度;

2)拟合最高次数不能太高,最好控制在9以内,当次数过高时,会增大误差,自变量若有稍微的变动时,应变量的变化会非常大。

根据这两个原则确定()()y t x t 、方程的最高阶次=7n ,此时拟合出的中轴线较为光滑。以题中给的坐标系为模型,根据空间中轴线是由点组成且z 轴值是逐层单调递增,为简化方程的计算,取t 为参变量,分别对其投影在YZ 、ZX 平面上进行多项式拟合,求出)(1z f y =和)(2z f x y ==最后运用M atlab 拟合工具箱得到中轴线在平面投影上拟合的曲线方程如下:

()()()-107-76-55432

-107-86-55-343

2

-3.2310 1.16910-1.628100.00108-0.035260.5706-3.105+5.243=3.06110-9.62310+1.3610-0.640610+0.01912-0.298+1.89-1.63.3=099y t t t t t t t t f x t t t t t t

t t z t t z ?=?+??+?+??=????????≤≤?

经检验:()()y t x t 、方程的拟合度2R 分别为:0.9837、0.9935,均大于0.9,所以拟合度较高。

由此画出中轴线在YZ YX Z X 、、平面投影拟合曲线及立体图形,见下图3、4、5、6:

图3 中轴线在YZ平面的投影拟合曲线图4中轴线在XY平面的投影拟合曲线

图5 中轴线在X Z平面的投影拟合曲线图6中轴线拟合的立体图形

分析图像可知:

1)通过三张拟合图发现,得到的曲线都基本经过散点图中各三点的位置,特别在开始的区域,可以说是完全重合,从图案中发现拟合度较高。根据图4分析,图形是呈盘旋形状的,随着X变大,在Y轴变化趋势为:陡—平—陡。结合图3和图5分析随着Z的不断变大,图形盘旋上升的趋势为:平—陡—平。

2)拟合的中轴线在整个z轴上(099

≤≤)与血管的实际中心轴基本吻合。

z

3)尽管所得的差值没有具体的几何意义,但是如果对不同层的差值进行比较,可发现中轴线的拟合在层数<30

z的地方误差较小,随着z值的增大,误差变大,这在直观上是

变大,切片上容纳的信息有限,可以理解的;当z增大是,轴线与X Y平面接近平行,d s

d z

产生较大误差。

5.3重建血管的三维图像

根据中轴线的参数方程及100张切片的最大内切圆的半径,运用M atlab编程(见附录三)我们得到切片叠加的原图形和血管重建后的三维立体图形见下图7、图8:

图7叠加后血管的还原图图8重建后的血管三维图像

六、模型检验

运用求得的滚动球的半径和中轴线,用球心沿中轴线运动的方法产生一簇球面,其包络面生成一段新的血管。用原来100张的平面截新的血管,生成新的100张横断面图像,抽样比较新、旧100张横截面图像之间的差别。

图7给出了血管重建后的三维图像,为了验证这个图像是否与原图相近,而题目中只给出了100张切片图,所以将重建后的三维图像,运用M atlab切片【3】,随机抽取得到4个切片,将新得到的切片与原切片比较,由于无法直接观察,所以我们运用重合度来体现,这可以更有利的证明原切片与新切片的相似程度,计算公式如下(

i

C为第i张图片的重合度,S为原切片图片的上内点及边界点的集合,T为重新切片得到的内点及边界点的集合):

= i S T

C

S

抽取的四张图片分别为:10、20、40、60,图片如下:

1

a第10张拟合图图1b第20张拟合图图1c第40张拟合图图1d第60张拟合图

2

a第10张原图图2b第20张原图图2c第40张原图图2d第60张原图

图3a 第10张叠加 图3b 第20张叠加 图3c 第40张叠加 图3d 第60张叠加 运用M atlab 编程(见附录四)计算重合度,得出结果如下:

1099.2%C =

2098.65%C =

4097.30%

C =

6097.61%C =

这4张图的重合度都在95%之上,即按照我们建立的模型求出来的解与实际的情况基本符合,切面得到的球的所有球的切面构成了整张的切面图形,外轮廓基本重合,这有力的证明了我们的模型的准确性和算法的合理性。所以我们可以得出结论:本模型是可行的,结果较为准确。

七、模型评价与改进

6.1优点

算法的精确度较高,具有很好的稳定性和可信度,对于半径均匀的血管有很好的适应性,在模型算法的过程中,我们在保证精确度的同时,使算法尽量简单,从而提高编程的运行速度;运用edge bwmorph 、函数确定轮廓和骨架的位置,直观且容易理解;在确定半径时,我们采用平均值法,以减少计算过程中产生的误差;对于中轴线参数方程的确定,7阶多项式拟合方式,使得曲线较为光滑,视觉效果较好。 6.2缺点

模型不能够对半径变化的情况适应,这是因为我们的理论根据就是等径管道的几何特性,另外,由于实际中图像边界上的点是连续的,只有位置,没有大小,图像在转换为B M P 格式时,像素表示的边界是离散的,产生了系统误差。 6.3改进

模型的优点体现在算法的精确度上,然而却导致算法的复杂度偏高,因此我们改进的方向主要是在精确度保证的前提下降低复杂度, 或者获得精确度和复杂度之间的平衡。在建模的过程中,我们可以发现如果切片的厚度可以进一步缩小,我们得到的拟合曲线的精度更高,反之,对于厚度过大的切片,编程的运行所需的时间会很长,该算法不太适用。对于不规则的三维空间物体,我们的算法不适应,但可在其基础上改进。

八、模型推广

如果考虑中轴线与切片的交点不止一个,比如有两个交点,仍然可以利用我们的离散模型去求解,因为不含轴心的切片中一定不含有最大圆。我们对于离散问题讨论较多,但对于轴心坐标及半径是实数的情况,没有过多的涉及。问题本身是连续的,用离散方法去模拟,不可避免地会出现误差。如果知道象素圆的生成算法,我们就可以运用本模型的思想,将模型推广到实数领域,从而使模型的精度提高。

此模型具有一定的推广意义,尤其是在医学观测领域,医生在不能破坏人体构造前提下,只能通过X 光技术获得断层图像信息,然而仅凭一维的断层图像,医生是很难了解

其内部的复杂结构的,因此,序列图像的三维重现技术却使断层图像得到立体还原,使人体内部构造一目了然。此外,在对精度要求不是很高的很多领域,通过此方法都可以利用计算机实现序列图像的三维重建。

三维实体的重现是当今前沿科技,在医学上有着重要的应用。如胰腺及其周围血管的三维重建和显示及临床意义,此研究实现了胰腺及其周围血管的三维重建和显示,探讨出一种内脏器官和血管的重建方式对断层影像解剖学教学、临床影像学诊断和治疗方案的设计具有明确的辅助作用。基于数字虚拟人体血管的三维重建对教学和临床的应用都有一定实际意义。通过对该模型的改进不仅可以实现血管的三维重现,而且对于复杂管道的测量并重现有着重要的依据。

九、参考文献

[1] 刘惠,图像边缘检测算法分析和实现,湖南师范大学,2001年6月;

[2] 吴德,张红云等,图像骨架提取的应用,2010年4月第四期;

[3] 张德丰等编,MATLAB高级语言编程,机械工业出版社,2010年01月。

十、附录

附录一:

半径求解:

clc

jieguo=zeros (100,4);%存储以后生成的结果

for k=0:99

t=strcat (int2str (k),'.bmp');

J0=imread (t);%将bmp格式转化为0-1矩阵,黑色为0,白色为1

for i=1:1:512;%像素为512

for j=1:1:512;

j0(i,j)=1-J0(i,j); %转化为黑色为1白色为0 为了后面find函数寻找1 find函数是寻找矩阵中为1的坐标并记录

end

end

lk=edge(j0,'sobel'); % 提取轮廓sobel为这个函数中截取轮廓的意思

gj=bwmorph(j0,'skel',inf);% 提取骨架skel为这个函数中提取骨架的意思

[x0,y0,v0]=find(lk);%找到轮廓灰色区域

[a0,b0,c0]=find(gj); %找到骨架灰色区域

m=length(a0); %轮廓灰色区域个数

n=length(x0);%骨架灰色区域的个数

jl=zeros(m,n); %建立0矩阵为求内切圆半径

cf=zeros(m,2); %建立2列0矩阵为存放中心点坐标

for i=1:m

for j=1:n

p1=a0(i);

q1=b0(i);

p2=x0(j);

q2=y0(j); %骨架、轮廓坐标赋值

jl(i,j)=sqrt((p1-p2)^2+(q1-q2)^2); % 通过循环求各个骨架上的各个点到轮廓的

距离

end

[zx,zxxh]=min(jl(i,:));% 骨架上一点到轮廓的最短距离即骨架上各个点为圆心的内切园的半径

cf(i,1)=zx; cf(i,2)=zxxh;%zx存储小循环内的各个点为圆心的内切园的半径,zxxh存储最小半径的圆心坐标

end

[zd,zdxh]=max(cf(:,1)); %找到其中最大的半径,并把半径和圆心坐标存储%%%%%%%%%%%%%%%%%%%%%

%输出结果

x=a0(zdxh)-256;%与题目所给坐标轴对应

y=b0(zdxh)-256;%与题目所给坐标轴对应

jieguo(k+1,1)=x;%X轴坐标

jieguo(k+1,2)=y;%Y轴坐标

jieguo(k+1,3)=k+1;%Z轴坐标

jieguo(k+1,4)=zd;%半径

end

xlswrite('banjing.xls',jieguo)%导入excle方便使用数据

附录三:

拟合后三维直线图:

% 绘制螺旋线

% 绘制原理:随着时间的延续或z坐标的升高,

t=0:99;

x=3.061*10^-10*(t.^7)-9.623*10^-8*(t.^6)+1.36*10^-5*(t.^5)-0.0006406*(t.^4)+0.01912*(t. ^3)-0.2908*(t.^2)+1.89*t-163.3;

y=-3.23*10^-10*(t.^7)+1.169*10^-7*(t.^6)-1.628*10^-5*(t.^5)+0.00108*(t.^4)-0.03526*(t.^ 3)+0.5706*(t.^2)-3.105*t+5.243;

z=t;

% 绘制三维螺旋线

figure

plot3(x, y, t,'red','LineWidth',2);

xlabel('X轴');

ylabel('Y轴');

zlabel('Z轴');

title('中轴线拟合后的立体图形');

拟合后三维立体图:

format long

b=xlsread ('banjing.xls');%读入中心坐标

x=b(:,1);y=b(:,2);z=b(:,3);%存放拟合后系数

px=polyfit(z,x,7);%通过matlab拟合工具箱发现zx平面7次拟合已经足够,拟合效果足够。x1=polyval(px,z);%取拟合后在Z时的点

py=polyfit(z,y,7);%%通过matlab拟合工具箱发现zy平面7次拟合已经足够,拟合效果足

够。

y1=polyval(py,z);%取拟合后在Z时的点

cenn=zeros(100,3);%为存储中轴线坐标开辟3列0矩阵

cenn(:,1)=x1;cenn(:,2)=y1;cenn(:,3)=z;%存入坐标%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%以下为画出中轴线为圆心R为半径化圆的血管还原图

t=linspace(0,pi,25);%!!!存储平均分pi为25份储存

p=linspace(0,2*pi,25);%!!!存储平均分2pi为25份储存

[theta,phi]=meshgrid(t,p);%!!!存储角度

for i=1:100

x=29.4166*sin(theta).*sin(phi)+cenn(i,1);

y=29.4166*sin(theta).*cos(phi)+cenn(i,2);

z=29.4166*cos(theta)+cenn(i,3);

hold on%使图像不被覆盖

surf(x,y,z)%使图像变为彩色

%plot3(x,y,z,'red');%使图像变为红色,但是看不清楚,所以改用彩色axis([-200 200 -50 200 -50 150]);%坐标轴范围

end

xlabel('X轴');

ylabel('Y轴');

zlabel('Z轴');

title('血管拟合后还原图');

hold off %%%%%%%%%%%%%%%%%%%%%%%%%%%%

shading interp%使图形颜色变化走势更加光滑

附录四:

模型检验:

1、转化矩阵

function b0=zhuanhua(b0) %图像二值矩阵的0-1互换

for i=1:512

for j=1:512

if b0(i,j)==1

b0(i,j)=0;

else b0(i,j)=1;

end

end

end

2、重新切片并得到切片后的矩阵

function pnjj=dian(px,py,pn) %输出pnjj,为第pn张拟合图片的轮廓二值矩阵

a=zeros(991);

b=zeros(991);

q=zeros(991);

w=zeros(991);

r=zeros(1,2);

s=zeros(1,2);

k=1;

px=[3.06147904917361e-10,-9.62347219220400e-08,1.13641816516904e-05,-0.0006406453 49803698,0.0191190776680884,-0.290773171448047,1.89045866870677,-163.27753640989 8];

py=[-3.23015724809043e-10,1.16915397364673e-07,-1.62765940849020e-05,0.0010802221 4295471,-0.0352637577253801,0.570635949082998,-3.10475858870787,5.24344620268273 ];

for c=0:0.1:99

a(k)=7*px(1)*c.^6+6*px(2)*c.^5+5*px(3)*c.^4+4*px(4)*c.^3+3*px(5)*c.^2+2*px(6)*c+px( 7);

b(k)=7*py(1)*c.^6+6*py(2)*c.^5+5*py(3)*c.^4+4*py(4)*c.^3+3*py(5)*c.^2+2*py(6)*c+py( 7); %中心轴线方程关于z的导数即[a(k),b(k),1]为z在k处的切线的方向向量

q(k)=px(1)*c.^7+px(2)*c.^6+px(3)*c.^5+px(4)*c.^4+px(5)*c.^3+px(6)*c.^2+px(7)*c+px(8); w(k)=py(1)*c.^7+py(2)*c.^6+py(3)*c.^5+py(4)*c.^4+py(5)*c.^3+py(6)*c.^2+py(7)*c+py(8) ; %中心轴线方程在z=k处的x,y值

k=k+1;

end

%提取新的截痕

u=[];

v=[];

syms x y

k=1;

for i=0:0.1:99

m=a(k)*(x-q(k))+b(k)*(y-w(k))+(pn-i);

n=(x-q(k))^2+(y-w(k))^2+(pn-i)^2-29.41666^2;

[g,h]=solve(m,n);

r=double(g);

s=double(h);

if (abs(imag(r(1)))<0.01) %去除复数根

u=[u;[real(r(1))+256 real(r(2))+256]];

v=[v;[real(s(1))+256 real(s(2))+256]];

end

k=k+1;

end

%根据新的切平面的轮廓坐标得到新轮廓的图像矩阵

plot(v(:,1),u(:,1),'r.',v(:,2),u(:,2),'r.')

axis([0 512 0 512]);

pnj=imread(strcat(int2str(pn),'.bmp'));

lk=edge(pnj,'sobel');

pnjj=zeros(512);

u=round(u);

v=round(v);

for t=1:length(u(:,1))

pnjj(u(t,1),v(t,1))=1;

pnjj(u(t,2),v(t,2))=1;

end

figure(1);%画原图轮廓

imshow(lk)

figure(2);%画新图轮廓

imshow(pnjj)

figure(3);%画原图与新图的轮廓图对比

imshow(pnjj|lk)

pnjj=zhuanhua(pnjj);

3、计算新旧切片的重合度

function baifenbi=baifenbi(pnjj,pn) %输出拟合图与原切片图的重合度%填充新图

juzheng=pnjj; %pnjj为通过dian.m得到的轮廓边界二值矩阵

%先填充左边界的右半部分

for i=1:511

for j=1:511

if(pnjj(i,j)==0&pnjj(i,j+1)~=0)

pnjj(i,j+1)=pnjj(i,j);

end

end

end

you=pnjj;

%再填充右边界的左半部分

for i=1:512

for j=512:-1:2

if(juzheng(i,j)==0&juzheng(i,j-1)~=0)

juzheng(i,j-1)=juzheng(i,j);

end

end

end

zuo=juzheng;

shijijuzheng=you|zuo; %通过矩阵的或运算得到填充后的新图imshow(you|zuo)

%原图的黑点的个数

biaozhunjuzheng=imread(strcat(int2str(pn),'.bmp'));

nbiao=0;

for i=1:512

for j=1:512

if(biaozhunjuzheng(i,j)==0)

nbiao=nbiao+1;

end

end

end

%新图与原图重合部分黑点的个数

chonghegs=0;

for i=1:512

for j=1:512

if(biaozhunjuzheng(i,j)==0&shijijuzheng(i,j)==0)

chonghegs=chonghegs+1;

end

end

end

%求百分比

baifenbi=chonghegs/nbiao;

基于MATLAB的血管三维重建及模型检验

基于MATLAB的血管三维重建及模型检验 发表时间:2019-03-07T11:29:52.780Z 来源:《知识-力量》2019年5月下《知识-力量》2019年5月下作者:马军1 南东波2 [导读] 本文基于2001年数学建模国赛A题,通过MATLAB对血管切片中轴线进行曲线拟合,并画出三维血管图及其投影图,中轴线在平面上的投影图,并其拟合度均高于90%。再求解重新切割前后的匹配率对模型检验。本文优点在于考虑了模型的检验,而这占据了模型的一大半。关键词: (1.陕西科技大学,陕西西安 710021;2.榆林学院,陕西榆林 719000) 摘要:本文基于2001年数学建模国赛A题,通过MATLAB对血管切片中轴线进行曲线拟合,并画出三维血管图及其投影图,中轴线在平面上的投影图,并其拟合度均高于90%。再求解重新切割前后的匹配率对模型检验。本文优点在于考虑了模型的检验,而这占据了模型的一大半。 关键词:MATLAB;图像信息处理;曲线拟合;模型检验 一问题重述(略) 二模型假设 1.假设血管道是由球心沿中轴线且半径固定的球滚动包络而成。 2.假设管道中轴线与每张切片有且只有一个交点。 三模型的建立与求解 结合100个血管切片上的最大内切圆圆心在两平面XOZ、ZOY投影点,利用多项式拟合分别进行曲线拟合,求得曲线l1、l2与曲线方程l,其中, l1、l2可看作一条曲线l落在不同投影面上形成的投影曲线,l应为100个圆心点拟合后的中轴线曲线,见图1。 图1 圆心点拟合后的中轴线 计算结果:X-Z平面拟合度为99.78%,Y-Z平面拟合度为99.93%。 3.2 问题二:中轴线在XY、YZ、ZX平面的投影图与三维血管图 3.2.1 中轴线在XY、YZ、ZX平面的投影图 根据问题一中所得中轴线,运用MATLAB绘制其在XY、YZ、ZX平面的投影图(略)。 3.2.2 三维血管图 根据问题一中所得中轴线,运用MATLAB绘制三维血管图,见图2。 3.3 问题一、二中所的结果重新进行切片检验 3.3.1检验模型一:距离判断法 求出中轴线上的O点到该血管切片面域内各点之间的空间距离D,数学表达式如下::

三维重建综述

三维重建综述 三维重建方法大致分为两个部分1、基于结构光的(如杨宇师兄做的)2、基于图片的。这里主要对基于图片的三维重建的发展做一下总结。 基于图片的三维重建方法: 基于图片的三维重建方法又分为双目立体视觉;单目立体视觉。 A双目立体视觉: 这种方法使用两台摄像机从两个(通常是左右平行对齐的,也可以是上下竖直对齐的)视点观测同一物体,获取在物体不同视角下的感知图像,通过三角测量的方法将匹配点的视差信息转换为深度,一般的双目视觉方法都是利用对极几何将问题变换到欧式几何条件下,然后再使用三角测量的方法估计深度信息这种方法可以大致分为图像获取、摄像机标定、特征提取与匹配、摄像机校正、立体匹配和三维建模六个步骤。王涛的毕业论文就是做的这方面的工作。双目立体视觉法的优点是方法成熟,能够稳定地获得较好的重建效果,实际应用情况优于其他基于视觉的三维重建方法,也逐渐出现在一部分商业化产品上;不足的是运算量仍然偏大,而且在基线距离较大的情况下重建效果明显降低。 代表文章:AKIMOIO T Automatic creation of3D facial models1993 CHEN C L Visual binocular vison systems to solid model reconstruction 2007 B基于单目视觉的三维重建方法: 单目视觉方法是指使用一台摄像机进行三维重建的方法所使用的图像可以是单视点的单幅或多幅图像,也可以是多视点的多幅图像前者主要通过图像的二维特征推导出深度信息,这些二维特征包括明暗度、纹理、焦点、轮廓等,因此也被统称为恢复形状法(shape from X) 1、明暗度(shape from shading SFS) 通过分析图像中的明暗度信息,运用反射光照模型,恢复出物体表面法向量信息进行三维重建。SFS方法还要基于三个假设a、反射模型为朗伯特模型,即从各个角度观察,同一点的明暗度都相同的;b、光源为无限远处点光源;c、成像关系为正交投影。 提出:Horn shape from shading:a method for obtaining the shape of a smooth opaque object from one view1970(该篇文章被引用了376次) 发展:Vogel2008年提出了非朗伯特的SFS模型。 优势:可以从单幅图片中恢复出较精确的三维模型。 缺点:重建单纯依赖数学运算,由于对光照条件要求比较苛刻,需要精确知道光源的位置及方向等信息,使得明暗度法很难应用在室外场景等光线情况复杂的三维重建上。 2、光度立体视觉(photometric stereo) 该方法通过多个不共线的光源获得物体的多幅图像,再将不同图像的亮度方程联立,求解出物体表面法向量的方向,最终实现物体形状的恢复。 提出:Woodham对SFS进行改进(1980年):photometric method for determining surface orientation from multiple images(该文章被引用了891次) 发展:Noakes:非线性与噪声减除2003年; Horocitz:梯度场合控制点2004年; Tang:可信度传递与马尔科夫随机场2005年; Basri:光源条件未知情况下的三维重建2007年; Sun:非朗伯特2007年; Hernandez:彩色光线进行重建方法2007年;

血管的三维重建(一等奖)

血管的三维重建 摘要 本文以血管的三维重建为研究对象,对100张平行切片图像进行分析,利用这些宽、高均为512象素的切片,计算管道的半径和确定中轴线方程,并在此基础上画出重建后的血管三维图像,主要内容如下: 对于问题一,计算管道的半径,由于血管表面是由球心沿着某一曲线(称为中轴线)的球滚动包络而成,可以得出结论:切片中包含的最大圆的半径即血管半径,所以问题转化为求每一切片上的最大内切圆的半径。为了便于计算,运用M atlab imread 函数,将B M P 格式文件转化为0-1矩阵,然后运用edge bwmorph 、函数确定轮廓和骨架的位置,并求解骨架上每一点到边缘的最短距离。这些最短距离中的最大值即为最大内切圆半径也就是血管半径。最后对所有的半径取平均值,得出结果: 100 () 1 =29.41666 100 k k R R == ∑ 对于问题二,根据问题一中求出的100个圆心坐标及半径求解中轴线方程,运用M a t l a b 软件对圆心所形成的曲线进行n 阶多项式拟合。为使中轴线较为光滑,在M atlab 拟合工具箱多次试验后,取最高阶次=7n 。由于z 轴值是逐层单调递增的,为简化方程的计算,取t 为参变量,分别对其投影在YZ 、ZX 平面上进行多项式拟合,最后得到中轴线在平面投影上拟合的曲线方程如下: ()()()-107-76-55432 -107-86-55-343 2-3.2310 1.16910-1.628100.00108-0.035260.5706-3.105+5.243=3.06110-9.62310+1.3610-0.640610+0.01912-0.298+1.89-1.63.3=y t t t t t t t t f x t t t t t t t t z t t ?=?+??+?+??=??????? ?? 最后根据方程画出中轴线图形,YZ YX Z X 、、平面的投影在拟合工具箱中可以直接得到。 对于问题三,根据问题一、二求出的中轴线的参数方程和100张切片的最大内切圆的半径,运用M atlab 软件画出血管的三维立体图。 关键词:血管半径 中轴线 M atlab 图像处理 三维重建

数字化重建三维模型技术规范-

工厂数字化重建三维模型技术规范 南京恩吉尔工程发展研究中心 2014

目录 1 目标 (3) 2 范围 (3) 3 规范性引用文件 (3) 4 定义 (3) 4.1 建模对象 (3) 4.2 建模分类 (3) 4.3 建模区域 (3) 4.4 建模精度 (3) 5 建模范围 (4) 5.1 三维模型的建模范围 (4) 5.2 建模的功能分类与应用 (5) 6 建模精度要求 (6) 6.1 精度等级 (6) 6.2 专业建模描述 (7) 6.3 功能性建模 (8) 7 建模对象属性要求 (9) 7.1 一般对象属性 (9) 7.2 功能与属性的对照 (11) 8 装备拆解建模与建筑建模 (11) 8.1 装备建模 (11) 8.2 建筑建模 (12) 9 工厂信息采集及文档 (12) 9.1 建模文档及信息收集 (12) 9.2 三维扫描及场景照片 (13) 9.3 现场测绘及草图 (13) 9.4 工程变更信息收集 (13) 10 建模审查与交付 (14) 10.1 建模的中间审查 (14) 10.2 建模的终审与数字化交付 (14) 11 附件:资料收集一览表 (14)

1目标 工厂数模重建主要面向工厂的实际运营和维护需求的数字化,不同于三维工厂设计及建造建模,主要面向工厂建设和制造。而现代的数字化设计建造产生的数字化交付成果,可以通过迁移转换重用,还需要通过数字化的重建,补充大量的后续工厂数模信息,满足工程运维的数字化需求和大工厂物联网的大数据建设需求。 本规范适用于企业已建工厂的数字化重建工作。定义数字化三维模型重建工作中的建模类型、范围、编码规则、建模精度及模型属性等方面的要求和规则。 2范围 三维的数字化建模主要包括工厂的主装置区、辅助装置区、公用工程区、厂前区;以工厂的专属的站场、码头、管网、办公楼及辅助设施等。 3规范性引用文件 下列文件对于建模及信息收集应用是必不可少的。 ISO 15926(GB/T 18975)《工业自动化系统与集成及流程工厂(包括石油和天然气生产设施)生命周期数据集成》 GB/T 28170《计算机图形和图像处理可扩展三维组件》 HG/T 20519-2009《化工工艺施工图内容和深度统一规定》 4定义 4.1建模对象 指流程工厂模型的基本单元,如设备、管子、管件、结构、建筑、门、窗等。一个模型对象具有四类关键信息:唯一标识、几何属性、工程属性、拓扑关系(与其他模型对象间)。 4.2建模分类 三维工厂重建分为功能性建模和一般建模。 功能性建模:配合运维的管理功能要求,建立的符合一定功能需求的全息数模; 一般性建模:主要用于辅助管理功能要求的虚拟环境(如模型参考、信息索引、标识)的数模建模。 4.3建模区域 指按一定标准将工厂进行划分所得的空间分区(如装置区、功能区),区域间不可重叠。一般将以工程初始设计中的区域定义为准则。 4.4建模精度 建模精度按照一定的功能性需求分为:粗模、精模、全息模。分别在模型的尺寸及

案例6 血管的三维重建

案例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张,全部图象请从网上(https://www.sodocs.net/doc/0f5771867.html,)下载. Z=0, Z=1 166

全国大学生数学建模竞赛一等奖血管切片的三维重建

全国大学生数学建模竞赛一等奖----血管切片的三维重建 血管切片的三维重建 王月娇钱志刚刘磊 指导教师花强 (河北大学数学与计算机学院,保定,071002) 摘要:为了利用血管切片图象重建血管的三维形态,我们首先编程对切片图象进行由BMP数据格式向文本格式的转换,而这样获得的数据文件将较大,共约50M。显然在利用计算机做进一步读写与处理前,要着重面对的问题是对大量数据的处理,而其中却有大量冗余信息存在,于是我们在寻找每张血管切片中心轴点的过程中,利用多种优化算法以简化问题,并确定出100个中心轴点。以此100个中心轴点为样点,依靠样条插值,利用Matlab 软件对分别对平面及空间曲线进行插值,先后建立了模型一、模型二,从而拟合得到XY,YZ,ZX平面的投影曲线以及中心轴线,得到血管半径为29个像素单位,并模拟给出血管的三维空间形态(如下图),进而对结果进行了广泛的分析与评价。同通过矩阵投影到XY,YZ,ZX平面而获得的图象进行比较,可以验证模型的正确性,以及模型的先进性。 血管切片的三维重建图 一、问题重述 断面可用于了解生物组织、器官等的形态。例如,将样本染色后切成厚约1m m 的切片,在显微镜下观察该横断面的组织形态结构。如果用切片机连续不断地将样本切成数十、成百的平行切片,可依次逐片观察。根据拍照并采样得到的平行切片数字图象,运用计算机可重建组织、器官等准确的三维形态。 假设某些血管可视为一类特殊的管道,该管道的表面是由球心沿着某一曲线(称为中轴线)的球滚动包络而成。例如圆柱就是这样一种管道,其中轴线为直线,由半径固定的球滚动包络形成。 现有某管道的相继100张平行切片图象,记录了管道与切片的交。图象文件名依次为0.bmp、1.bmp、…、 99.bmp,格式均为BMP,宽、高均为512个象素(pixel)。

MATLAB的血管三维重建源代码

图片下载2001数学建模A题 附录1:图像二值矩阵的0-1互换的matlab程序代码(zhuanhua.m)function b0=zhuanhua(b0) %图像二值矩阵的0-1互换 for i=1:512 for j=1:512 if b0(i,j)==1 b0(i,j)=0; else b0(i,j)=1; end end end 附录2:求各切片的最大内切圆的半径及圆心坐标matlab程序代码(ff.m)function [r, zhongxindian]=ff %输出各切片最大内切圆半径及圆心坐标 a=zeros(512,512); b=zeros(512,512); for i=1:512 for j=1:512 a(i,j)=i-257; %横坐标的对应 b(i,j)=j-257; %纵坐标的对应 end end %图像在xyz面上的x轴、y轴坐标 zhongxindian=zeros(100,2); r=zeros(100,1); for k=0:99 t=strcat('f:/',int2str(i),'.bmp'); b=imread(t); b=zhuanhua(b);%将01互换 blunkuo=edge(b,'sobel');%提取轮廓

bgujia=bwmorph(b,'skel',inf);%提取骨架 %寻找内切圆 [x0,y0,v0]=find(b0lunkuo); [a0,b0,c0]=find(b0gujia); m=length(a0); n=length(x0); juli=zeros(m,n); cunfang=zeros(m,2); for i=1:m for j=1:n p1=a0(i);q1=b0(i); p2=x0(j);q2=y0(j); juli(i,j)=sqrt((a(p1,q1)-a(p2,q2))^2+(b(p1,q1)-b(p2,q2))^2);%骨架上的各个点到轮廓的距离end [zx,zxxh]=min(juli(i,:));%骨架上一点到轮廓的最短距离即以骨架上各个点为圆心的内切园的半径 cunfang(i,1)=zx; cunfang(i,2)=zxxh; end [zd,zdxh]=max(cunfang(:,1));%寻找半径中最大的半径和其对应的圆心坐标 g=a0(zdxh);h=b0(zdxh); zhongxindian(k+1,1)=a(g,h); zhongxindian(k+1,2)=b(g,h); r(k+1)=zd; end 附录3:通过计算不同次数多项式拟合的偏差平方和确定拟和次数的matlab程序代码(pczx.m) function j=pczx(z,t) %根据不同次数的多项式拟合与原图数据偏差平方和的大小来确定多

利用二维工程图重建三维实体模型

生产技术与经验交流 铸造技术 07/2011 皮带张紧装置设计在机尾,采用螺旋张紧装置即可满足输送带要求。此外,在机架上每个适当位置设置一对调偏立辊,机架下部设置下平行托辊,以防皮带过度下垂,机头处还设计有进料砂斗,机尾处有出料砂斗,出料斗直接连接斗式提升机,由提升机把造型工序所需要的砂子提升到储存砂斗上。改造后整个砂处理工艺流程如图1所示。 图1 旧砂处理工艺流程 5 结语 (1)此改造设计方案简便可行,资金投入少,冷却效率高,为旧砂再生、企业可持续发展创造了有利 条件。 (2)旧砂处理工序大大简化,可缩减操作人员,为企业实现减员提效、人员优化创造有利条件。 参考文献 [1] 秦文强.消失模铸造新工艺新技术与生产应用实例[M ]. 北京:北方工业出版社,2007. [2] 张尊敬,汪鲠.DT (A )型带式输送机设计手册[M ].北 京:冶金工业出版社,2003. [3] 成大先.机械设计手册[M ].北京:化学工业出版社, 1999. 收稿日期:2011 01 25; 修订日期:2011 02 20 作者简介:梁玉星(1971 ),广西武鸣县人,工程师.主要从事机械设计 工作. Email:lian gyu xing001@https://www.sodocs.net/doc/0f5771867.html, 利用二维工程图重建三维实体模型 杨晓龙1,晁晓菲2 (1.西安航空技术高等专科学校机械工程系,陕西西安710077;2.西北农林科技大学信息工程学院,陕西杨凌 712100) 3D Solid Models Reconstruction with 2D Engineering Drawings Y ANG Xiao long 1 ,CHAO Xiao fei 2 (1.Faculty of Mechanical Engineering,Xi an Aerotechnical College ,Xi an 710077,China;2.C ollege of Infor mation Engineering,Northwest A&F University,Yangling 712100,C hina) 中图分类号:T P391.7 文献标识码:A 文章编号:1000 8365(2011)07 1034 03 为了适应大规模的机械化生成,以平面图来表达 三维实体为设计思想,二维工程图在指导生产、装配和技术交流等方面起到了举足轻重的作用。目前,随着计算机技术的飞速发展,现代设计越来越注重三维实体造型的应用,因为通过三维造型可以分析产品的动态特性、直观地表达设计效果和构造动画模型等[1]。 由此可知,三维实体模型要比二维工程图容易理 解,且效果直观。本文将介绍如何充分利用已有的二维图形信息来辅助建立三维模型,这既能提高三维建模的速度,又不会因采用三维造型技术而抛弃原有二维绘图的宝贵技术资源[2] 。1 三维模型重建的基本原理 图1 三视图的整体与局部都符合三等规律 根据画法几何学的基本理论,空间点在两个不同方向上的正投影可以完全确定点在空间中的位置,即点和线在不同视图中的坐标值应具有对应相等的关 系。对于三视图(亦称正投影工程图),若用F(front)、T(to p)、S(side)分别表示主视图、俯视图和左视图上点的集合,那么主视图中的点f(f F)具有x 、z 坐标, 1034

血管三维重建资料

血管三维重建 论文导读:本文通过对样本断面的数字化处理,运用计算机重建血管三维形态。在求解管道半径时,结合三维图形与断面图形特征,将问题转化为求解断面的最大内切圆的半径。关键词:化处理,三维重建 1 问题重述断面可用于了解生物组织、器官等的形态。例如,将样本染色切成厚约1m m的切片,在显微镜下观察该横断面的组织形态结构。如果用切片机连续不断地将样本切成数十、成百的平行切片,可依次逐片观察。根据拍照并采样得到的平行切片数字图象,运用计算机可重建组织、器官等准确的三维形态。 假设某些血管可视为一类特殊的管道,该管道的表面是由 球心沿着某一曲线(称为中轴线)的球滚动包络而成。例如圆柱就是这样一种管道,其中轴线为直线,由半径固定的球滚动包络形成。现有某管道的相继1 00张平行切片图象,记录了管道与切片的交点。图象文件名依次为 O.bmp、1.bmp、…、99.bmp,格式均为BMP宽、高均为512个象素 ( pixel )。为简化起见,假设:管道中轴线与每张切片有且只有一个交点;球半径固定;切片间距以及图象象素的尺寸均为1。取坐标系的Z轴垂直 于切片,第1张切片为平面Z=0,第100张切片为平面Z=99b 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)。试计算管道的中轴线与半径, 给出具体的算法,并绘制中轴线在XY YZ ZX平面的投影图。2血管的 三维重建通过MATLAB勺图像文件接口,调用IMREA[函数将100张切片位图读入程序中,把精度为的黑白象素点转化为整形数据(黑色象素点为0,白色象 素点为1)。下面是具体操作过程:u 获取平面切片图形下轮廓: 对i 张图像分别从左至右,从下到上扫描,在第j 列获得第一个黑象素点时记录横坐标,纵坐标;u 获取平面切片图形上轮廓:对i 张图像分别从左至右,从上到下扫描,在第j 列获得第一个黑象素点时记录横坐标,纵坐标;u 获取平面切片图形左轮廓:对i 张图像分别从下到上,从左至右扫描,在第j 行获得第一个黑象素点时记录横坐标,纵坐标;u 获取平面切片图形右轮廓:对i 张图像分别从下到上,从右至左扫描,在第j 行获得第一个黑象素点时记录横坐标,纵坐标;以上读取算法获取的8 个矩阵可以为以后数据计算、边界判断提供方便,但是显然8 个矩阵中存在重复元素,这在以后的一般操作时将会降低效率,所以我们将重复元素排除,合并8 个边界矩阵到表示第i 张切片第j 个轮廓点横坐标表示第i 张切片第j 个轮廓点纵坐标将空间离散点(,,i )绘出,即可得到血管重建图形如下3管道半径的求解3.1 模型准备3.1.1 对切片最大内切圆的半径即为管道半径的证明已知:结合题意,管道半径固定,对管道做若干平行切片求证:切片的最大内切圆等价于管道的横截面证明:为便于证明问题,作简要示意图如下: 图1—管道示意图(A为切片的切面)图2—切片A的鸟瞰图 管道的表面可以设想为由球心沿着中轴线的球滚动包络而成。球心的滚动轨迹即为

管道切片的三维重建

---------------------------------------------------------------最新资料推荐------------------------------------------------------ 管道切片的三维重建 管道切片的三维重建廖武鹏邓俊晔文中证明了所有切片含有过轴心的大圆,该大圆直径一定与切片边界相交。 通过构造连续型模型和离散型模型,从 0. BMP 中定出轴心为(1, 160)和半径为30 的最大圆,并相继在其它切片中运用最大圆必包含在切片中的先决条件,找出相应切片中所有可能的轴心坐标,进一步对每一切片待选的轴心坐标,根据其球体必在上 29-下 29 层切片中存在相应半径的圆(在上下 29 层中存在半径为7. 68,在 24 层存在半径为 18 的该球体的相应的截面圆)的特征,筛选上述街选轴心坐标,比较准确地定出了 0 到 70 层的轴心坐标。 对于 71 至 99 层由于上 29 层的信息不全,还存在不少待选点,再应用切片尖端特性(在 70 层左下角的点只能由半径较小的圆包络而成,由此定出 99 层的轴心坐标)确定其余切片的轴心坐标。 绘制出的三维图形和坐标面的投影图是光滑流畅的。 最后文中用所得轴心坐标重新构造各切片,与原切片比较,相异象素点误差不足 3%,结果令人满意。 管道切片的三维重建. pdf (199. 69 KB) 利用切片的二维空间相关操作实现血管的三维重建胡亦斌向杰. . . 相关(Correlation)作为两个图形相似程度的度量,被广泛的用于图 1 / 4

形图像自动识别中。 为对血管的二维切片图像进行分析并重构出血管以及血管中轴线的三维空间形貌,我们利用快速傅立叶变换(FFT)及反变换对切片进行空间相关操作,几乎一步即可确定出中轴线与切片的交点,从而给出中轴线的空间坐标。 我们求出了血管的半径,利用这些结果,绘出了血管中轴线的三维曲线及其投影线,并且利用计算机软件画出了血管的三维造型,在该造型中作血管切片,结果与初始的切片数据一致。 文中分析了相关法进行图像处理的优点与局限性,对利用近代光学信息处理的手段进行切片三维重建的思路进行了讨论。 利用切片的二维空间相关操作实现血管的三维重建. pdf (194. 92 KB) 血管的三维重建徐晋刘雪峰对血管的三维重建问题,我们假定血管为等径管道,通过分析其几何特性,给出了确定其管道中轴线和半径的数学模型-搜索每个切片截面,求最大内切圆,该内切圆圆心即为切片截面与管道中轴线的交点,该内切圆半径即为管道半径,再通过拟合各个交点求出轴心线。 本模型中,我们确立了两种有效的误差分析方法;并由此发现由于中轴线与切片交角过小会使结果产生较大偏差。 为解决此问题,我们从其它方向重新对血管进行切割,再进行处理求解,得到更加精确的结果。 血管的三维重建. pdf (141. 54 KB) 血管切片的三维重建柳海东陈璐文讨论血管的三维重建问题。

01血管的三维重建 公交车调度

2001年全国大学生数学建模竞赛题目 A题血管的三维重建 断面可用于了解生物组织、器官等的形态。例如,将样本染色后切成厚约1m 的切片,在显微镜下观察该横断面的组织形态结构。如果用切片机连续不断地将样本切成数十、成百的平行切片,可依次逐片观察。根据拍照并采样得到的平行切片数字图象,运用计算机可重建组织、器官等准确的三维形态。 假设某些血管可视为一类特殊的管道,该管道的表面是由球心沿着某一曲线(称为中轴线)的球滚动包络而成。例如圆柱就是这样一种管道,其中轴线为直线,由半径固定的球滚动包络形成。 现有某管道的相继100张平行切片图象,记录了管道与切片的交。图象文件名依次为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)。 试计算管道的中轴线与半径,给出具体的算法,并绘制中轴线在XY、YZ、ZX平面的投影图。 B题公交车调度 公共交通是城市交通的重要组成部分,作好公交车的调度对于完善城市交通环境、改进市民出行状况、提高公交公司的经济和社会效益,都具有重要意义。下面考虑一条公交线路上公交车的调度问题,其数据来自我国一座特大城市某条公交线路的客流调查和运营资料。 该条公交线路上行方向共14站,下行方向共13站,第3-4页给出的是典型的一个工作日两个运行方向各站上下车的乘客数量统计。公交公司配给该线路同一型号的大客车,每辆标准载客100 人,据统计客车在该线路上运行的平均速度为20公里/小时。运营调度要求,乘客候车时间一般不要超过10分钟,早高峰时一般不要超过5分钟,车辆满载率不应超过 120%,一般也不要低于50%。 试根据这些资料和要求,为该线路设计一个便于操作的全天(工作日)的公交车调度方案,包括两个起点站的发车时刻表;一共需要多少辆车;这个方案以怎样的程度照顾到了乘客和公交公司双方的利益;等等。 如何将这个调度问题抽象成一个明确、完整的数学模型,指出求解模型的方

三维血管的重建

血管的三维重建 摘要 对于血管的三维重建,本文研究了血管这一类特殊管道的中轴线及其半径的算法,绘制中轴线在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提出的问题 问题一:计算出管道的中轴线与半径,给出具体的算法。 问题二:绘制中轴线在XY、YZ、ZX平面的投影图。 问题三:绘制血管的三维重建立体图。

三维重建方法综述

三维重建方法综述 三维重建方法大致分为两个部分1、基于结构光的2、基于图片的。这里主要对基于图片的三维重建的发展做一下总结。基于图片的三维重建方法: 基于图片的三维重建方法又分为双目立体视觉;单目立体视觉。 A双目立体视觉: 这种方法使用两台摄像机从两个(通常是左右平行对齐的,也可以是上下竖直对齐的)视点观测同一物体,获取在物体不同视角下的感知图像,通过三角测量的方法将匹配点的视差信息转换为深度,一般的双目视觉方法都是利用对极几何将问题变换到欧式几何条件下,然后再使用三角测量的方法估计深度信息这种方法可以大致分为图像获取、摄像机标定、特征提取与匹配、摄像机校正、立体匹配和三维建模六个步骤。王涛的毕业论文就是做的这方面的工作。双目立体视觉法的优点是方法成熟,能够稳定地获得较好的重建效果,实际应用情况优于其他基于视觉的三维重建方法,也逐渐出现在一部分商业化产品上;不足的是运算量仍然偏大,而且在基线距离较大的情况下重建效果明显降低。 代表文章:AKIMOIOT Automatic creation of 3D facial models 1993 CHENCL Visual binocular vison systems to solid model reconstruction 2007 B基于单目视觉的三维重建方法: 单目视觉方法是指使用一台摄像机进行三维重建的方法所使用的图像可以是单视点的单幅或多幅图像,也可以是多视点的多幅图像前者主要通过图像的二维特征推导出深度信息,这些二维特征包括明暗度、纹理、焦点、轮廓等,因此也被统称为恢复形状法(shape from X) 1、明暗度(shape from shading SFS) 通过分析图像中的明暗度信息,运用反射光照模型,恢复出物体表面法向量信息进行三维重建。SFS方法还要基于三个假设a、反射模型为朗伯特模型,即从各个角度观察,同一点的明暗度都相同的;b、光源为无限远处点光源;c、成像关系为正交投影。 提出:Horn shape from shading:a method for obtaining the shape of a smooth opaque object from one view 1970(该篇文章被引用了376次) 发展:V ogel2008年提出了非朗伯特的SFS模型。优势:可以从单幅图片中恢复出较精确的三维模型。 缺点:重建单纯依赖数学运算,由于对光照条件要求比较苛刻,需要精确知道光源的位置及方向等信息,使得明暗度法很难应用在室外场景等光线情况复杂的三维重建上。 2、光度立体视觉(photometric stereo) 该方法通过多个不共线的光源获得物体的多幅图像,再将不同图像的亮度方程联立,求解出物体表面法向量的方向,最终实现物体形状的恢复。 提出:Woodham对SFS进行改进(1980年):photometric method for determining surface orientation from multiple images(该文章被引用了891次) 发展:Noakes:非线性与噪声减除2003年; Horocitz:梯度场合控制点2004年; Tang:可信度传递与马尔科夫随机场2005年;Basri:光源条件未知情况下的三维重建2007年;Sun:非朗伯特2007年; Hernandez:彩色光线进行重建方法2007年; Shi:自标定的光度立体视觉法2010年。 3、纹理法(shape from texture SFT) 通过分析图像中物体表面重复纹理单元的大小形状,恢复出物体法向深度等信息,得到物体的三维几何模型。

血管的三维重建

血管的三维重建 1 摘要 序列图像的三维重建在各学科中都起到至关重要的作用,本次讨论的是血管的三维重建。首先,假设该管道是由球心沿着某一曲面的球滚动包络而成,故本次的主要目的是求出中轴线坐标及半径。 现有100张平行切片图像,本次建立的模型可分为四步;第一步,采集图形边界点数据。由于每张图片都是512*512的矩阵,故此数据很大,采用imread()函数将其读入矩阵A中。 第二步,最大内切圆寻找及半径的确定。提出两种方案,分别是切线法和最大覆盖法; 从上述两种方法分析及考虑到我们所使用的工具和材料, 可以得出方法二更加直观, 计算机实现更容易, 计算复杂度更低, 所以我们采用后者。根据以上算法, 我们抽取了所有的切片图进行半径的提取, 然后再求其平均值, 求其均值得到球的半径为29.6345。 第三步,轨迹的搜索。在第二步中求出了血管的半径,轨迹的搜索就可以建立在半径确定的基础上, 当然我们也可以求出每一个切面图形的最大内切圆, 然后得到每个圆心的坐标, 即中轴线坐标, 但这样做计算机的运算量会很大, 同时由于最大内切圆搜索法的稳定性不高, 从而会造成搜索的不精确, 所以采用定半径搜索。本文提出了三种方法, 分别为网格法、蒙特卡罗法和非线性规划法;本次采用非线性规划来实现。 第四步,绘制中轴线空间曲线图和在XOY、YOZ、XOZ 三个平面的投影图。由定理1: 切片上血管截面图的头部顶点在XOY 平面上的投影点一定会落在 中 轴线在XOY 平面上的投影曲线上(在论文中以证明),并得出推论:切片上血管截面中中位线与中轴线在XOY 面上的投影重合。 最后可由中轴线和血管半径在作图软件中达到血管的三维重建,本次的模型还存在一定的不足,其假设为管道中轴线与每个切面有且只有一个交点,事实上还存在有多个交点的情况,但为了简化模型在此做了一定的假设,故会存在一定的误差。 关键词:三维重建内切圆半径轨迹(中轴线) 注:求边界时采用了老师的思想和程序。

三维重建模型 内窥镜图像综合分析软件产品技术要求renxing

三维重建模型/内窥镜图像综合分析软件 适用范围:适用于符合DICOM标准的CT图像以.rx3d格式存储的三维模型数据和内窥镜影像的导入、显示、叠加查看的操作。 1.1 软件型号规格:RXFQJMR-I 1.2 发布版本 软件发布版本:V1.0 1.3 版本命名规则 软件的完整版本命名由四部分组成,完整版本型号:VX.Y.Z.B ,分类描述如下: 字母V为版本Version的缩写; * X:主版本号,也是发布版本号,表示重大增强类软件更新,初始值为1,当软件进行了重大增强类软件更新,该号码加1; * Y:子版本号,表示轻微增强类软件更新,初始值为0,当软件进行了轻微增强类软件更新,该号码加1; * Z:修正版本号,表示纠正类软件更新,初始值为0,当软件进行了纠正类软件更新,该号码加1; * B:构建号,表示软件编译生成一个工作版本,符合软件更新的定义,初始值为0,当软件进行了构建更新,该号码加1。 2.1 通用要求 2.1.1 处理对象 软件针对腹腔镜影像、软件定义的.rx3d格式的三维数据进行处理。 2.1.2 最大并发数 软件运行的网络环境为单机环境,支持读取影像数据的最大用户数为1。2.1.3 数据接口 软件通过高清数字视频信号DVI、SDI、VGA接口,与医疗设备进行影像传输,支持模拟视频信号接口。 2.1.4特定软硬件 特定硬件:广播级视频采集卡,支持SDI、VGA、DVI接口,对于非DICOM 标准的视频输出的医疗设备,选用支持DirectShow的视频采集卡。

2.1.5 临床功能 登录界面功能: 1)显示登录用户名,密码。 2)密码隐藏功能,点击输入框后面显示按钮可查看登陆密码。 3)点击登录或按键盘Enter键,均可登录。 操作界面功能: 1)文件导入模块:在软件菜单栏点击模型导入按钮,在软件右侧功能栏即显示患者三维模型信息的导入按钮列表。点击三维模型信息按钮可导入相应的三维模型。 2)患者信息录入模块:在软件菜单栏点击患者信息按钮,在软件右侧功能栏即显示三维模型中已存的患者信息(包括姓名、性别、入院编号、主治医师、病例诊断和手术类型),亦可在此对患者信息进行修改或重新录入。 3)三维模型器官分类模块:在软件菜单栏点击器官分类按钮,在软件右侧功能栏即显示器官分类。在此模块中,亦可通过点击代表各器官、组织的各色按钮来控制三维模型各器官、组织的显示或隐藏,以及拖动滑动条调整各器官、组织的透明度。 4)三维模型姿态调整模块:在软件菜单栏点击姿态调整按钮,在软件右侧功能栏即显示三维模型位置操作按钮,含上、下、左、右移动4个按键,远、近移动2个按键和三个可控制X/Y/Z轴的滑动按钮。在此模块可控制三维模型的姿态变换。 5)摄录模块:在软件的菜单栏点击摄录按钮,在软件右侧功能栏即显示录像和截屏按钮,点击录像按钮可录制手术的操作过程,点击截屏按钮可随时截屏,为后期的视频教学保存相关资料。 6)软件使用帮助模块:在软件的菜单栏点击软件使用帮助按钮,在右侧功能栏即显示鼠标和键盘操作的示意图,在主窗口显示操作视频,可观看学习软件快速上手视频。 7)软件安全退出:点击菜单栏退出按钮,软件数据即存储到指定的文件夹下,便于资料拷贝。

汽车外形设计的三维数模重建

汽车外形设计的三维数模重建 摘要本文提出了一个汽车外形三维数字模型重建的方法,该方法从汽车外形的工业设计效果图和汽车外形图片入手,利用图像处理技术,进行图像三维外形恢复,利用外三维CAD平台进行数字化主模型重建。同时对重建过程中的关键技术进行了分析研究,提出了可行性的解决方案,为汽车外形设计的并行化和自动化打下良好的基础。 关键词数模重建图像处理主模型反求技术 一、引言 汽车外形不仅决定着一个车型的市场形象,而且决定着汽车的性能,因此汽车设计大都采用自上而下(TOP-DOWN)的设计策略,首先进行总体设计,设计出汽车外形。传统的汽车外形设计和一般的机械产品一样,第一步是概念设计,由工业设计师按照产品设计要求,在满足产品功能的基础上,力求使产品更符合美学原则,以适应市场潮流。然后按比例制作实物模型,进行设计评价、设计修改的反复过程,最后按定型的设计绘制工程图纸,再进行试制、评价、修改、定型的过程,才能够进行批量生产。新品开发周期长,且不利于协作,难以适应瞬息万变的市场需要。因此必须利用发展迅速的计算机技术和产品造型技术,以数字化模型代替实物模型,在设计阶段先构造出新车型的数字化主模型(PMM),以利于工业设计、工程设计、产品评价等相关阶段并行和协同,并服务于产品整个生命周期。如何快速、高效、准确地构造出汽车外形的主模型,是现代设计方法的关键技术。根据对我国汽车业的调查研究,新车型的开发基本分为两种类型:一是开发新的车型;其二是老车型的改型设计。其中改型设计约占新车型的70%,是在原有车型的基础上进行改造和再开发,原有车型的大量信息可以再利用,原有设计的大量成果可以继承。而对于纯粹的新车型开发而言,仍有大量的车型属于仿制开发。对于完全自主进行的新车型开发,建立其数字化主模型的依据仍然有工业设计师给出的设计效果图。因此,产品主模型的构造实质上是继承和发展已有信息,即根据已有的设计信息进行数模重建,实现设计自动化。 二、重建思想 产品设计是将对产品的功能需求映射为能实现该功能要求且能加工出来的产品几何模型的过程。产品设计过程即是产品模型变换的过程,即从需求模型、功能模型、结构模型、工艺规划模型等交互映射,各种模型的构造还受着各种各样的约束,设计结果还必须以大量的工程知识为背景进行评估,设计思想是一个交互迭代、从抽象到具体、由模糊到精确的变化思想。设计各阶段由于设计目的、对象及所受约束的差异,而产生出各种各样的设计模型,由于设计模型的不同,需要对构造模型的设计人员进行分工,即由工业设计师负责构造概念化模型和功能化模型,工程设计师负责产品详细设计模型,工艺师具体负责产品工艺规划等,在产品各阶段模型构造中,最重要的模型是产品的主特征模型(PMM),它是连接上、下游设计过程的桥梁。现有的汽车外形技术存在两个极端:一是由工业设计师负责,要求工业设计师除负责概念设计外,还必须负责工程设计;另一类是由工程设计人员直接利用现有CAD 平台直接进行概念与工程设计。显然,这对设计人员素质要求很高,一般人难以完成。所以有必要在工业设计师与工程师之间架起一座数字化桥梁,因此我们提出了基于图像技术的三维重建理论,即对于改型设计和自主开发设计,根据工业设计师提供的工业设计效果图;仿制设计根据被仿制车型的图片资料(而不是依据由三坐标测量机或者激光扫描仪测出的坐标云点,因为被仿制实车往往不易获得,即使较易获得,所测云点的合理性也因操作人员的经验而有所不同,而车型图片则较易获得),恢复出汽车外形的三维云点,再重构汽车外形的三维主模型。其基本思路如图示。 三、重建技术 基于图像处理技术进行汽车外型三维重建,其基本技术是把所获得的仿制车型图片或工

相关主题