一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

AR导航内容生成方法和系统与流程

2022-04-13 14:16:59 来源:中国专利 TAG:

ar导航内容生成方法和系统
技术领域
1.本技术涉及增强现实技术领域,特别是涉及ar导航内容生成方法和系统。


背景技术:

2.传统导航技术利用gps(global positioning system,全球定位系统)和标注的路网寻找输入起点与终点之间满足一定条件的最优路径。该技术只能在设备端地图软件中显示二维路径,因缺乏与用户所处环境的交互从而使导航结果可观性差。ar(augmented reality,增强现实)导航实现了将3d内容与传统导航内容结合,使得导航信息输出更加丰富,在商场、博物馆、游乐馆等室内场景有着巨大的应用前景。ar导航中的3d内容主要包括路径点指示箭头、转弯处指示箭头、上下楼指示箭头以及到达目的地的指示图标,在具体实现中是以路径点属性表达的。这些内容通常是由内容制作平台完成,然后将其放置在经三维点云mesh后的地图中,这样每个内容便会携带点云坐标信息。在实际使用过程中,系统只需获取用户当前在点云算法坐标系下的位置信息,就能在移动设备中显示出制作的ar内容。
3.由于手机处于室外时,手机gps定位的误差大约在5m至20m之间,手机处于室内时,手机gps定位误差更大,甚至失效,因而相关技术在进行室内ar导航时,无法使用gps对手机进行定位,从而ar导航结果缺失了地球地理坐标系下的路径点经纬度信息和朝向信息,给用户带来了不便。
4.针对相关技术中,室内ar导航缺失地球地理坐标系下的路径点经纬度信息和朝向信息的问题,尚未提出有效的解决方案。


技术实现要素:

5.本技术实施例提供了一种ar导航内容生成方法和系统,以至少解决相关技术中室内ar导航缺失地球地理坐标系下的路径点经纬度信息和朝向信息的问题。
6.第一方面,本技术实施例提供了一种ar导航内容生成方法,所述方法包括:
7.根据导航起点和导航终点,执行路径规划算法,得到点云算法坐标系下的导航路径,其中,所述导航路径包括多个路径点;
8.融合地球地理坐标系、通用横轴墨卡托投影坐标系和点云算法坐标系,以确定每个路径点的属性信息,其中,所述属性信息包括:所述路径点在点云算法坐标系下的楼层信息、位姿信息、转弯信息和和对应ar内容的姿态信息,以及所述路径点在地球地理坐标系下的经纬度信息和朝向信息;
9.根据路径点的所述属性信息,生成与所述路径点相对应的ar导航内容。
10.在其中一些实施例中,所述转弯信息包括转弯属性和转弯角度,所述确定每个所述路径点的属性信息的过程包括:
11.设置导航起点的转弯属性为直行、转弯角度为0度;设置导航终点的转弯属性为到达目的地、转弯角度为0度;
12.按照楼层划分所述导航路径,得到每个楼层的导航子路径;确定导航起点对应的楼层数字是否大于导航终点对应的楼层数字,若是,设置除导航终点所在楼层外的其余楼层的最后一个路径点的转弯属性为下楼、转弯角度为0度,若否,设置除导航终点所在楼层外的其余楼层的最后一个路径点的转弯属性为上楼、转弯角度为0度;
13.对于除导航起点和各楼层的最后一个路径点外的其余路径点,确定并对应设置所述路径点的转弯属性和转弯角度。
14.在其中一些实施例中,所述确定并对应设置所述路径点的转弯属性和转弯角度的过程包括:
15.确定所述路径点的上一路径点、下一路径点,对应得到第一路径点、第二路径点;由所述路径点指向所述第一路径点得到第一向量,由所述路径点指向所述第二路径点得到第二向量;
16.计算所述第一向量和所述第二向量的叉乘值和夹角大小,并确定所述夹角大小是否在预设角度范围内,若否,则设置所述路径点的转弯属性为直行、转弯角度为0度;
17.若是,则在所述叉乘值大于0的情况下,设置所述路径点的转弯属性为右转、转弯角度为所述夹角大小,在所述叉乘值小于0的情况下,设置所述路径点的转弯属性为左转、转弯角度为所述夹角大小,在所述叉乘值等于0的情况下,设置所述路径点的转弯属性为直行、转弯角度为0度。
18.在其中一些实施例中,所述确定每个所述路径点的属性信息的过程包括:
19.确定每个所述路径点在点云算法坐标系下的位姿信息;
20.通过点云地图和地理地图对齐,得到每个所述路径点在横轴墨卡托投影坐标系下的位姿信息;通过地图投影库,将每个所述路径点在横轴墨卡托投影坐标系下的位姿信息,转换成每个所述路径点在地球地理坐标系下的所述经纬度信息和偏航方向信息;
21.根据所述偏航方向信息,确定所述朝向信息。
22.在其中一些实施例中,所述确定每个所述路径点的属性信息的过程还包括:
23.对于除各楼层的最后一个路径点外的其余路径点,根据所述路径点与其下一路径点所在直线,确定所述路径点在点云算法坐标系下的偏航信息,
24.根据所述偏航信息计算所述路径点对应欧拉角,并输入所述欧拉角至欧拉角转换旋转矩阵的函数,得到所述路径点对应的ar内容的姿态信息;
25.对于导航终点,设置所述导航终点对应的ar内容在点云算法坐标系下的姿态信息为单位阵。
26.在其中一些实施例中,所述确定出每个所述路径点的属性信息的过程还包括:
27.对于除导航终点外的各楼层的最后一个路径点,确定所述路径点对应楼梯;确定所述楼梯的起始点在地球地理坐标系下的经纬度信息和偏航方向信息;
28.通过地图投影库,将所述楼梯起始点在地球地理坐标系下的所述经纬度信息和所述偏航方向信息,转换成所述楼梯起始点在横轴墨卡托投影坐标系下的位置和方向信息;以所述位置为起点,沿所述方向延伸目标长度,得到目标位置点;确定所述目标位置点在横轴墨卡托投影坐标系下的位置和方向信息;
29.通过点云地图和地理地图对齐,并根据预设倾角确定所述楼梯起始点和所述目标位置在点云算法坐标系下的高度差,确定所述楼梯起始点和所述目标位置点在点云算法坐
标系下的坐标信息;
30.根据所述楼梯起始点和所述目标位置点在点云算法坐标系下的坐标信息,确定所述楼梯对应路径点的ar内容的姿态信息。
31.在其中一些实施例中,所述确定所述楼梯的起始点在地球地理坐标系下的经纬度信息和偏航方向信息的过程包括:
32.设置所述路径点位置为所述楼梯的起始点位置,确定所述楼梯起始点在地球地理坐标系下的经纬度信息;
33.根据预先在地理地图中标注各楼梯的楼梯方向,确定所述楼梯起始点在地球地理坐标系下的偏航方向信息。
34.第二方面,本技术实施例提供了一种ar导航内容生成系统,所述系统包括:
35.规划模块,用于根据导航起点和导航终点,执行路径规划算法,得到点云算法坐标系下的导航路径,其中,所述导航路径包括多个路径点;
36.融合模块,用于融合地球地理坐标系、通用横轴墨卡托投影坐标系和点云算法坐标系,以确定每个路径点的属性信息,其中,所述属性信息包括:所述路径点在点云算法坐标系下的楼层信息、位姿信息、转弯信息和和对应ar内容的姿态信息,以及所述路径点在地球地理坐标系下的经纬度信息和朝向信息;
37.生成模块,用于根据路径点的所述属性信息,生成与所述路径点相对应的ar导航内容。
38.第三方面,本技术实施例提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述ar导航内容生成方法。
39.第四方面,本技术实施例提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述ar导航内容生成方法。
40.相比于相关技术,本技术实施例提供的ar导航内容生成方法,通过根据导航起点和导航终点,执行路径规划算法,得到点云算法坐标系下的导航路径,其中,该导航路径包括多个路径点;融合地球地理坐标系、通用横轴墨卡托投影坐标系和点云算法坐标系,以确定每个路径点的属性信息,其中,该属性信息包括:路径点在点云算法坐标系下的楼层信息、位姿信息、转弯信息和和对应ar内容的姿态信息,以及该路径点在地球地理坐标系下的经纬度信息和朝向信息;根据路径点的属性信息,生成与该路径点相对应的ar导航内容,解决了相关技术中室内ar导航缺失地球地理坐标系下的路径点经纬度信息和朝向信息的问题,从而便于用户根据导航信息寻找到目的地所在位置。
附图说明
41.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
42.图1是根据本技术实施例的ar导航内容生成方法的应用环境示意图;
43.图2是根据本技术第一实施例的ar导航内容生成方法的流程图;
44.图3是根据本技术第二实施例的确定转弯信息的流程图;
45.图4是根据本技术第二实施例的确定其余路径点转弯信息的流程图;
可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本技术所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
61.本技术提供的ar导航内容生成方法,可以应用于如图1所示的应用环境中,图1是根据本技术实施例的ar导航内容生成方法的应用环境示意图,如图1所示,终端101通过网络与服务器102建立通信,当用户身处多层级的建筑中,需要导航时,该用户会在终端101中确定导航起点和导航终点,终端101发送导航起点和导航终点至服务器102,服务器102运行本技术实施例中的ar导航内容生成方法,并将生成的ar导航内容返回给终端101,终端101根据该ar导航内容和定位跟踪模块提供的用户当前的位姿信息,将内容制作者制作的内容呈现在设备显示器中;用户根据该设备显示器的显示内容的指示,到达导航终点所在位置,其中,终端101可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器102可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
62.本实施例提供了一种ar导航内容生成方法,图2是根据本技术第一实施例的ar导航内容生成方法的流程图,如图2所示,该流程包括如下步骤:
63.步骤s201,根据导航起点和导航终点,执行路径规划算法,得到点云算法坐标系下的导航路径,其中,该导航路径包括多个路径点;本实施例对路径规划算法和获取用户位置的定位算法的实现方式不做具体限定;
64.例如,输入点云算法坐标系下的导航起点坐标和导航终点坐标至路径规划模块,路径规划模块执行路径规划算法,生成点云算法坐标系下的导航路径:
65.path
alg
={ps,p1,

,pn,pg}
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式1
66.步骤s202,融合地球地理坐标系、通用横轴墨卡托投影坐标系(universal transverse mercator,简称utm)和点云算法坐标系,以确定每个路径点的属性信息,其中,该属性信息包括:该路径点在点云算法坐标系下的楼层信息、位姿信息、转弯信息和和对应ar内容的姿态信息,以及该路径点在地球地理坐标系下的经纬度信息和朝向信息;其中,该路径点在点云算法坐标系下的位姿信息和所在楼层信息在执行路径规划算法后就已得到;
67.步骤s203,根据路径点的该属性信息,生成与该路径点相对应的ar导航内容。
68.通过步骤s201至s203,相对于相关技术中室内ar导航缺失地球地理坐标系下的路径点经纬度信息和朝向信息的问题,本实施例根据点云算法坐标系下的路径点位姿信息,通过地球地理坐标系、通用横轴墨卡托投影坐标系和点云算法坐标系多坐标系间的转换,在不使用gps的情况下,获得比使用gps获得的地球地理坐标系下的路径点经纬度信息和朝向信息的精度更高的信息,解决了室内ar导航缺失地球地理坐标系下的路径点经纬度信息和朝向信息的问题,从而便于用户根据导航信息寻找到目的地所在位置。
69.可选的,在其中一些实施例中,转弯信息包括转弯属性和转弯角度,转弯属性包括直行、左转、右转、上楼、下楼和到达目的地,图3是根据本技术第二实施例的确定转弯信息的流程图,如图3所示,该流程包括如下步骤:
70.步骤s301,设置导航起点的转弯属性为直行、转弯角度为0度;设置导航终点的转弯属性为到达目的地、转弯角度为0度;例如,如果路径点是导航终点pg,那么将其转弯属性置为到达目的地,转弯角度设为0度,路径点是导航起点ps,那么将其转弯属性设为直行,转弯角度设为0度;
71.步骤s302,按照楼层划分该导航路径,得到每个楼层的导航子路径;确定导航起点对应的楼层数字是否大于导航终点对应的楼层数字,若是,设置除导航终点所在楼层外的其余楼层的最后一个路径点的转弯属性为下楼、转弯角度为0度,若否,设置除导航终点所在楼层外的其余楼层的最后一个路径点的转弯属性为上楼、转弯角度为0度;
72.例如,根据路径点携带的楼层信息,将相同楼层的路径点归入同一集合内,从而按楼层将导航路径划分为多段导航子路径的集合:
73.path
level_m
={ps,p1,...,pm},...,path
level_n
={p
l
,p
l 1
,...,pn,pg}
ꢀꢀꢀꢀꢀꢀꢀ
公式2
74.其中level_m表示导航起点所在楼层,level_n表示导航终点所在楼层;
75.若level_m》level_n,那么path
level_m
,...,path
level_n-1
对应的最后一个路径点(上下楼对应的路径点)的转弯属性设置为下楼,转弯角度设为0度;反之则设置为上楼,转弯角度为0度;
76.步骤s303,对于除导航起点和各楼层的最后一个路径点外的其余路径点,确定并对应设置该路径点的转弯属性和转弯角度;
77.具体的,确定其余路径点转弯信息可以由相邻路径点之间的几何关系计算得到,图4是根据本技术第二实施例的确定其余路径点转弯信息的流程图,如图4所示,该流程包括如下步骤:
78.步骤s401,确定该路径点的上一路径点、下一路径点,对应得到第一路径点、第二路径点;由该路径点指向该第一路径点得到第一向量,由该路径点指向该第二路径点得到第二向量;例如,设当前路径点为pm,其上一个路径点p
m-1
,下一个路径点p
m 1
,三个路径点可构成向量和
79.步骤s402,计算该第一向量和该第二向量的叉乘值和夹角大小,并确定该夹角大小是否在预设角度范围内,若否,则设置该路径点的转弯属性为直行、转弯角度为0度;例如,计算向量与向量的叉乘为:
[0080][0081]
计算这两个向量之间的夹角angle:
[0082][0083]
设置threshold
min
为预设的角度阈值下限,threshold
max
为预设的角度阈值上限,确定该夹角angle是否在threshold
min
和threshold
max
之间;
[0084]
步骤s403,若是,则在该叉乘值大于0的情况下,设置该路径点的转弯属性为右转、转弯角度为该夹角大小,在该叉乘值小于0的情况下,设置该路径点的转弯属性为左转、转弯角度为该夹角大小,在该叉乘值等于0的情况下,设置该路径点的转弯属性为直行、转弯角度为0度;
[0085]
例如,在threshold
max
》angle》threshold
min
且v
cross
》0的情况下,设置路径点pm的转弯属性为右转,转弯角度设为angle;若threshold
max
》angle》threshold
min
且v
cross
《0,设置路径点pm的转弯属性为左转,转弯角度设为angle;其余情况,设置该路径点的转弯属性为直
行、转弯角度为0度。
[0086]
通过步骤s301至s303,以及步骤s401至s403,本实施例实现了属性信息中的转弯信息的确定,并且本实施例利用路径点的几何关系自动计算转弯属性,这种方式只与路径规划模块输出的结果有关,不受其他因素的影响,稳定性高,不易出错。
[0087]
具体的,图5是根据本技术第三实施例的确定转弯信息的示意图,如图5所示,导航起点位于1楼,导航终点位于2楼,利用路径规划算法来获取路径,可得:
[0088]
path
alg
={ps,p1,p2,p3,p4,p5,p6,pg}
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式5
[0089]
根据路径点携带的楼层信息,将导航路径按照楼层分为两段导航子路径:
[0090]
path
level1
={ps,p1,p2,p3},path
level2
={p4,p5,p6,pg}
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式6
[0091]
将导航起点ps转弯属性设为直行,转弯角度置为0度,将导航终点pg转弯属性设为到达目的地,转弯角度置为0度;
[0092]
导航起点ps位于一楼路径点集合中,而导航终点pg位于二楼路径点集合中,因此将一楼路径点集合最后一个路径点p3的转弯属性设为上楼,转弯角度设为0;
[0093]
按顺序处理其他路径点:取第一个路径点p1,p1的上一个路径点为ps,下一个路径点为p2,对应的两个向量为和求解与叉乘结果,并判断出结果大于0,同时计算得到向量之间夹角angle
p1
,并判断出angle
p1
符合角度阈值区间,由此将p1的转弯属性设为右转,转弯角度设为angle
p1
;以相同方法,得到其余路径点的转弯属性和转弯角度。
[0094]
可选的,属性信息中的经纬度信息和朝向信息可以通过多坐标系的坐标对齐得到,图6是根据本技术第四实施例的多坐标系示意图,如图6所示,本实施例中使用的坐标系包括地球地理坐标系、通用横轴墨卡托投影坐标系(简称utm)和点云算法坐标系(简称alg),其中:
[0095]
地球地理坐标系与通用横轴墨卡托投影坐标系之间的转换可通过地图投影库proj实现:
[0096]
(lon,lat)=proj(x
utm
,y
utm
) 公式7
[0097]
通用横轴墨卡托投影坐标系与点云算法坐标系之间通过点云地图和地理地图对齐(利用同一物体在两个坐标系中的物理尺寸相同的原理)获取转换关系:
[0098][0099]
其中,表示将点云算法坐标系转换到通用横轴墨卡托投影坐标系的转换矩阵。
[0100]
具体的,在其中一些实施例中,图7是根据本技术第四实施例的确定经纬度信息和朝向信息的流程图,如图7所示,该流程包括如下步骤:
[0101]
步骤s701,确定每个该路径点在点云算法坐标系下的位姿信息;
[0102]
步骤s702,通过点云地图和地理地图对齐,得到每个该路径点在横轴墨卡托投影坐标系下的位姿信息;通过地图投影库,将每个该路径点在横轴墨卡托投影坐标系下的位姿信息,转换成每个该路径点在地球地理坐标系下的该经纬度信息和偏航方向信息;
[0103]
例如,根据每个路径点在点云算法坐标系下的位置信息和多坐标对齐公式,可获取该路径点在地球地理坐标系下的经纬度坐标,根据每个路径点在点云算法坐标系下的方向信息和和多坐标对齐公式,可获取该路径点在地球地理坐标系下的偏航方向信息;
[0104]
步骤s703,根据该偏航方向信息,确定该朝向信息,例如,根据路径点在地球地理
坐标系下的偏航方向信息,以正北为基准,顺时针转动角度对应[0,360],可获取该路径点在地球地理坐标系下的朝向信息。
[0105]
通过步骤s701至s703,本实施例利用同一物体在不同坐标系下的物理尺寸相同的特性,将地理坐标系与点云算法坐标系对齐,并将路径规划模块计算得到的算法坐标转换为经纬度坐标,实现了ar导航中路径和用户位置可在地理地图中显示的功能。
[0106]
由于路径规划算法只能给出路径点位置信息,无法获取该路径点上放置的ar内容的姿态信息,所以需要根据路径规划算法得到的信息去计算姿态信息,其中,图8是根据本技术第五实施例的姿态信息对ar内容显示的影响的示意图,如图8所示,路径点ar内容的姿态信息是指物体本体坐标系相对于点云算法坐标系在三维空间中的相对旋转量,它决定了ar内容在空间中表现形式。
[0107]
可选的,在其中一些实施例中,图9是根据本技术第五实施例的确定属性信息中的对应ar内容的姿态信息的流程图,如图9所示,该流程包括如下步骤:
[0108]
步骤s901,对于除各楼层的最后一个路径点外的其余路径点,根据该路径点与其下一路径点所在直线,确定该路径点在点云算法坐标系下的偏航信息;根据该偏航信息计算该路径点对应欧拉角,并输入该欧拉角至欧拉角转换旋转矩阵的函数,得到该路径点对应的ar内容的姿态信息;
[0109]
例如,考虑到路径点放置的内容分为两类,分别为普通指示内容和特殊指示内容,其中普通指示内容是指上下楼以及导航终点之外的路径点放置的内容,它的特点是放置时只考虑偏航方向(绕点云算法坐标系z轴转动),横滚和俯仰默认设定为0,因此,可设当前路径点为pm,下一个路径点为p
m 1
,已知点云算法坐标系下路径点pm和路径点p
m 1
的位置坐标分别为(xm,ym)和(x
m 1
,y
m 1
),则普通路径点ar内容的姿态计算方式如下:
[0110]
计算当前路径点到下一个路径点的向量坐标:
[0111]
向量包含了路径点pm在点云算法坐标系下的偏航信息,即:
[0112][0113]
根据偏航信息可得路径点pm的欧拉角为angle
euler
=(yaw
pm
,0,0),将欧拉角代入欧拉角转换旋转矩阵的函数,得到路径点pm对应的ar内容的姿态信息为:
[0114][0115]
其中,

zxy’为欧拉角的转换顺序;
[0116]
步骤s902,对于导航终点,设置该导航终点对应的ar内容在点云算法坐标系下的姿态信息为单位阵;例如,对于导航终点,设置其放置的内容在点云算法坐标系下的位姿为单位阵:图10是根据本技术第五实施例的普通路径点的指示内容与导航终点的指示内容的示意图,如图10所示,无论处于什么样的环境,导航终点的指示内容的本体坐标系与点云算法坐标系始终对齐;
[0117]
步骤s903,对于除导航终点外的各楼层的最后一个路径点(指示内容为上下楼),确定该路径点对应的ar内容的姿态信息,其中,除导航终点外的各楼层的最后一个路径点
为各楼层的楼梯起始点。
[0118]
具体地,图11是根据本技术第五实施例的确定上下楼的ar内容的姿态信息的流程图,如图11所示,该流程包括如下步骤:
[0119]
步骤s1101,对于除导航终点外的各楼层的最后一个路径点,确定该路径点对应楼梯;确定该楼梯的起始点在地球地理坐标系下的经纬度信息和偏航方向信息;具体地,设置该路径点位置为该楼梯的起始点位置,从而确定出该楼梯起始点在地球地理坐标系下的经纬度信息;根据预先在地理地图中标注各楼梯的楼梯方向,从而确定出该楼梯起始点在地球地理坐标系下的偏航方向信息;
[0120]
需要说明的是,对于特殊指示内容中的上下楼内容,因为很多场景要求上下楼内容的指示箭头要朝向楼梯方向,但是由于同一建筑物中的楼梯方向是不同的,如果想要呈现指向楼梯方向的效果,在相关技术中,需要内容制作工程师在点云算法地图中为每个楼梯放置一个ar内容,而且实际使用时无法改变与地面之间的倾斜角,所以该种方式在实际应用中不仅费时,而且生成的内容包体较大;
[0121]
为了解决这个问题,本实施例采用在地理地图中标注楼梯方向,并利用多坐标对齐公式将方向信息映射到点云算法坐标系中;图12是根据本技术第五实施例的建筑物的地理地图示意图,如图12所示,对于地理地图(例如,百度、高德等地图)来说,其标注技术成熟,标注难度较低,只需要在网页端添加地图元素,并在2d地图中标注箭头,即可用来代表楼梯的朝向信息,该朝向信息以正北为基准,顺时针转动[0,360],便可得到地理坐标系下的方向:angle
geo
=θ
geo

[0122]
特别的,预先在网页端添加地图元素时,可以为楼梯设置长边,进而便于在地理地图中标注各楼梯的楼梯方向时,统一地将楼梯的方向标注为长边所指方向,从而快速完成所有楼梯的方向标记;
[0123]
步骤s1102,通过地图投影库,将该楼梯起始点在地球地理坐标系下的该经纬度信息和该偏航方向信息,转换成该楼梯起始点在横轴墨卡托投影坐标系下的位置和方向信息;以该位置为起点,沿该方向延伸目标长度,得到目标位置点;确定该目标位置点在横轴墨卡托投影坐标系下的位置和方向信息;
[0124]
例如,计算上下楼ar内容在点云算法坐标系下的姿态,假设楼梯内容放置点pm在地理坐标系下的楼梯朝向为angle
geo
=θ
geo
,位置为pos
geo
=(lon,lat),那么根据公式7可得通用横轴墨卡托投影坐标系下的坐标为由于通用横轴墨卡托投影坐标系是一个标准的笛卡尔坐标系,所以可采用向量延伸法来获取pm楼梯方向angle
geo
前1m延伸点p'm;图13是根据本技术第五实施例的向量延伸的示意图,如图13所示,p'm、pm与y轴可构成一个直角三角形,所以可利用正弦余弦公式可计算p'm位置信息,需要注意的是,楼梯的方向角的范围是[0,360],而通用的正弦余弦计算方式的角度范围为[-180,180],所以当θ
geo
》180
°
时,对楼梯方向角度作以下处理:θ
geo
=θ
geo-360
°
,最终可计算得到p'm在通用横轴墨卡托投影坐标系下的坐标为:
[0125][0126]
步骤s1103,通过点云地图和地理地图对齐,并根据预设倾角确定该楼梯起始点和
该目标位置在点云算法坐标系下的高度差,确定楼梯起始点和目标位置点在点云算法坐标系下的坐标信息;
[0127]
例如,根据公式8,可将pm和p'm在通用横轴墨卡托投影坐标系下的坐标转换为点云算法坐标系下的坐标:
[0128][0129]
楼梯内容放置点pm作为上下楼ar内容的起点,其算法坐标为1m延伸点p'm作为上下楼ar内容的末端点,其算法坐标为而末端点的高度h结果计算方式如下:
[0130]
h=||pmp'm||tan(α)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式13
[0131]
其中公式13中的||pmp'm||=1,α为系统配置文件中设置的ar内容与地面的倾角,如果楼梯内容放置点pm的转弯属性为上楼,那么h=-|h|,如果pm的转弯属性为下楼,那么h=|h|;
[0132]
步骤s1104,根据该楼梯起始点和该目标位置点在点云算法坐标系下的坐标信息,确定该楼梯对应路径点的ar内容的姿态信息;
[0133]
例如,图14是根据本技术第五实施例的生成上、下楼ar内容的示意图,如图14所示,根据楼梯内容放置点pm和1m延伸点p'm的算法坐标获取ar内容x轴向量:
[0134][0135]
由于上下楼内容不考虑横滚角的变化,所以可以利用点云算法坐标系z轴方向z
norm
=(0,0,1)和ar内容x轴向量的叉乘作为ar内容y轴:
[0136][0137]
获取ar内容x轴和y轴之后,再利用叉乘就能获取ar内容z轴:
[0138]
zb=xb×
yb=(h*xa,-h*yb,x
a2-ya*yb)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式16
[0139]
在公式16中,
[0140]
将上下楼ar内容的本体坐标系的三个坐标轴按列存储即可获取点云算法坐标系下的姿态信息:
[0141][0142]
通过步骤s1101至s1104,实现了上下楼的ar内容的姿态信息的确定,并且,本实施例还至少可以达到以下两个有益效果:
[0143]
第一,由于在相关技术中,三维点云mesh后的地图质量依赖于点云的质量,如果重建的三维mesh地图质量较差,那么放置3d内容的位置和方向精度会受到限制,而在本实施
例中,是预先在地理地图中标注各楼梯的楼梯方向,并以此为准来确定ar内容的姿态信息,由于在地理地图中绘制的线条比三维点云更加精准,因此本实施例中放置的3d内容的位置和方向精度更高;
[0144]
第二,在相关技术中,内容制作平台生成的ar内容样式是固定的,无法满足实际环境中不同形式内容呈现的需求,而如果改成每个位置都放置3d内容,则又会增加内容包的包体以及制作的复杂度,本实施例在标注方向信息更为简单的地理地图中标注楼梯方向,有效降低了制作成本以及内容包体大小,并通过坐标对齐将地理地图中标注楼梯方向转换为点云算法坐标系下的方向信息,利用向量叉乘和点云算法坐标系z轴方向获取内容本体坐标系,并将内容本体坐标系按列存储获取在点云算法坐标系下的姿态信息,这种方式可通过配置文件改变上下楼指示内容的仰俯角,并且上下楼指示内容在横滚方向上与楼梯本体始终保持一致,从而避免了内容开发者需要为每个楼梯配置不同内容的缺陷。
[0145]
另外,结合上述实施例中的ar导航内容生成方法,本技术实施例可提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种ar导航内容生成方法。
[0146]
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种ar导航内容生成方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
[0147]
在一个实施例中,图15是根据本技术实施例的电子设备的内部结构示意图,如图15所示,提供了一种电子设备,该电子设备可以是服务器,其内部结构图可以如图15所示。该电子设备包括通过内部总线连接的处理器、网络接口、内存储器和非易失性存储器,其中,该非易失性存储器存储有操作系统、计算机程序和数据库。处理器用于提供计算和控制能力,网络接口用于与外部的终端通过网络连接通信,内存储器用于为操作系统和计算机程序的运行提供环境,计算机程序被处理器执行时以实现一种ar导航内容生成方法,数据库用于存储数据。
[0148]
本领域技术人员可以理解,图15中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0149]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括
随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
[0150]
本领域的技术人员应该明白,以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0151]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献