血管的三维重建.ppt

上传人:小飞机 文档编号:5382995 上传时间:2023-07-01 格式:PPT 页数:31 大小:467KB
返回 下载 相关 举报
血管的三维重建.ppt_第1页
第1页 / 共31页
血管的三维重建.ppt_第2页
第2页 / 共31页
血管的三维重建.ppt_第3页
第3页 / 共31页
血管的三维重建.ppt_第4页
第4页 / 共31页
血管的三维重建.ppt_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《血管的三维重建.ppt》由会员分享,可在线阅读,更多相关《血管的三维重建.ppt(31页珍藏版)》请在三一办公上搜索。

1、,MATHEMATICA MODEL,制作:龚劬,血管三维重建的问题,-2-,断面可用于了解生物组织、器官等的形态。例如,将样本染色后切成厚约1m m的切片,在显微镜下观察该横断面的组织形态结构。如果用切片机连续不断地将样本切成数十、成百的平行切片,可依次逐片观察。根据拍照并采样得到的平行切片数字图象,运用计算机可重建组织、器官等准确的三维形态。假设某些血管可视为一类特殊的管道,该管道的表面是由球心沿着某一曲线(称为中轴线)的球滚动包络而成。例如圆柱就是这样一种管道,其中轴线为直线,由半径固定的球滚动包络形成。现有某管道的相继100张平行切片图象,记录了管道与切片的交。,问题重述,-3-,为简

2、化,假设:管道中轴线与每张切片有且只有一个交点;球半径固定;切片间距以及图象象素的尺寸均为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平面的投影图。,问题重述,-4-,Z=1,Z=0,Z=49,

3、Z=50,Z=99,Z=98,-5-,1)血管的表面是由半径固定、球心沿着某一曲线(称为中轴线)的球滚动而形成的包络面。2)中轴线上任两点处的法截面圆不相交。3)管道中轴线与每张切片平面有且只有一个交点。,假设,-6-,二值图象的象素矩阵为0-1矩阵,矩阵横纵坐标对应原图象的直角坐标系位置,0和1分别代表该位置上的黑或白象素。,图象的矩阵表示,-7-,将管道看成是小球运动包络形成的,则管道的切片便是滚动的小球在平面z上的截圆形成的包络。,问题分析,小球沿螺旋线滚动时,在某平面上的截圆形成包络。,-8-,-9-,解决问题的关键在于发现定理:在一条粗细均匀血管的任何横截面的图象内,其包含的最大内切

4、圆的圆心位于中轴线上,该圆的半径等于滚动球的半径。基于:1)球的任意截面都是圆2)经过球心的球截面是所有截圆当中半径最大的圆,问题分析,-10-,求滚动球半径r的方法1)平均法2)抽样法3)极大似然法4)叠加法求出的半径在28.530.5之间,为什么?,建模方法思想,-11-,需考虑的细节:1)如何读入一个数字图象,即如何由bmp图象文件(或其它格式的图象文件)得到象素矩阵?MATLAB函数imread():m=imread(0.bmp)或把图象序列转换为三维数组for b=0:99 m(:,:,b+1)=imread(int2str(b),.bmp);end,建模方法思想,-12-,需考虑的

5、细节:2)何谓边界点?四邻域的概念 找边界点坐标的算法也可用MATLAB函数:edge()如:m=imread(0.bmp);bw=edge(m,sobel)3)最大内切圆的圆心和半径须取小数和整数有区别吗?4)取整方法:四舍五入(round),向上取整(ceil),向下取整(floor),建模方法思想,-13-,5)如何由切片图叠合作出血管的立体图?方法1:利用plot3()clearfor b=0:99 m1=imread(int2str(b),.bmp);m(:,:,b+1)=edge(m1,sobel);endfor k=0:99 for i=1:512 for j=1:512 if(

6、m(i,j,k+1)=1)plot3(i,j,k+1,b-.);hold onend,end,end,endrotate3d,hold off,-14-,5)如何由切片图叠合作出血管的立体图?方法1:利用plot3(),-15-,方法2:利用patch()for b=0:99m(:,:,b+1)=imread(int2str(b),.bmp,bmp);endm1=m(1:4:512,1:4:512,:);for i=1:size(m1,1)for j=1:size(m1,2)for k=1:size(m1,3)if m1(i,j,k)=0 m1(i,j,k)=88;else m1(i,j,k)

7、=0;end,end,end,endms=smooth3(m1);hiso=patch(isosurface(ms,5),FaceColor,1,.75,.65,EdgeColor,none);,hcap=patch(isocaps(m1,5),FaceColor,interp,EdgeColor,none);colormap(default)view(45,30),axis tightgriddaspect(1,1,.4)lightangle(45,30);lighting phongisonormals(ms,hiso)set(hcap,AmbientStrength,.6)set(his

8、o,SpecularColorReflectance,0,SpecularExponent,50)rotate3d,-16-,5)如何由切片图叠合作出血管的立体图?方法2:利用patch(),-17-,中轴线的建模:求中轴线与各横断面的交点和曲线拟合、逼近。参赛者使用的方法主要有:1)枚举法2)平行切线法3)外推法4)滚球法5)投影法6)变换法7)细化法,建模方法思想,-18-,方法一:以黑色点为圆心,以r0为半径画圆,判断此圆周上的象素点是否为黑色若全为黑色,则增大半径再判断,直到圆周上有白色象素点,记录该圆的圆心坐标和半径,然后,取下一个黑色象素点重复以上步骤,直至黑色区域中所有象素点都搜

9、索完为止;所有记录点中对应于最大半径的圆心坐标,就是该切片的最大内切圆圆心坐标,此半径即是血管的半径,具体实现时出现的问题,-19-,方法一得出的中轴线投影:,具体实现时出现的问题,中轴线在ZX平面投影图 中轴线在YZ平面投影图什么原因造成内切圆圆心的误差如此之大?,-20-,模型的检验 不检验只能说完成问题的一半。由于所给图象只是离散数据,以象素为单位。无论以何种方式建模,都是近似计算,效果如何,检验很必要。还可通过检验,发现模型的误差,修正模型,提高模型的正确性。阅卷中发现的检验方法主要有:1)逐片比较2)法平面法3)滚动法,建模方法思想,-21-,模型检验时也发现内切圆圆心误差较大,特别

10、是后面的切片。,建模方法思想,Z=30,Z=0,-22-,模型检验时也发现内切圆圆心误差较大,特别是后面的切片。,建模方法思想,Z=50,Z=40,-23-,模型检验时也发现内切圆圆心误差较大,特别是后面的切片。,建模方法思想,Z=60,Z=57,-24-,误差大的原因和改进途径,误差大的原因:1)图象误差 实际图象边界上的点是连续的,在转换成bmp图象时,象素表示的图象边界是离散的,成锯齿状,与实际图象有误差(舍入误差)。2)同一张切片上的最大内切圆不唯一 解决办法:1)方法一:取平均求出同一张切片上的所有最大内切圆的圆心,然后求平均值。,-25-,误差大的原因和改进途径,1)方法一:取平均

11、求出同一张切片上的所有最大内切圆的圆心,然后求平均值。,XY平面上的投影,YZ平面上的投影,ZX平面上的投影,-26-,检验,-27-,误差大的原因和改进途径,误差分析 设原图象是由NN个象素点组成,令其为f(x,y),重建图象为g(x,y),它同样由NN个象素点组成,其中x,y=0,1,,N-1。重建图象的均方误差可用下式表示:,-28-,误差大的原因和改进途径,误差分析,由计算出的均方误差情况可以看出,均方误差的平均值低于0.5%。还可以用信噪比,相异象素点所占的比例等其它性能指标来度量重构图象的质量。,-29-,误差大的原因和改进途径,2)方法二:筛选+尖点特性 在第z层,求出其所有最大内切圆的圆心,若是轴心坐标,则以它为中心的球体被上下i(i=129)张切片所截的小圆应在第Zi张切片中,否则,该圆心就不是轴心。,-30-,误差大的原因和改进途径,2)方法二:筛选+尖端特性 0.bmp 70.bmp用上述方法处理效果较好,但71.bmp 99.bmp经筛选后还有不少候选点,可应用尖端特性进行二次筛选。如99层,由于70层切片左下角不可能是第98或42层球体在70层截圆的包络,而是更小截圆的包络,该小圆只能来自99或41层,经计算41层不可能,故此小圆定在第99层的球体中。,返回,-31-,The End,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号