本技术涉及计算机,具体而言,涉及一种遮挡筛选方法、装置、电子设备及存储介质。
背景技术:
1、遮挡筛选,也称遮挡剔除(occlusion culling,occ),是指当一个物体被其他物体遮挡住而不在可视范围内时不对其进行渲染。常用的遮挡剔除技术包括渲染工具自带的遮挡模块,如ue4、unity等软件;适用于画面渲染的画家算法、bsp树、z-buffer;光线投射(raycasting)等等。然而,上述的遮挡剔除技术是基于渲染效果的筛选,常常用于游戏场景的渲染,但不能满足车辆仿真场景的需求。
技术实现思路
1、本技术实施例的目的在于提供一种遮挡筛选方法、装置、电子设备及存储介质,用以实现满足车辆仿真场景需求的技术效果。
2、本技术实施例第一方面提供了一种遮挡筛选方法,应用于车辆仿真场景中;所述方法包括:
3、获取车载传感器视野范围内测得的各个待筛选物体的位置信息;
4、根据所述位置信息,按照从近到远的顺序从所有所述待筛选物体中确定目标物体,针对每个目标物体分别执行遮挡筛选处理,从所有所述待筛选物体中确定出未遮挡物体;
5、其中,所述遮挡筛选处理包括:
6、若目标物体为所述顺序中的第一顺位,确定所述目标物体为未遮挡物体;
7、若目标物体为所述顺序中的其他顺位,遍历所有未遮挡物体,根据所述目标物体与未遮挡物体之间的遮挡状态,确定所述目标物体为被遮挡物体或未遮挡物体。
8、在上述实现过程中,是基于数据的筛选,也即基于待筛选物体本身的数据来确定待筛选物体之间的遮挡关系。相比于相关技术中的遮挡筛选技术,上述方法可以直接输出物体的数据,例如未遮挡物体的集合、各个物体之间的遮挡关系等。无需在渲染效果的基础上再生成物体数据,数据输出的效率较高。此外,由于待筛选物体是由仿真数据生成的,因此上述方法实现了根据仿真数据判断物体间遮挡情况的技术效果,从而满足了车辆仿真场景的需求。
9、进一步地,所述获取车载传感器视野范围内测得的各个待筛选物体的位置信息,包括:
10、基于所述传感器测得的传感数据,检测出所述视野范围内的所有待筛选物体;
11、针对每个所述待筛选物体,生成所述待筛选物体的包围盒;
12、确定所述包围盒中参考点的位置信息为所述待筛选物体的位置信息。
13、在上述实现过程中,通过利用包围盒中参考点的位置信息作为待筛选物体的位置信息,简化了待筛选物体的位置信息的确定过程,提高了数据输出效率。
14、进一步地,所述遮挡状态包括遮挡比例与遮挡位置;所述根据所述目标物体与未遮挡物体之间的遮挡状态,确定所述目标物体为被遮挡物体或未遮挡物体,包括:
15、若所述遮挡比例不大于第一阈值,确定所述目标物体为未遮挡物体;
16、在所述遮挡位置为单侧遮挡的情况下,若所述遮挡比例小于第二阈值,确定所述目标物体为未遮挡物体;若所述遮挡比例不小于所述第二阈值,确定所述目标物体为被遮挡物体;
17、若所述遮挡位置为全部遮挡或中心遮挡,确定所述目标物体为被遮挡物体;
18、其中,所述第二阈值大于所述第一阈值。
19、在上述实现过程中,根据遮挡比例和/或遮挡位置判断目标物体与未遮挡物体之间的遮挡状态,能准确地逐一判断出每个待筛选物体是否被遮挡。同时上述过程是基于数据的遮挡筛选,无需在渲染效果的基础上再生成物体数据,数据输出的效率较高,满足了车辆仿真场景的需求。
20、进一步地,所述遮挡比例通过以下步骤计算:
21、分别获取所述目标物体与所述未遮挡物体的轮廓弧度信息;所述轮廓弧度信息包括轮廓的多侧边缘相对于所述传感器方向的弧度;
22、根据所述目标物体与所述未遮挡物体的同侧边缘的弧度之差,以及所述目标物体的轮廓弧度信息,确定所述目标物体与所述未遮挡物体的遮挡比例。
23、在上述实现过程中,根据目标物体与未遮挡物体多侧边缘相对于传感器方向的弧度,计算遮挡比例,提供了一种新的遮挡比例计算方法,且只需获取边缘的弧度信息,计算过程简单快捷,计算效率高。
24、进一步地,所述轮廓弧度信息根据物体的包围盒的顶点位置信息确定;所述顶点位置信息为极坐标位置信息,包括所述包围盒的顶点相对于所述传感器的方向信息与距离信息。
25、在上述实现过程中,通过利用包围盒中边缘作为待筛选物体的边缘,为了简化物体边缘确定过程以及轮廓弧度信息的确定过程,提高了数据输出效率。
26、进一步地,所述方法还包括:
27、若所述目标物体的所述多侧边缘的弧度差值大于第三阈值,根据圆周角与所述弧度差值的差值,更新所述多侧边缘中一侧边缘的弧度,以使更新后所述多侧边缘的弧度差值小于所述第三阈值;
28、所述遮挡比例是利用更新后的弧度确定的。
29、在上述实现过程中,对于分居于极轴的两侧的目标物体更新其边缘相对于传感器方向的弧度,使得位于极轴两侧的目标物体也能正确计算出其遮挡状态。
30、进一步地,所述遮挡筛选处理还包括:
31、若目标物体为所述第一顺位,确定所述目标物体在所述视野范围内所占的弧度为遮挡范围;
32、在目标物体为所述其他顺位的情况下,在所述遍历所有未遮挡物体前,若确定所述目标物体在所述遮挡范围内,确定所述目标物体为被遮挡物体。
33、在上述实现过程中,通过记录遮挡范围,使得若确定目标物体在遮挡范围内时,可以直接确定该目标物体为被遮挡物体,而无需再遍历所有未遮挡物体,从而节省了计算资源。
34、进一步地,所述遮挡筛选处理还包括:
35、若所述目标物体与未遮挡物体之间的遮挡状态为部分遮挡,根据所述目标物体的轮廓的至少一侧边缘相对于所述传感器方向的弧度更新所述遮挡范围。
36、在上述实现过程中,根据目标物体与未遮挡物体之间的遮挡状态更新遮挡范围,简化后续待筛选物体的遮挡筛选处理步骤,节省了计算资源。
37、进一步地,所述方法还包括:
38、若所有所述待筛选物体均完成所述遮挡筛选处理,和/或若所述遮挡范围与所述视野范围一致,输出所有所述未遮挡物体。
39、在上述实现过程中,当所有待筛选物体均完成遮挡筛选处理,和/或若遮挡范围与视野范围一致时,则退出遮挡筛选处理的循环,并输出所有未遮挡物体。通过设置循环退出条件,可以节省计算资源。
40、进一步地,所述方法还包括:
41、根据所有未遮挡物体的物体信息,建立车辆仿真场景模型;所述物体信息包括类型信息、形状信息、遮挡信息中的一种或多种。
42、在上述实现过程中,利用所有未遮挡物体的物体信息,建立车辆仿真场景模型,以渲染车辆仿真场景。实现了先基于数据筛选,再进行渲染的过程,满足了车辆仿真场景的需求。
43、本技术实施例第二方面提供了一种遮挡筛选装置,应用于车辆仿真场景中;所述装置包括:
44、获取模块,用于获取车载传感器视野范围内测得的各个待筛选物体的位置信息;
45、遮挡筛选模块,用于根据所述位置信息,按照从近到远的顺序从所有所述待筛选物体中确定目标物体,针对每个目标物体分别执行遮挡筛选处理,从所有所述待筛选物体中确定出未遮挡物体;
46、其中,所述遮挡筛选模块包括:
47、第一顺位子模块,用于若目标物体为所述顺序中的第一顺位,确定所述目标物体为未遮挡物体;
48、其他顺位子模块,用于若目标物体为所述顺序中的其他顺位,遍历所有未遮挡物体,根据所述目标物体与未遮挡物体之间的遮挡状态,确定所述目标物体为被遮挡物体或未遮挡物体。
49、本技术实施例第三方面提供了一种电子设备,所述电子设备包括:
50、处理器;
51、用于存储处理器可执行指令的存储器;
52、其中,所述处理器调用所述可执行指令时实现第一方面任一所述方法的操作。
53、本技术实施例第四方面提供了一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令被处理器执行时实现第一方面任一所述方法的步骤。