CN115496865A - 相似模型查找方法、装置及存储介质 - Google Patents
相似模型查找方法、装置及存储介质 Download PDFInfo
- Publication number
- CN115496865A CN115496865A CN202211443440.5A CN202211443440A CN115496865A CN 115496865 A CN115496865 A CN 115496865A CN 202211443440 A CN202211443440 A CN 202211443440A CN 115496865 A CN115496865 A CN 115496865A
- Authority
- CN
- China
- Prior art keywords
- model
- differential
- matched
- standard
- point
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
- G06F17/13—Differential equations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/50—Extraction of image or video features by performing operations within image blocks; by using histograms, e.g. histogram of oriented gradients [HoG]; by summing image-intensity values; Projection analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Computational Mathematics (AREA)
- Software Systems (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Operations Research (AREA)
- Algebra (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Processing Or Creating Images (AREA)
- Image Analysis (AREA)
Abstract
本申请涉及一种相似模型查找方法、装置及存储介质,应用在待匹配模型领域,其中方法包括:利用体微分算法对待匹配模型进行体微分处理,计算对应的第一几何中心点,利用体微分算法对标准模型进行体微分处理,计算对应的第二几何中心点,计算待匹配模型上体微分点与第一几何中心点之间的第一距离以及标准模型上体微分点与第二几何中心点之间的第二距离,对应构造第一统计特征和第二统计特征,根据第一统计特征生成对应的第一距离直方图,根据第二统计特征生成对应的第二距离直方图,计算第一距离直方图与第二距离直方图之间的体相似度,作为待匹配模型与标准模型之间的体相似度。本申请具有的技术效果是:提高了相似模型的查找速度。
Description
技术领域
本申请涉及三维模型的技术领域,尤其是涉及一种相似模型查找方法、装置及存储介质。
背景技术
零部件结构生产制作过程中,结构自动化制造工作站的成功应用极大地提升了结构焊接自动化程度,在制造工作站中会制作或应用大量周期重复结构。
在产品设计过程中需要对已有的零部件进行检索重用,工程师在根据需求设计完成模型后,可以在标准模型数据库中查找是否存在相似的模型,进而减少设计师重复申请相似的新物料、重复进行设计、审查、工艺、开模、采购等工作,导致企业成本增加和库存压力增大等问题。
在实现本申请的过程中,发明人发现该技术中至少存在如下问题:在二维图形或者三维图形中,图形会进行旋转,两个一模一样的图形因为旋转以后其坐标会完全不一致,此时计算模型之间的相似程度变得较为困难,进而导致查找相似模型的速度较慢。
发明内容
为了提高相似模型的查找速度,本申请提供的一种相似模型查找方法、装置及存储介质。
第一方面,本申请提供一种相似模型查找方法,采用如下的技术方案:所述方法包括:利用体微分算法对待匹配模型进行体微分处理,得到所述待匹配模型对应的体微分点;
根据所述待匹配模型对应的体微分点计算所述待匹配模型对应的第一几何中心点;
获取标准模型,并利用体微分算法对标准模型进行体微分处理,得到所述标准模型对应的体微分点;
根据所述标准模型对应的体微分点计算所述标准模型对应的第二几何中心点;
计算所述待匹配模型上所有体微分点与所述第一几何中心点之间的第一距离以及所述标准模型上所有体微分点与所述第二几何中心点之间的第二距离;
将所述第一距离以及所述第二距离分别分布到预设的同心球模型中的不同区间,对应构造第一统计特征和第二统计特征;
根据所述第一统计特征生成所述待匹配模型对应的第一距离直方图,根据所述第二统计特征生成所述标准模型对应的第二距离直方图;
计算所述第一距离直方图与所述第二距离直方图之间的体相似度,并将所述相似度作为所述待匹配模型与所述标准模型之间的体相似度。
通过上述技术方案,相似模型查找系统将第一距离直方图与第二距离直方图之间的相似度值作为待匹配模型与标准模型之间的体相似度,减少了由于模型发生旋转,使得模型的坐标发生变化进而导致不易计算模型之间的相似度的情况。
在一个具体的可实施方案中,利用曲面三角化微分算法对三维模型进行处理,得到所述三维模型对应的若干第一面三角形;
将若干所述第一面三角形按照预设的微分精度进行微分,得到若干第一粗微分点;
根据所述第一粗微分点以及所述第一粗微分点对应的曲面方程,对所述第一粗微分点进行位置修正,得到第一细微分点;
根据第一细微分点对应的曲面方程计算所述第一细微分点在曲面上的第一外法向量;
根据所述第一细微分点、所述第一外法向量以及若干所述曲面,计算第一细微分点对应的第一厚度点;
连接所述第一细微分点与对应的第一厚度点,得到第一微分线段;
根据所述微分精度对所述第一微分线段进行微分;
所述利用体微分算法对标准模型进行体微分处理,具体包括:
利用曲面三角化微分算法对标准模型进行处理,得到所述标准模型对应的若干第二面三角形;
将若干所述第二面三角形按照预设的微分精度进行微分,得到若干第二粗微分点;
根据所述第二粗微分点以及所述第二粗微分点对应的曲面方程,对所述第二粗微分点进行位置修正,得到第二细微分点;
根据所述第二细微分点对应的曲面方程计算所述第二细微分点在曲面上的第二外法向量;
根据所述细微分点、所述第二外法向量以及若干所述曲面,计算第二细微分点对应的第二厚度点;
连接所述第二细微分点与对应的第二厚度点,得到第二微分线段;
根据所述微分精度对所述第二微分线段进行微分。
通过上述技术方案,相似模型查找系统通过首先将待匹配模型和标准模型进行面三角化处理,得到对应的面三角形,继而对面三角形进行微分处理,得到面三角形对应的粗微分点,再对粗微分点进行位置修正,得到对应的细微分点,根据细微分点求得微分线段,然后相似模型查找系统根据预设的微分精度对微分线段进行微分,最终得到了待匹配模型以及标准模型对应的体微分点。
在一个具体的可实施方案中,获取所述待匹配模型对应的第一模型数据,所述第一模型数据至少包括待匹配模型对应的长度值、宽度值以及高度值;
根据获取到的所述第一模型数据构造第一包围空间,所述第一包围空间对应的长度值、宽度值以及高度值分别大于所述待匹配模型对应的第一模型数据;
根据预设的分割精度对所述第一包围空间进行分割,得到所述第一包围空间对应的第一空间格,所述第一空间格的状态包括已占用以及未占用,所述第一空间格的初始状态均为未占用;
遍历所述待匹配模型对应的所有细微分点,获取对应的三维坐标数据;
将所述待匹配模型对应细微分点的三维坐标数据依次与若干所述第一空间格对应的三维坐标数据进行对比;
若所述待匹配模型对应的所有细微分点的三维坐标数据与第一空间格对应的三维坐标数据一致,则将所述空间格的状态修改为已占用;
查询状态为已占用的第一空间格,并计算对应的第一中心点;
计算所述第一中心点对应的实际三维坐标,并将所述实际三维坐标对应的点设为待匹配模型对应的体微分点;
在所述得到所述标准模型对应的体微分点之后,还包括:
获取所述标准模型对应的第二模型数据,所述第二模型数据至少包括标准模型对应的长度值、宽度值以及高度值;
根据获取到的所述第二模型数据构造第二包围空间,所述第二包围空间对应的长度值、宽度值以及高度值分别大于所述标准模型对应的第二模型数据;
根据预设的分割精度对所述第二包围空间进行分割,得到所述第二包围空间对应的第二空间格,所述第二空间格的状态包括已占用以及未占用,所述第二空间格的初始状态均为未占用;
遍历所述标准模型对应的所有细微分点,获取对应的三维坐标数据;
将所述标准模型对应细微分点的三维坐标数据依次与若干所述第二空间格对应的三维坐标数据进行对比;
若所述标准模型对应的所有细微分点的三维坐标数据与第二空间格对应的三维坐标数据一致,则将所述空间格的状态修改为已占用;
查询状态为已占用的第二空间格,并计算对应的第二中心点;
计算所述第二中心点对应的实际三维坐标,并将所述实际三维坐标对应的点设为标准模型对应的体微分点。
通过上述技术方案,相似模型查找系统在得到三维模型对应的若干体微分点之后,对得到的体微分点进行体微分点排重,有助于减少体微分点中出现较多重复或是距离过近的体微分点的情况,进而减少相似模型查找系统的无效运算量,提高相似模型查找系统的运行速度。
在一个具体的可实施方案中,计算所述待匹配模型中的所有微分点与所述第一几何中心点之间的第一向量,所述第一向量对应的起始点为所述第一几何中心点;
将若干所述第一向量进行相加,得到第一模型向量;
若所述第一模型向量为零向量,则将所述待匹配模型判定为中心对称模型;
从所述中心对称数据库中的获取标准模型。
通过上述技术方案,相似模型查找系统在计算待匹配模型与标准模型之间的体相似度前,首先会判断待匹配模型是否为中心对称模型,若待匹配模型为中心对称模型,则相似模型查找系统会之间在中心对称标准模型数据库中查找与待匹配模型相似的标准模型,有助于减少模型之间的匹配次数,进而提高了查找与待匹配模型相似的标准模型的速度。
在一个具体的可实施方案中,若所述待匹配模型不为中心对称模型,则将所述体相似度与预设的第一标准值进行对比;
筛选出达到所述第一标准值的所述体相似度对应的第一标准模型;
判断所述待匹配模型以及所述第一标准模型是否为轴对称模型;
若所述待匹配模型与所述第一标准模型均为轴对称模型;
则判定所述待匹配模型与所述第一标准模型互为镜像模型;
将所述第一标准模型删除;
若所述待匹配模型与所述第一标准模型不为轴对称模型;
根据所述待匹配模型对应的微分点构建第一旋转直方图;
根据所述第一标准模型对应的微分点构建第二旋转直方图;
计算所述第一旋转直方图与所述第二旋转直方图之间的旋转相似度;
若所述旋转相似度未达到第一标准值,则判定所述待匹配模型与所述第一标准模型互为镜像模型;
将所述第一标准模型删除。
通过上述技术方案,相似模型查找系统会将待匹配模型与标准模型之间的体相似度与第一标准值进行对比,筛选出与待匹配模型之间的体相似度达到预设的第一标准值的标准模型,将筛选出来的标准模型记为第一标准模型,并查找第一标准模型中与待匹配模型互为镜像模型,将与待匹配模型互为镜像模型的第一标准模型删除,有助于减少查找到的第一标准模型中存在镜像模型的可能。
在一个具体的可实施方案中,按照预设的角度微分精度对所述待匹配模型所在第一球面坐标系进行分割,得到若干的第一微分方向;
根据待匹配模型的体微分点计算每个所述第一微分方向对应的第一转动惯量;
根据计算得到的所述第一转动惯量求解第一姿态坐标系;
计算所述第一球面坐标系与所述第一姿态坐标系之间的第一转置矩阵;
根据所述第一转置矩阵以及待匹配模型对应的体微分点,得到姿态调整后的待匹配模型;
按照预设的角度微分精度对所述第一标准模型所在第二球面坐标系进行分割,得到若干的二微分方向;
根据第一标准模型的体微分点计算每个所述第二微分方向对应的第二转动惯量;
根据计算得到的所述第二转动惯量求解第二姿态坐标系;
计算所述第二球面坐标系与所述第二姿态坐标系之间的第二转置矩阵;
根据所述第二转置矩阵以及第一标准模型对应的体微分点,得到姿态调整后的第一标准模型。
通过上述技术方案,相似模型查找系统在查找到与待匹配模型之间的体相似度达到第一标准值的第一标准模型后,会分别将待匹配模型与第一标准模型调整至合适的姿态,以便于工作人员可以从一个统一的观看角度观察待匹配模型和第一标准模型。
在一个具体的可实施方案中,若所述体相似值均未达到所述第一标准值,则将所述体相似值与预设的第二标准值进行对比;
筛选出达到所述第二标准值的所述体相似度对应的第二标准模型;
根据待匹配模型上的体微分点构建对应的第一数组;
根据第二标准模型上的体微分点构建对应的第二数组;
计算所述第一数组与所述第二数组的差值,得到差值数组;
根据预设的卷积核对所述差值数组进行卷积;
对卷积后的差值数组进行曲面拟合,得到拟合后的曲面。
通过上述技术方案,在标准模型数据库中不存在与待匹配模型之间的体相似度达到预设的第一标准值的情况下,相似模型查找系统会筛选出与待匹配模型之间的体相似度达到第二标准值的标准模型,并设置为第二标准模型,继而相似模型查找系统会对待匹配模型与第二标准模型之间的差异进行标记,以便于工作人员能够较为简单快捷的了解待匹配模型与第二标准模型的不同之处。
在一个具体的可实施方案中,获取待匹配曲面;
利用面微分算法对所述待匹配曲面进行面微分处理,得到所述待匹配曲面对应的面微分点;
根据所述待匹配曲面对应的面微分点计算所述待匹配曲面对应的第三几何中心点;
获取标准曲面;
利用面微分算法对所述标准曲面进行面微分处理,得到所述标准曲面对应的面微分点;
根据所述标准曲面对应的面微分点计算所述标准曲面对应的第四几何中心点;
计算所述待匹配曲面上所有面微分点与所述第三几何中心点之间的第三距离以及所述标准曲面上所有面微分点与所述第四几何中心点之间的第四距离;
将所述第三距离以及所述第四距离分别分布到预设的同心球模型中的不同区间,对应构造第三统计特征和第三统计特征;
根据所述第三统计特征生成所述待匹配模型对应的第三距离直方图,根据所述第四统计特征生成所述标准模型对应的第四距离直方图;
计算所述第三距离直方图与所述第三距离直方图之间的相似度,并将所述相似度作为所述待匹配曲面与所述标准曲面之间的面相似度;
根据面相似度的数值对所述标准曲面进行排序。
通过上述技术方案,减少了由于模型的某一个面发生旋转,使得该面对应的坐标发生变化进而导致不易计算模型之间的相似度的情况。
第二方面,本申请提供一种相似模型查找装置,采用如下技术方案:所述装置包括:
第一体微分处理模块,用于利用体微分算法对待匹配模型进行体微分处理,得到所述待匹配模型对应的体微分点;
第一几何中心模块,用于根据所述待匹配模型对应的体微分点计算所述待匹配模型对应的第一几何中心点;
第二体微分处理模块,用于获取标准模型,并利用体微分算法对标准模型进行体微分处理,得到所述标准模型对应的体微分点;
第二几何中心模块,用于根据所述标准模型对应的体微分点计算所述标准模型对应的第二几何中心点;
距离计算模块,用于计算所述待匹配模型上所有体微分点与所述第一几何中心点之间的第一距离以及所述标准模型上所有体微分点与所述第二几何中心点之间的第二距离;
统计特征获取模块,用于将所述第一距离以及所述第二距离分别分布到预设的同心球模型中的不同区间,对应构造第一统计特征和第二统计特征;
距离直方图获取模块,用于根据所述第一统计特征生成所述待匹配模型对应的第一距离直方图,根据所述第二统计特征生成所述标准模型对应的第二距离直方图;
体相似度获取模块,用于计算所述第一距离直方图与所述第二距离直方图之间的体相似度,并将所述相似度作为所述待匹配模型与所述标准模型之间的体相似度。
第三方面,本申请提供一种计算机可读存储介质,采用如下技术方案:存储有能够被处理器加载并执行上述任一种相似模型查找方法的计算机程序。
综上所述,本申请包括以下至少一种有益技术效果:
1.相似模型查找系统将第一距离直方图与第二距离直方图之间的相似度值作为待匹配模型与标准模型之间的体相似度,减少了由于模型发生旋转,使得模型的坐标发生变化进而导致不易计算模型之间的相似度的情况;
2.相似模型查找系统在查找到与待匹配模型之间的体相似度达到第一标准值的第一标准模型后,会分别将待匹配模型与第一标准模型调整至合适的姿态,以便于工作人员可以从一个统一的观看角度观察待匹配模型和第一标准模型。
附图说明
图1是本申请实施例中相似模型查找方法的流程图。
图2是本申请实施例中相似模型查找装置的结构框图。
附图标记:301、第一体微分处理模块;302、第一几何中心模块;303、第二体微分处理模块;304、第二几何中心模块;305、距离计算模块;306、统计特征获取模块;307、距离直方图获取模块;308、体相似度获取模块。
具体实施方式
以下结合附图1-2对本申请作进一步详细说明。
本申请实施例公开一种相似模型查找方法。该方法应用于相似模型查找系统。
如图1所示,该方法包括以下步骤:
S10,利用体微分算法对待匹配模型进行体微分处理。
具体来说,相似模型查找系统在利用体微分算法对待匹配模型进行体微分处理之前,相似模型查找系统首先会获取待匹配模型,相似模型查找系统获取待匹配模型的方式可以为工作人员将待匹配模型上传至相似模型查找系统,也可以为相似模型查找系统中预先设置有待匹配模型数据库,待匹配模型数据库中存储有若干需要查找相似模型的待匹配模型,相似模型查找系统在接收到启动指令后,会自发的从待匹配模型数据库中获取待匹配模型。
相似模型查找系统在获取到待匹配模型之后,对待匹配模型进行体微分处理的具体步骤为:利用曲面三角化微分算法对三维模型进行处理,将三维模型的曲面近似等价为第一面三角形,进而得到三维模型对应的若干第一面三角形;继而相似模型查找系统会根据预设的微分精度对得到的若干第一面三角形进行面微分处理,得到若干第一粗微分点;具体来说,相似模型查找系统在第一面三角形所在平面范围内,按照预先设置的微分精度作若干条平行于三维模型所在空间坐标系X轴的直线,上述若干直线会与第一面三角形相交,产生若干第一交点,继而相似模型查找系统会计算每一条直线与第一面三角形之间产生的第一交点的个数,判断每条直线对应的第一交点的个数是否为2的倍数,将与第一面三角形之间的第一交点的个数不为2的倍数的直线删除,保留将与第一面三角形之间的第一交点的个数为2的倍数的直线,值得一提的是,如果交点为内部线段的端点,则判断交点两侧的线段是否位于交线的不同侧,若交点两侧的线段位于交线的不同侧,则保留该交点;若交点两侧的线段位于交线的同侧,则删除该交点,其中交线为第一面三角形中与交点所在直线相交的线段。
接下来,相似模型查找系统以一条直线为单位,对直线上的第一交点进行排序,得到位于直线上各个第一交点对应的序号值,遍历直线上的所有第一交点,将序号值为奇数的第一交点设为起点,将序号值为偶数的第一交点设为终点,位于起点以及相邻终点之间的部分直线即为第一面三角形的内部线段,需要说明的是,在位于内部线段两端的起点与终点中,终点对应的序号值大于起点对应的序号值,然后相似模型查找系统会按照预设的微分精度对得到的内部线段进行分割,将内部线段分割成第一粗微分点;其中,为了使得第一粗微分点能够均为分布在第一面三角形上,本实施例中,微分精度与微分精度保持一致。
由于第一粗微分点在位于第一面三角形上,而第一面三角形是对三维模型的曲面进行微分得到的,第一面三角形与三维模型的曲面之间存在一定误差,存在第一粗微分点并不是真正位于曲面上的情况,因此相似模型查找系统在获取到第一粗微分点后,会根据第一粗微分点以及第一粗微分点对应的曲面方程,对第一粗微分点进行位置修正,得到第一细微分点;其中,第一细微分点即为经过位置修正后的第一粗微分点。
具体来说,相似模型查找系统首先会通过将第一粗微分点对应的坐标值代入到对应的曲面方程中,判断第一粗微分点是否位于曲面上,若第一粗微分点的坐标值满足该第一粗微分点对应的曲面方程,则表示该第一粗微分点位于对应的曲面上,那么相似模型查找系统会直接将该第一粗微分点设为第一细微分点;若第一粗微分点的坐标值无法满足对应的曲面方程,则表示该第一粗微分点不位于对应的曲面上,那么相似模型查找系统会计算第一粗微分点在对应曲面上的投影点,并将该投影点设为第一细微分点,相似模型查找系统通过将第一粗微分点进行位置修正的方式,使得第一细微分点能够尽可能的位于曲面上,进而有助于降低相似模型查找系统后续的计算误差。
相似模型查找系统在得到第一细微分点之后会根据曲面方程计算第一细微分点在曲面上的第一外法向量;需要说明的是,本实施例中,如果曲面较为复杂,例如曲面为贝塞尔曲面、样条曲面,则相似模型查找系统会使用曲面对应的第一面三角形的第一外法向量代替曲面的第一外法向量,进而有助于降低相似模型查找系统的计算时间,提高相似模型查找系统的响应速度;然后相似模型查找系统会根据第一细微分点、第一外法向量以及若干曲面,计算第一细微分点对应的厚度点。
具体来说,相似模型查找系统首先会将位于曲面上的第一细微分点设为起始点,反向延伸第一细微分点对应的第一外法向量,也即为以第一细微分点作为起始点,沿着第一细微分点对应的第一外法向量的反方向作射线;射线在延伸的过程中,会与三维模型上的其他曲面相交,产生的交点即为第二交点,其中,第二交点为位于曲面上的实体点;然后,相似模型查找系统会根据第二交点对应的曲面方程计算第二交点在曲面上对应的第一外法向量,并计算第一交点对应的第一外法向量与第二交点对应的第一外法向量之间的夹角度数;由于射线在延伸的过程中,可能会与三维模曲面之间产生若干第二交点,因此第一交点对应的第一外法向量与第二交点对应的第一外法向量之间的夹角度数同样存在多个数值;此时,相似模型查找系统会将计算得到的若干夹角度数与预设的角度范围进行对比,筛选出位于预设角度范围内的夹角度数对应的第二交点,然后判断筛选出的第二交点是否位于起始点相对于第一交点对应的第一外法向量的反方向,将满足上述条件的第二交点设置第一细微分点对应的厚度点;需要说明的是,本实施例中,预设的角度范围为(90°,180°],并且相似模型查找系统在得到第一细微分点对应的厚度点后,还会对厚度点进行位置修正,确保厚度点位于对应的曲面上。
相似模型查找系统在找到第一细微分点对应的厚度点之后,会连接第一细微分点以及对应的厚度点,得到微分线段,再根据预设的微分精度对微分线段进行微分,得到位于微分线段上的微分点,位于微分线段上的微分点以及第一细微分点即为三维模型对应的体微分点。
考虑到获取到的细微分点中可能存在许多重复或是相互之间距离很近的细微分点,会无形中增加相似模型查找系统计算体相似度时的计算量,因此相似模型查找系统会对细微分点进行点排重操作,由于相似模型查找系统对待匹配模型与标准模型的点排重操作是相同的,因此,这里以待匹配模型为例,具体来说,相似模型查找系统首先获取待匹配模型对应的第一模型数据,其中第一模型数据至少包括待匹配模型对应的长度值、宽度值以及高度值,再根据获取到的第一模型数据构造第一包围空间,需要说明的是,构造的第一包围空间的长度值、宽度值以及高度值需要分别大于待匹配模型对应的长度值、宽度值以及高度值,继而相似模型查找系统将待匹配模型对应的坐标系与第一包围空间对应的坐标系进行校对,使得待匹配模型对应的坐标系与第一包围空间对应的坐标系保持一致,即为待匹配模型对应的坐标系的原点和坐标轴分别与第一包围空间对应的坐标系的原点和坐标轴保持一致,具体来说,相似模型查找系统会根据待匹配模型所在的坐标系原点坐标与第一包围空间对应的坐标系原点坐标构建坐标变化矩阵,将待匹配模型上的体微分点乘以坐标变换矩阵,得到位置变换后的体微分点,此时待匹配模型对应的坐标系与第一包围空间对应的坐标系保持一致。
在待匹配模型对应的坐标系与第一包围空间对应的坐标系校对完成后,相似模型查找系统根据预设的分割精度对第一包围空间进行分割,使得第一包围空间被分割为若干第一空间格;其中,第一空间格的状态包括已占用以及未占用,需要说明的是,第一空间格的初始状态均为未占用;接下来,相似模型查找系统遍历待匹配模型中所有细微分点,获取每个细微分点对应的三维坐标数据,将细微分点的三维坐标数据依次与第一空间格对应的取值范围进行对比,若细微分点的三维坐标数据位于某个第一空间格的取值范围内,则将该第一空间格的状态修改为已占用;接下来,相似模型查找系统遍历所有第一空间格,查询状态为已占用的第一空间格,并计算对应的中心点,值得一提的是,由于一个第一空间格即为一个立方体,这里的中心点即为该立方体的中心点,也即为立方体外接圆的圆心。然后相似模型查找系统会将中心点的坐标值乘以坐标变换矩阵的逆矩阵,将三维数据转换为点坐标,求得待匹配模型的体微分点,实现了将原本的体微分点中的重复点或者之间距离很近的点剔除,进而有助于减少相似模型查找系统后面的计算量。
S20,计算待匹配模型对应的第一几何中心点。
具体来说,相似模型查找系统分别计算位于待匹配模型上所有体微分点坐标值对应的第一算术平均值,将第一算数平均值对应的坐标点设为待匹配模型的第一几何中心点。
S30,获取标准模型,并利用体微分算法对标准模型进行体微分处理。
具体来说,相似模型查找系统获取标准模型的方式为相似模型查找系统中预先设置有待标准模型数据库,标准模型数据库中存储有若干标准模型,相似模型查找系统在接收到启动指令后,会自发的从标准模型数据库中获取标准模型,用于与待匹配模型进行相似度匹配。相似模型查找系统对获取到的标准模型进行体微分处理的步骤与相似模型查找系统对待匹配模型进行体微分处理的步骤一致,这里就不再重复讲述。
S40,计算标准模型对应的第二几何中心点。
具体来说,相似模型查找系统分别计算位于标准模型上所有体微分点坐标值对应的第二算术平均值,将第二算数平均值对应的坐标点设为标准模型的第二几何中心点。
S50,计算待匹配模型对应的若干第一距离以及标准模型对应的若干第二距离。
具体来说,第一距离即为待匹配模型上所有体微分点与第一几何中心点之间的距离,第二距离即为标准模型上所有体微分点与第二几何中心点之间的距离。
S60,构造第一统计特征和第二统计特征;
具体来说,相似模型查找系统将第一距离以及第二距离分别分布到预设的同心球模型中的不同区间,对应构造出第一距离对应的第一统计特征以及第二距离对应的第二统计特征。
S70,生成第一距离直方图与第二距离直方图。
具体来说,相似模型查找系统根据第一统计特征生成待匹配模型对应的第一距离直方图,根据第二统计特征生成标准模型对应的第二距离直方图。
S80,计算待匹配模型与标准模型之间的体相似度。
具体来说,相似模型查找系统计算第一距离直方图与第二距离直方图之间的相似度,并将计算得到的相似度作为待匹配模型与标准模型之间的体相似度,根据体相似度的数值对标准模型进行排序,本实施例中,可以根据体相似度值的数值从大至小对标准模型进行排序,以便于工作人员能够快速的找到与待匹配模型最为相似的标准模型。由于当两个模型一模一样时,无论模型发生怎样的的旋转,但是模型上的各点与自身中心点的距离不会变化;一旦模型上某一区域或是位置发生了变化,那么模型对应的几何中心点也会偏移,模型上的某一区域或是位置发生的变化越大,模型对应的几何中心点的偏移距离也会随之变大,进而使得模型对应的距离直方图产生的差异越大。
当相似模型查找系统使用一个较小的微分精度对模型进行体微分时,会有若干体微分点参与距离计算,即便是模型上某一区域的轻微变化也能具体表现在对应的距离直方图上。因此将模型之间距离直方图之间的相似度作为模型之间的相似度,可以有效的降低由于模型之间姿态不一致而造成模型之间相似度计算较难的情况,进而提高了相似模型查找的速度。
在一个实施例中,为了提高查找相似模型的速度,获取标准模型,具体可以执行为以下步骤:
需要说明的是,标准模型存储在预设的标准模型数据库中,标准模型数据库中至少包括中心对称标准模型数据库;相似模型查找系统在得到待匹配模型对应的第一几何中心点之后,会计算述待匹配模型中的所有微分点与第一几何中心点之间的第一向量,其中第一向量的起始点为第一几何中心点,继而相似模型查找系统将得到的若干第一向量进行相加,得到第一模型向量;然后,相似模型查找系统将第一模型向量与零向量进行对比,如果第一模型向量为零向量,则将待匹配模型判定为中心对称模型;因为如果一个模型是中心对称模型,那么通过该模型的几何中心点向任意一个方向发射射线,则会与模型相交,并且位于模型上交点关于该模型的几何中心点成中心对称,因此将以模型的几何中心点为起始点,交点为终点的向量进行叠加,结果为零向量,当判定待匹配模型为中心对称模型时,相似模型查找系统会从中心对称数据库中的获取标准模型,值得一提的是,这里提及的中心对称数据库为通过对标准模型数据库中的为中心对称模型的标准模型添加标签实现的。在获取标准模型之前首先对待匹配模型是否为中心对称模型进行判断,有助于在待匹配模型为中心对称模型时,可以有效的减少相似度的计算次数,进而提高了查找与待匹配模型相似的标准模型的速度。
在一个实施例中,考虑到与待匹配模型的体相似度为一的标准模型可能与待匹配模型互为镜像模型,而镜像模型的模型特征与待匹配模型的模型特征相反,对于工作人员的意义不大的情况。在计算第一距离直方图与第二距离直方图之间的相似度,并将相似度作为待匹配模型与标准模型之间的体相似度之后,还可以执行以下步骤:
若待匹配模型不是中心对称模型,那么相似模型查找系统将计算得到的体相似度与预设的第一标准值进行对比,筛选出与待匹配模型之间的体相似度达到第一标准值的标准模型,将筛选出来的标准模型记为第一标准模型;本实施例中,第一标准值为1。继而判断待匹配模型以及第一标准模型是否为轴对称模型,具体来说,判断待匹配模型是否为轴对称模型的步骤为:相似模型查找系统将待匹配模型对应的第一模型向量设置为第一空间坐标系中的竖坐标轴,其中,第一空间坐标系也即为待匹配模型所在的空间坐标系,第一模型向量的起始点即为第一几何中心点,继而根据第一模型向量构建对应的第一投影平面,使得第一模型向量为第一投影平面的法向量,并将位于待匹配模型上的体微分点投影到第一投影平面上,计算第一投影点对应的第三几何中心点,第三几何中心点对应的坐标值为若干第一投影点的坐标值的算术平均值,接下来相似模型查找系统根据第一投影点与第三几何中心点计算第一投影点与第三几何中心点之间的第二向量;其中第二向量的起始点为第三几何中心点,终点为第一投影点,相似模型查找系统在得到若干第二向量之后,会将若干第二向量进行相加,得到第一投影向量,若第一投影向量为零向量,则表示待匹配模型关于第一模型向量所在直线对称。
相似模型查找系统判断第一标准模型是否为轴对称模型的步骤与相似模型查找系统判断待匹配模型是否为轴对称模型的步骤一致,这里就不再重复讲述,若第一标准模型也为轴对称模型,由于待匹配模型与第一标准模型是基于同样的轴线对称的模型,并且待匹配模型与第一标准模型之间的体相似度为百分之百,所以可以判定待匹配模型与第一标准模型互为镜像模型,则相似模型查找系统会将该第一标准模型删除。
若待匹配模型与第一标准模型不为轴对称模型,那么相似模型查找系统会将第一投影向量设置为第一空间坐标系的横坐标轴,再将第一空间坐标系的横坐标轴与竖坐标轴进行叉乘运算,得到第一空间坐标系对应的纵坐标轴,然后按照预设的角微分精度对第一空间坐标系中横坐标轴与纵坐标轴所形成的平面进行角微分,得到若干微分角,继而将待匹配模型上体微分点投影到第一空间坐标系中横坐标轴与纵坐标轴所形成的平面上,得到对应的投影点,并计算位于每个微分角中的投影点的数量,根据不同微分角中的投影点数量构造第一旋转直方图。
第一标准模型对应的第二旋转直方图构造过程与第一旋转直方图的构造过程一致,这里就不再重复叙述。相似模型查找系统在得到将第一旋转直方图与第二旋转直方图之后,会计算两者之间的相似度,也即为旋转相似度,若旋转相似度未达到百分之百,则表示待匹配模型与第一标注模型互为镜像模型,将该第一标准模型删除,使得相似模型查找系统查找到的第一标准模型均不与待匹配模型互为镜像模型。
在一个实施例中,考虑到三维模型是在三维空间中的,在一些模型的展示中,需要找到一个模型的角度将模型变化为二维图像进行展示,从哪个角度对模型进行观看直接影响人对模型形状的感知,两个一模一样的模型因为展示角度不同导致,给人的感官完全不一样,因此需要找到一个统一的观看角度,在将第一标准模型删除之后,还可以执行以下步骤:
相似模型查找系统按照预设的角度微分精度对待匹配模型所在第一球面坐标系进行分割,得到若干的第一微分方向,并计算计算每个第一微分方向上的体微分点对应的转动惯量之和,将计算得到的转动惯量之和记为该第一微分方向对应的第一转动惯量,将若干第一微分方向之中最小第一转动惯量对应的第一微分方向设置为第一姿态坐标系对应的竖坐标轴,然后在剩余的第一微分方向中查找与第一姿态调整坐标系的竖坐标轴垂直的第一微分方向,并将查询到的第一微分方向中的最小第一转动惯量对应的第一微分方向设置为第一姿态坐标系对应的横坐标轴;然后相似模型查找系统将第一姿态坐标系对应的竖坐标轴与横坐标轴进行叉乘运算,得到第一姿态坐标系对应的纵坐标轴;继而计算第一球面坐标系与第一姿态坐标系之间的第一转置矩阵。
相似模型查找系统在求得第一转置矩阵之后,会根据将待匹配模型对应的体微分点依次与转置矩阵相乘,得到旋转后体微分点,若干旋转后的体微分点组成姿态调整后的待匹配模型,相似模型查找系统对第一标准模型的姿态调整与待匹配模型是否为轴的步骤一致,这里就不再重复讲述。相似模型查找系统在对待匹配模型以及与待匹配模型对应的第一标准模型进行姿态调整,以便于人们能够从一个统一的角度对待匹配模型以及第一标准模型进行观察。
在一个实施例中,考虑到标准模型数据库中的可能不存在与待匹配模型相似度达到百分之百的标准模型,但是存在与待匹配模型之间的相似度较高标准模型,此时工作人员需要知道标准模型中与待匹配模型之间的不同点,而单纯的依靠人的肉眼看很难找到所有不同点的情况,在将体相似度与预设的第一标准值进行对比之后,还可以执行以下步骤:
若标准模型数据库中的标准模型与待匹配模型之间的体相似度均未达到预设的第一标准值,那么相似模型查找系统会将体相似值与预设的第二标准值进行对比,筛选出与待匹配模型之间的体相似度达到预设的第二标准值的第二标准模型;
根据待匹配模型上的体微分点构建对应的第一数组;具体来说,第一数组与待匹配模型所在的空间格相互对应,即为第一数组中的每一个元素与一个空间格对应,当某个空间格中存在待匹配模型的体微分点,则将该空间格对应的元素数值设置为1,否则设置为0,按照同样的方式构建第二标准模型对应的第二数组;在第一数组与第二数组构建完成之后,相似模型查找系统会计算第一数组与第二数组之间的差值数组,差值数组中的数值可能为0、1或是-1,若差值为0,则表示待匹配模型与第二标准模型均没有的部分,差值为1表示待匹配模型中的存在而第二标准模型中没有的部分,差值为-1表示待匹配模型中的没有而第二标准模型中存在的部分。
相似模型查找系统将差值数组中的元素数值为1和-1的部分取出,并将其分为两个子数组,其中,子数组中除了个别元素的数值为1或-1,剩余的元素数值均为0,为了减少计算过程中可能会产生的误差,相似模型查找系统根据预设的卷积核对得到的两个子数组进行滤波,确认子数组的真实值;待滤波处理完成后,相似模型查找系统依次遍历两个子数组,由于相似模型查找系统对两个子数组的处理过程是一致的,因此,这里仅具体阐述一个子数组的处理过程,具体来说,相似模型查找系统从子数组中的第一个元素开始查询对应的元素数值,若该元素的数值为1,相似模型查找系统则继续查询与该元素相邻的元素数值,直至查询到的元素数值为0,相似模型查找系统通过子数组中的连接关系将子数组的元素分为多个组,每个组对应待匹配模型中与第二标准模型不同的一个差异区域,因此,工作人员可以较为清楚的知道模型中差异区域的个数。
接下来,相似模型查找系统通过坐标变换矩阵的逆矩阵将子数组中数值为1的元素转换为待匹配模型上的体微分点,需要说明的是,体微分点实际代表的是以这个点为中心,微分精度为长度的立方体,所以通过一个立方体的中心点和长度可以计算出立方体的6个面,然后相似模型查找系统再根据数组中元素的位置关系排除待匹配模型和第二标准模型中不需要显示的面,也即得到了待匹配模型与第二标准模型中的差异区域的外表面,并对外表面进行涂色处理,以便于工作人员观察。相似模型查找系统通过对子数组进行反向曲面拟合使得工作人员可以清晰的看见待匹配模型与第二标准模型之间的差异区域。
在一个实施例中,考虑到在某些情况下,工作人员需要知道一个模型中与某一个面最为相似的另一个面是哪个面,该方法还可以执行以下步骤:
相似模型查找系统首先获取待匹配曲面,具体来说,工作人员确定想要在第二标准模型中的寻找与待匹配模型中的某一曲面最为相似的曲面,则待匹配模型的曲面即为待匹配曲面,然后,工作人员将会将待匹配曲面发送至相似模型查找系统,然后,相似模型查找系统会利用面微分算法对获取到的待匹配曲面进行面微分处理,得到待匹配曲面对应的面微分点,具体步骤前文中已说明,这里不再具体阐述。
然后相似模型查找系统根据待匹配曲面对应的面微分点计算待匹配曲面对应的第三几何中心点;其中,第三几何中心点对应的二维坐标即为待匹配曲面中的面微分点坐标值的算术平均值,继而相似模型查找系统依次获取查找到的第二标准模型对应的标准曲面,其中,这里的标准曲面即为第二标准模型中的各个曲面,然后相似模型查找系统会利用面微分算法对标准曲面进行面微分处理,得到标准曲面对应的面微分点,并根据标准曲面对应的面微分点计算标准曲面对应的第四几何中心点,第四几何中心点对应的二维坐标即为标准曲面中的面微分点坐标值的算术平均值,接下来,相似模型查找系统计算待匹配曲面上所有面微分点与第三几何中心点之间的第三距离以及标准曲面上所有面微分点与第四几何中心点之间的第四距离,然后将第三距离以及第四距离分别分布到预设的同心球模型中的不同区间,对应构造第三统计特征和第三统计特征,最后相似模型查找系统根据得到的第三统计特征生成第三距离直方图以及第四距离直方图,计算第三距离直方图与第三距离直方图之间的相似度,并将计算得到的相似度作为待匹配曲面与标准曲面之间的面相似度,根据面相似度的数值对标准曲面进行排序。因此,工作人员能够直接查看第二标准模型中与待匹配曲面最为相似的标准曲面,以便于后续工作人员用标准曲面替换待匹配曲面。
图1为一个实施例中相似模型查找方法的流程示意图。应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行;除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行;并且图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
基于上述方法,本申请实施例还公开一种相似模型查找装置。
如图2所示,该装置包括以下模块:
第一体微分处理模块301,用于利用体微分算法对待匹配模型进行体微分处理,得到待匹配模型对应的体微分点;
第一几何中心模块302,用于根据待匹配模型对应的体微分点计算待匹配模型对应的第一几何中心点;
第二体微分处理模块303,用于获取标准模型,并利用体微分算法对标准模型进行体微分处理,得到标准模型对应的体微分点;
第二几何中心模块304,用于根据标准模型对应的体微分点计算标准模型对应的第二几何中心点;
距离计算模块305,用于计算待匹配模型上所有体微分点与第一几何中心点之间的第一距离以及标准模型上所有体微分点与第二几何中心点之间的第二距离;
统计特征获取模块306,用于将第一距离以及第二距离分别分布到预设的同心球模型中的不同区间,对应构造第一统计特征和第二统计特征;
距离直方图获取模块307,用于根据第一统计特征生成待匹配模型对应的第一距离直方图,根据第二统计特征生成标准模型对应的第二距离直方图;
体相似度获取模块308,用于计算第一距离直方图与第二距离直方图之间的体相似度,并将相似度作为待匹配模型与标准模型之间的体相似度。
在一个实施例中,第一体微分处理模块301,还用于利用曲面三角化微分算法对三维模型进行处理,得到三维模型对应的若干第一面三角形;
将若干第一面三角形按照预设的微分精度进行微分,得到若干第一粗微分点;
根据第一粗微分点以及第一粗微分点对应的曲面方程,对第一粗微分点进行位置修正,得到第一细微分点;
根据第一细微分点对应的曲面方程计算第一细微分点在曲面上的第一外法向量;
根据第一细微分点、第一外法向量以及若干曲面,计算第一细微分点对应的第一厚度点;
连接第一细微分点与对应的第一厚度点,得到第一微分线段;
根据微分精度对第一微分线段进行微分;
第二体微分处理模块303,还用于利用曲面三角化微分算法对标准模型进行处理,得到标准模型对应的若干第二面三角形;
将若干第二面三角形按照预设的微分精度进行微分,得到若干第二粗微分点;
根据第二粗微分点以及第二粗微分点对应的曲面方程,对第二粗微分点进行位置修正,得到第二细微分点;
根据第二细微分点对应的曲面方程计算第二细微分点在曲面上的第二外法向量;
根据细微分点、第二外法向量以及若干曲面,计算第二细微分点对应的第二厚度点;
连接第二细微分点与对应的第二厚度点,得到第二微分线段;
根据微分精度对第二微分线段进行微分。
在一个实施例中,第一体微分处理模块301,还用于获取待匹配模型对应的第一模型数据,第一模型数据至少包括待匹配模型对应的长度值、宽度值以及高度值;
根据获取到的第一模型数据构造第一包围空间,第一包围空间对应的长度值、宽度值以及高度值分别大于待匹配模型对应的第一模型数据;
根据预设的分割精度对第一包围空间进行分割,得到第一包围空间对应的第一空间格,第一空间格的状态包括已占用以及未占用,第一空间格的初始状态均为未占用;
遍历待匹配模型对应的所有细微分点,获取对应的三维坐标数据;
将待匹配模型对应细微分点的三维坐标数据依次与若干第一空间格对应的三维坐标数据进行对比;
若待匹配模型对应的所有细微分点的三维坐标数据与第一空间格对应的三维坐标数据一致,则将空间格的状态修改为已占用;
查询状态为已占用的第一空间格,并计算对应的第一中心点;
计算第一中心点对应的实际三维坐标,并将实际三维坐标对应的点设为待匹配模型对应的体微分点;
第二体微分处理模块303,还用于获取标准模型对应的第二模型数据,第二模型数据至少包括标准模型对应的长度值、宽度值以及高度值;
根据获取到的第二模型数据构造第二包围空间,第二包围空间对应的长度值、宽度值以及高度值分别大于标准模型对应的第二模型数据;
根据预设的分割精度对第二包围空间进行分割,得到第二包围空间对应的第二空间格,第二空间格的状态包括已占用以及未占用,第二空间格的初始状态均为未占用;
遍历标准模型对应的所有细微分点,获取对应的三维坐标数据;
将标准模型对应细微分点的三维坐标数据依次与若干第二空间格对应的三维坐标数据进行对比;
若标准模型对应的所有细微分点的三维坐标数据与第二空间格对应的三维坐标数据一致,则将空间格的状态修改为已占用;
查询状态为已占用的第二空间格,并计算对应的第二中心点;
计算第二中心点对应的实际三维坐标,并将实际三维坐标对应的点设为标准模型对应的体微分点。
在一个实施例中,第一几何中心模块302,还用于计算待匹配模型中的所有微分点与第一几何中心点之间的第一向量,第一向量对应的起始点为第一几何中心点;
将若干第一向量进行相加,得到第一模型向量;
若第一模型向量为零向量,则将待匹配模型判定为中心对称模型;
从中心对称数据库中的获取标准模型。
在一个实施例中,体相似度获取模块308,还用于若待匹配模型不为中心对称模型,则将体相似度与预设的第一标准值进行对比;
筛选出达到第一标准值的体相似度对应的第一标准模型;
判断待匹配模型以及第一标准模型是否为轴对称模型;
若待匹配模型与第一标准模型均为轴对称模型;
则判定待匹配模型与第一标准模型互为镜像模型;
将第一标准模型删除;
若待匹配模型与第一标准模型不为轴对称模型;
根据待匹配模型对应的微分点构建第一旋转直方图;
根据第一标准模型对应的微分点构建第二旋转直方图;
计算第一旋转直方图与第二旋转直方图之间的旋转相似度;
若旋转相似度未达到第一标准值,则判定待匹配模型与第一标准模型互为镜像模型;
将第一标准模型删除。
在一个实施例中,体相似度获取模块308,还用于按照预设的角度微分精度对待匹配模型所在第一球面坐标系进行分割,得到若干的第一微分方向;
根据待匹配模型的体微分点计算每个第一微分方向对应的第一转动惯量;
根据计算得到的第一转动惯量求解第一姿态坐标系;
计算第一球面坐标系与第一姿态坐标系之间的第一转置矩阵;
根据第一转置矩阵以及待匹配模型对应的体微分点,得到姿态调整后的待匹配模型;
按照预设的角度微分精度对第一标准模型所在第二球面坐标系进行分割,得到若干的二微分方向;
根据第一标准模型的体微分点计算每个第二微分方向对应的第二转动惯量;
根据计算得到的第二转动惯量求解第二姿态坐标系;
计算第二球面坐标系与第二姿态坐标系之间的第二转置矩阵;
根据第二转置矩阵以及第一标准模型对应的体微分点,得到姿态调整后的第一标准模型。
在一个实施例中,体相似度获取模块308,还用于若体相似值均未达到第一标准值,则将体相似值与预设的第二标准值进行对比;
筛选出达到第二标准值的体相似度对应的第二标准模型;
根据待匹配模型上的体微分点构建对应的第一数组;
根据第二标准模型上的体微分点构建对应的第二数组;
计算第一数组与第二数组的差值,得到差值数组;
根据预设的卷积核对差值数组进行卷积;
对卷积后的差值数组进行曲面拟合,得到拟合后的曲面。
在一个实施例中,体相似度获取模块308,还用于获取待匹配曲面;
利用面微分算法对待匹配曲面进行面微分处理,得到待匹配曲面对应的面微分点;
根据待匹配曲面对应的面微分点计算待匹配曲面对应的第三几何中心点;
获取标准曲面;
利用面微分算法对标准曲面进行面微分处理,得到标准曲面对应的面微分点;
根据标准曲面对应的面微分点计算标准曲面对应的第四几何中心点;
计算待匹配曲面上所有面微分点与第三几何中心点之间的第三距离以及标准曲面上所有面微分点与第四几何中心点之间的第四距离;
将第三距离以及第四距离分别分布到预设的同心球模型中的不同区间,对应构造第三统计特征和第三统计特征;
根据第三统计特征生成待匹配模型对应的第三距离直方图,根据第四统计特征生成标准模型对应的第四距离直方图;
计算第三距离直方图与第三距离直方图之间的相似度,并将相似度作为待匹配曲面与标准曲面之间的面相似度;
根据面相似度的数值对标准曲面进行排序。
本申请实施例还公开一种计算机设备。
具体来说,该计算机设备包括存储器和处理器,存储器上存储有能够被处理器加载并执行上述相似模型查找方法的计算机程序。
本申请实施例还公开一种计算机可读存储介质。
具体来说,该计算机可读存储介质,其存储有能够被处理器加载并执行如上述相似模型查找方法的计算机程序,该计算机可读存储介质例如包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(RandomAccessMemory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本具体实施例仅仅是对本发明的解释,其并不是对本发明的限制,本领域技术人员在阅读完本说明书后可以根据需要对本实施例做出没有创造性贡献的修改,但只要在本发明的权利要求范围内都受到专利法的保护。
Claims (10)
1.一种相似模型查找方法,其特征在于,所述方法包括:
利用体微分算法对待匹配模型进行体微分处理,得到所述待匹配模型对应的体微分点;
根据所述待匹配模型对应的体微分点计算所述待匹配模型对应的第一几何中心点;
获取标准模型,并利用体微分算法对标准模型进行体微分处理,得到所述标准模型对应的体微分点;
根据所述标准模型对应的体微分点计算所述标准模型对应的第二几何中心点;
计算所述待匹配模型上所有体微分点与所述第一几何中心点之间的第一距离以及所述标准模型上所有体微分点与所述第二几何中心点之间的第二距离;
将所述第一距离以及所述第二距离分别分布到预设的同心球模型中的不同区间,对应构造第一统计特征和第二统计特征;
根据所述第一统计特征生成所述待匹配模型对应的第一距离直方图,根据所述第二统计特征生成所述标准模型对应的第二距离直方图;
计算所述第一距离直方图与所述第二距离直方图之间的体相似度,并将所述相似度作为所述待匹配模型与所述标准模型之间的体相似度。
2.根据权利要求1所述的方法,其特征在于,所述利用体微分算法对待匹配模型进行体微分处理,具体包括:
利用曲面三角化微分算法对三维模型进行处理,得到所述三维模型对应的若干第一面三角形;
将若干所述第一面三角形按照预设的微分精度进行微分,得到若干第一粗微分点;
根据所述第一粗微分点以及所述第一粗微分点对应的曲面方程,对所述第一粗微分点进行位置修正,得到第一细微分点;
根据第一细微分点对应的曲面方程计算所述第一细微分点在曲面上的第一外法向量;
根据所述第一细微分点、所述第一外法向量以及若干所述曲面,计算第一细微分点对应的第一厚度点;
连接所述第一细微分点与对应的第一厚度点,得到第一微分线段;
根据所述微分精度对所述第一微分线段进行微分;
所述利用体微分算法对标准模型进行体微分处理,具体包括:
利用曲面三角化微分算法对标准模型进行处理,得到所述标准模型对应的若干第二面三角形;
将若干所述第二面三角形按照预设的微分精度进行微分,得到若干第二粗微分点;
根据所述第二粗微分点以及所述第二粗微分点对应的曲面方程,对所述第二粗微分点进行位置修正,得到第二细微分点;
根据所述第二细微分点对应的曲面方程计算所述第二细微分点在曲面上的第二外法向量;
根据所述细微分点、所述第二外法向量以及若干所述曲面,计算第二细微分点对应的第二厚度点;
连接所述第二细微分点与对应的第二厚度点,得到第二微分线段;
根据所述微分精度对所述第二微分线段进行微分。
3.根据权利要求1所述的方法,其特征在于,在所述得到所述待匹配模型对应的体微分点之后,还包括:
获取所述待匹配模型对应的第一模型数据,所述第一模型数据至少包括待匹配模型对应的长度值、宽度值以及高度值;
根据获取到的所述第一模型数据构造第一包围空间,所述第一包围空间对应的长度值、宽度值以及高度值分别大于所述待匹配模型对应的第一模型数据;
根据预设的分割精度对所述第一包围空间进行分割,得到所述第一包围空间对应的第一空间格,所述第一空间格的状态包括已占用以及未占用,所述第一空间格的初始状态均为未占用;
遍历所述待匹配模型对应的所有细微分点,获取对应的三维坐标数据;
将所述待匹配模型对应细微分点的三维坐标数据依次与若干所述第一空间格对应的三维坐标数据进行对比;
若所述待匹配模型对应的所有细微分点的三维坐标数据与第一空间格对应的三维坐标数据一致,则将所述空间格的状态修改为已占用;
查询状态为已占用的第一空间格,并计算对应的第一中心点;
计算所述第一中心点对应的实际三维坐标,并将所述实际三维坐标对应的点设为待匹配模型对应的体微分点;
在所述得到所述标准模型对应的体微分点之后,还包括:
获取所述标准模型对应的第二模型数据,所述第二模型数据至少包括标准模型对应的长度值、宽度值以及高度值;
根据获取到的所述第二模型数据构造第二包围空间,所述第二包围空间对应的长度值、宽度值以及高度值分别大于所述标准模型对应的第二模型数据;
根据预设的分割精度对所述第二包围空间进行分割,得到所述第二包围空间对应的第二空间格,所述第二空间格的状态包括已占用以及未占用,所述第二空间格的初始状态均为未占用;
遍历所述标准模型对应的所有细微分点,获取对应的三维坐标数据;
将所述标准模型对应细微分点的三维坐标数据依次与若干所述第二空间格对应的三维坐标数据进行对比;
若所述标准模型对应的所有细微分点的三维坐标数据与第二空间格对应的三维坐标数据一致,则将所述空间格的状态修改为已占用;
查询状态为已占用的第二空间格,并计算对应的第二中心点;
计算所述第二中心点对应的实际三维坐标,并将所述实际三维坐标对应的点设为标准模型对应的体微分点。
4.根据权利要求1所述的方法,其特征在于,所述标准模型存储在预设的标准模型数据库中,所述标准模型数据库中至少包括中心对称标准模型数据库,所述获取标准模型,具体包括:
计算所述待匹配模型中的所有微分点与所述第一几何中心点之间的第一向量,所述第一向量对应的起始点为所述第一几何中心点;
将若干所述第一向量进行相加,得到第一模型向量;
若所述第一模型向量为零向量,则将所述待匹配模型判定为中心对称模型;
从所述中心对称数据库中的获取标准模型。
5.根据权利要求1所述的方法,其特征在于,在所述计算所述第一距离直方图与所述第二距离直方图之间的相似度,并将所述相似度作为所述待匹配模型与所述标准模型之间的体相似度之后,还包括:
若所述待匹配模型不为中心对称模型,则将所述体相似度与预设的第一标准值进行对比;
筛选出达到所述第一标准值的所述体相似度对应的第一标准模型;
判断所述待匹配模型以及所述第一标准模型是否为轴对称模型;
若所述待匹配模型与所述第一标准模型均为轴对称模型;
则判定所述待匹配模型与所述第一标准模型互为镜像模型;
将所述第一标准模型删除;
若所述待匹配模型与所述第一标准模型不为轴对称模型;
根据所述待匹配模型对应的微分点构建第一旋转直方图;
根据所述第一标准模型对应的微分点构建第二旋转直方图;
计算所述第一旋转直方图与所述第二旋转直方图之间的旋转相似度;
若所述旋转相似度未达到第一标准值,则判定所述待匹配模型与所述第一标准模型互为镜像模型;
将所述第一标准模型删除。
6.根据权利要求5所述的方法,其特征在于,在所述将所述第一标准模型删除之后,还包括:
按照预设的角度微分精度对所述待匹配模型所在第一球面坐标系进行分割,得到若干的第一微分方向;
根据待匹配模型的体微分点计算每个所述第一微分方向对应的第一转动惯量;
根据计算得到的所述第一转动惯量求解第一姿态坐标系;
计算所述第一球面坐标系与所述第一姿态坐标系之间的第一转置矩阵;
根据所述第一转置矩阵以及待匹配模型对应的体微分点,得到姿态调整后的待匹配模型;
按照预设的角度微分精度对所述第一标准模型所在第二球面坐标系进行分割,得到若干的二微分方向;
根据第一标准模型的体微分点计算每个所述第二微分方向对应的第二转动惯量;
根据计算得到的所述第二转动惯量求解第二姿态坐标系;
计算所述第二球面坐标系与所述第二姿态坐标系之间的第二转置矩阵;
根据所述第二转置矩阵以及第一标准模型对应的体微分点,得到姿态调整后的第一标准模型。
7.根据权利要求5所述的方法,其特征在于,在所述将所述体相似度与预设的第一标准值进行对比之后,还包括:
若所述体相似值均未达到所述第一标准值,则将所述体相似值与预设的第二标准值进行对比;
筛选出达到所述第二标准值的所述体相似度对应的第二标准模型;
根据待匹配模型上的体微分点构建对应的第一数组;
根据第二标准模型上的体微分点构建对应的第二数组;
计算所述第一数组与所述第二数组的差值,得到差值数组;
根据预设的卷积核对所述差值数组进行卷积;
对卷积后的差值数组进行曲面拟合,得到拟合后的曲面。
8.根据权利要求7所述的方法,其特征在于,所述方法,还包括:
获取待匹配曲面;
利用面微分算法对所述待匹配曲面进行面微分处理,得到所述待匹配曲面对应的面微分点;
根据所述待匹配曲面对应的面微分点计算所述待匹配曲面对应的第三几何中心点;
获取标准曲面;
利用面微分算法对所述标准曲面进行面微分处理,得到所述标准曲面对应的面微分点;
根据所述标准曲面对应的面微分点计算所述标准曲面对应的第四几何中心点;
计算所述待匹配曲面上所有面微分点与所述第三几何中心点之间的第三距离以及所述标准曲面上所有面微分点与所述第四几何中心点之间的第四距离;
将所述第三距离以及所述第四距离分别分布到预设的同心球模型中的不同区间,对应构造第三统计特征和第三统计特征;
根据所述第三统计特征生成所述待匹配模型对应的第三距离直方图,根据所述第四统计特征生成所述标准模型对应的第四距离直方图;
计算所述第三距离直方图与所述第三距离直方图之间的相似度,并将所述相似度作为所述待匹配曲面与所述标准曲面之间的面相似度;
根据面相似度的数值对所述标准曲面进行排序。
9.一种相似模型查找装置,其特征在于,所述装置包括:
第一体微分处理模块(301),用于利用体微分算法对待匹配模型进行体微分处理,得到所述待匹配模型对应的体微分点;
第一几何中心模块(302),用于根据所述待匹配模型对应的体微分点计算所述待匹配模型对应的第一几何中心点;
第二体微分处理模块(303),用于获取标准模型,并利用体微分算法对标准模型进行体微分处理,得到所述标准模型对应的体微分点;
第二几何中心模块(304),用于根据所述标准模型对应的体微分点计算所述标准模型对应的第二几何中心点;
距离计算模块(305),用于计算所述待匹配模型上所有体微分点与所述第一几何中心点之间的第一距离以及所述标准模型上所有体微分点与所述第二几何中心点之间的第二距离;
统计特征获取模块(306),用于将所述第一距离以及所述第二距离分别分布到预设的同心球模型中的不同区间,对应构造第一统计特征和第二统计特征;
距离直方图获取模块(307),用于根据所述第一统计特征生成所述待匹配模型对应的第一距离直方图,根据所述第二统计特征生成所述标准模型对应的第二距离直方图;
体相似度获取模块(308),用于计算所述第一距离直方图与所述第二距离直方图之间的体相似度,并将所述相似度作为所述待匹配模型与所述标准模型之间的体相似度。
10.一种计算机可读存储介质,其特征在于,存储有能够被处理器加载并执行如权利要求1至8中任一种方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211443440.5A CN115496865B (zh) | 2022-11-18 | 2022-11-18 | 相似模型查找方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211443440.5A CN115496865B (zh) | 2022-11-18 | 2022-11-18 | 相似模型查找方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115496865A true CN115496865A (zh) | 2022-12-20 |
CN115496865B CN115496865B (zh) | 2023-03-14 |
Family
ID=85116182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211443440.5A Active CN115496865B (zh) | 2022-11-18 | 2022-11-18 | 相似模型查找方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115496865B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116226297A (zh) * | 2023-05-05 | 2023-06-06 | 深圳市唯特视科技有限公司 | 数据模型的可视化搜索方法、系统、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111582293A (zh) * | 2019-02-19 | 2020-08-25 | 曜科智能科技(上海)有限公司 | 平面几何一致性检测方法、计算机设备、及存储介质 |
CN111709981A (zh) * | 2020-06-22 | 2020-09-25 | 高小翎 | 特征线融合的激光点云与模拟图像的配准方法 |
CN113961738A (zh) * | 2021-10-18 | 2022-01-21 | 华中科技大学 | 一种多特征铸件三维模型检索方法及装置 |
-
2022
- 2022-11-18 CN CN202211443440.5A patent/CN115496865B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111582293A (zh) * | 2019-02-19 | 2020-08-25 | 曜科智能科技(上海)有限公司 | 平面几何一致性检测方法、计算机设备、及存储介质 |
CN111709981A (zh) * | 2020-06-22 | 2020-09-25 | 高小翎 | 特征线融合的激光点云与模拟图像的配准方法 |
CN113961738A (zh) * | 2021-10-18 | 2022-01-21 | 华中科技大学 | 一种多特征铸件三维模型检索方法及装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116226297A (zh) * | 2023-05-05 | 2023-06-06 | 深圳市唯特视科技有限公司 | 数据模型的可视化搜索方法、系统、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115496865B (zh) | 2023-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Schöps et al. | Surfelmeshing: Online surfel-based mesh reconstruction | |
Milroy et al. | G1 continuity of B-spline surface patches in reverse engineering | |
KR900003123B1 (ko) | 자유표면 평가방법 및 그의 nc 시스템 | |
EP1710720B1 (en) | Method of computer-aided design of a modeled object having several faces | |
US6392647B1 (en) | System and method for computer modeling of 3D objects or surfaces by mesh constructions having optimal quality characteristics and dynamic resolution capabilities | |
US6668082B1 (en) | Image processing apparatus | |
US20160232259A1 (en) | Apparatus and method for interactively extracting shapes from a point cloud | |
CN115496865B (zh) | 相似模型查找方法、装置及存储介质 | |
Ahmadabadian et al. | Clustering and selecting vantage images in a low-cost system for 3D reconstruction of texture-less objects | |
CN111123242B (zh) | 一种基于激光雷达和相机的联合标定方法及计算机可读存储介质 | |
CN108171793B (zh) | 一种探查层叠区域三角网格的方法 | |
CN115758938A (zh) | 面向粘性边界流场数值模拟的附面层网格生成方法 | |
US11783101B2 (en) | Creation of an exploded view of an assembly in CAD | |
CN108759668B (zh) | 一种震动环境中的跟踪式三维扫描方法及系统 | |
CN111599016B (zh) | 点云误差计算方法 | |
US9733071B2 (en) | Method of three-dimensional measurements by stereo-correlation using a parametric representation of the measured object | |
CN110967778B (zh) | 一种动态坐标系多面体剖分重力布格校正方法 | |
US8698800B2 (en) | Method and apparatus for non-shrinking mesh smoothing using local fitting | |
CN115272379B (zh) | 一种基于投影的三维网格模型外轮廓提取方法及系统 | |
CN115205354B (zh) | 基于ransac和icp点云配准的相控阵激光雷达成像方法 | |
JPH1196400A (ja) | 形状変換方法 | |
CN117807875B (zh) | 石英器件的三维数据逆向重建和尺寸测量系统及方法 | |
JP3792584B2 (ja) | 工具経路面計算方法、工具経路面計算プログラム及び工具経路面計算プログラムを記録した記録媒体 | |
Dietz | B-spline approximation with energy constraints | |
CN110428472B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |