CN111310254B - Cad图例的识别方法、装置、存储介质、电子设备 - Google Patents
Cad图例的识别方法、装置、存储介质、电子设备 Download PDFInfo
- Publication number
- CN111310254B CN111310254B CN202010160321.3A CN202010160321A CN111310254B CN 111310254 B CN111310254 B CN 111310254B CN 202010160321 A CN202010160321 A CN 202010160321A CN 111310254 B CN111310254 B CN 111310254B
- Authority
- CN
- China
- Prior art keywords
- primitive
- compared
- current
- primitives
- selection set
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 230000015654 memory Effects 0.000 claims description 39
- 238000003780 insertion Methods 0.000 claims description 9
- 230000037431 insertion Effects 0.000 claims description 9
- 238000013507 mapping Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 4
- 238000010276 construction Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 241000208199 Buxus sempervirens Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005662 electromechanics Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本申请实施例涉及一种CAD图例的识别方法、装置、存储介质、电子设备,所述方法包括:确定参照图元列表以及CAD图中的选择集,所述选择集包括多个要比较图元;基于所述选择集中的要比较的图元与参照图元列表中的参照图元的镜像关系和旋转角度,确定在参照图元列表中存在匹配的参照图元的要比较图元为目标图元;基于所述目标图元确定所述CAD图中的图例。
Description
技术领域
本申请实施例涉及计算机技术领域,尤其涉及一种CAD图例的识别方法、装置、存储介质、电子设备。
背景技术
在当今的信息社会中,CAD技术在建筑、设计、制造等诸多领域得到了广泛的应用,以建筑领域为例,已成熟的运用CAD类软件出工程图纸。在预算、施工等阶段,技术人员分析图纸信息进行算量、检查等工作。随着信息技术发展,越来越多的人期望能够快速的进行图纸分析,以提升工作效率和生活质量。
在CAD图纸中,除了建筑元素,图例也是比较核心的元素,尤其在机电专业,图例的重要性不言而喻,图纸中图例量大且复杂,这些图例以块参照,线条,填充,文字等不同的元素表示。如果能够对图例一次性进行识别,那就大大提高了技术人员分析图纸的效率。
已有的方法和软件或多或少存在一些问题。图纸中图例分别是块参照,线条,填充,文字等信息时,需要人分析之后,确定是哪类图例,然后针对不同的图例采用不同的识别方法,造成一定的时间成本。
发明内容
鉴于此,为解决上述技术问题或部分技术问题,本申请实施例提供了一种CAD图例的识别方法、装置、存储介质、电子设备。
第一方面,本申请实施例提供了一种CAD图例的识别方法包括:
确定参照图元列表以及CAD图中的选择集,所述选择集包括多个要比较图元;
基于所述选择集中的要比较的图元与参照图元列表中的参照图元的镜像关系和旋转角度,确定在参照图元列表中存在匹配的参照图元的要比较图元为目标图元;
基于所述目标图元确定所述CAD图中的图例。
在一些可能的实现中,基于所述选择集中的要比较的图元与参照图元列表中的参照图元的镜像关系和旋转角度,确定在参照图元列表中存在匹配的参照图元的要比较图元为目标图元,包括:
步骤A,依次将所述参照图元列表中的参照图元作为当前参照图元;并针对所述当前参照图元执行以下步骤B-步骤F;
步骤B,从所述选择集中选择当前要比较的图元;
步骤C,确定所述当前要比较的图元与所述当前参照图元之间的当前镜像关系和当前旋转角度;
步骤D,基于所述当前镜像关系和所述当前旋转角度,将所述当前参照图元和所述当前要比较的图元姿态统一后进行匹配;
步骤E,如果所述当前参照图元和所述当前要比较的图元未匹配成功,则重复执行步骤B-步骤D,直至匹配成功或遍历所述选择集;
步骤F,如果所述当前参照图元和所述当前要比较的图元匹配成功,确定是否已遍历所述选择集,如果不是则重复执行步骤B-步骤D,直至遍历所述选择集;
步骤G,将匹配成功的要比较图元为目标图元。
在一些可能的实现中,基于所述当前镜像关系和所述当前旋转角度,将所述当前参照图元和所述当前要比较的图元姿态统一后进行匹配,包括:
针对所述当前参照图元和所述当前要比较的图元分别建立坐标系;
基于所述当前镜像关系和所述当前旋转角度,将所述当前参照图元和所述当前要比较的图元通过镜像和旋转到同一个坐标系上;
根据同一个坐标系上的所述当前参照图元和所述当前要比较的图元的图元信息来确定是否匹配成功。
在一些可能的实现中,所述根据同一个坐标系上的所述当前参照图元和所述当前要比较的图元的图元信息来确定是否匹配成功,包括:
如果所述当前参照图元和所述当前要比较的图元为块,则将所述当前要比较的图元通过平移和旋转到与所述当前参照图元相同的位置,并与所述当前参照图元进行比较,确定是否相同;
如果相同则匹配成功。
在一些可能的实现中,如果所述当前参照图元和所述当前要比较的图元为块,则所述坐标系的原点为块的***点;如果所述当前参照图元和所述当前要比较的图元为线条,则所述坐标系的原点为线条的中心点。
第二方面,提供了一种CAD图例的识别装置。包括:
第一确定模块,用于确定参照图元列表以及CAD图中的选择集,所述选择集包括多个要比较图元;
匹配模块,用于基于所述选择集中的要比较的图元与参照图元列表中的参照图元的镜像关系和旋转角度,确定在参照图元列表中存在匹配的参照图元的要比较图元为目标图元;
第二确定模块,用于基于所述目标图元确定所述CAD图中的图例。
在一些可能的实现中,所述匹配模块具体用于:
步骤A,依次将所述参照图元列表中的参照图元作为当前参照图元;并针对所述当前参照图元执行以下步骤B-步骤F;
步骤B,从所述选择集中选择当前要比较的图元;
步骤C,确定所述当前要比较的图元与所述当前参照图元之间的当前镜像关系和当前旋转角度;
步骤D,基于所述当前镜像关系和所述当前旋转角度,将所述当前参照图元和所述当前要比较的图元姿态统一后进行匹配;
步骤E,如果所述当前参照图元和所述当前要比较的图元未匹配成功,则重复执行步骤B-步骤D,直至匹配成功或遍历所述选择集;
步骤F,如果所述当前参照图元和所述当前要比较的图元匹配成功,确定是否已遍历所述选择集,如果不是则重复执行步骤B-步骤D,直至遍历所述选择集;
步骤G,将匹配成功的要比较图元为目标图元。
在一些可能的实现中,所述匹配模块具体用于:
针对所述当前参照图元和所述当前要比较的图元分别建立坐标系;
基于所述当前镜像关系和所述当前旋转角度,将所述当前参照图元和所述当前要比较的图元通过镜像和旋转到同一个坐标系上;
根据同一个坐标系上的所述当前参照图元和所述当前要比较的图元的图元信息来确定是否匹配成功。
在一些可能的实现中,所述匹配模块具体用于:
如果所述当前参照图元和所述当前要比较的图元为块,则将所述当前要比较的图元通过平移和旋转到与所述当前参照图元相同的位置,并与所述当前参照图元进行比较,确定是否相同;
如果相同则匹配成功。
在一些可能的实现中,如果所述当前参照图元和所述当前要比较的图元为块,则所述坐标系的原点为块的***点;如果所述当前参照图元和所述当前要比较的图元为线条,则所述坐标系的原点为线条的中心点。
第三方面,本申请实施例提供一种存储介质,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现前述的CAD图例的识别方法。
第四方面,本申请实施例提供一种电子设备,包括:处理器和存储器,所述处理器用于执行所述存储器中存储的CAD图例的识别程序,以实现前述的CAD图例的识别方法。
本申请实施例提供的技术方案,通过确定参照图元列表以及CAD图中的选择集;以及基于选择集中的要比较的图元与参照图元列表中的参照图元的镜像关系和旋转角度,确定在参照图元列表中存在匹配的参照图元的要比较图元为目标图元;基于目标图元确定所述CAD图中的图例。以此通过软件,提供简单的交互,用户只需要点选或者框选图例模板,即可将图纸中所有同类图例识别出来。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本申请实施例示出的一种坐标系关系示例;
图2为本申请实施例示出的一种CAD图例的识别方法的实施流程示意图;
图3为本申请实施例提供的一种CAD图例的识别方法的流程示例;
图4为本申请实施例提供的一种块识别方法的流程示例;
图5为本申请实施例提供的一种形识别示例;
图6为本申请实施例示出的一种CAD图例的识别装置的结构示意图;
图7为本申请实施例的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为便于对本申请实施例的理解,下面将结合附图以具体实施例做进一步的解释说明,实施例并不构成对本申请实施例的限定。
在本申请实施例中,首先对识别匹配的原则进行介绍。
可以对要识别的模板图例分类,具体分类为:直线、曲线、填充、块(该块为前3个的组合)。
对于直线:要求长度相同
对于曲线:圆弧形状匹配要求半径和角度范围相同
对于填充:图案填充要求填充模式,填充样式相同,填充的边界形状相同。边界是由多个直线或者曲线构成。
对于块参照:块参照要求块名称,缩放比例,块属性的值相同。将块打散后的直线、曲线、填充匹配。
另外,对图元,要求各图元之间的相对位置相同
其中,原始图例和要能识别的图例分为几种情况。结合图1所示,其实就是四种坐标系关系:
第一种,“X+,Y+”;
第二种,“X-,Y-”;
第三种,“X+,Y-”;
第四种,“X-,Y-”。
其中,X方向变化以规避线段方向的影响;Y方向变化以规避镜像关系的影响。
可以针对图元进行镜像、旋转、平移、变换矩阵等操作。对于镜像,所有的镜像操作都可以使用以Y轴进行镜像+旋转+平移获得同样效果,所以镜像轴不重要,一般认为按Y轴镜像。。
一般情况下,有些图例是通过标识信息来表达图例的某些属性,但是现有实现只识别图例,无法将标识表达的图例信息一起进行识别,导致识别结果差强人意;针对图例是通过不同元素组成的情况,无法很好识别;由于设计规范问题,无法解决部分图纸不完全相同的图例实际是同一个物体的问题。本申请实施例提供的CAD图例的识别方法、装置、存储介质、电子设备,可以解决这一问题。下面对本申请的实施例进行进一步地介绍。
图2为本申请实施例提供的一种CAD图例的识别方法流程示意图。如图2所示,该方法可以包括:
S210,确定参照图元列表以及CAD图中的选择集,该选择集包括多个要比较图元;
其中,可以对CAD图进行图例识别。用户可以选择需要识别的图例。例如,可以通过框选等方式,选择需要识别的区域或图层等信息。该框选的区域中包括选择集。该选择集对应有参照图元,该参照图元可以预先设置。
S220,基于选择集中的要比较的图元与参照图元列表中的参照图元的镜像关系和旋转角度,确定在参照图元列表中存在匹配的参照图元的要比较图元为目标图元;
作为一个示例,在选定参考图元时,可以选择第一个非圆的设备图元,当全部是圆则按全部是圆的方法进行处理。
在确定对应图元时,可以在图元列表中找到第一个可以进行匹配的图元,根据参照线条和要比较的线条计算出两根线条之间的镜像关系以及旋转角度。
S230,基于目标图元确定CAD图中的图例。
根据各设备的映射和旋转关系,将选择集中的填充映射和旋转后,如果在对应的位置如果找不到相同的填充,目标图元为无效图元;如果找得到相同的填充,则确定该目标图元为图例。
在一些实施例中,上述步骤S220具体可以通过如下步骤实现:
步骤A,依次将参照图元列表中的参照图元作为当前参照图元;并针对当前参照图元执行以下步骤B-步骤F;
步骤B,从选择集中选择当前要比较的图元;
步骤C,确定当前要比较的图元与当前参照图元之间的当前镜像关系和当前旋转角度;
步骤D,基于当前镜像关系和当前旋转角度,将当前参照图元和当前要比较的图元姿态统一后进行匹配;
步骤E,如果当前参照图元和当前要比较的图元未匹配成功,则重复执行步骤B-步骤D,直至匹配成功或遍历选择集;
步骤F,如果当前参照图元和当前要比较的图元匹配成功,确定是否已遍历选择集,如果不是则重复执行步骤B-步骤D,直至遍历选择集;
步骤G,将匹配成功的要比较图元为目标图元。
作为一个示例,上述步骤D具体可以包括:
步骤1),针对当前参照图元和当前要比较的图元分别建立坐标系;
步骤2),基于当前镜像关系和当前旋转角度,将当前参照图元和当前要比较的图元通过镜像和旋转到同一个坐标系上;
步骤3),根据同一个坐标系上的当前参照图元和当前要比较的图元的图元信息确定是否匹配成功。例如,当前参照图元和当前要比较的图元为线条,则要比较的图元信息可以包括长度、线型以及颜色等中的一种或多种。再例如,当前参照图元和当前要比较的图元为填充,则要比较的图元信息可以包括纹理以及边框形状等中的一种或多种。
对于上述步骤1),如果当前参照图元和当前要比较的图元为块,则坐标系的原点为块的***点;如果当前参照图元和当前要比较的图元为线条,则坐标系的原点为线条的中心点。
作为另一个示例,上述步骤3),具体可以包括:
步骤a,如果当前参照图元和当前要比较的图元为块,则将当前要比较的图元通过平移和旋转到与当前参照图元相同的位置,并与当前参照图元进行比较,确定是否相同;
步骤b,如果相同则匹配成功。
作为一个示例,如图3所示,该方法具体可以实现为:
GetCADDevice;
创建TGQICADDevice类型的对象oDevice并将选择集中的图元添加进去,同时将oDevice加到容器中;需要修改TGQICADDevice为能支持线条、块和填充,同时提供LineList,BlockRefList,HatchList接口来访问线条、块和填充数据;
构造oDevice的Box并将中心点置为oDevice的***点;
将选择集所在图层的所有线条按顺序***FCADEdos(同时需要排序)中并构造BoxTree;
InitSearchFlag:arrSearchFlag与FCADEdos的图元一一对应,如果图元已经被识别过,则arrSearchFlag对应位为1,否则为0;
如果HasLine,则InitLineFlag;InitLineFlag:arrLineFlag与选择集中的线条图元(LineList)一一对应,表示每条线的类型:0-普通线,1-圆的参考线,2-不考虑的线;
确定参照图元(优先块);
在图元列表FCADEdos中找到第一个可以进行匹配的图元;如果是块,可匹配的图元是Def相同的块,如果是线条,可匹配的图元是普通线条;
判断参照图元是否为块;
如果是,根据参照块和要比较的块计算出两个块之间的镜像关系以及旋转角度(CompareBlockRefs);
如果不是,根据参照线条和要比较的线条计算出两根线条之间的镜像关系以及旋转角度;
将参照图元和要比较图元分别建立坐标系(要比较图元坐标系是依据镜像关系及旋转角度建立起来的)(如果是块,坐标原点为块的***点,如果是线条,坐标原点为线条的中心点);
取出选择集中第一个图元;
依据镜像关系将选择集中的图元的Box镜像并旋转到另一个坐标系上并且求交,返回相交的图元列表;
如果图元是块,将选择集中的块的矩阵先平移,再旋转,得到的矩阵依次和相交图元列表中的块的矩阵做比较,相同则找到,否则继续;
如果是线条,则调用原来的CompareCADEdo和SameEdo函数来比较是否相同;
判断选择集中的图元是否在列表中找到匹配的图元;
如果未找到,则判断图元列表FCADEdos遍历完;
如果未遍历完,取出图元列表FCADEdos中的下一个可匹配图元;
如果遍历完,则根据各设备的映射和旋转关系,将选择集中的填充映射和旋转后,如果在对应的位置如果找不到相同的填充,则释放Device;
如果找到,则判断选择集中的图元是否都遍历完;
如果未遍历完,取出选择集中的下一个图元;
如果遍历完,则将搜索到的图元创建TGQICADDevice并添加到容器中,根据各设备的映射和旋转关系,将选择集中的填充映射和旋转后,如果在对应的位置如果找不到相同的填充,则释放Device;
返回。
作为另一个示例,对于块识别流程:
计算图例的***点;
遍历BlockDef的Blocks元素;
如果块不可见,则不处理;
如果与要比较的块是同一个块,则角度为0,镜像为False;
否则调用CompareBlockRefs获取角度/是否镜像以及是否能够匹配,如果不能匹配,则直接进入下一个块;
创建TGQICADDevice对象;
设置CAD设备的相关参数:角度/是否镜像/***点/设备类型,重新计算设备的Box;
将创建的设备添加到设备列表中。
作为另一个示例,对于形识别流程:
如果,块<=2、线=0、填充=0;块=1、线<=5、填充=0;或者,块=1、线=0、填充=0,则判定为走形识别(填充不用判断)。形识别选定块为参考图元。
因为模板图例和要识别的图例可能在大小上有差别。首先对模板和要比较的块图例计算缩放比例。将参考图例和比较块缩放为同样大小,比较块是否匹配。其后流程和识别总流程一致。
相对于方法实施例,本申请实施例还提供了一种CAD图例的识别装置的实施例,如图6所示,该装置可以包括:第一确定模块610、匹配模块620、第二确定模块630。
其中,第一确定模块610,用于确定参照图元列表以及CAD图中的选择集,选择集包括多个要比较图元;
匹配模块620,用于基于选择集中的要比较的图元与参照图元列表中的参照图元的镜像关系和旋转角度,确定在参照图元列表中存在匹配的参照图元的要比较图元为目标图元;
第二确定模块630,用于基于目标图元确定CAD图中的图例。
在一些实施例中,匹配模块620具体用于:
步骤A,依次将参照图元列表中的参照图元作为当前参照图元;并针对当前参照图元执行以下步骤B-步骤F;
步骤B,从选择集中选择当前要比较的图元;
步骤C,确定当前要比较的图元与当前参照图元之间的当前镜像关系和当前旋转角度;
步骤D,基于当前镜像关系和当前旋转角度,将当前参照图元和当前要比较的图元姿态统一后进行匹配;
步骤E,如果当前参照图元和当前要比较的图元未匹配成功,则重复执行步骤B-步骤D,直至匹配成功或遍历选择集;
步骤F,如果当前参照图元和当前要比较的图元匹配成功,确定是否已遍历选择集,如果不是则重复执行步骤B-步骤D,直至遍历选择集。
在一些实施例中,匹配模块620具体用于:
针对当前参照图元和当前要比较的图元分别建立坐标系;
基于当前镜像关系和当前旋转角度,将当前参照图元和当前要比较的图元通过镜像和旋转到同一个坐标系上;
根据同一个坐标系上的当前参照图元和当前要比较的图元的图元信息来确定是否匹配成功。
在一些实施例中,匹配模块620具体用于:
如果当前参照图元和当前要比较的图元为块,则将当前要比较的图元通过平移和旋转到与当前参照图元相同的位置,并与当前参照图元进行比较,确定是否相同;
如果相同则匹配成功。
在一些实施例中,如果当前参照图元和当前要比较的图元为块,则坐标系的原点为块的***点;如果当前参照图元和当前要比较的图元为线条,则坐标系的原点为线条的中心点。
图7为本申请实施例提供的一种的电子设备的结构示意图,图7所示的电子设备700包括:至少一个处理器701、存储器702、至少一个网络接口704和其他用户接口703。移动终端700中的各个组件通过总线***705耦合在一起。可理解,总线***705用于实现这些组件之间的连接通信。总线***705除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图7中将各种总线都标为总线***705。
其中,用户接口703可以包括显示器、键盘或者点击设备(例如,鼠标,轨迹球(trackball)、触感板或者触摸屏等。
可以理解,本申请实施例中的存储器702可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-OnlyMemory,ROM)、可编程只读存储器(ProgrammableROM,PROM)、可擦除可编程只读存储器(ErasablePROM,EPROM)、电可擦除可编程只读存储器(ElectricallyEPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(RandomAccessMemory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(StaticRAM,SRAM)、动态随机存取存储器(DynamicRAM,DRAM)、同步动态随机存取存储器(SynchronousDRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(DoubleDataRateSDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(EnhancedSDRAM,ESDRAM)、同步连接动态随机存取存储器(SynchlinkDRAM,SLDRAM)和直接内存总线随机存取存储器(DirectRambusRAM,DRRAM)。本文描述的存储器702旨在包括但不限于这些和任意其它适合类型的存储器。
在一些实施方式中,存储器702存储了如下的元素,可执行单元或者数据结构,或者他们的子集,或者他们的扩展集:操作***7021和应用程序7022。
其中,操作***7021,包含各种***程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序7022,包含各种应用程序,例如媒体播放器(MediaPlayer)、浏览器(Browser)等,用于实现各种应用业务。实现本申请实施例方法的程序可以包含在应用程序7022中。
在本申请实施例中,通过调用存储器702存储的程序或指令,具体的,可以是应用程序7022中存储的程序或指令,处理器701用于执行各方法实施例所提供的方法步骤,例如包括:确定WORD模板库中目标WORD模板;获取与所述目标WORD模板对应的WORD模板描述文件;根据所述WORD模板描述文件生成数据录入界面,并生成与所述目标WORD模板对应的文档;在所述数据录入界面中接收数据,调用校验型数据录入组件对所述数据进行校验;若校验通过,将所述数据导入所述文档。
上述本申请实施例揭示的方法可以应用于处理器701中,或者由处理器701实现。处理器701可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器701中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器701可以是通用处理器、数字信号处理器(DigitalSignalProcessor,DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、现成可编程门阵列(FieldProgrammableGateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件单元组合执行完成。软件单元可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器702,处理器701读取存储器702中的信息,结合其硬件完成上述方法的步骤。
可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(ApplicationSpecificIntegratedCircuits,ASIC)、数字信号处理器(DigitalSignalProcessing,DSP)、数字信号处理设备(DSPDevice,DSPD)、可编程逻辑设备(ProgrammableLogicDevice,PLD)、现场可编程门阵列(Field-ProgrammableGateArray,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。
对于软件实现,可通过执行本文所述功能的单元来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
本实施例提供的电子设备可以是如图7中所示的电子设备,可执行如图2中CAD图例的识别方法的所有步骤,进而实现图2所示CAD图例的识别方法的技术效果,具体请参照图2相关描述,为简洁描述,在此不作赘述。
本申请实施例还提供了一种存储介质(计算机可读存储介质)。这里的存储介质存储有一个或者多个程序。其中,存储介质可以包括易失性存储器,例如随机存取存储器;存储器也可以包括非易失性存储器,例如只读存储器、快闪存储器、硬盘或固态硬盘;存储器还可以包括上述种类的存储器的组合。
当存储介质中一个或者多个程序可被一个或者多个处理器执行,以实现上述在CAD图例的识别设备侧执行的CAD图例的识别方法。
所述处理器用于执行存储器中存储的CAD图例的识别程序,以实现以下在CAD图例的识别设备侧执行的CAD图例的识别方法的步骤:
确定参照图元列表以及CAD图中的选择集,所述选择集包括多个要比较图元;
基于所述选择集中的要比较的图元与参照图元列表中的参照图元的镜像关系和旋转角度,确定在参照图元列表中存在匹配的参照图元的要比较图元为目标图元;
基于所述目标图元确定所述CAD图中的图例。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (8)
1.一种CAD图例的识别方法,其特征在于,包括:
确定参照图元列表以及CAD图中的选择集,所述选择集包括多个要比较图元;
基于所述选择集中的要比较的图元与参照图元列表中的参照图元的镜像关系和旋转角度,确定在参照图元列表中存在匹配的参照图元的要比较图元为目标图元;
基于所述目标图元确定所述CAD图中的图例;
其中,所述基于所述选择集中的要比较的图元与参照图元列表中的参照图元的镜像关系和旋转角度,确定在参照图元列表中存在匹配的参照图元的要比较图元为目标图元,包括:
步骤A,依次将所述参照图元列表中的参照图元作为当前参照图元;并针对所述当前参照图元执行以下步骤B-步骤F;
步骤B,从所述选择集中选择当前要比较的图元;
步骤C,确定所述当前要比较的图元与所述当前参照图元之间的当前镜像关系和当前旋转角度;
步骤D,基于所述当前镜像关系和所述当前旋转角度,将所述当前参照图元和所述当前要比较的图元姿态统一后进行匹配;
步骤E,如果所述当前参照图元和所述当前要比较的图元未匹配成功,则重复执行步骤B-步骤D,直至匹配成功或遍历所述选择集;
步骤F,如果所述当前参照图元和所述当前要比较的图元匹配成功,确定是否已遍历所述选择集,如果不是则重复执行步骤B-步骤D,直至遍历所述选择集;
步骤G,将匹配成功的要比较的图元为目标图元。
2.根据权利要求1所述的方法,其特征在于,基于所述当前镜像关系和所述当前旋转角度,将所述当前参照图元和所述当前要比较的图元姿态统一后进行匹配,包括:
针对所述当前参照图元和所述当前要比较的图元分别建立坐标系;
基于所述当前镜像关系和所述当前旋转角度,将所述当前参照图元和所述当前要比较的图元通过镜像和旋转到同一个坐标系上;
根据同一个坐标系上的所述当前参照图元和所述当前要比较的图元的图元信息来确定是否匹配成功。
3.根据权利要求2所述的方法,其特征在于,所述根据同一个坐标系上的所述当前参照图元和所述当前要比较的图元的图元信息来确定是否匹配成功,包括:
如果所述当前参照图元和所述当前要比较的图元为块,则将所述当前要比较的图元通过平移和旋转到与所述当前参照图元相同的位置,并与所述当前参照图元进行比较,确定是否相同;
如果相同则匹配成功。
4.根据权利要求2所述的方法,其特征在于,如果所述当前参照图元和所述当前要比较的图元为块,则所述坐标系的原点为块的***点;如果所述当前参照图元和所述当前要比较的图元为线条,则所述坐标系的原点为线条的中心点。
5.一种CAD图例的识别装置,其特征在于,包括:
第一确定模块,用于确定参照图元列表以及CAD图中的选择集,所述选择集包括多个要比较图元;
匹配模块,用于基于所述选择集中的要比较的图元与参照图元列表中的参照图元的镜像关系和旋转角度,确定在参照图元列表中存在匹配的参照图元的要比较图元为目标图元;
第二确定模块,用于基于所述目标图元确定所述CAD图中的图例;
所述匹配模块,具体用于:
步骤A,依次将所述参照图元列表中的参照图元作为当前参照图元;并针对所述当前参照图元执行以下步骤B-步骤F;
步骤B,从所述选择集中选择当前要比较的图元;
步骤C,确定所述当前要比较的图元与所述当前参照图元之间的当前镜像关系和当前旋转角度;
步骤D,基于所述当前镜像关系和所述当前旋转角度,将所述当前参照图元和所述当前要比较的图元姿态统一后进行匹配;
步骤E,如果所述当前参照图元和所述当前要比较的图元未匹配成功,则重复执行步骤B-步骤D,直至匹配成功或遍历所述选择集;
步骤F,如果所述当前参照图元和所述当前要比较的图元匹配成功,确定是否已遍历所述选择集,如果不是则重复执行步骤B-步骤D,直至遍历所述选择集;
步骤G,将匹配成功的要比较的图元为目标图元。
6.根据权利要求5所述的装置,其特征在于,所述匹配模块具体用于:
针对所述当前参照图元和所述当前要比较的图元分别建立坐标系;
基于所述当前镜像关系和所述当前旋转角度,将所述当前参照图元和所述当前要比较的图元通过镜像和旋转到同一个坐标系上;
根据同一个坐标系上的所述当前参照图元和所述当前要比较的图元的图元信息来确定是否匹配成功。
7.一种电子设备,其特征在于,包括:处理器和存储器,所述处理器用于执行所述存储器中存储的CAD图例的识别程序,以实现权利要求1~4中任一项所述的方法。
8.一种存储介质,其特征在于,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现权利要求1~4中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010160321.3A CN111310254B (zh) | 2020-03-10 | 2020-03-10 | Cad图例的识别方法、装置、存储介质、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010160321.3A CN111310254B (zh) | 2020-03-10 | 2020-03-10 | Cad图例的识别方法、装置、存储介质、电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111310254A CN111310254A (zh) | 2020-06-19 |
CN111310254B true CN111310254B (zh) | 2023-10-27 |
Family
ID=71151253
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010160321.3A Active CN111310254B (zh) | 2020-03-10 | 2020-03-10 | Cad图例的识别方法、装置、存储介质、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111310254B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111737800B (zh) * | 2020-06-23 | 2024-01-12 | 广联达科技股份有限公司 | 图元选择方法、装置及电子设备 |
CN112464903B (zh) * | 2020-12-16 | 2024-06-21 | 广联达科技股份有限公司 | 市政施工图纸的图元识别方法、装置及电子设备 |
CN112613395A (zh) * | 2020-12-18 | 2021-04-06 | 湖南特能博世科技有限公司 | 图元位置关系匹配方法、装置及计算机设备 |
CN112990092B (zh) * | 2021-04-09 | 2022-03-11 | 福建晨曦信息科技集团股份有限公司 | 图例识别方法、计算机设备及可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001092351A (ja) * | 1999-09-20 | 2001-04-06 | Hitachi Information Systems Ltd | 地理情報システム及びそのプログラム記録媒体 |
WO2018231248A1 (en) * | 2017-06-16 | 2018-12-20 | Landmark Graphics Corporation | Method and apparatus to predict casing wear for well systems |
CN110704880A (zh) * | 2018-06-19 | 2020-01-17 | 中国石化工程建设有限公司 | 一种工程图纸的关联方法 |
CN110765891A (zh) * | 2019-09-30 | 2020-02-07 | 万翼科技有限公司 | 工程图纸识别方法、电子设备及相关产品 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9098942B2 (en) * | 2012-01-25 | 2015-08-04 | Oracle International Corporation | Legend indicator for selecting an active graph series |
CN108399386B (zh) * | 2018-02-26 | 2022-02-08 | 阿博茨德(北京)科技有限公司 | 饼图中的信息提取方法及装置 |
-
2020
- 2020-03-10 CN CN202010160321.3A patent/CN111310254B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001092351A (ja) * | 1999-09-20 | 2001-04-06 | Hitachi Information Systems Ltd | 地理情報システム及びそのプログラム記録媒体 |
WO2018231248A1 (en) * | 2017-06-16 | 2018-12-20 | Landmark Graphics Corporation | Method and apparatus to predict casing wear for well systems |
CN110704880A (zh) * | 2018-06-19 | 2020-01-17 | 中国石化工程建设有限公司 | 一种工程图纸的关联方法 |
CN110765891A (zh) * | 2019-09-30 | 2020-02-07 | 万翼科技有限公司 | 工程图纸识别方法、电子设备及相关产品 |
Also Published As
Publication number | Publication date |
---|---|
CN111310254A (zh) | 2020-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111310254B (zh) | Cad图例的识别方法、装置、存储介质、电子设备 | |
US8310484B2 (en) | Efficient processing of operator graphs representing three-dimensional character animation | |
JP2001526813A (ja) | 基準ベースのパラメータ寸法決定方法及びシステム | |
US20110285719A1 (en) | Approximation of stroked higher-order curved segments by quadratic bèzier curve segments | |
US8379025B1 (en) | Methods and apparatus for rendering vector art on graphics hardware | |
CN113010937B (zh) | 构件截面钢筋的参数化建模方法及相关装置 | |
US20080068383A1 (en) | Rendering and encoding glyphs | |
US10970458B1 (en) | Logical grouping of exported text blocks | |
CN113094770B (zh) | 图纸生成方法、装置、计算机设备和存储介质 | |
RU2430421C2 (ru) | Применение эффектов к объединенной текстовой дорожке | |
US20120182318A1 (en) | Transforming Graphic Objects | |
US11823331B2 (en) | Self drawing tool for a computer-implemented automated design, modeling and manufacturing system | |
WO2019169699A1 (zh) | 房屋模型的渲染方法、装置、终端设备及介质 | |
CN111523531A (zh) | 文字处理方法、装置、电子设备及计算机可读存储介质 | |
US20140146039A1 (en) | Self-disclosing control points | |
CN114580350A (zh) | 文本文字标注方法、装置、计算机设备和存储介质 | |
US20190392618A1 (en) | Systems and methods for efficiently generating and modifying an outline of electronic text | |
CN112396569B (zh) | 一种对图像进行数据增强的方法 | |
CN114357545A (zh) | 用于布置施工图标注位置的方法和产品 | |
CN114241506A (zh) | 标识和提取pdf建筑图纸内容的方法和装置 | |
JP2008533614A (ja) | 整合輪郭プロファイルを生成するシステム及び方法 | |
KR102156336B1 (ko) | 3차원 형상 재현 방법 | |
CN113869223A (zh) | 一种图形识别方法、图形识别模板的确定方法和装置 | |
US9779526B2 (en) | Method, system and apparatus for determining area of a pixel covered by a scalable definition for a character | |
CN117251516A (zh) | 一种cad图形数据的批量转换方法、装置及设备 |
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 |