适用于射线追踪无线信道建模的空间分割加速方法及系统
技术领域
本发明属于无线通信技术领域,具体涉及适用于射线追踪无线信道建模的空间分割加速方法及系统,是一种新型射线追踪层次包围盒的空间分区技术。
背景技术
射线追踪技术(Ray Tracing,RT)作为一种确定性无线信道建模方法,可以基于特定的仿真场景进行电磁波传播预测,准确模拟电磁波的各种传播机制,如直射、反射、散射、绕射等。与随机性无线信道模型相比,射线追踪模型可以较为准确地模拟出真实环境下任意频点、任意位置的信道特性,预测多径回波的幅度、时延、到达角和离开角等,为无线通信的系统设计、理论分析、性能评估、优化及部署奠定了基础。
射线追踪技术的一种代表性算法是弹跳射线法。该算法由发射端发出射线,之后对每一条射线进行追踪,直到射线被接收端接收或达到反射、绕射的预设阶数,算法实现较为简单。在传统的射线追踪技术中,每条射线都需要和场景中所有的建筑物图元进行相交测试,以确定一条射线是否被障碍物所遮挡。但当场景较复杂时,墙面和墙角的数量很大,射线与建筑物图元的相交测试通常会消耗90%以上的计算时间,且计算出来的交点有成千上万个,但绝大部分都是无效交点。针对此问题,考虑使用空间分区算法来减少相交测试次数,提高计算效率。
空间分区算法的一般思路是,当要进行相交测试时,不必对场景中所有障碍物图元都进行测试,而是选取某些特定范围内的障碍物图元,即每次相交测试只在一定范围内进行,也就是将场景进行空间分区,射线每次相交测试只在一个分区内进行。传统的空间分区算法主要有网格分区法、K维树(K-Dimensional tree,KD-tree)、八叉树和层次包围盒(Bounding Volume Hierarchies,BVH)等。其中,网格分区、KD-tree、八叉树算法基于空间划分,即将整个场景剖分为若干子空间,因而,同一个建筑物图元可能被划分到不同的子空间,这会导致相交测试时多次引用包含在不同子空间的相同建筑物图元对象,降低了计算效率。BVH算法基于物体划分,可以弥补网格分区法、KD-tree和八叉树对图元划分的缺陷,但传统的BVH算法容易产生包围盒重叠过多的问题。
发明内容
本发明针对现有技术中的不足,提供一种适用于射线追踪无线信道建模的空间分割加速方法及系统,旨在对传统的BVH算法进行改进,解决由于划分不理想导致的包围盒无效重叠的问题,充分考虑射线发射源的作用范围,进一步提高射线追踪的计算效率。
为实现上述目的,本发明采用以下技术方案:
适用于射线追踪无线信道建模的空间分割加速方法,其特征在于,包括如下步骤:
步骤S1:选择仿真场景,设置仿真参数,导入场景中三角面元的信息,并设置叶子节点包围盒内三角面元的数量阈值;
步骤S2:计算能够将所有三角面元都包含在内的包围盒;
步骤S3:结合空间距离选取最优划分策略,将所有三角面元分为左右子节点两部分;
步骤S4:进行递归建树,子节点的划分重复步骤S2和步骤S3,直至包围盒内三角面元的数量少于预先设定的阈值,把最后的三角面元信息存储在叶子结点上,结束BVH树的构建,将射线与建筑物的相交测试转化为射线与叶子节点内三角面元的相交测试。
为优化上述技术方案,采取的具体措施还包括:
进一步地,所述步骤S1具体包括:
步骤S101:根据确定的应用场景,确定天线类型、天线极化方式、仿真频率、发射端与接收端的位置、接收端接收门限和射线的反射、绕射阶数;
步骤S102:依据仿真频率,确定材料的电磁参数,完成仿真的设置;
步骤S103:采用将场景中建筑物表面划分为三角面元的处理方法,以三角面元的格式进行存储,将三维场景转化为三角面元集合。
进一步地,所述材料的电磁参数包括介电常数和电导率。
进一步地,所述步骤S2具体如下:
使用AABB包围盒来构建BVH树,记录包围盒在x轴、y轴和z轴所处平面上的最小值和最大值,分别为xmin、xmax、ymin、ymax、zmin、zmax;
AABB包围盒内所有的点都满足以下条件:
xmin<x<xmax
ymin<y<ymax
zmin<z<zmax
将表示AABB包围盒的6个参数分成两个集合:
Vmax=[xmax,ymax,zmax]
Vmin=[xmin,ymin,zmin]
其中,Vmin是三个坐标轴最小值的集合,Vmax是三个坐标轴最大值的集合;
从而得到包装盒的质点公式如下:
c=(Vmin+Vmax)/2
其中,c表示质点坐标。
进一步地,所述步骤S3具体包括:
步骤S301:采用基于表面积启发式算法的划分策略,对每一种划分的求交代价和遍历代价都进行评估,选取求交代价和遍历代价之和最小的划分作为当前情形下的划分方式;
步骤S302:利用包围盒的表面积大小,判断射线会击中左节点包围盒A和右节点包围盒B的概率:
其中,c(A,B)表示击中包围盒A和包围盒B的代价函数,p(A)和p(B)表示射线击中包围盒A和包围盒B的概率,ttrav表示BVH树结构构建代价,t(i)和t(j)表示求交代价;
步骤S303:在步骤S302的基础上,引入射线到包围盒的距离,结合空间距离对相交测试的影响,提出基于表面积与空间距离的混合代价函数:
其中,S(A)和S(B)分别表示包围盒A和包围盒B的表面积,S(C)表示父节点包围盒C的表面积,d为包围盒质心和射线源点间的距离,α为包围盒表面积和空间距离之间的权重系数。
进一步地,所述步骤S4具体包括:
步骤S401:如果包围盒内三角面元数量大于所设定的阈值,重复进行递归建树,直至所有的包围盒均达到建立叶子节点的条件;
步骤S402:把最后的三角面元信息储存在叶子结点上,结束BVH树的构建;
步骤S403:将射线与建筑物的相交测试转化为射线与BVH树的碰撞检测,再通过循环遍历后,转化为射线与叶子节点内三角面元的相交测试。
本发明还提出了适用于射线追踪无线信道建模的空间分割加速系统,其特征在于,包括:
设置模块,用于选择仿真场景,设置仿真参数,导入场景中三角面元的信息,并设置叶子节点包围盒内三角面元的数量阈值;
计算模块,用于计算能够将所有三角面元都包含在内的包围盒;
划分模块,用于结合空间距离选取最优划分策略,将所有三角面元分为左右子节点两部分;
生成模块,用于进行递归建树,重复步骤S2和步骤S3进行子节点的划分,直至包围盒内三角面元的数量少于预先设定的阈值,把最后的三角面元信息存储在叶子结点上,结束BVH树的构建,将射线与建筑物的相交测试转化为射线与叶子节点内三角面元的相交测试。
本发明还提出了一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序使计算机执行如上所述的适用于射线追踪无线信道建模的空间分割加速方法。
本发明还提出了一种电子设备,其特征在于,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行计算机程序时,实现如上所述的适用于射线追踪无线信道建模的空间分割加速方法。
本发明的有益效果是:本发明将场景中的建筑物以三角面元的格式存储,采用基于物体划分的BVH算法,避免了射线相交检测时对同一个三角面元多次求交的问题。在传统BVH算法的基础上,本发明充分考虑射线的作用范围,加入了空间距离影响因子,并修改了划分策略,在保持弹跳射线法计算精度的同时,解决了传统的BVH算法导致的包围盒过度重叠问题,进一步提高了射线追踪的计算效率。
附图说明
图1为本发明方法的流程示意图。
图2为本发明的实施例一中室内场景的示意图。
图3为本发明的实施例一中室内场景划分示意图。其中,图3a为基于传统BVH算法的场景划分示意图,图3b为基于本发明提出的方法的场景划分示意图。
图4为本发明的实施例一中不同方法下射线追踪计算时间的结果对比图。
图5为本发明的实施例1中射线追踪的仿真路径结果图。其中,图5a为基于原始弹跳射线法的1阶反射仿真路径结果图,图5b为基于本发明提出的方法的1阶反射仿真路径结果图,图5c为基于原始弹跳射线法的2阶反射仿真路径结果图,图5d为基于本发明提出的方法的2阶反射仿真路径结果图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
实施例一
参见图1,本实施例提供一种适用于射线追踪无线信道建模的空间分割加速方法,包括如下步骤:
步骤S1:选择仿真场景,设置仿真参数,导入场景中三角面元的相关信息,并设置叶子节点包围盒内三角面元数量阈值。
进一步地,步骤S1具体包括:
步骤S101:根据确定的应用场景,确定天线类型、天线极化方式、仿真频率、发射端与接收端的位置、接收端接收门限和射线的反射、绕射阶数。
步骤S102:依据仿真的频率,确定材料的电磁参数,包括介电常数和电导率等,完成仿真的设置。
步骤S103:采用将场景中建筑物表面划分为三角面元的处理方法,以三角面元的格式进行存储,将复杂的三维场景转化为简单的三角面元集合。
具体来说,在本实施例中,仿真环境是在如图2所示的8×6×3.5m3的室内场景中,其包括墙壁、门、课桌、窗户、收纳柜、地板和天花板等。设置天线为垂直极化、各向同性,仿真频率为2.4GHz,以仿真场景中左下顶点为坐标原点,发射机所在位置坐标为(1.46m,2.42m,2.1m),接收机所在位置坐标为(1.2m,1.2m,1.5m),在反射阶数为1阶和2阶时各进行一次仿真。仿真场景中包含2778个三角面元,设置叶子节点包围盒内三角面元数量阈值为250。
步骤S2:计算能够将所有三角面元都包含在内的包围盒。
进一步地,步骤S2具体包括:
射线与包围盒的相交检测需要快速,并且包围盒需要非常紧凑,因而使用AABB包围盒来构建BVH树,记录包围盒在每个坐标轴所处平面上的最小值和最大值,即xmin、xmax、ymin、ymax、zmin、zmax。
AABB包围盒内所有的点都必须满足以下条件:
xmin<x<xmax
ymin<y<ymax
zmin<z<zmax
将表示AABB包围盒的6个参数分成两个集合:
Vmax=[xmax,ymax,zmax]
Vmin=[xmin,ymin,zmin]
其中Vmin是三个坐标轴最小值的集合,Vmax是三个坐标轴最大值的集合。
从而得到包装盒的质点公式如下:
c=(Vmin+Vmax)/2
步骤S3:结合空间距离选取最优划分策略,将所有三角面元分为两部分,即左右子节点。
进一步地,步骤S3具体包括:
步骤S301:采用基于表面积启发式算法的划分策略,对每一种划分的求交代价和遍历代价都进行评估,选取求交代价和遍历代价之和最小的划分作为当前情形下最合理的划分方式。
步骤S302:当射线与该场景进行相交测试时,射线既可能击中左节点包围盒A,也可能会击中右节点包围盒B,可以通过概率进行预估判断射线会击中哪一个区域:
其中,c(A,B)的含义是击中左右两个包围盒的代价函数。p(A)和p(B)表示射线击中包围盒A和包围盒B的概率,ttrav表示BVH树结构构建代价,t(i)和t(j)表示求交代价。
具体来说,针对AABB包围盒,其每一个面都平行于坐标轴所在平面,故考虑通过利用包围盒的表面积大小来判断射线击中包围盒的概率。
步骤S303:考虑到射线的作用范围是有限的,因此,射线能否与包围盒相交,除了取决于包围盒的表面积外,还取决于射线到包围盒的距离。结合空间距离对相交测试的影响,提出基于表面积与空间距离的混合代价函数:
其中,S(A)和S(b)表示左右节点包围盒A和B的表面积,S(C)表示父节点包围盒C的表面积,d为包围盒质心和射线源点间的距离,α为包围盒表面积和空间距离之间的权重系数,取值范围为[0,1]。
具体来说,设定射线与所有三角面元相交测试的代价都是相同的,即t(i)=t(j)=1。定义包围盒A中三角面元的数量为a,B中三角面元的数量为b。因为仿真场景为室内场景,所以设定包围盒表面积和空间距离之间的权重系数α为0.7,则上述公式简化为:
步骤S304:比较所有划分方案下的c(A,B)值,选取最小取值的方案作为最佳分割方案。
步骤S4:进行递归,子节点的部分重复进行步骤S2和S3,直至包围盒内三角面元数量少于预先设定的阈值,存储最后的三角面元信息,结束BVH树的构建。
进一步地,步骤S4具体包括:
步骤S401:如果包围盒内三角面元数量大于所设定的阈值,将重复进行递归建树,直至所有的包围盒均达到建立叶子节点的条件。
步骤S402:把最后的三角面元信息储存在叶子结点上,结束BVH树的构建。
步骤S403:射线与建筑物的相交测试转化为射线与BVH树的碰撞检测,通过循环遍历后,进一步转化为射线与叶子节点内三角面元的相交测试。
具体来说,在本实例中,需要保证叶子节点包围盒内的三角面元数量不超过250个。图3a和图3b体现了三角面元数量阈值为250个时传统BVH算法的场景划分示意图和本发明提出的方法的场景划分示意图,从图中可以看出,利用本发明提出的方法,可以更加有效的进行空间划分,减少了包围盒的无效重叠。
将本发明应用到射线追踪弹跳射线法中,并在如图2所示的室内办公场景下进行验证。为了更好地体现本方法的优势,在同样的场景参数下将本方法的仿真结果同原始的弹跳射线法和利用传统BVH算法的弹跳射线法的结果进行了对比。图4体现了三种算法下射线追踪计算时间的结果对比图。从图中可以看出,应用本发明可以有效地减少计算时间,提高计算效率。图5a-5d体现了使用本发明提出的方法前后射线追踪的仿真路径结果,采用本发明得到的路径与弹跳射线法得到的射线路径一致,说明本发明提出的方法仅筛除了无效的相交测试过程,并没有误删正确判交过程,在保证射线追踪计算精度的同时,做到了计算时间的缩短,计算效率的提升。
综上所述,本实施例提出的适用于射线追踪无线信道建模的空间分割加速方法可以有效地进行空间划分,解决了传统BVH算法中包围盒无效重叠的问题,同时可以减少射线的相交判断次数,进一步提高弹跳射线法的计算效率。
实施例二
在本实施例中,本发明提出了一种适用于射线追踪无线信道建模的空间分割加速系统,其对应于适用于射线追踪无线信道建模的空间分割加速方法,包括:
设置模块,用于选择仿真场景,设置仿真参数,导入场景中三角面元的信息,并设置叶子节点包围盒内三角面元的数量阈值;
计算模块,用于计算能够将所有三角面元都包含在内的包围盒;
划分模块,用于结合空间距离选取最优划分策略,将所有三角面元分为左右子节点两部分;
生成模块,用于进行递归建树,重复步骤S2和步骤S3进行子节点的划分,直至包围盒内三角面元的数量少于预先设定的阈值,把最后的三角面元信息存储在叶子结点上,结束BVH树的构建,将射线与建筑物的相交测试转化为射线与叶子节点内三角面元的相交测试。
实施例三
在本实施例中,本发明提出了一种计算机可读存储介质,存储有计算机程序,计算机程序使计算机执行如实施例一所述的适用于射线追踪无线信道建模的空间分割加速方法。
实施例四
在本实施例中,本发明提出了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时,实现如实施例一所述的适用于射线追踪无线信道建模的空间分割加速方法。
在本申请所公开的实施例中,计算机存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合使用的程序。计算机存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。计算机存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
本领域普通技术人员可以意识到,结合本申请所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。