本技术涉及计算机辅助设计,尤其涉及一种面向三维模型检索的对象相关性网络构建方法。
背景技术:
1、在现代工业企业中,cad模型的应用范围已经从产品结构表征的上游阶段,扩展到了工艺、制造,装配和维修的下游阶段。工业企业的长期设计活动积累了大量的cad模型,这些cad模型背后所包含的经验知识和设计智慧对新产品的开发具有重要的再利用价值。
2、相关性网络是基于事物之间的关联程度或相似性而构建的网络,基于相关性网络的表示方法能够提供一种有效的方式来组织,管理和利用大量信息。目前在工业领域,已有很多技术和方法从不同角度构建面向产品设计的对象相关性网络,能够为设计人员提供实用性较强的辅助功能,但也存在很多技术问题,例如:
3、首先,现有的很多对象相关性网络主要应用于工业领域,其中,大多数对象相关性网络的构建都局限于采用对自然语言的处理方式,而忽略了cad模型在几何层面的数据信息,未能充分利用到cad模型的几何特征,模型层次和通用结构等信息。
4、其次,现有针对cad模型构建的对象相关性网络,虽然能在一定程度上起到辅助完成cad模型检索的作用,但只能部分描述cad模型信息,以及cad模型之间的关联信息,无法充分考虑cad模型的文本信息、几何信息和拓扑信息,对cad模型所蕴含的信息利用率不足。因此,所构建的对象相关性网络中存在知识覆盖不完全,功能实现受限制等缺陷,在进行三维模型检索时所推荐的信息不能完全满足用户在设计优化,生产制造等不同应用场景下的多样化需求;同时,也没有考虑到当查询模型重复时,如何利用对象相关性网络中的相似关系将检索结果反馈给用户。
5、因此,有必要提出一种方案以改善上述相关技术方案中存在的一个或者多个问题。
6、需要说明的是,在上述背景技术部分公开的信息仅用于加强对本技术的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
技术实现思路
1、本技术实施例提供一种面向三维模型检索的对象相关性网络构建方法,该方法包括以下步骤:
2、构建三维模型数据库,所述三维模型数据库包括多个装配体模型和多个零件模型;
3、定义所述三维模型数据库中多种模型节点,以及所有所述装配体模型和所有所述零件模型之间的多种模型关系,并根据多种所述模型节点和多种所述模型关系,构建每种所述装配体模型的通用结构;
4、所有所述模型节点、所有所述模型关系,以及所有所述装配体模型的所述通用结构,共同组成对象相关性网络;
5、利用所述对象相关性网络,对多个输入模型进行检索,并将检索结果反馈给用户。
6、本技术的一示例性实施例中,所述构建三维模型数据库的步骤包括:分别提取每个所述零件模型的第一形状向量描述符,以及分别提取每个所述装配体模型的第二形状向量描述符和属性连接图描述符。
7、本技术的一示例性实施例中,提取所述第一形状向量描述符的步骤包括:
8、输入所有所述零件模型的三维模型数据;
9、在所有所述零件模型上分别以每两点为一组进行随机采样,得到多组采样组,每个所述零件模型对应一组所述采样组;
10、根据所有所述采样组在直方图中的分布,分别计算所述直方图中纵轴上每组所述采样组的高度值,以及所述直方图中横轴上每组所述采样组之间的距离值,并分别生成每个所述零件模型的所述第一形状向量描述符;
11、所述距离值的表达式为:
12、 (1)
13、其中,表示采样组之间的距离值,表示采样组之间的最大距离值,表示采样组之间的最小距离值,表示直方图的总列数;
14、所述高度值的表达式为:
15、 (2)
16、其中,表示直方图的第列的高度值,表示直方图的第列的频数,表示随机采样的次数,;
17、所述第一形状向量描述符的表达式为:
18、 (3)
19、其中,表示第个零件模型的第一形状向量描述符,表示直方图的第列的描述符。
20、本技术的一示例性实施例中,提取所述第二形状向量描述符的步骤包括:分别将每个所述装配体模型包含的多个所述零件模型的所述第一形状向量描述符的集合,作为所述装配体模型的所述第二形状向量描述符;
21、所述第二形状向量描述符的表达式为:
22、 (4)
23、其中,表示第个装配体模型的第二形状向量描述符,表示第个装配体模型中第个零件模型的第一形状向量描述符,;
24、所述属性连接图描述符的表达式为:
25、 (5)
26、其中,表示属性连接图描述符,表示第个装配体模型中所有零件模型的集合,表示第个装配体模型的所有模型关系的集合。
27、本技术的一示例性实施例中,所述定义所述三维模型数据库中多种模型节点的步骤包括:
28、将所述三维模型数据库中所有所述零件模型分别作为零件模型节点,并将所述三维模型数据库中所有所述装配体模型分别作为装配体模型节点;
29、分别分析任意两个所述零件模型节点之间的零件相似度;
30、所述零件相似度的表达式为:
31、 (6)
32、其中,表示零件模型节点和零件模型节点之间的零件相似度,表示零件模型节点的第一形状向量描述符和零件模型节点的第一形状向量描述符之间的欧氏距离,表示零件模型节点的第一形状向量描述符的坐标,表示零件模型节点的第一形状向量描述符的坐标;
33、分别建立任意两个所述装配体模型节点之间的二分图,利用kuhn-munkres算法分别从每个所述二分图中获取其中一个所述装配体模型节点中所有所述零件模型节点与另一个所述装配体模型节点中所有所述零件模型节点之间的最优匹配关系,并将所有所述最优匹配关系分别作为对应的两个所述装配体模型节点之间的装配体相似度;
34、根据所有所述零件相似度和所有所述装配体相似度,利用k-means算法分别对所有所述零件模型节点和所有所述装配体模型节点进行聚类处理,得到多个零件模型类别节点和多个装配体模型类别节点;
35、所述模型关系的种类包括:
36、相似关系:表示所有所述零件模型节点之间,以及所有所述装配体模型节点之间的形状相似度;
37、连接关系:表示所述装配体模型节点中所有所述零件模型节点之间的连接方式;
38、包含关系:表示所有所述装配体模型节点之间,以及所述装配体模型节点与所有所述零件模型节点之间的的涵盖关系;
39、类属关系:表示所有所述零件模型节点和所有所述装配体模型节点分别所属的类别。
40、本技术的一示例性实施例中,所述分别建立任意两个所述装配体模型节点之间的二分图,利用kuhn-munkres算法分别从每个所述二分图中获取其中一个所述装配体模型节点中所有所述零件模型节点与另一个所述装配体模型节点中所有所述零件模型节点之间的最优匹配关系,并将所有所述最优匹配关系分别作为对应的两个所述装配体模型节点之间的装配体相似度的步骤包括:
41、任意给定第一装配体模型节点和第二装配体模型节点,将所述第一装配体模型节点的所有所述属性连接图描述符的第一顶点分别作为所述二分图的一侧的第一节点,将所述第二装配体模型节点的所有所述属性连接图描述符的第二顶点分别作为所述二分图的另一侧的第二节点,将每个所述第一节点分别与所有所述第二节点进行连接;
42、其中,所述第一节点和所述第二节点之间的连接线代表两个所述零件模型节点之间的所述零件相似度;
43、利用所述kuhn-munkres算法分别求解每个所述二分图中最优匹配连接线的集合,使所有所述第一节点分别仅通过对应的所述最优匹配连接线与每个所述第二节点连接,并使所有所述第一节点和所有所述第二节点的相似权重之和最大;其中,所述最优匹配连接线即为任意两个所述零件模型节点之间的所述最优匹配关系;
44、利用所有所述最优匹配关系定义所述装配体相似度;
45、所述装配体相似度的表达式为:
46、 (7)
47、其中,表示装配体模型节点和装配体模型节点之间的装配体相似度,表示二分图中零件模型节点和零件模型节点的最优匹配连接线,表示零件模型节点和零件模型节点之间的零件相似度,表示装配体模型节点的属性连接图描述符中顶点的数量,表示装配体模型节点的属性连接图描述符中顶点的数量,表示最优匹配连接线的集合,。
48、本技术的一示例性实施例中,所述构建每种所述装配体模型的通用结构的步骤包括:
49、提取任意一种所述装配体模型节点中所有所述属性连接图描述符,并分别建立每个所述属性连接图描述符的字典序,利用g-span算法中深度优先搜索的最小编码分别对每个所述属性连接图描述符进行标记处理,并设置最小支持度阈值;
50、依次分别扫描和计算每个所述属性连接图描述符中所有所述最优匹配连接线的支持度、所有所述第一节点的支持度,以及所有所述第二节点的支持度,并按照频度顺序,剔除所述支持度小于所述最小支持度阈值的所有所述最优匹配连接线,所有所述第一节点和所有所述第二节点,将剩余的所有所述最优匹配连接线,所有所述第一节点和所有所述第二节点分别进行编号处理,构成初始子图;
51、从任意一条所述最优匹配连接线开始,对所述初始子图中的条所述最优匹配连接线依次进行最右路径扩展,每次增加一条所述最优匹配连接线,得到条所述最优匹配连接线分别对应的候选子图;
52、根据所述字典序分别判断所有所述候选子图中所述深度优先搜索的编码是否为所述最小编码,若为所述最小编码,则分别计算每个所述候选子图的所述支持度,并删除所述支持度小于所述最小支持度阈值的所有所述候选子图;
53、重复进行所述最右路径扩展和判断所述最小编码的步骤,直至不再生成新的所述候选子图;
54、当所有所述最优匹配连接线的所述最右路径扩展均已完成后,分别将所有所述最优匹配连接线删除,将删除所有所述最优匹配连接线后的所有所述候选子图组成候选子图集,并将所述候选子图集作为这种所述装配体模型的所述通用结构。
55、本技术的一示例性实施例中,所述对象相关性网络的表达式为:
56、 (8)
57、其中,表示对象相关性网络,表示对象相关性网络中所有模型节点的集合,,表示所有零件模型节点的集合,表示所有装配体模型节点的集合,表示所有零件模型类别节点的集合,表示所有装配体模型类别节点的集合,表示对象相关性网络中所有模型关系的集合,,表示相似关系的集合,表示连接关系的集合,表示包含关系的集合,表示类属关系的集合。
58、本技术的一示例性实施例中,所述利用所述对象相关性网络,对多个输入模型进行检索,并将检索结果反馈给用户的步骤包括:
59、利用所述对象相关性网络中的所述相似关系和所述类属关系,分别判断每个所述输入模型的模型类别,所述模型类别包括所述零件模型和所述装配体模型;
60、从所述三维模型数据库的所有所述模型类别中分别抽取多个模型样本,并分别计算每种所述模型类别中所有所述模型样本的样本相似度,并设置相似度阈值;
61、将所述样本相似度大于所述相似度阈值的所有所述模型样本,分别与所有所述输入模型进行比对,并分别计算出每个所述输入模型的模型相似度;
62、分别提取与所有所述输入模型的所述模型相似度为1的所有所述模型样本,并根据提取的所有所述模型样本在所述三维模型数据库中的所述相似关系,分别将提取的所有所述模型样本的所有相似样本进行相似度降序排列,完成对所有所述输入模型的检索;
63、完成所述检索后,根据实际需求,基于路径查询提取相应的检索结果,并将所述检索结果推荐给所述用户。
64、本技术的一示例性实施例中,所述完成所述检索后,根据实际需求,基于路径查询提取相应的检索结果,并将所述检索结果推荐给所述用户的步骤包括:
65、当判断所述输入模型为所述零件模型时,采用零件查询路径提取零件模型检索结果,并将所述零件模型的所有相似零件模型和所有同类零件模型推荐给所述用户;
66、所述零件查询路径的表达式为:
67、<mstyle displaystyle="true" mathcolor="#000000"><mrow><mo>{</mo><mrow><mrow><mo>(</mo><mrow><msub><mi>p</mi><mi>r</mi></msub><mi>,</mi><mi>sim</mi><mi>,</mi><msub><mi>p</mi><mi>s</mi></msub></mrow><mo>)</mo></mrow><mi>∪</mi><mrow><mo>[</mo><mrow><mrow><mo>(</mo><mrow><msub><mi>p</mi><mi>r</mi></msub><mi>,</mi><mi>bel</mi><mi>,</mi><msub><mi>pc</mi><mi>r</mi></msub></mrow><mo>)</mo></mrow><mi>→</mi><mrow><mo>(</mo><mrow><msub><mi>pc</mi><mi>r</mi></msub><mi>,</mi><mi>bel</mi><mi>,</mi><msub><mi>p</mi><mi>l</mi></msub></mrow><mo>)</mo></mrow></mrow><mo>]</mo></mrow></mrow><mo>}</mo></mrow><mi>−</mi><msub><mi>p</mi><mi>r</mi></msub></mstyle>(9)
68、其中,表示零件模型检索结果,表示相似关系,表示的相似零件模型,表示类属关系,表示所属的零件模型的类别,表示属于但不包含的零件模型,表示并集,表示符号左侧的结果执行符号右侧的操作,表示相对补集;
69、推荐给所述用户的所述零件模型检索结果对应的所述装配体模型的查询路径为,其中,表示包含零件模型检索结果的装配体模型,表示包含关系;
70、所述零件模型检索结果的第一高频参数的查询路径为:
71、,其中,表示模型属性,表示零件模型检索结果的第一高频参数,所述第一高频参数包括所述零件模型的特征、工艺,精度和材料;
72、当判断所述输入模型为所述装配体模型时,采用装配体查询路径提取装配体模型检索结果,并将所述装配体模型的所有相似装配体模型和所有同类装配体模型推荐给所述用户;
73、所述装配体查询路径的表达式为:
74、<mstyle displaystyle="true" mathcolor="#000000"><mrow><mo>{</mo><mrow><mrow><mo>(</mo><mrow><msub><mi>a</mi><mi>r</mi></msub><mi>,</mi><mi>sim</mi><mi>,</mi><msub><mi>a</mi><mi>s</mi></msub></mrow><mo>)</mo></mrow><mi>∪</mi><mrow><mo>[</mo><mrow><mrow><mo>(</mo><mrow><msub><mi>a</mi><mi>r</mi></msub><mi>,</mi><mi>bel</mi><mi>,</mi><msub><mi>ac</mi><mi>r</mi></msub></mrow><mo>)</mo></mrow><mi>→</mi><mrow><mo>(</mo><mrow><msub><mi>ac</mi><mi>r</mi></msub><mi>,</mi><mi>bel</mi><mi>,</mi><msub><mi>a</mi><mi>l</mi></msub></mrow><mo>)</mo></mrow></mrow><mo>]</mo></mrow></mrow><mo>}</mo></mrow><mi>−</mi><msub><mi>a</mi><mi>r</mi></msub></mstyle>(10)
75、其中,表示装配体模型检索结果,表示的相似装配体模型,表示所属的装配体模型的类别,表示属于但不包含的装配体模型;
76、所述装配体模型的所述通用结构的查询路径为:
77、,其中,表示装配体模型的通用结构;
78、所述装配体模型检索结果的第二高频参数的查询路径为:
79、,其中,表示装配体模型检索结果的第二高频参数;
80、所述装配体模型检索结果中高频使用的所述零件模型和所述零件模型的类别的查询路径为:,其中,表示组成的所有零件模型。
81、有益效果:
82、本技术提供一种面向三维模型检索的对象相关性网络构建方法,至少具有以下有益效果:
83、(1)本技术通过定义三维模型数据库中的多种模型节点和多种模型关系,从而能够更全面地覆盖三维cad模型的几何信息和文本信息;
84、(2)本技术在定义多种模型节点、多种模型关系和挖掘装配体模型的通用结构的基础上建立对象相关性网络,从而能够提供满足用户多种设计需求的相关模型资源和信息;
85、(3)同时,本技术通过将多个输入模型进行分类、抽样和检索,从而能够利用三维模型数据库中的历史信息来优化三维cad模型的检索效率。
1.一种面向三维模型检索的对象相关性网络构建方法,其特征在于,该方法包括以下步骤:
2.根据权利要求1所述面向三维模型检索的对象相关性网络构建方法,其特征在于,所述构建三维模型数据库的步骤包括:分别提取每个所述零件模型的第一形状向量描述符,以及分别提取每个所述装配体模型的第二形状向量描述符和属性连接图描述符。
3.根据权利要求2所述面向三维模型检索的对象相关性网络构建方法,其特征在于,提取所述第一形状向量描述符的步骤包括:
4.根据权利要求3所述面向三维模型检索的对象相关性网络构建方法,其特征在于,提取所述第二形状向量描述符的步骤包括:分别将每个所述装配体模型包含的多个所述零件模型的所述第一形状向量描述符的集合,作为所述装配体模型的所述第二形状向量描述符;
5.根据权利要求4所述面向三维模型检索的对象相关性网络构建方法,其特征在于,所述定义所述三维模型数据库中多种模型节点的步骤包括:
6.根据权利要求5所述面向三维模型检索的对象相关性网络构建方法,其特征在于,所述分别建立任意两个所述装配体模型节点之间的二分图,利用kuhn-munkres算法分别从每个所述二分图中获取其中一个所述装配体模型节点中所有所述零件模型节点与另一个所述装配体模型节点中所有所述零件模型节点之间的最优匹配关系,并将所有所述最优匹配关系分别作为对应的两个所述装配体模型节点之间的装配体相似度的步骤包括:
7.根据权利要求6所述面向三维模型检索的对象相关性网络构建方法,其特征在于,所述构建每种所述装配体模型的通用结构的步骤包括:
8.根据权利要求7所述面向三维模型检索的对象相关性网络构建方法,其特征在于,所述对象相关性网络的表达式为:
9.根据权利要求8所述面向三维模型检索的对象相关性网络构建方法,其特征在于,所述利用所述对象相关性网络,对多个输入模型进行检索,并将检索结果反馈给用户的步骤包括:
10.根据权利要求9所述面向三维模型检索的对象相关性网络构建方法,其特征在于,所述完成所述检索后,根据实际需求,基于路径查询提取相应的检索结果,并将所述检索结果推荐给所述用户的步骤包括: