本技术涉及定位及图像处理领域,尤其涉及一种点云地图更新的方法及设备。
背景技术:
1、视觉定位系统(visual positioning system,vps)是基于终端设备采集的图像,对终端设备进行定位的技术。例如,终端设备采集周围环境获得第一图像,通过将第一图像与数据库中的预存的图像匹配,得到数据库中与第一图像匹配度最高的第二图像,根据第二图像的拍摄位置确定当前终端设备所在位置。
2、可以看出,vps定位技术是以环境图像作为匹配粒度进行定位的,并且随着图像拍摄的时间、频次、角度等的调整,图像可以实现及时准确地反映现实世界环境的变化。而该及时准确的环境变化数据正是用于地图更新的关键数据。因此,如何将vps定位技术应用于地图更新,提高地图更新的准确性和时效性,成为值得关注的问题。
技术实现思路
1、本技术实施例提供了一种点云地图更新的方法及设备,通过借助时间维度和新旧环境图像之间的特征匹配关系及不同类型图像的数量信息,解决点云地图更新效率低的问题。
2、第一方面,提供了一种点云地图更新的方法,应用于云端,所述方法包括:
3、获取终端设备发送的图像信息,所述图像信息包括第一区域的图像和所述第一区域的图像对应的位置信息;
4、根据所述第一区域的图像对应的位置信息,通过视觉定位系统vps获取所述图像的定位结果,其中,定位结果准确的图像为正常定位图像,定位结果不准确的图像为异常定位图像;
5、根据异常定位图像的数量获取是否需要更新所述第一区域对应的点云地图;
6、当需要更新所述第一区域对应的点云地图时,获取所述第一区域对应的场景图,所述场景图的节点为具有特征匹配关系的所述正常定位图像和所述异常定位图像,所述场景图的边为所述节点对应的图像之间匹配的特征数目;
7、根据所述场景图中所述正常定位图像的数量和所述异常定位图像的数量,更新所述第一区域对应的点云地图。
8、根据本实现方式提供的点云地图更新的方法,通过云端与终端设备的交互获取已建图区域的图像,并基于vps定位技术判断对点云地图更新的必要性,能够实现无需过度耗费人力,不仅极大地节约了地图更新的成本,还更加智能化地提升了点云地图更新时机的准确性,保证了点云地图鲜度。此外,本方法在更新之前基于构建的场景图判断新旧部分的点云地图的融合性,能够保证更新部分更好地融合到原有的离线三维模型中,获取融合效果更好的点云地图。
9、结合第一方面,在第一方面的某些实现方式中,所述方法还包括:
10、存储离线三维模型,所述离线三维模型对应的区域为已建图区域;其中,
11、所述离线三维模型包括第一部分和其他部分,所述第一部分为未更新的所述第一区域对应的点云地图,所述其他部分为所述已建图区域中剩余其他区域对应的点云地图。
12、在一种实现方式中,剩余其他区域是指已建图区域中除第一gps区域之外的区域,例如可以对应下文图2中箭头所指的gps区域之外的其它区域。
13、在一种实现方式中,云端将已建图区域划分为多个小块的gps区域,这些gps区域包括第一gps区域。其中,云端可以将这些小块的gps区域作为点云地图更新的处理单元,避免一次性处理规模较大的点云地图更新数据,提高数据处理的灵活性和稳定性。
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、第四方面,提供了一种计算机程序产品,所述计算机程序产品包括计算机程序代码,当所述计算机程序代码在计算机上运行时,使所述计算机执行如上述第一方面中任一实现方式所述的方法。