一种空间碰撞检测方法、装置及电子设备制造方法及图纸

技术编号:38715910 阅读:6 留言:0更新日期:2023-09-08 14:58
本申请提供了一种空间碰撞检测方法、装置及电子设备,涉及人工智能技术领域。方法包括:对目标3D模型进行空间划分,得到至少两个区域,每个区域中均包括至少一个模型零件;确定每个区域的包围盒,确定每个区域中包含的各个模型零件的包围盒;对至少两个区域中的每两个区域的包围盒进行碰撞检测;当任意两个区域的包围盒间存在碰撞时,将在任意两个区域中所包含的各个模组零件的包围盒混合在一起进行碰撞检测;当任意两个区域的包围盒间不存在碰撞时,分别单独对任意两个区域中每个区域所包含的模型零件的包围盒进行碰撞检测;输出碰撞检测结果。由此,通过逐层检测的方式去除掉一些不必要的检测,降低了数据计算量和资源消耗,提升了检测效率。提升了检测效率。提升了检测效率。

【技术实现步骤摘要】
一种空间碰撞检测方法、装置及电子设备


[0001]本申请涉及人工智能
,尤其涉及一种空间碰撞检测方法、装置及电子设备。

技术介绍

[0002]随着数字孪生技术的蓬勃发展,数字孪生技术在智慧城市、交通、电信、水利、工程、工业生产、能源、自动驾驶、公共应急等领域均可以提供应用服务。以对站点(site)数字孪生为例,其是将物理站点映射到数字世界,最终实现站点等基础设施从规划、设计、部署到运维的全生命周期的数字化的管理。在对站点实现数字孪生过程中,主要包括从物理世界采集数据,到物理世界全景构建、三维(3

dimension,3D)建模等数字资产构建,再到基于数字资产的数字孪生平台,为客户提供现场站点高效勘测、高效建模、建模质量检验、基于模型和全景的一整套数字孪生,从而帮助客户合理高效管理资产、站点设计规划、站点空间预评估、周边环境电磁波仿真等,减少客户上站次数,提高运营管理效率。
[0003]在数字孪生过程中,3D数字模型给空间信息提供了更为丰富的空间展示,使得可以将抽象的空间信息直观化和可视化,因此,3D数字模型是进行数字孪生的一个基础。在分析3D数字模型时,往往涉及3D建模、3D模型质量校验与3D场景空间应用分析等,这些应用常依赖复杂的空间评估能力。对于海量的站点交付,高效的空间碰撞检测能力是上述应用的基本能力,该能力的性能的强弱将直接影响项目的竞争力。因此,如何提升空间碰撞检测能力的性能是目前亟需解决的技术问题。

技术实现思路

[0004]本申请提供了一种空间碰撞检测方法、装置、电子设备、计算机存储介质及计算机程序产品,通过逐层对3D模型进行碰撞检测,提升了空间碰撞检测的效率和性能。
[0005]第一方面,本申请提供一种空间碰撞检测方法,方法包括:对目标3D模型进行空间划分,以得到至少两个区域,每个区域中均包括至少一个模型零件;确定每个区域的包围盒,确定每个区域中所包含的各个模型零件的包围盒;对至少两个区域中的每两个区域的包围盒进行碰撞检测;当任意两个区域的包围盒间存在碰撞时,将在任意两个区域中所包含的各个模组零件的包围盒混合在一起进行碰撞检测;当任意两个区域的包围盒间不存在碰撞时,分别单独对任意两个区域中每个区域所包含的模型零件的包围盒进行碰撞检测;输出碰撞检测结果。
[0006]这样,先对3D模型进行空间划分,得到多个区域,在对区域和模型零件进行碰撞检测,当两个区域间不存在碰撞时,分别单独对各个区域中的模型零件进行碰撞检测,当两个区域间存在碰撞时,将这两个区域中所包含的模型零件混合在一起进行碰撞检测。由此,通过分区域检测的方式可以去除掉一些不必要的检测(比如不存在碰撞的两个区域时,不对两个区域中所包含的模型零件的混合检测),降低了数据计算量和资源消耗,提升了检测效率。
[0007]在一种可能的实现方式中,方法还包括:当任意两个区域中每个区域均包括一个模型零件时,在对任意两个区域的包围盒进行碰撞检测后,停止对任意两个区域中所包含的模型零件的包围盒进行碰撞检测。这样,由于进行碰撞检测的两个区域的每个区域中均包括一个模型零件,因此,当两个区域间不存在碰撞时,可以确定这两个区域中的模型零件不存在碰撞,当两个区域间存在碰撞时,可以确定这两个区域中的模型零件存在碰撞;也即是说,此时由区域的碰撞检测结果,即可以获知到模型零件的碰撞检测结果,且两个碰撞检测结果相同,所以在完成这两个区域间的碰撞检测后,则不需要再对这两个区域中的模型零件进行碰撞检测,从而达到了降低数据计算量和资源消耗的目的,提升了检测效率。
[0008]在一种可能的实现方式中,每个模型零件中均包括至少一个模型组件,方法还包括:确定每个模型零件中所包含的各个模型组件的包围盒;当任意两个模型零件的包围盒间存在碰撞时,将在任意两个模型零件中所包含的各个模组组件的包围盒混合在一起进行碰撞检测;当任意两个模型零件的包围盒间不存在碰撞时,分别单独对任意两个模型零件中每个模型零件所包含的模型组件的包围盒进行碰撞检测。由此,在需要对模型组件进行碰撞检测时,通过逐层检测的方式可以去除掉一些不必要的检测,降低了数据计算量和资源消耗,提升了检测效率。
[0009]在一种可能的实现方式中,方法还包括:当任意两个模型零件中每个模型零件均包括一个模型组件时,在对任意两个模型零件的包围盒进行碰撞检测后,停止对任意两个模型零件中所包含的模型组件的包围盒进行碰撞检测。这样,由于进行碰撞检测的两个模型零件的每个模型零件中均包括一个模型组件,因此,当两个模型零件间不存在碰撞时,可以确定这两个模型零件中的模型组件不存在碰撞,当两个模型零件间存在碰撞时,可以确定这两个模型零件中的模型组件存在碰撞;也即是说,此时由模型零件的碰撞检测结果,即可以获知到模型组件的碰撞检测结果,且两个碰撞检测结果相同,所以在完成这两个模型零件间的碰撞检测后,则不需要再对这两个模型零件中的模型组件进行碰撞检测,从而达到了降低数据计算量和资源消耗的目的,提升了检测效率。
[0010]在一种可能的实现方式中,对目标3D模型进行空间划分,具体包括:确定目标3D模型的空间分布特点为稠密型,构建目标3D模型的第一包围盒;根据第一包围盒所围成的区域的空间复杂度,对第一包围盒所围成的区域进行划分。
[0011]在一种可能的实现方式中,对目标3D模型进行空间划分,具体包括:确定目标3D模型的空间分布特点为稀疏型,将目标3D模型中各个空间分布为稠密型的区域分别划分为一个单独的区域,以得到x个区域,x≥2;分别构建x个区域各自的包围盒,以得到x个第二包围盒;根据x个第二包围盒中各个第二包围盒所围成的区域的空间复杂度,对各个第二包围盒所围成的区域进行划分。
[0012]在一种可能的实现方式中,根据目标包围盒所围成的区域的空间复杂度,对目标包围盒所围成的区域进行划分,具体包括:判断目标包围盒所围成的区域的空间复杂度是否大于预设阈值,目标包围盒为第一包围盒或第二包围盒;若大于预设阈值,将目标包围盒所围成的区域均分为预设数量的区域,以及基于划分后得到的预设数量的区域进行空间划分;若小于或等于预设阈值,限制对目标包围盒所围成的区域进行划分。这样,通过设定分区的计算量阈值(即预设阈值)作为迭代的终止条件,解决了因模型复杂度不平均导致的数据倾斜,实现了计算任务的负载均衡,提高了内存计算进行分布式计算的效率。
[0013]在一种可能的实现方式中,目标包围盒所围成的区域的空间复杂度至少基于目标包围盒中所包含的模型组件的数量、顶点个数和目标包围盒的包络的大小确定,目标包围盒为第一包围盒或第二包围盒。
[0014]第二方面,本申请提供一种空间碰撞检测装置,装置包括:处理模块,用于对目标3D模型进行空间划分,以得到至少两个区域,每个区域中均包括至少一个模型零件;处理模块,还用于确定每个区域的包围盒,确定每个区域中所包含的各个模型零件的包围盒;处理模块,还用于对至少两个区域中的每两个区域的包围盒进行碰撞检测;其中,当任意两个区域的包围盒间存在碰撞时,将在任意两个区域中所包含的各个模本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种空间碰撞检测方法,其特征在于,所述方法包括:对目标3D模型进行空间划分,以得到至少两个区域,每个所述区域中均包括至少一个模型零件;确定每个所述区域的包围盒,确定每个所述区域中所包含的各个模型零件的包围盒;对所述至少两个区域中的每两个区域的包围盒进行碰撞检测;当任意两个所述区域的包围盒间存在碰撞时,将在所述任意两个所述区域中所包含的各个模组零件的包围盒混合在一起进行碰撞检测;当所述任意两个所述区域的包围盒间不存在碰撞时,分别单独对所述任意两个所述区域中每个区域所包含的模型零件的包围盒进行碰撞检测;输出碰撞检测结果。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述任意两个所述区域中每个区域均包括一个模型零件时,在对所述任意两个所述区域的包围盒进行碰撞检测后,停止对所述任意两个所述区域中所包含的模型零件的包围盒进行碰撞检测。3.根据权利要求1或2所述的方法,其特征在于,每个所述模型零件中均包括至少一个模型组件,所述方法还包括:确定每个所述模型零件中所包含的各个模型组件的包围盒;当任意两个所述模型零件的包围盒间存在碰撞时,将在所述任意两个所述模型零件中所包含的各个模组组件的包围盒混合在一起进行碰撞检测;当所述任意两个所述模型零件的包围盒间不存在碰撞时,分别单独对所述任意两个所述模型零件中每个模型零件所包含的模型组件的包围盒进行碰撞检测。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:当所述任意两个所述模型零件中每个模型零件均包括一个模型组件时,在对所述任意两个所述模型零件的包围盒进行碰撞检测后,停止对所述任意两个所述模型零件中所包含的模型组件的包围盒进行碰撞检测。5.根据权利要求1

4任一所述的方法,其特征在于,所述对目标3D模型进行空间划分,具体包括:确定所述目标3D模型的空间分布特点为稠密型,构建所述目标3D模型的第一包围盒;根据所述第一包围盒所围成的区域的空间复杂度,对所述第一包围盒所围成的区域进行划分。6.根据权利要求1

4任一所述的方法,其特征在于,所述对目标3D模型进行空间划分,具体包括:确定所述目标3D模型的空间分布特点为稀疏型,将所述目标3D模型中各个空间分布为稠密型的区域分别划分为一个单独的区域,以得到x个区域,x≥2;分别构建所述x个区域各自的包围盒,以得到x个第二包围盒;根据所述x个第二包围盒中各个第二包围盒所围成的区域的空间复杂度,对各个所述第二包围盒所围成的区域进行划分。7.根据权利要求5或6所述的方法,其特征在于,根据目标包围盒所围成的区域的空间复杂度,对所述目标包围盒所围成的区域进行划分,具体包括:
判断所述目标包围盒所围成的区域的空间复杂度是否大于预设阈值,所述目标包围盒为所述第一包围盒或所述第二包围盒;若大于所述预设阈值,将所述目标包围盒所围成的区域均分为预设数量的区域,以及基于划分后得到的所述预设数量的区域进行空间划分;若小于或等于所述预设阈值,限制对所述目标包围盒所围成的区域进行划分。8.根据权利要求5

7任一所述的方法,其特征在于,目标包围盒所围成的区域的空间复杂度至少基于所述目标包围盒中所包含的模型组件的数量、顶点个数和所述目标包围盒的包络的大小确定,所述目标包围盒为所述第一包围盒或所述第二包围盒。9.一种空间碰撞检测装置,其特征在于,所述装置包括:处理模块,用于对目标3D模型进行空间划分,以得到至少两个区域,每个所述区域中均包括至少一个模型零件;所述处理模块,还用于确定每个所述区域的包围盒,确定每个所述区域中所包含的各个模型零件的包围盒;所述处理模块,还用于对所述至少两个区域中的每两个区域的包围盒进行碰撞检测;其中,当任意两个所述区域的包围盒间存在碰撞时,将在所...

【专利技术属性】
技术研发人员:赵家元周桂春马浩源
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1