一种基于多线程的轮廓树构建方法技术

技术编号:19482272 阅读:20 留言:0更新日期:2018-11-17 10:48
本发明专利技术公开了一种基于多线程的轮廓树构建方法,首先,获取影像设备产生的切片图像集,按照至上而下或者至下而上的顺序形成三维数据集;然后将三维数据集执行数据等分操作,将其按照范围区间分为多个子数据集;而后分别对每个子数据集操作,利用多线程技术,为每个子数据集分配2个线程计算轮廓树的分裂树和连接树,进而合并成为子轮廓树,再将每个子数据集形成的子轮廓树进行合并,形成一个完整的轮廓树,最后对形成的轮廓树的拓扑结构进行简化,得到最终所需的轮廓树。本发明专利技术不仅能够得到清晰的显示效果,同时能够灵活的进行交互。

【技术实现步骤摘要】
一种基于多线程的轮廓树构建方法
本专利技术涉及医学图像处理及应用的
,尤其是指一种基于多线程的轮廓树构建方法。
技术介绍
基于光学属性的体绘制是医学数据可视化的主流技术。体绘制模拟光线在体数据的传输过程,进而计算传输路径上各点所做的贡献。通过传递函数为体数据的采样点分配颜色和透明度属性,并结合基于GPU的光线投射算法,可以重建出生动形象的三维图像,如文献《EfficientEmptySpaceSkippingforLarge-ScaleVolumeRendering》(IEEEtransactionsonvisualizationandcomputergraphics,2018,24(1):974-983)。因此,传递函数设计的好坏决定了体绘制渲染的质量。有效的体绘制技术需要设计好的传递函数,目前已经有很多学者做出了颇为不错的成果,如文献《StateoftheArtinTransferFunctionsforDirectVolumeRendering》(ComputerGraphicsForum,2016,35(3):669-691)。使用值-梯度直方图指导传递函数,能够使体数据快速清晰显示。利用2D函数来分类数据以及特征,可以增加渲染图像的质量。衡量数据局部形状的属性之一是曲率,文献《Non-uniformsamplingofgeometryforthenumericsimulationofhead-relatedtransferfunctions》(Proceedingsofthe21stInternationalCongressofSoundandVibration,(Beijing,CN).2014)将曲率作为参数指导传递函数的设计。二维直方图的图像分割以及特征度量能够提高体绘制效果,如文献《Texture-basedtransferfunctionsfordirectvolumerendering》(IEEETransactionsonVisualization&ComputerGraphics,2008,14(6):1364)。现有的传递函数设计能够有效的指导体绘制的渲染。然而,对于空间结构复杂的体数据,难以清晰的表达出物质的边界属性。医学应用需要更精细的结构以便进行准确的诊断,这就需要对组织结构有更好的区分。对于复杂结构的体数据,拓扑结构能够分析其空间拓扑,进而指导传递函数的设计。已经有很多有效的拓扑学方法被应用在体绘制渲染管线当中。对于体数据的拓扑分析,Reeb图、Morse-Smale复形、轮廓树等算法已被应用到诸多研究领域当中,如文献《DirectFeatureVisualizationUsingMorse-SmaleComplexes》(IEEETransactionsonVisualization&ComputerGraphics,2012,18(9):1549-1562)、《MeasuringdistancebetweenReebgraphs》(ProceedingsofthethirtiethannualsymposiumonComputationalgeometry.ACM,2014:464)。轮廓树算法相对其他算法更具有实用性。然而,随着体数据分辨率的不断增长以及轮廓树算法需要多次遍历数据集,增加了数据拓扑分析的技术难题,包括计算开销。尤其是为了能够在数据分析过程中进行交互操作,需要高效的算法才能得到好的体验。将并行算法引入到轮廓树的计算当中,能够有效的提高运算速度。基于分布式环境的轮廓树构建算法,如文献《DistributedContourTrees》(TopologicalMethodsinDataAnalysisandVisualizationIII.Springer,Cham,2014:89-102),但是,整体过程中需要多次串行计算,降低了运算性能。上述算法,都是部分阶段的计算使用了并行,轮廓树的构建速度慢,并且由于轮廓树渲染需要复杂的预处理,交互操作不太理想。为了克服所述缺陷,本专利技术从两个方面进行改进:1)利用CPU的多核能力,提出一种完全基于多线程的轮廓树构建算法;2)基于快速轮廓树算法,采用新的渲染模式,实现一种可实时交互的体绘制。通过以上改进,不仅能够高效的显示体数据的绘制效果,同时能够更方便的进行实时交互操作,找到感兴趣的特征。
技术实现思路
本专利技术的目的在于克服现有技术的缺点与不足,提出了一种基于多线程的轮廓树构建方法,基于范围驱动的划分策略,能够利用共享内存来完成轮廓树的并行计算,特别是对于复杂且包含噪声的数据,并行的实现方案能够在冗余数据的加载和计算上达到速度上的均衡,同时,方法构建的轮廓树具有良好的层级,能够对体数据进行明确的划分,因而能够指导体绘制传递函数的设计,在轮廓树的分段基础上,采用新的渲染模式可以有效的加速轮廓树分支的渲染,并且对轮廓树的操作灵活,可交互性强,可解决医学体绘制图像边界模糊的问题。为实现上述目的,本专利技术所提供的技术方案为:一种基于多线程的轮廓树构建方法,首先,获取影像设备产生的切片图像集,按照至上而下或者至下而上的顺序形成三维数据集;然后将三维数据集执行数据等分操作,将其按照范围区间分为多个子数据集;而后分别对每个子数据集操作,利用多线程技术,为每个子数据集分配2个线程计算轮廓树的分裂树和连接树,进而合并成为子轮廓树,再将每个子数据集形成的子轮廓树进行合并,形成一个完整的轮廓树,最后对形成的轮廓树的拓扑结构进行简化,得到最终所需的轮廓树;其包括以下步骤:1)根据数据集的大小和数据的值范围,结合计算机支持的多线程数目n,将数据集等分成n/2份子数据集;2)为每个子数据集分配2个线程用于进行计算子数据集的分裂树和连接树,并将分裂树和连接树合并为子轮廓树;3)将所有子数据集上的子轮廓树合并为一个完整的轮廓树;4)对步骤3)合并后的轮廓树的拓扑结构进行简化,得到最终所需的轮廓树。在步骤1)中,将数据集进行等分,令线程数为n,将数据集分为n/2个子数据集,每个子数据集含有相等数目的顶点:其中,R表示实数,μ表示数据集的元素,i、j表示子数据集的次序,表示ξi表示第i个子数据集,|δ0|i表示ξi中的顶点数目;为完成数据等分这一操作,需要以下几个步骤:1.1)使用快速排序算法,以从小到大的顺序排列数据集上所有的顶点,使用数组存储元素;1.2)将排好序的数组进行等分,分成n/2数组θi,θi对应的子数据集为ξi;1.3)扩展θi拓展成θi',θi'是由θi加上和相连的顶点组成,令fi+、fi-为ξi的端点,即ξi=(fi-,fi+),定义是和fi+连接的边,是和fi-连接的边。在步骤2)中,对每个子数据集进行轮廓树的局部计算操作,为计算此步的轮廓树,对每个数据集ξi执行如下操作:2.1)以递增次序扫描子数据集ξi的扩展集合θi',利用经典的并查集算法来构建轮廓树的连接树;2.2)以递减次序扫描子数据集ξi的扩展集合θi',利用经典的并查集算法构建轮廓树的分裂树;2.3)合并前两步得到的连接树和分裂树,将度数为2的节点合并,形成轮廓树。在步骤3)中,各个子数据集上的子轮廓树作为输入,将所有子数据集的子轮廓树本文档来自技高网
...

【技术保护点】
1.一种基于多线程的轮廓树构建方法,其特征在于:首先,获取影像设备产生的切片图像集,按照至上而下或者至下而上的顺序形成三维数据集;然后将三维数据集执行数据等分操作,将其按照范围区间分为多个子数据集;而后分别对每个子数据集操作,利用多线程技术,为每个子数据集分配2个线程计算轮廓树的分裂树和连接树,进而合并成为子轮廓树,再将每个子数据集形成的子轮廓树进行合并,形成一个完整的轮廓树,最后对形成的轮廓树的拓扑结构进行简化,得到最终所需的轮廓树;其包括以下步骤:1)根据数据集的大小和数据的值范围,结合计算机支持的多线程数目n,将数据集等分成n/2份子数据集;2)为每个子数据集分配2个线程用于进行计算子数据集的分裂树和连接树,并将分裂树和连接树合并为子轮廓树;3)将所有子数据集上的子轮廓树合并为一个完整的轮廓树;4)对步骤3)合并后的轮廓树的拓扑结构进行简化,得到最终所需的轮廓树。

【技术特征摘要】
1.一种基于多线程的轮廓树构建方法,其特征在于:首先,获取影像设备产生的切片图像集,按照至上而下或者至下而上的顺序形成三维数据集;然后将三维数据集执行数据等分操作,将其按照范围区间分为多个子数据集;而后分别对每个子数据集操作,利用多线程技术,为每个子数据集分配2个线程计算轮廓树的分裂树和连接树,进而合并成为子轮廓树,再将每个子数据集形成的子轮廓树进行合并,形成一个完整的轮廓树,最后对形成的轮廓树的拓扑结构进行简化,得到最终所需的轮廓树;其包括以下步骤:1)根据数据集的大小和数据的值范围,结合计算机支持的多线程数目n,将数据集等分成n/2份子数据集;2)为每个子数据集分配2个线程用于进行计算子数据集的分裂树和连接树,并将分裂树和连接树合并为子轮廓树;3)将所有子数据集上的子轮廓树合并为一个完整的轮廓树;4)对步骤3)合并后的轮廓树的拓扑结构进行简化,得到最终所需的轮廓树。2.根据权利要求1所述的一种基于多线程的轮廓树构建方法,其特征在于:在步骤1)中,将数据集进行等分,令线程数为n,将数据集分为n/2个子数据集,每个子数据集含有相等数目的顶点:其中,R表示实数,μ表示数据集的元素,i、j表示子数据集的次序,ξi表示第i个子数据集,|δ0|i表示ξi中的顶点数目;为完成数据等分这一操作,需要以下几个步骤:1.1)使用快速排序算法,以从小到大的顺序排列数据集上所有的顶点,使用数组存储元素;1.2)将排好序的数组进行等分,分成n/2数组θi,θi对应的子数据集为ξi;1.3)扩展θi拓展成θ′i,θ′i是由θi加上和相连...

【专利技术属性】
技术研发人员:王雷郭全杨利素张胜男
申请(专利权)人:山东理工大学
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1