CN115170642A - 一种电子密度等值面点云体积的计算方法及装置 - Google Patents
一种电子密度等值面点云体积的计算方法及装置 Download PDFInfo
- Publication number
- CN115170642A CN115170642A CN202210842207.8A CN202210842207A CN115170642A CN 115170642 A CN115170642 A CN 115170642A CN 202210842207 A CN202210842207 A CN 202210842207A CN 115170642 A CN115170642 A CN 115170642A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- point
- electron density
- contour
- layer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/62—Analysis of geometric attributes of area, perimeter, diameter or volume
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/12—Edge-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/181—Segmentation; Edge detection involving edge growing; involving edge linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Image Generation (AREA)
Abstract
本申请提供了一种电子密度等值面点云体积的计算方法及装置,涉及点云体积测量技术领域,对获取的电子密度等值面点云进行分层,得到每层切片的轮廓点云;基于最近点搜索法针对得到的每层切片的轮廓点云进行不同轮廓的分割,得到至少一个数量的轮廓;对每层切片的所有轮廓围成的面积进行求和,得到该层切片的截面面积;基于每层切片的截面面积计算所述电子密度等值面点云的体积,利用最近点搜索法进行不同轮廓的分割,能够提高轮廓边界分割的正确率,进而降低点云体积测量的误差。
Description
技术领域
本申请涉及点云体积测量技术领域,具体而言,涉及一种电子密度等值面点云体积的计算方法及装置。
背景技术
体积是三维空间中物体的重要属性参数,体积计算是空间中对象形态分析的基本内容,体积计算涉及规则几何体和不规则几何体。其中,不规则几何体的体积测量,因其形态各异无法归纳出普适的计算方法,仍是普遍面临且函待解决的现实难题。采用三维激光扫描的方式,可以快速地获取包含物体表面结构信息的点云数据。由此得到对象的三维封闭曲面模型或者多层二维轮廓边界,这两种方法均可计算不规则物体体积,即逆向建模法和切片法两种技术路线。前者体积计算准确可靠,但需经过扫描阶段、点云阶段、曲面拟合阶段才能生成目标模型,且仍需进行拓扑检查和孔洞填充等操作,计算过程耗费资源和时间。而后者将一个三维曲面问题,简化成了多个二维曲线问题,降低了空间复杂度,以牺牲小部分精度的代价大幅度降低了计算时间。因此切片法因其直观和易于编程实现的优势,被广泛地应用于工程项目中,例如不规则树冠体积测量、商品包装体积测量、油罐和洞库容量计量、船舶排水量计量等诸多领域。不仅如此,在理论研究时,如计算化学中,针对分子范德瓦尔表面上静电势的研究可以用于预测反应位点,预测分子性质,解释分子间弱相互作用。而分子范德瓦尔表面(后文称为分子电子密度等值面)的体积是一个重要参数。
其中,在切片法测量体积时“切片面积计算”需要对截面上无规则的点进行正确的排序,生成轮廓边界,是得到正确体积值的关键。现有的边界排序算法中,极坐标排序法不适用于极端凹多边形,依据最小夹角原则的轮廓排序法和凹包点内插法在面对复杂轮廓情况时仍会出错,α-shape点云轮廓提取法易扩大轮廓体积,双向最近点搜索法表现较好,但仍然和前两者一样局限于单一轮廓边界排序如墩台、储油罐和船舶等。使用先分类后排序思想时,K-means聚类,谱聚类,等需要事先已知分类个数的算法不适用于此类情况。使用数字图像方法可以分割多个轮廓,但其对格栅大小的要求严格,且两次矢栅转换会引入新的误差。多边形拆分再重组法虽然可以区分多个轮廓,但当切片上存在较多轮廓随机分布时,其基于统计学方法对异常边拆分的方式可靠性会降低。
发明内容
有鉴于此,本申请的目的在于提供一种电子密度等值面点云体积的计算方法及装置,能够在提高轮廓边界分割的正确率,进而降低点云体积测量的误差。
本申请实施例提供的一种电子密度等值面点云体积的计算方法,包括以下步骤:
对获取的电子密度等值面点云进行分层,得到每层切片的轮廓点云;
基于最近点搜索法针对得到的每层切片的轮廓点云进行不同轮廓的分割,得到至少一个数量的轮廓;
对每层切片的所有轮廓围成的面积进行求和,得到该层切片的截面面积;其中,每个所述轮廓围成的面积包括正或负,且根据多边形内点算法判断所述轮廓围成的面积的正负;
基于每层切片的截面面积计算所述电子密度等值面点云的体积。
在一些实施例中,通过如下方式获取电子密度等值面点云:
对分子结构进行密度泛函数计算获取波函数结果,并根据所述波函数结果生成格点文件;其中,所述格点文件包括电子密度格点文件和静电势格点文件;
基于MC算法将所述格点文件转换为电子密度等值面点云。
在一些实施例中,所述基于最近点搜索法针对得到的每层切片的轮廓点云进行不同轮廓的分割,得到至少一个数量的轮廓,包括以下步骤:
确定每层切片中轮廓点云的最初起始点;
在设定半径范围内搜索与所述最初起始点距离最近且未与其它点连接的待连接点,进行连接,并将该待连接点作为新的起始点;
在设定半径范围内搜索与所述新的起始点距离最近且未与其它点连接的待连接点,进行连接,依此直至设定半径范围内的所有点均与其它点连接,将所述新的起始点与所述最初起始点连接,形成一闭合的轮廓线;
检测每层切片中轮廓点云是否存在未连接的点,若是,按照上述步骤重新确定最初起始点以形成另一闭合的轮廓线;若否,结束。
在一些实施例中,所述每层切片的轮廓之间为包含关系或相离关系,其中,存在包含关系的轮廓围成的面积包括正或负。
在一些实施例中,通过以下方式判断所述轮廓围成的面积的正负:
计算每层切片中各个轮廓围成的面积;
基于多边形内点判定算法判断每层切片中各个轮廓之间的位置状态,并记录每一轮廓的被包含数;
基于每层切片中各个轮廓围成的面积和每一轮廓的被包含数确定轮廓围成的面积的正负。
在一些实施例中,所述基于每层切片的截面面积计算所述电子密度等值面点云的体积,包括以下步骤:
基于所述电子密度等值面点云的分层厚度和每层切片的截面面积计算每层切片的体积;
对计算的每层切片的体积进行累和获取所述电子密度等值面点云的体积。
在一些实施例中,所述对获取的电子密度等值面点云进行分层,得到每层切片的轮廓点云,包括以下步骤:
对获取的电子密度等值面点云进行分层之后,基于MC算法进行预处理剔除掉非轮廓上的点,得到每层切片的轮廓点云。
在一些实施例中,还提供一种电子密度等值面点云体积的计算装置,包括:
分层模块,用于对获取的电子密度等值面点云进行分层,得到每层切片的轮廓点云;
分割模块,用于基于最近点搜索法针对得到的每层切片的轮廓点云进行不同轮廓的分割,得到至少一个数量的轮廓;
第一计算模块,用于对每层切片的所有轮廓围成的面积进行求和,得到该层切片的截面面积;其中,每个所述轮廓围成的面积包括正或负,且根据多边形内点算法判断所述轮廓围成的面积的正负;
第二计算模块,用于基于每层切片的截面面积计算所述电子密度等值面点云的体积。
在一些实施例中,还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述任意一项所述的电子密度等值面点云体积的计算方法的步骤。
在一些实施例中,还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述任意一项所述的电子密度等值面点云体积的计算方法的步骤。
本申请所述的一种电子密度等值面点云体积的计算方法及装置,对获取的电子密度等值面点云进行分层,得到每层切片的轮廓点云;基于最近点搜索法针对得到的每层切片的轮廓点云进行不同轮廓的分割,得到至少一个数量的轮廓;对每层切片的所有轮廓围成的面积进行求和,得到该层切片的截面面积;基于每层切片的截面面积计算所述电子密度等值面点云的体积,利用最近点搜索法进行不同轮廓的分割,能够提高轮廓边界分割的正确率,进而降低点云体积测量的误差。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例所述电子密度等值面点云体积的计算方法的流程图;
图2示出了本申请实施例所述Cat6点云的示意图;
图3示出了本申请实施例所述扫描对象标靶的结构示意图;
图4示出了本申请实施例所述获取电子密度等值面点云的流程示意图;
图5示出了本申请实施例所述经由MC算法处理后的轮廓线示意图;
图6示出了本申请实施例所述三层切片点云投影的示意图;
图7示出了本申请实施例所述图6中一层切片点云投影经最近点搜索法处理后得到的分割轮廓示意图;
图8示出了本申请实施例所述多轮廓位置关系示意图;
图9示出了本申请实施例所述使用不同算法对Cat6点云切片进行轮廓分割得到结果对比示意图;
图10示出了本申请实施例所述扫描的实物示意图;
图11出了本申请实施例所述使用不同算法对扫描的实物点云切片进行轮廓分割得到结果对比示意图;
图12示出了本申请实施例所述电子密度等值面点云体积的计算装置的结构示意图;
图13示出了本申请实施例所述电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,应当理解,本申请中附图仅起到说明和描述的目的,并不用于限定本申请的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
另外,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
使用切片法进行不规则物体点云体积测量时,现有的多边形拆分再重组法难以正确拆分较近轮廓,导致计算精度降低。针对这一问题,本申请提出了一种电子密度等值面点云体积的计算方法、装置、电子设备及存储介质,都能实现高正确率的边界分割,进而降低体积测量的平均相对误差。
参见说明书附图1,本申请提供的一种电子密度等值面点云体积的计算方法,包括以下步骤:
S1、对获取的电子密度等值面点云进行分层,得到每层切片的轮廓点云;
S2、基于最近点搜索法针对得到的每层切片的轮廓点云进行不同轮廓的分割,得到至少一个数量的轮廓;
S3、对每层切片的所有轮廓围成的面积进行求和,得到该层切片的截面面积;其中,每个所述轮廓围成的面积包括正或负,且根据多边形内点算法判断所述轮廓围成的面积的正负;
S4、基于每层切片的截面面积计算所述电子密度等值面点云的体积。
步骤S1中,通过以下方式获取电子密度等值面点云:
对分子结构进行密度泛函数计算获取波函数结果,并根据所述波函数结果生成格点文件;其中,所述格点文件包括电子密度格点文件和静电势格点文件;
基于MC算法将所述格点文件转换为电子密度等值面点云。
在本申请中,选择手性双氮氧金属配合物催化剂与底物结合模型电子密度等值面点云(后文简称Cat6点云)作为实验对象,其表面变化大,分层情况复杂,参见说明书附图2,其中说明书附图2中的(a)为渲染后的Cat6点云,(b)为Cat6点云的三维曲面模型。
具体的,参见说明书附图3,在一实施例中,获取电子密度等值面点云的流程为:首先,通过高斯软件对化学分子结构进行优化并进行密度泛函计算获得波函数结果,随后,使用波函数分析软件Multiwfn生成电子密度格点文件和静电势格点文件(格点文件是指记录了三维空间中均匀分布的各个点的特定函数的数值的文件),如说明书附图3中的(a)所示。格点数据以起始点(xstart,ystart,zstart)开始,以h、YSlice和XSlice为间隔向Z、Y和X轴三个方向延伸,最后充满长方体;其中三个方向的各有nZ、nY和nX个点,长方体内共有nXnYnZ个点。根据每个点的电子密度和等值面的关系,使用MC(Marching Cubes,MC)算法进行重建得到说明书附图3中的(b),最后根据静电势格点文件对电子密度点云进行双线性插值,然后针对三角形顶点的静电势值,使用OpenGL进行渲染得到说明书附图3中的(c)。
另外,点云数据的获取一般采用三维激光扫描,但是本申请数据和三维激光扫描得到的数据其分层方式不同。对于激光扫描数据,分层数为:
式中,l是切片序号;zl是切片平面的位置。
而对于本申请中分子电子密度等值面点云,其分层数为:
式中,zstart是格点文件中点云D在Z方向的最小值;“round(·)”是四舍五入函数。nM+1是点云切片数量。其分层后的位置分布为:
进一步的,在本申请中,为了可以得到高质量的轮廓点云,对获取的电子密度等值面点云进行分层之后,基于MC算法进行预处理剔除掉非轮廓上的点,得到每层切片的轮廓点云。
其中,MC算法基本思想是遍历格点数据中所有的体素(由8个点构成的长方体),根据其顶点值与等值面阈值的关系,将其归类到已公知的15种关系之一,通过插入三角形进行物体的表面重建。取说明书附图3中(b)分子等值面点云顶部两层,通过观察电子密度格点点云中,在等值面内部的点与重建后等值面上的点之间的位置关系,归纳出针对此类点云的一种切片上投影点的预处理方法,可以有效的去除非轮廓上的点,其流程参见说明书附图4:
说明书附图4中(a)浅色点表示格点点云在曲面内的点,深色点表示重建后的电子密度等值面点云,黑框中是说明书附图4中(b)表示的顶部两层的点云,其中重建后的深色点与浅色点重合或者在浅色点外部。两层红点之间散落着一些蓝色点,这是通过MC算法插值得到的三角形的顶点。说明书附图4中(c)是连接这些三角形后的示意图。说明书附图4中(d)是俯视视角示意图,其中深色线段是观察说明书附图4中(c)画出的轮廓线。可以知道凡是轮廓线上的点均没有落在棋盘格点上(沿Z轴方向投影,格点文件某一层的点呈现类似于围棋棋盘格点的分布),说明书附图4中(e)列出的几种边界处体素的情况可用于解释,其中深色点表示格点点云在等值面外的点,根据其分布,在体素内插入不同数量和位置的三角形,并将三角形沿Z轴方向投影,落在棋盘格点上的点均处于体素上下两层间的棱上,而构成轮廓线的点正是那些在体素上下两层面上的点。
因此针对由MC算法得到的点云,我们按照公式(4)分层后,再将落在棋盘格点上的点剔除便可以得到高质量的轮廓线,从上述点云中选取其中三层,轮廓分布情况如说明书附图5所示,其中,说明书附图5中(a)为第三层切片点云投影;(b)为第三十层切片点云投影;(c)为第三十二层切片点云投影。
步骤S2中,采用最近点搜索法(Improve Nearest Point Search,INPS)针对得到的每层切片的轮廓点云进行不同轮廓的分割。本申请所述最近点搜索法是基于局部点单次使用原则进行不同轮廓的区分:对于一个理想的轮廓点集,每一个点只需和距离自身最近的两个点连接,得到一个闭合的轮廓线。因此当一个点附近的所有点均已被使用过(进行过连接),则判断已经完成一次轮廓连接,并从下一个未使用过点开始连线,具体的,先确定每层切片中轮廓点云的最初起始点;再在设定半径范围内搜索与所述最初起始点距离最近且未与其它点连接的待连接点,进行连接,并将该待连接点作为新的起始点;然后在设定半径范围内搜索与所述新的起始点距离最近且未与其它点连接的待连接点,进行连接,依此直至设定半径范围内的所有点均与其它点连接,将所述新的起始点与所述最初起始点连接,形成一闭合的轮廓线;最后检测每层切片中轮廓点云是否存在未连接的点,若是,按照上述步骤重新确定最初起始点以形成另一闭合的轮廓线;若否,结束。
在一实施例中,通过以下步骤进行轮廓搜索:
P1、取X轴上值最小点ps作为起始点,将其使用情况记录为1,设plast和ps为同一点;
P2、以r为半径,搜索落入圆内的点,排除使用情况为1的点,找到与plast距离最近的点pnext并将其使用情况置为1,连接plast和pnext,并将pnext作为新的plast;
P3、判断是否完成一次轮廓搜索,若圆内所有点的使用情况均为1,则连接plast和ps,否则重复步骤P2;
P4、判断是否完成所有轮廓搜索,若还有未使用点,重复步骤P1,否则轮廓搜索结束。
其中,搜索半径r取值对搜索结果影响较小,只有当截面上投影点的质量较差时(即轮廓中两点之间的距离,大于该点到下一个轮廓起点的距离)才会出现误连的情况。在本申请使用的点云中r=kh,多次实验证明k取3~5时轮廓分割效果好(一般点云质量越好,k的取值越小),说明书附图5中(a)经过算法处理后效果如说明书附图6所示。得到的第i层切片的多轮廓点分布方式为:
式中,Pi为第i层中所有轮廓的集合;Pi j为第i层切片上第j个轮廓中点的集合,共有m个点;pa为轮廓中的一个顶点,{xa,ya,za}为该顶点坐标。
步骤S3和步骤S4中,第i层切片的截面面积为:
式中,|·|为行列式运算。最终的电子密度等值面点云体积V可以计算为:
式中,Vi是第i切块的体积。
需要说明书的是,在步骤S3中,每层切片的轮廓之间存在包含关系或相离关系,可以参见说明书附图7,为多边形1~4的位置关系。其中,存在包含关系的轮廓围成的面积包括正或负,所以在公式(7)中的Si已经通过了轮廓间包含关系的判断。具体的,首先用高斯面积公式计算各个轮廓的面积;然后使用PIP算法来判断轮廓间的位置状态,其中每个轮廓会和除自己以外的轮廓进行包含关系判断,若该轮廓被其他轮廓包含,则记录该轮廓被包含数加1,最后通过如下公式判断轮廓面积正负:
式中,count(Pi j)是轮廓Pi j被包含的次数。参见说明书附图7,轮廓2只被轮廓1包含,因此面积为负数,而轮廓3被包含2次,面积仍为正。
进一步的,对本申请提出的计算方法与现有技术算法进行比较。具体的,逆向建模法计算得到的体积准确可靠,可以作为本文点云体积的真值,作为改进后算法的检验依据。因此,本文使用Geomagic Wrap 2017软件进行点云体积真值和截面面积真值的计算。实验基于Matlab语言实现了本申请计算方法和现有技术中的方法,并对比分析使用场景和计算精度。
其中,Cat6点云数据信息如表一。使用两种算法时的轮廓分割的系数取值如表二。选取Cat6点云中具有代表性的六个位置进行展示,其结果如说明书附图8所示,其中,说明书附图8中(a)为通过现有技术双向最近搜索法得到的轮廓分割结果,(b)为通过现有技术PSR算法得到的轮廓分割结果,(c)为通过本申请INPS算法得到的轮廓分割结果;其面积及误差分析见表三。
表一
Method | Parameter k |
现有技术PSR | 2.5 |
本申请INPS | 3 |
表二
表三
进一步的,为验证本申请计算方法的有效性和鲁棒性,使用三维激光扫描公开数据(由斯坦福大学计算机图形学实验室公布)Stanford Bunny和Happy Buddha进行实验(由于原始点云密度较低,造成切片质量差,因此对原始点云进行上采样),参见说明书附图9,其中,说明书附图9中(a)为Bunny的实物和三维曲面模型,说明书附图9中(b)为Buddha的实物和曲面模型。与分子点云相比,这两组数据单一轮廓的边界形状更加复杂,但切片上的轮廓数量较少,两组点云的数据信息如表四,使用申请算法处理公开点云时中的参数,即分层厚度和轮廓分割系数取值如表五,处理后的结果如说明书附图10和说明书附图11所示,其中,(a)均为现有技术中双向最近搜索法得到的轮廓分割结果,(b)均为本申请INPS算法得到的轮廓分割结果。其中六个切片位置处面积的相对误差结果见表六和表七。
表四
Test Data | Parameter k | Projection thicknessd/mm |
Stanford Bunny | 5 | 0.0531928 |
Happy Buddha | 4 | 0.0167866 |
表五
表六
表七
通过说明书附图8、10和11,以及表三、六和七可以得出:
(1)适用性。本申请采用的INPS无论是针对MC算法处理后的点云还是针对激光扫描得到的点云,均表现出了良好的轮廓分割效果,截面面积的误差也大致相同。本申请采用的INPS和现有技术采用的PSR相比,在针对分子电势点云时,从说明书附图8中(a)展示的第一、二、五和六4幅图可知,本申请采用的INPS误连情况少于现有技术采用的PSR。在公开数据集上本申请采用的,INPS效果和现有技术采用的PSR效果相当。
(2)鲁棒性。在说明书附图8中,本申请采用的INPS对比于现有技术PSR算法,更加的稳定,其中,说明书附图8中(b)展示的第一、二、五和六4幅图中,现有技术PSR都出现了不同程度的误连。这是因为在这4幅图中,轮廓数量多,因而轮廓之间误连的线段也相应增多,计算得到的标准差偏大,从而导致一些距离较近的轮廓之间的误连线段不能够被剔除。而本申请采用的INPS优势在于,在轮廓中一点的搜索范围内,只要距离仍在该轮廓中一点的距离小于到其他轮廓任意点的距离,就不会出现误连。即使是在截面投影点质量较差的说明书附图10和说明书附图11,也几乎不存在会误连的情况。同时本申请采用的INPS对于一个轮廓搜索完成的判定条件,使得对于系数的选择也比较宽松。
进而,进行点云体积的计算,本申请采用的INPS与现有技术采用的PSR算法所得出的测量结果如表八所示。
表八
通过表八可以得出:
(1)准确性。两种算法针对三组点云的误差都在0.1%以内,并且本申请INPS算法的误差均略低于现有技术PSR。例如在说明书附图8中,现有技术PSR针对个别距离较近的轮廓没有纠正误连线段,导致该截面处轮廓的面积计算偏大。对比表八可知,针对Cat6点云体积计算,申请INPS算法得到的体积小于现有技术PSR算法得到的体积,这也和实际情况符合。
(2)高效性。从算法的流程分析,由于现有技术PSR是基于双向最近点搜索法的改进算法,在最开始需要使用双向最近点搜索法对截面中所有的点进行一次排序,而本申请INPS在同样进行排序的过程中已经将点分好类,这是因为本申请INPS算法在对点进行排序的同时,根据伴随该点排序得到的数据对点进行了分类。而现有技术PSR算法注重的是根据统计学数据对长度异常边进行拆分,再重组。因此本申请INPS算法在复杂度上低于现有技术PSR算法。并且实验证明本申请INPS精度略高于现有技术PSR算法。
可见,本申请提出的一种电子密度等值面点云体积的计算方法针对特定数据和公开数据集均能出色地完成多轮廓的分割,具有普适性和良好的抗干扰性,并且相比现有技术算法精度更高,且具有更强的鲁棒性和更小的算法复杂度。
基于同一发明构思,本申请实施例中还提供了一种电子密度等值面点云体积的计算装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述一种电子密度等值面点云体积的计算方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
如说明书附图12所示,本申请实施例还提供一种电子密度等值面点云体积的计算装置,包括:
分层模块1201,用于对获取的电子密度等值面点云进行分层,得到每层切片的轮廓点云;
分割模块1202,用于基于最近点搜索法针对得到的每层切片的轮廓点云进行不同轮廓的分割,得到至少一个数量的轮廓;
第一计算模块1203,用于对每层切片的所有轮廓围成的面积进行求和,得到该层切片的截面面积;其中,每个所述轮廓围成的面积包括正或负,且根据多边形内点算法判断所述轮廓围成的面积的正负;
第二计算模块1204,用于基于每层切片的截面面积计算所述电子密度等值面点云的体积。
本申请所述的一种电子密度等值面点云体积的计算装置,对获取的电子密度等值面点云进行分层,得到每层切片的轮廓点云;基于最近点搜索法针对得到的每层切片的轮廓点云进行不同轮廓的分割,得到至少一个数量的轮廓;对每层切片的所有轮廓围成的面积进行求和,得到该层切片的截面面积;基于每层切片的截面面积计算所述电子密度等值面点云的体积,利用最近点搜索法进行不同轮廓的分割,能够提高轮廓边界分割的正确率,进而降低点云体积测量的误差。
基于本发明的同一构思,如说明书附图13所示,本申请实施例提供的一种电子设备1300的结构,该电子设备1300包括:至少一个处理器1301,至少一个网络接口1304或者其他用户接口1303,存储器1305,至少一个通信总线1302。通信总线1302用于实现这些组件之间的连接通信。该电子设备1300可选的包含用户接口1303,包括显示器(例如,触摸屏、LCD、CRT、全息成像(Holographic)或者投影(Projector)等),键盘或者点击设备(例如,鼠标,轨迹球(trackball),触感板或者触摸屏等)。
存储器1305可以包括只读存储器和随机存取存储器,并向处理器1301提供指令和数据。存储器1305的一部分还可以包括非易失性随机存取存储器(NVRAM)。
在一些实施方式中,存储器1305存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:
操作系统13051,包含各种系统程序,用于实现各种基础业务以及处理基于硬件的任务;
应用程序模块13052,包含各种应用程序,例如桌面(launcher)、媒体播放器(Media Player)、浏览器(Browser)等,用于实现各种应用业务。
在本申请实施例中,通过调用存储器1305存储的程序或指令,处理器1301用于执行如一种电子密度等值面点云体积的计算方法的步骤。
本申请还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如一种电子密度等值面点云体积的计算方法中的步骤。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述一种电子密度等值面点云体积的计算方法,能够在提高轮廓边界分割的正确率,进而降低点云体积测量的误差。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围。都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种电子密度等值面点云体积的计算方法,其特征在于,所述方法包括以下步骤:
对获取的电子密度等值面点云进行分层,得到每层切片的轮廓点云;
基于最近点搜索法针对得到的每层切片的轮廓点云进行不同轮廓的分割,得到至少一个数量的轮廓;
对每层切片的所有轮廓围成的面积进行求和,得到该层切片的截面面积;其中,每个所述轮廓围成的面积包括正或负,且根据多边形内点算法判断所述轮廓围成的面积的正负;
基于每层切片的截面面积计算所述电子密度等值面点云的体积。
2.根据权利要求1所述一种电子密度等值面点云体积的计算方法,其特征在于,通过如下方式获取电子密度等值面点云:
对分子结构进行密度泛函数计算获取波函数结果,并根据所述波函数结果生成格点文件;其中,所述格点文件包括电子密度格点文件和静电势格点文件;
基于MC算法将所述格点文件转换为电子密度等值面点云。
3.根据权利要求2所述一种电子密度等值面点云体积的计算方法,其特征在于,所述基于最近点搜索法针对得到的每层切片的轮廓点云进行不同轮廓的分割,得到至少一个数量的轮廓,包括以下步骤:
确定每层切片中轮廓点云的最初起始点;
在设定半径范围内搜索与所述最初起始点距离最近且未与其它点连接的待连接点,进行连接,并将该待连接点作为新的起始点;
在设定半径范围内搜索与所述新的起始点距离最近且未与其它点连接的待连接点,进行连接,依此直至设定半径范围内的所有点均与其它点连接,将所述新的起始点与所述最初起始点连接,形成一闭合的轮廓线;
检测每层切片中轮廓点云是否存在未连接的点,若是,按照上述步骤重新确定最初起始点以形成另一闭合的轮廓线;若否,结束。
4.根据权利要求3所述一种电子密度等值面点云体积的计算方法,其特征在于,所述每层切片的轮廓之间为包含关系或相离关系,其中,存在包含关系的轮廓围成的面积包括正或负。
5.根据权利要求4所述一种电子密度等值面点云体积的计算方法,其特征在于,通过以下方式判断所述轮廓围成的面积的正负:
计算每层切片中各个轮廓围成的面积;
基于多边形内点判定算法判断每层切片中各个轮廓之间的位置状态,并记录每一轮廓的被包含数;
基于每层切片中各个轮廓围成的面积和每一轮廓的被包含数确定轮廓围成的面积的正负。
6.根据权利要求5所述一种电子密度等值面点云体积的计算方法,其特征在于,所述基于每层切片的截面面积计算所述电子密度等值面点云的体积,包括以下步骤:
基于所述电子密度等值面点云的分层厚度和每层切片的截面面积计算每层切片的体积;
对计算的每层切片的体积进行累和获取所述电子密度等值面点云的体积。
7.根据权利要求6所述一种电子密度等值面点云体积的计算方法,其特征在于,所述对获取的电子密度等值面点云进行分层,得到每层切片的轮廓点云,包括以下步骤:
对获取的电子密度等值面点云进行分层之后,基于MC算法进行预处理剔除掉非轮廓上的点,得到每层切片的轮廓点云。
8.一种电子密度等值面点云体积的计算装置,其特征在于,包括:
分层模块,用于对获取的电子密度等值面点云进行分层,得到每层切片的轮廓点云;
分割模块,用于基于最近点搜索法针对得到的每层切片的轮廓点云进行不同轮廓的分割,得到至少一个数量的轮廓;
第一计算模块,用于对每层切片的所有轮廓围成的面积进行求和,得到该层切片的截面面积;其中,每个所述轮廓围成的面积包括正或负,且根据多边形内点算法判断所述轮廓围成的面积的正负;
第二计算模块,用于基于每层切片的截面面积计算所述电子密度等值面点云的体积。
9.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至7任意一项所述的电子密度等值面点云体积的计算方法的步骤。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至7任意一项所述的电子密度等值面点云体积的计算方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210842207.8A CN115170642A (zh) | 2022-07-18 | 2022-07-18 | 一种电子密度等值面点云体积的计算方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210842207.8A CN115170642A (zh) | 2022-07-18 | 2022-07-18 | 一种电子密度等值面点云体积的计算方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115170642A true CN115170642A (zh) | 2022-10-11 |
Family
ID=83494557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210842207.8A Pending CN115170642A (zh) | 2022-07-18 | 2022-07-18 | 一种电子密度等值面点云体积的计算方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115170642A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116612825A (zh) * | 2023-07-19 | 2023-08-18 | 四川省产品质量监督检验检测院 | 分子静电势等值面点云的碰撞点检测和碰撞体积计算方法 |
-
2022
- 2022-07-18 CN CN202210842207.8A patent/CN115170642A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116612825A (zh) * | 2023-07-19 | 2023-08-18 | 四川省产品质量监督检验检测院 | 分子静电势等值面点云的碰撞点检测和碰撞体积计算方法 |
CN116612825B (zh) * | 2023-07-19 | 2023-10-13 | 四川省产品质量监督检验检测院 | 分子静电势等值面点云的碰撞点检测和碰撞体积计算方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105993034B (zh) | 用于增强表面重构的轮廓求全 | |
Yan et al. | Voxel cores: Efficient, robust, and provably good approximation of 3d medial axes | |
CN111581776B (zh) | 一种基于几何重建模型的等几何分析方法 | |
CN103839292B (zh) | 对等值面进行采样并生成高质量三角网格的方法 | |
CN107610061A (zh) | 一种基于二维投影的保边点云孔洞修补方法 | |
Petitjean et al. | Regular and non-regular point sets: Properties and reconstruction | |
US10846910B2 (en) | Method and apparatus for splitting three-dimensional volumes | |
EP4092558A1 (en) | Parameterization of cad model | |
CN113724401B (zh) | 一种三维模型切割方法、装置、计算机设备和存储介质 | |
Trinh et al. | Hole boundary detection of a surface of 3D point clouds | |
Zhang et al. | Resolving topology ambiguity for multiple-material domains | |
Khan et al. | ShipHullGAN: A generic parametric modeller for ship hull design using deep convolutional generative model | |
Tabib et al. | Learning-based hole detection in 3D point cloud towards hole filling | |
CN115170642A (zh) | 一种电子密度等值面点云体积的计算方法及装置 | |
Katsoulis et al. | A T-splines-based parametric modeller for computer-aided ship design | |
CN106355178B (zh) | 基于分层聚类和拓扑连接模型的海量点云自适应简化方法 | |
Nguyen et al. | Boundary extraction and simplification of a surface defined by a sparse 3D volume | |
El Sayed et al. | An efficient simplification method for point cloud based on salient regions detection | |
Leymarie et al. | Computation of the shock scaffold for unorganized point clouds in 3D | |
Khanban et al. | Computing Delaunay Triangulation with Imprecise Input Data. | |
Vančo et al. | Surface reconstruction from unorganized point data with quadrics | |
EP4099206A1 (en) | Processing a cad 3d model of a mechanical part | |
JP2001067495A (ja) | 三角形メッシュの生成方法、装置及び記録媒体 | |
US20170132174A1 (en) | Novel method for the fast derivation of delaunay tesselations | |
CN113362470A (zh) | 一种应用自适应密度估计子的点云泊松表面重建方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |