一种构件穿越风险识别方法、装置、设备及介质与流程

allin2024-12-04  67



1.本发明属于建筑检测技术领域,具体涉及一种构件穿越风险识别方法、装置、设备及介质。


背景技术:

2.随着近几年智能电网建设的加快,gim模型(grid information model电网信息模型)的全生命周期数字化信息管理技术日益成熟。gim数字化信息管理是指依托于gim模型三维设计标准,将整个电网工程项目转化成数字信息模型,集成每个设备在设计、施工、运行阶段各类信息,实现项目的数字化管理。
3.在项目的数字化管理过程中,建立工程的安全风险预警系统是重要的一环,安全风险预警系统能够在在施工过程中进行有效的风险管控。输变电工程项目中穿跨越的情况十分频繁且复杂,如果在施工管理中不能准确把控其施工的安全风险信息或未采取有效的预防手段和应对方法,势必会带来诸多的安全隐患,对人员、社会和经济产生难以估量的损失。应用bim三维技术能更加精准地描述施工工程与各个风险源之间的空间关系,为项目施工过程提供科学的安全风险预警方法,保证施工过程的安全有序,另外,通过对风险源相关三维模型的管理和风险处理方案的积累,实现信息化安全风险预警技术与安全信息管理工作。相较于其他类型的建设项目,电力输变电工程在施工时,所面临穿跨越风险源很多,造成了输变电项目工程在安全风险管理上的诸多压力,因此需要自动识别有穿跨越的构件,并提示相应的风险信息。
4.关于穿跨越构件的识别,是基于构件的空间关系进行判别,常见的构件碰撞或相交判断是利用构件的包围盒进行相交测试判断,当包围盒发生相交后,再通过构件的三角面片两两相交测试,判断构件是否发生碰撞,但穿越构件为“假碰撞”,即构件的包围盒在空间上可能会存在位置重叠,但构件本身不发生碰撞。或包围盒不发生相交,但其在某一维度上坐标区间存在重叠。且被穿越物可能与多个构件组成的设备群,形成穿越关系。


技术实现要素:

5.本发明的目的在于提供一种构件穿越风险识别方法、装置、设备及介质,以解决建筑施工过程中构件空间关系判断错误导致出现安全事故的技术问题。
6.为实现上述目的,本发明采用如下技术方案予以实现:
7.第一方面,一种构件穿越风险识别方法,包括以下步骤:
8.s1、获取整个项目工程中每个构件信息,并生成每个构件的aabb包围盒;
9.s2、识别潜在被跨越构件,并将潜在被跨越构件的aabb包围盒修改成obb包围盒,同时给每个潜在被跨越构件建立安全周迹包围盒;
10.s3、将普通构件的aabb包围盒与潜在被跨越构件的安全周迹包围盒两两进行相交测试,筛选出测试结果为相交的普通构件;
11.s4、将s3筛选出的普通构件的aabb包围盒两两进行相交测试,并将发生相交的普
通构件的aabb包围盒进行合并,未发生相交的普通构件仍为原aabb包围盒;
12.s5、将发生相交合并后的每个aabb包围盒和未发生相交的每个aabb包围盒分别与潜在被跨越构件的obb包围盒进行平面相交测试;
13.s6、在s5中测试结果若为相交则发出警报。
14.本发明的进一步改进在于:在s1中识生成每个构件的aabb包围盒包括以下步骤:
15.s11、获取构件的所有三角形面片数据;
16.s12、比较每个三角面片的x、y和z轴坐标,从而获得x、y和z轴坐标最大值和最小值,包括xmin、xmax、ymin、ymax、zmin和zmax;
17.s13、根据获得的x、y和z轴坐标最大值和最小值,获得aabb包围盒的8个顶点坐标,从而给构件建立aabb包围盒。
18.本发明的进一步改进在于:在s2中给潜在被跨越构件建立obb包围盒时可采用主成分析法或采用opcode开源碰撞检测库进行计算,从而获得obb包围盒的顶点坐标。
19.本发明的进一步改进在于:给潜在被跨越构件建立安全周迹包围盒时,将潜在被跨越构件的obb包围盒沿x轴正负方向各延长预设长度a;
20.将潜在被跨越构件的obb包围盒沿y轴正负方向各延长预设长度b;
21.将潜在被跨越构件的obb包围盒沿z轴正负方向各延长预设长度c;
22.预设长度a的长度为潜在被跨越构件的obb包围盒在x轴上长度的
23.预设长度b的长度为潜在被跨越构件的obb包围盒在y轴上长度的
24.预设长度c的长度为5倍或10倍的潜在被跨越构件obb包围盒在z轴上的长度。
25.本发明的进一步改进在于:在s4中当两个aabb包围盒合并时,根据要合并的两个aabb包围盒的x、y和z坐标的最小值和最大值,获得合并后aabb包围盒的x、y和z坐标的最小值和最大值;再根据合并后aabb包围盒的x、y和z坐标的最小值和最大值,获得合并后aabb包围盒的8个顶点坐标,从而建立合并后的aabb包围盒。
26.本发明的进一步改进在于:在s5中进行平面相交测试时,具体包括以下步骤:
27.首先将aabb包围盒与潜在被跨越构件的obb包围盒投影到xy平面;
28.然后将aabb包围盒xy平面投影的四条边分别与obb包围盒xy平面的四条边的分别进行线段与线段的相交测试;若aabb包围盒xy平面投影的四条边中有任意一条与obb包围盒xy平面的四条边中任意一条边相交,则认为潜在被跨越构件存在跨越风险。
29.本发明的进一步改进在于:当aabb包围盒xy平面投影的四条边均不与obb包围盒xy平面的四条边相交时,判断aabb包围盒中任意顶点是否在obb包围盒内,或obb包围盒中任意顶点是否在aabb包围盒中,若任意顶点处于另一包围盒中,则认为潜在被跨越构件存在跨越风险。
30.第二方面,一种构件穿越风险识别装置,包括
31.aabb包围盒生成模块:用于获取整个项目工程中每个构件信息,并生成每个构件的aabb包围盒;
32.潜在被跨越构件识别加工模块:用于识别潜在被跨越构件,并将潜在被跨越构件的aabb包围盒修改成obb包围盒,同时给每个潜在被跨越构件建立安全周迹包围盒;
33.第一相交测试模块:用于将普通构件的aabb包围盒与潜在被跨越构件的安全周迹
包围盒两两进行相交测试,筛选出测试结果为相交的普通构件;
34.aabb包围盒合并模块:用于将第一相交测试模块筛选出的普通构件的aabb包围盒两两进行相交测试,并将发生相交的普通构件的aabb包围盒进行合并,未发生相交的普通构件仍为原aabb包围盒;
35.第二相交测试模块:用于将发生相交合并后的每个aabb包围盒和未发生相交的每个aabb包围盒分别与潜在被跨越构件的obb包围盒进行平面相交测试;
36.报警模块:在第二相交测试模块中测试结果若为相交则发出警报。
37.第三方面,一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面所述的一种构件穿越风险识别方法。
38.第四方面,一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的一种构件穿越风险识别方法。
39.与现有技术相比,本发明至少包括以下有益效果:
40.1.本发明基于构件的包围盒原理,提出安全周迹包围盒的方法,用于快速筛选可能发生穿越的构件;
41.2.由于许多构件存在连接关系,形成一个整体,所以本发明将发生相交的普通构件的aabb包围盒进行合并,从而减少重复计算,提高识别效率;
42.3.本发明将合并后的包围盒与潜在被跨越构件的obb包围盒进行平面相交测试时,将包围盒投影至xy平面然后进行相交测试,根据跨越构件特殊的空间位置关系所采取的特殊方法,可以准确识别构件间是否发生相交。
附图说明
43.构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
44.图1为本发明一种构件穿越风险识别方法的流程图;
45.图2为本发明一种构件穿越风险识别装置的系统框图;
46.图3为常规包围盒结构示意图;
47.图4为本发明生成的aabb包围盒空间示意图;
48.图5为本发明生成的安全周迹包围盒的俯视图;
49.图6为本发明生成的安全周迹包围盒空间示意图;
50.图7为本发明aabb包围盒与obb包围盒进行平面相交测试的结构示意图;
51.图8为本发明aabb包围盒与obb包围盒进行平面相交测试的位置示意图。
具体实施方式
52.下面将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
53.以下详细说明均是示例性的说明,旨在对本发明提供进一步的详细说明。除非另有指明,本发明所采用的所有技术术语与本发明所属领域的一般技术人员的通常理解的含义相同。本发明所使用的术语仅是为了描述具体实施方式,而并非意图限制根据本发明的
示例性实施方式。
54.实施例1
55.如图1所示,一种构件穿越风险识别方法,包括以下步骤:
56.s1、获取整个项目工程中每个构件信息,并生成每个构件的aabb包围盒;
57.s2、识别潜在被跨越构件,并将潜在被跨越构件的aabb包围盒修改成obb包围盒,同时给每个潜在被跨越构件建立安全周迹包围盒;
58.s3、将普通构件的aabb包围盒与潜在被跨越构件的安全周迹包围盒两两进行相交测试,筛选出测试结果为相交的普通构件;
59.s4、将s3筛选出的普通构件的aabb包围盒两两进行相交测试,并将发生相交的普通构件的aabb包围盒进行合并,未发生相交的普通构件仍为原aabb包围盒;
60.s5、将发生相交合并后的每个aabb包围盒和未发生相交的每个aabb包围盒分别与潜在被跨越构件的obb包围盒进行平面相交测试;若测试结果为相交则该潜在被跨越构件存在跨越风险;
61.s6、在s5中测试结果若为相交则发出警报。
62.如图3所示,包围盒类型包括球体包围盒、aabb包围盒、obb包围盒、8-dpo包围盒和凸壳包围盒,包围效果和最终剔除结果依此上升,测试速度和内存占用量依此下降,所以本发明中给每个构件生成aabb包围盒,给潜在被跨越构件生成obb包围盒。
63.在输变电工程的三维模型中,存在被穿越风险的构件如表1所示:
64.表1潜在被跨越构件种类表
65.[0066][0067]
生成aabb包围盒的计算:获取构件的三角形面片数据,比较每个三角面片的x、y和z坐标,获得x、y和z坐标的最小值和最大值xmin,xmax,ymin,ymax,zmin,zmax,即可得到aabb包围盒8个顶点坐标,(xmin,ymax,zmax);(xmin,ymin,zmax);(xmin,ymax,zmin);(xmin,ymin,zmin);(xmax,ymax,zmax);(xmax,ymax,zmin);(xmax,ymin,zmin);(xmax,ymin,zmax)如图4所示。
[0068]
潜在被跨越构件的obb包围盒采用主成分析法(principal components analysis,pca),或采用opcode开源碰撞检测库进行计算,获得obb包围盒的顶点坐标。
[0069]
在s2中建立安全周迹包围盒如图5和图6所示,潜在被跨越构件的obb包围盒沿x轴正负方向各延长预设长度a;
[0070]
潜在被跨越构件的obb包围盒沿y轴正负方向各延长预设长度b;
[0071]
潜在被跨越构件的obb包围盒沿z轴正负方向各延长预设长度c;
[0072]
预设长度a的长度为潜在被跨越构件的obb包围盒在x轴上长度的
[0073]
预设长度b的长度为潜在被跨越构件的obb包围盒在y轴上长度的
[0074]
预设长度c的长度为5倍或10倍的潜在被跨越构件obb包围盒高度;
[0075]
不同潜在被跨越构件的c如表2所示,表中h表示潜在被跨越构件obb包围盒的高度;
[0076]
表2
[0077][0078]
在s3中将普通构件的包围盒与安全周迹包围盒两两进行相交测试时,采用opcode库提供的obb包围盒相交测试接口进行判断,筛选出可能出现穿越风险的构件。
[0079]
obb包围盒的相交测试采用分离轴测试方法:
[0080]
在s4中,对两个aabb包围盒的合并时:
[0081]
取要合并的两个aabb包围盒中的x、y、z坐标的最小值和最大值分别作为合并后的包围盒的最小值和最大值,形成新的包围盒;
[0082]
假设两个将要合并的aabb包围盒为a和b,其对应的坐标为ax、ay、az和bx、by、bz
[0083]
则合并后的包围盒,其坐标为:
[0084]
xmin=min{axmin,bxmin};xmax=max{axmax,bxmax};
[0085]
ymin=min{aymin,bymin};ymax=max{aymax,bymax};
[0086]
zmin=min{azmin,bzmin};zmax=max{azmax,bzmax};
[0087]
则合并后的aabb包围盒顶点坐标:
[0088]
(xmin,ymax,zmax);(xmin,ymin,zmax);(xmin,ymax,zmin);(xmin,ymin,zmin);(xmax,ymax,zmax);(xmax,ymax,zmin);(xmax,ymin,zmin);(xmax,ymin,zmax)。
[0089]
在s5中对发生相交合并后的每个aabb包围盒和未发生相交的每个aabb包围盒分别与潜在被跨越构件的obb包围盒进行平面相交测试;测试时将aabb包围盒与潜在被跨越构件的obb包围盒投影到xy平面,再进行平面的相交测试,如图7所示。
[0090]
对两个包围盒进行相交测试时,将aabb包围盒xy平面投影的四条边分别与obb包围盒xy平面的四条边的分别进行线段与线段的相交测试;若aabb包围盒xy平面投影的四条边中有任意一条与obb包围盒xy平面的四条边中任意一条边相交,则认为潜在被跨越构件存在跨越风险;
[0091]
若都不相交,再判断aabb包围盒中任意顶点是否在obb包围盒内,或obb包围盒中任意顶点是否在aabb包围盒中,若任意顶点处于另一包围盒中,则认为潜在被跨越构件存在跨越风险。
[0092]
实施例2
[0093]
如图2所示,一种构件穿越风险识别装置,包括
[0094]
aabb包围盒生成模块:用于获取整个项目工程中每个构件信息,并生成每个构件的aabb包围盒;
[0095]
潜在被跨越构件识别加工模块:用于识别潜在被跨越构件,并将潜在被跨越构件的aabb包围盒修改成obb包围盒,同时给每个潜在被跨越构件建立安全周迹包围盒;
[0096]
第一相交测试模块:用于将普通构件的aabb包围盒与潜在被跨越构件的安全周迹包围盒两两进行相交测试,筛选出测试结果为相交的普通构件;
[0097]
aabb包围盒合并模块:用于将第一相交测试模块筛选出的普通构件的aabb包围盒两两进行相交测试,并将发生相交的普通构件的aabb包围盒进行合并,未发生相交的普通构件仍为原aabb包围盒;
[0098]
第二相交测试模块:用于将发生相交合并后的每个aabb包围盒和未发生相交的每个aabb包围盒分别与潜在被跨越构件的obb包围盒进行平面相交测试;
[0099]
报警模块:在第二相交测试模块中测试结果若为相交则发出警报。
[0100]
实施例3
[0101]
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现实施例1所述的一种构件穿越风险识别方法。
[0102]
实施例4
[0103]
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现实施例1所述的一种构件穿越风险识别方法。
[0104]
由技术常识可知,本发明可以通过其它的不脱离其精神实质或必要特征的实施方案来实现。因此,上述公开的实施方案,就各方面而言,都只是举例说明,并不是仅有的。所有在本发明范围内或在等同于本发明的范围内的改变均被本发明包含。
[0105]
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0106]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序
指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0107]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0108]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0109]
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。

技术特征:
1.一种构件穿越风险识别方法,其特征在于,包括以下步骤:s1、获取整个项目工程中每个构件信息,并生成每个构件的aabb包围盒;s2、识别潜在被跨越构件,并将潜在被跨越构件的aabb包围盒修改成obb包围盒,同时给每个潜在被跨越构件建立安全周迹包围盒;s3、将普通构件的aabb包围盒与潜在被跨越构件的安全周迹包围盒两两进行相交测试,筛选出测试结果为相交的普通构件;s4、将s3筛选出的普通构件的aabb包围盒两两进行相交测试,并将发生相交的普通构件的aabb包围盒进行合并,未发生相交的普通构件仍为原aabb包围盒;s5、将发生相交合并后的每个aabb包围盒和未发生相交的每个aabb包围盒分别与潜在被跨越构件的obb包围盒进行平面相交测试;s6、在s5中测试结果若为相交则判定为具有构件穿越风险。2.根据权利要求1所述的一种构件穿越风险识别方法,其特征在于,在s1中生成每个构件的aabb包围盒包括以下步骤:s11、获取构件的所有三角形面片数据;s12、比较每个三角面片的x、y和z轴坐标,从而获得x、y和z轴坐标最大值和最小值,包括xmin、xmax、ymin、ymax、zmin和zmax;s13、根据获得的x、y和z轴坐标最大值和最小值,获得aabb包围盒的8个顶点坐标,从而给构件建立aabb包围盒。3.根据权利要求1所述的一种构件穿越风险识别方法,其特征在于,在s2中给潜在被跨越构件建立obb包围盒时可采用主成分析法或采用opcode开源碰撞检测库进行计算,从而获得obb包围盒的顶点坐标。4.根据权利要求3所述的一种构件穿越风险识别方法,其特征在于,给潜在被跨越构件建立安全周迹包围盒时,将潜在被跨越构件的obb包围盒沿x轴正负方向各延长预设长度a;将潜在被跨越构件的obb包围盒沿y轴正负方向各延长预设长度b;将潜在被跨越构件的obb包围盒沿z轴正负方向各延长预设长度c;预设长度a的长度至少为潜在被跨越构件的obb包围盒在x轴上长度的预设长度b的长度至少为潜在被跨越构件的obb包围盒在y轴上长度的预设长度c的长度至少为5倍的潜在被跨越构件obb包围盒在z轴上的长度。5.根据权利要求1所述的一种构件穿越风险识别方法,其特征在于,在s4中当两个aabb包围盒合并时,根据要合并的两个aabb包围盒的x、y和z坐标的最小值和最大值,获得合并后aabb包围盒的x、y和z坐标的最小值和最大值;再根据合并后aabb包围盒的x、y和z坐标的最小值和最大值,获得合并后aabb包围盒的8个顶点坐标,从而建立合并后的aabb包围盒。6.根据权利要求1所述的一种构件穿越风险识别方法,其特征在于,在s5中进行平面相交测试时,具体包括以下步骤:首先将aabb包围盒与潜在被跨越构件的obb包围盒投影到xy平面;然后将aabb包围盒xy平面投影的四条边分别与obb包围盒xy平面的四条边的分别进行线段与线段的相交测试;若aabb包围盒xy平面投影的四条边中有任意一条与obb包围盒xy平面的四条边中任意一条边相交,则认为潜在被跨越构件存在跨越风险。
7.根据权利要求6所述的一种构件穿越风险识别方法,其特征在于,当aabb包围盒xy平面投影的四条边均不与obb包围盒xy平面的四条边相交时,判断aabb包围盒中任意顶点是否在obb包围盒内,或obb包围盒中任意顶点是否在aabb包围盒中,若任意顶点处于另一包围盒中,则认为潜在被跨越构件存在跨越风险。8.一种构件穿越风险识别装置,其特征在于,包括aabb包围盒生成模块:用于获取整个项目工程中每个构件信息,并生成每个构件的aabb包围盒;潜在被跨越构件识别加工模块:用于识别潜在被跨越构件,并将潜在被跨越构件的aabb包围盒修改成obb包围盒,同时给每个潜在被跨越构件建立安全周迹包围盒;第一相交测试模块:用于将普通构件的aabb包围盒与潜在被跨越构件的安全周迹包围盒两两进行相交测试,筛选出测试结果为相交的普通构件;aabb包围盒合并模块:用于将第一相交测试模块筛选出的普通构件的aabb包围盒两两进行相交测试,并将发生相交的普通构件的aabb包围盒进行合并,未发生相交的普通构件仍为原aabb包围盒;第二相交测试模块:用于将发生相交合并后的每个aabb包围盒和未发生相交的每个aabb包围盒分别与潜在被跨越构件的obb包围盒进行平面相交测试;报警模块:在第二相交测试模块中测试结果若为相交则发出警报。9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-7任一项所述的一种构件穿越风险识别方法。10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7中任一项所述的一种构件穿越风险识别方法。

技术总结
本发明属于建筑检测技术领域,具体公开一种构件穿越风险识别方法、装置、设备及介质。S1、获取每个构件信息,生成AABB包围盒;S2、识别潜在被跨越构件,并生成OBB包围盒和安全周迹包围盒;S3、将普通构件的AABB包围盒与潜在被跨越构件的安全周迹包围盒两两进行相交测试,筛选出测试结果为相交的普通构件;S4、将S3筛选出的AABB包围盒进行相交测试,并将发生相交AABB包围盒进行合并,未发生相交则不变;S5、将发生相交合并后的每个AABB包围盒和未发生相交的每个AABB包围盒分别与潜在被跨越构件的OBB包围盒进行平面相交测试;S6、在S5中测试结果若为相交则发出警报。本发明基于构件的包围盒原理,提出安全周迹包围盒的方法,用于快速筛选可能发生穿越的构件。速筛选可能发生穿越的构件。速筛选可能发生穿越的构件。


技术研发人员:周鑫 周云浩 韩晓鹏 杨宝杰 郭达奇 王楠 李海峰 李昊 李豪 张潇 王立京 于子祎
受保护的技术使用者:国家电网有限公司 北京构力科技有限公司
技术研发日:2022.04.18
技术公布日:2022/7/4
转载请注明原文地址: https://www.8miu.com/read-17338.html

最新回复(0)