CN114323017B - Ar导航内容生成方法和系统 - Google Patents
Ar导航内容生成方法和系统 Download PDFInfo
- Publication number
- CN114323017B CN114323017B CN202111396806.3A CN202111396806A CN114323017B CN 114323017 B CN114323017 B CN 114323017B CN 202111396806 A CN202111396806 A CN 202111396806A CN 114323017 B CN114323017 B CN 114323017B
- Authority
- CN
- China
- Prior art keywords
- point
- path
- information
- coordinate system
- navigation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Navigation (AREA)
Abstract
本申请涉及一种AR导航内容生成方法和系统,其中,该AR导航内容生成方法包括:根据导航起点和导航终点,执行路径规划算法,得到点云算法坐标系下的导航路径,其中,该导航路径包括多个路径点;融合地球地理坐标系、通用横轴墨卡托投影坐标系和点云算法坐标系,以确定每个路径点的属性信息;根据路径点的属性信息,生成与该路径点相对应的AR导航内容,通过本申请,解决了相关技术中室内AR导航缺失地球地理坐标系下的路径点经纬度信息和朝向信息的问题,从而便于用户根据导航信息寻找到目的地所在位置。
Description
技术领域
本申请涉及增强现实技术领域,特别是涉及AR导航内容生成方法和系统。
背景技术
传统导航技术利用GPS(Global Positioning System,全球定位系统)和标注的路网寻找输入起点与终点之间满足一定条件的最优路径。该技术只能在设备端地图软件中显示二维路径,因缺乏与用户所处环境的交互从而使导航结果可观性差。AR(AugmentedReality,增强现实)导航实现了将3D内容与传统导航内容结合,使得导航信息输出更加丰富,在商场、博物馆、游乐馆等室内场景有着巨大的应用前景。AR导航中的3D内容主要包括路径点指示箭头、转弯处指示箭头、上下楼指示箭头以及到达目的地的指示图标,在具体实现中是以路径点属性表达的。这些内容通常是由内容制作平台完成,然后将其放置在经三维点云mesh后的地图中,这样每个内容便会携带点云坐标信息。在实际使用过程中,系统只需获取用户当前在点云算法坐标系下的位置信息,就能在移动设备中显示出制作的AR内容。
由于手机处于室外时,手机GPS定位的误差大约在5m至20m之间,手机处于室内时,手机GPS定位误差更大,甚至失效,因而相关技术在进行室内AR导航时,无法使用GPS对手机进行定位,从而AR导航结果缺失了地球地理坐标系下的路径点经纬度信息和朝向信息,给用户带来了不便。
针对相关技术中,室内AR导航缺失地球地理坐标系下的路径点经纬度信息和朝向信息的问题,尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种AR导航内容生成方法和系统,以至少解决相关技术中室内AR导航缺失地球地理坐标系下的路径点经纬度信息和朝向信息的问题。
第一方面,本申请实施例提供了一种AR导航内容生成方法,所述方法包括:
根据导航起点和导航终点,执行路径规划算法,得到点云算法坐标系下的导航路径,其中,所述导航路径包括多个路径点;
融合地球地理坐标系、通用横轴墨卡托投影坐标系和点云算法坐标系,以确定每个路径点的属性信息,其中,所述属性信息包括:所述路径点在点云算法坐标系下的楼层信息、位姿信息、转弯信息和和对应AR内容的姿态信息,以及所述路径点在地球地理坐标系下的经纬度信息和朝向信息;
根据路径点的所述属性信息,生成与所述路径点相对应的AR导航内容。
在其中一些实施例中,所述转弯信息包括转弯属性和转弯角度,所述确定每个所述路径点的属性信息的过程包括:
设置导航起点的转弯属性为直行、转弯角度为0度;设置导航终点的转弯属性为到达目的地、转弯角度为0度;
按照楼层划分所述导航路径,得到每个楼层的导航子路径;确定导航起点对应的楼层数字是否大于导航终点对应的楼层数字,若是,设置除导航终点所在楼层外的其余楼层的最后一个路径点的转弯属性为下楼、转弯角度为0度,若否,设置除导航终点所在楼层外的其余楼层的最后一个路径点的转弯属性为上楼、转弯角度为0度;
对于除导航起点和各楼层的最后一个路径点外的其余路径点,确定并对应设置所述路径点的转弯属性和转弯角度。
在其中一些实施例中,所述确定并对应设置所述路径点的转弯属性和转弯角度的过程包括:
确定所述路径点的上一路径点、下一路径点,对应得到第一路径点、第二路径点;由所述路径点指向所述第一路径点得到第一向量,由所述路径点指向所述第二路径点得到第二向量;
计算所述第一向量和所述第二向量的叉乘值和夹角大小,并确定所述夹角大小是否在预设角度范围内,若否,则设置所述路径点的转弯属性为直行、转弯角度为0度;
若是,则在所述叉乘值大于0的情况下,设置所述路径点的转弯属性为右转、转弯角度为所述夹角大小,在所述叉乘值小于0的情况下,设置所述路径点的转弯属性为左转、转弯角度为所述夹角大小,在所述叉乘值等于0的情况下,设置所述路径点的转弯属性为直行、转弯角度为0度。
在其中一些实施例中,所述确定每个所述路径点的属性信息的过程包括:
确定每个所述路径点在点云算法坐标系下的位姿信息;
通过点云地图和地理地图对齐,得到每个所述路径点在横轴墨卡托投影坐标系下的位姿信息;通过地图投影库,将每个所述路径点在横轴墨卡托投影坐标系下的位姿信息,转换成每个所述路径点在地球地理坐标系下的所述经纬度信息和偏航方向信息;
根据所述偏航方向信息,确定所述朝向信息。
在其中一些实施例中,所述确定每个所述路径点的属性信息的过程还包括:
对于除各楼层的最后一个路径点外的其余路径点,根据所述路径点与其下一路径点所在直线,确定所述路径点在点云算法坐标系下的偏航信息,
根据所述偏航信息计算所述路径点对应欧拉角,并输入所述欧拉角至欧拉角转换旋转矩阵的函数,得到所述路径点对应的AR内容的姿态信息;
对于导航终点,设置所述导航终点对应的AR内容在点云算法坐标系下的姿态信息为单位阵。
在其中一些实施例中,所述确定出每个所述路径点的属性信息的过程还包括:
对于除导航终点外的各楼层的最后一个路径点,确定所述路径点对应楼梯;确定所述楼梯的起始点在地球地理坐标系下的经纬度信息和偏航方向信息;
通过地图投影库,将所述楼梯起始点在地球地理坐标系下的所述经纬度信息和所述偏航方向信息,转换成所述楼梯起始点在横轴墨卡托投影坐标系下的位置和方向信息;以所述位置为起点,沿所述方向延伸目标长度,得到目标位置点;确定所述目标位置点在横轴墨卡托投影坐标系下的位置和方向信息;
通过点云地图和地理地图对齐,并根据预设倾角确定所述楼梯起始点和所述目标位置在点云算法坐标系下的高度差,确定所述楼梯起始点和所述目标位置点在点云算法坐标系下的坐标信息;
根据所述楼梯起始点和所述目标位置点在点云算法坐标系下的坐标信息,确定所述楼梯对应路径点的AR内容的姿态信息。
在其中一些实施例中,所述确定所述楼梯的起始点在地球地理坐标系下的经纬度信息和偏航方向信息的过程包括:
设置所述路径点位置为所述楼梯的起始点位置,确定所述楼梯起始点在地球地理坐标系下的经纬度信息;
根据预先在地理地图中标注各楼梯的楼梯方向,确定所述楼梯起始点在地球地理坐标系下的偏航方向信息。
第二方面,本申请实施例提供了一种AR导航内容生成系统,所述系统包括:
规划模块,用于根据导航起点和导航终点,执行路径规划算法,得到点云算法坐标系下的导航路径,其中,所述导航路径包括多个路径点;
融合模块,用于融合地球地理坐标系、通用横轴墨卡托投影坐标系和点云算法坐标系,以确定每个路径点的属性信息,其中,所述属性信息包括:所述路径点在点云算法坐标系下的楼层信息、位姿信息、转弯信息和和对应AR内容的姿态信息,以及所述路径点在地球地理坐标系下的经纬度信息和朝向信息;
生成模块,用于根据路径点的所述属性信息,生成与所述路径点相对应的AR导航内容。
第三方面,本申请实施例提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述AR导航内容生成方法。
第四方面,本申请实施例提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述AR导航内容生成方法。
相比于相关技术,本申请实施例提供的AR导航内容生成方法,通过根据导航起点和导航终点,执行路径规划算法,得到点云算法坐标系下的导航路径,其中,该导航路径包括多个路径点;融合地球地理坐标系、通用横轴墨卡托投影坐标系和点云算法坐标系,以确定每个路径点的属性信息,其中,该属性信息包括:路径点在点云算法坐标系下的楼层信息、位姿信息、转弯信息和和对应AR内容的姿态信息,以及该路径点在地球地理坐标系下的经纬度信息和朝向信息;根据路径点的属性信息,生成与该路径点相对应的AR导航内容,解决了相关技术中室内AR导航缺失地球地理坐标系下的路径点经纬度信息和朝向信息的问题,从而便于用户根据导航信息寻找到目的地所在位置。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的AR导航内容生成方法的应用环境示意图;
图2是根据本申请第一实施例的AR导航内容生成方法的流程图;
图3是根据本申请第二实施例的确定转弯信息的流程图;
图4是根据本申请第二实施例的确定其余路径点转弯信息的流程图;
图5是根据本申请第三实施例的确定转弯信息的示意图;
图6是根据本申请第四实施例的多坐标系示意图;
图7是根据本申请第四实施例的确定经纬度信息和朝向信息的流程图;
图8是根据本申请第五实施例的姿态信息对AR内容显示的影响的示意图;
图9是根据本申请第五实施例的确定属性信息中的对应AR内容的姿态信息的流程图;
图10是根据本申请第五实施例的普通路径点的指示内容与导航终点的指示内容的示意图;
图11是根据本申请第五实施例的确定上下楼的AR内容的姿态信息的流程图;
图12是根据本申请第五实施例的建筑物的地理地图示意图;
图13是根据本申请第五实施例的向量延伸的示意图;
图14是根据本申请第五实施例的生成上、下楼AR内容的示意图;
图15是根据本申请实施例的电子设备的内部结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
本申请提供的AR导航内容生成方法,可以应用于如图1所示的应用环境中,图1是根据本申请实施例的AR导航内容生成方法的应用环境示意图,如图1所示,终端101通过网络与服务器102建立通信,当用户身处多层级的建筑中,需要导航时,该用户会在终端101中确定导航起点和导航终点,终端101发送导航起点和导航终点至服务器102,服务器102运行本申请实施例中的AR导航内容生成方法,并将生成的AR导航内容返回给终端101,终端101根据该AR导航内容和定位跟踪模块提供的用户当前的位姿信息,将内容制作者制作的内容呈现在设备显示器中;用户根据该设备显示器的显示内容的指示,到达导航终点所在位置,其中,终端101可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器102可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
本实施例提供了一种AR导航内容生成方法,图2是根据本申请第一实施例的AR导航内容生成方法的流程图,如图2所示,该流程包括如下步骤:
步骤S201,根据导航起点和导航终点,执行路径规划算法,得到点云算法坐标系下的导航路径,其中,该导航路径包括多个路径点;本实施例对路径规划算法和获取用户位置的定位算法的实现方式不做具体限定;
例如,输入点云算法坐标系下的导航起点坐标和导航终点坐标至路径规划模块,路径规划模块执行路径规划算法,生成点云算法坐标系下的导航路径:
Pathalg={ps,p1,…,pn,pg} 公式1
步骤S202,融合地球地理坐标系、通用横轴墨卡托投影坐标系(UniversalTransverse Mercator,简称UTM)和点云算法坐标系,以确定每个路径点的属性信息,其中,该属性信息包括:该路径点在点云算法坐标系下的楼层信息、位姿信息、转弯信息和和对应AR内容的姿态信息,以及该路径点在地球地理坐标系下的经纬度信息和朝向信息;其中,该路径点在点云算法坐标系下的位姿信息和所在楼层信息在执行路径规划算法后就已得到;
步骤S203,根据路径点的该属性信息,生成与该路径点相对应的AR导航内容。
通过步骤S201至S203,相对于相关技术中室内AR导航缺失地球地理坐标系下的路径点经纬度信息和朝向信息的问题,本实施例根据点云算法坐标系下的路径点位姿信息,通过地球地理坐标系、通用横轴墨卡托投影坐标系和点云算法坐标系多坐标系间的转换,在不使用GPS的情况下,获得比使用GPS获得的地球地理坐标系下的路径点经纬度信息和朝向信息的精度更高的信息,解决了室内AR导航缺失地球地理坐标系下的路径点经纬度信息和朝向信息的问题,从而便于用户根据导航信息寻找到目的地所在位置。
可选的,在其中一些实施例中,转弯信息包括转弯属性和转弯角度,转弯属性包括直行、左转、右转、上楼、下楼和到达目的地,图3是根据本申请第二实施例的确定转弯信息的流程图,如图3所示,该流程包括如下步骤:
步骤S301,设置导航起点的转弯属性为直行、转弯角度为0度;设置导航终点的转弯属性为到达目的地、转弯角度为0度;例如,如果路径点是导航终点pg,那么将其转弯属性置为到达目的地,转弯角度设为0度,路径点是导航起点ps,那么将其转弯属性设为直行,转弯角度设为0度;
步骤S302,按照楼层划分该导航路径,得到每个楼层的导航子路径;确定导航起点对应的楼层数字是否大于导航终点对应的楼层数字,若是,设置除导航终点所在楼层外的其余楼层的最后一个路径点的转弯属性为下楼、转弯角度为0度,若否,设置除导航终点所在楼层外的其余楼层的最后一个路径点的转弯属性为上楼、转弯角度为0度;
例如,根据路径点携带的楼层信息,将相同楼层的路径点归入同一集合内,从而按楼层将导航路径划分为多段导航子路径的集合:
Pathlevel_m={ps,p1,...,pm},...,Pathlevel_n={pl,pl+1,...,pn,pg} 公式2
其中level_m表示导航起点所在楼层,level_n表示导航终点所在楼层;
若level_m>level_n,那么Pathlevel_m,...,Pathlevel_n-1对应的最后一个路径点(上下楼对应的路径点)的转弯属性设置为下楼,转弯角度设为0度;反之则设置为上楼,转弯角度为0度;
步骤S303,对于除导航起点和各楼层的最后一个路径点外的其余路径点,确定并对应设置该路径点的转弯属性和转弯角度;
具体的,确定其余路径点转弯信息可以由相邻路径点之间的几何关系计算得到,图4是根据本申请第二实施例的确定其余路径点转弯信息的流程图,如图4所示,该流程包括如下步骤:
步骤S401,确定该路径点的上一路径点、下一路径点,对应得到第一路径点、第二路径点;由该路径点指向该第一路径点得到第一向量,由该路径点指向该第二路径点得到第二向量;例如,设当前路径点为pm,其上一个路径点pm-1,下一个路径点pm+1,三个路径点可构成向量和/>
步骤S402,计算该第一向量和该第二向量的叉乘值和夹角大小,并确定该夹角大小是否在预设角度范围内,若否,则设置该路径点的转弯属性为直行、转弯角度为0度;例如,计算向量与向量/>的叉乘为:
计算这两个向量之间的夹角angle:
设置thresholdmin为预设的角度阈值下限,thresholdmax为预设的角度阈值上限,确定该夹角angle是否在thresholdmin和thresholdmax之间;
步骤S403,若是,则在该叉乘值大于0的情况下,设置该路径点的转弯属性为右转、转弯角度为该夹角大小,在该叉乘值小于0的情况下,设置该路径点的转弯属性为左转、转弯角度为该夹角大小,在该叉乘值等于0的情况下,设置该路径点的转弯属性为直行、转弯角度为0度;
例如,在thresholdmax>angle>thresholdmin且Vcross>0的情况下,设置路径点pm的转弯属性为右转,转弯角度设为angle;若thresholdmax>angle>thresholdmin且Vcross<0,设置路径点pm的转弯属性为左转,转弯角度设为angle;其余情况,设置该路径点的转弯属性为直行、转弯角度为0度。
通过步骤S301至S303,以及步骤S401至S403,本实施例实现了属性信息中的转弯信息的确定,并且本实施例利用路径点的几何关系自动计算转弯属性,这种方式只与路径规划模块输出的结果有关,不受其他因素的影响,稳定性高,不易出错。
具体的,图5是根据本申请第三实施例的确定转弯信息的示意图,如图5所示,导航起点位于1楼,导航终点位于2楼,利用路径规划算法来获取路径,可得:
Pathalg={ps,p1,p2,p3,p4,p5,p6,pg} 公式5
根据路径点携带的楼层信息,将导航路径按照楼层分为两段导航子路径:
Pathlevel1={ps,p1,p2,p3},Pathlevel2={p4,p5,p6,pg} 公式6
将导航起点ps转弯属性设为直行,转弯角度置为0度,将导航终点pg转弯属性设为到达目的地,转弯角度置为0度;
导航起点ps位于一楼路径点集合中,而导航终点pg位于二楼路径点集合中,因此将一楼路径点集合最后一个路径点p3的转弯属性设为上楼,转弯角度设为0;
按顺序处理其他路径点:取第一个路径点p1,p1的上一个路径点为ps,下一个路径点为p2,对应的两个向量为和/>求解/>与/>叉乘结果,并判断出结果大于0,同时计算得到向量之间夹角anglep1,并判断出anglep1符合角度阈值区间,由此将p1的转弯属性设为右转,转弯角度设为anglep1;以相同方法,得到其余路径点的转弯属性和转弯角度。
可选的,属性信息中的经纬度信息和朝向信息可以通过多坐标系的坐标对齐得到,图6是根据本申请第四实施例的多坐标系示意图,如图6所示,本实施例中使用的坐标系包括地球地理坐标系、通用横轴墨卡托投影坐标系(简称UTM)和点云算法坐标系(简称alg),其中:
地球地理坐标系与通用横轴墨卡托投影坐标系之间的转换可通过地图投影库proj实现:
(lon,lat)=proj(xutm,yutm) 公式7
通用横轴墨卡托投影坐标系与点云算法坐标系之间通过点云地图和地理地图对齐(利用同一物体在两个坐标系中的物理尺寸相同的原理)获取转换关系:
其中,表示将点云算法坐标系转换到通用横轴墨卡托投影坐标系的转换矩阵。
具体的,在其中一些实施例中,图7是根据本申请第四实施例的确定经纬度信息和朝向信息的流程图,如图7所示,该流程包括如下步骤:
步骤S701,确定每个该路径点在点云算法坐标系下的位姿信息;
步骤S702,通过点云地图和地理地图对齐,得到每个该路径点在横轴墨卡托投影坐标系下的位姿信息;通过地图投影库,将每个该路径点在横轴墨卡托投影坐标系下的位姿信息,转换成每个该路径点在地球地理坐标系下的该经纬度信息和偏航方向信息;
例如,根据每个路径点在点云算法坐标系下的位置信息和多坐标对齐公式,可获取该路径点在地球地理坐标系下的经纬度坐标,根据每个路径点在点云算法坐标系下的方向信息和和多坐标对齐公式,可获取该路径点在地球地理坐标系下的偏航方向信息;
步骤S703,根据该偏航方向信息,确定该朝向信息,例如,根据路径点在地球地理坐标系下的偏航方向信息,以正北为基准,顺时针转动角度对应[0,360],可获取该路径点在地球地理坐标系下的朝向信息。
通过步骤S701至S703,本实施例利用同一物体在不同坐标系下的物理尺寸相同的特性,将地理坐标系与点云算法坐标系对齐,并将路径规划模块计算得到的算法坐标转换为经纬度坐标,实现了AR导航中路径和用户位置可在地理地图中显示的功能。
由于路径规划算法只能给出路径点位置信息,无法获取该路径点上放置的AR内容的姿态信息,所以需要根据路径规划算法得到的信息去计算姿态信息,其中,图8是根据本申请第五实施例的姿态信息对AR内容显示的影响的示意图,如图8所示,路径点AR内容的姿态信息是指物体本体坐标系相对于点云算法坐标系在三维空间中的相对旋转量,它决定了AR内容在空间中表现形式。
可选的,在其中一些实施例中,图9是根据本申请第五实施例的确定属性信息中的对应AR内容的姿态信息的流程图,如图9所示,该流程包括如下步骤:
步骤S901,对于除各楼层的最后一个路径点外的其余路径点,根据该路径点与其下一路径点所在直线,确定该路径点在点云算法坐标系下的偏航信息;根据该偏航信息计算该路径点对应欧拉角,并输入该欧拉角至欧拉角转换旋转矩阵的函数,得到该路径点对应的AR内容的姿态信息;
例如,考虑到路径点放置的内容分为两类,分别为普通指示内容和特殊指示内容,其中普通指示内容是指上下楼以及导航终点之外的路径点放置的内容,它的特点是放置时只考虑偏航方向(绕点云算法坐标系Z轴转动),横滚和俯仰默认设定为0,因此,可设当前路径点为pm,下一个路径点为pm+1,已知点云算法坐标系下路径点pm和路径点pm+1的位置坐标分别为(xm,ym)和(xm+1,ym+1),则普通路径点AR内容的姿态计算方式如下:
计算当前路径点到下一个路径点的向量坐标:
向量包含了路径点pm在点云算法坐标系下的偏航信息,即:
根据偏航信息可得路径点pm的欧拉角为angleeuler=(yawpm,0,0),将欧拉角代入欧拉角转换旋转矩阵的函数,得到路径点pm对应的AR内容的姿态信息为:
其中,‘ZXY’为欧拉角的转换顺序;
步骤S902,对于导航终点,设置该导航终点对应的AR内容在点云算法坐标系下的姿态信息为单位阵;例如,对于导航终点,设置其放置的内容在点云算法坐标系下的位姿为单位阵:图10是根据本申请第五实施例的普通路径点的指示内容与导航终点的指示内容的示意图,如图10所示,无论处于什么样的环境,导航终点的指示内容的本体坐标系与点云算法坐标系始终对齐;
步骤S903,对于除导航终点外的各楼层的最后一个路径点(指示内容为上下楼),确定该路径点对应的AR内容的姿态信息,其中,除导航终点外的各楼层的最后一个路径点为各楼层的楼梯起始点。
具体地,图11是根据本申请第五实施例的确定上下楼的AR内容的姿态信息的流程图,如图11所示,该流程包括如下步骤:
步骤S1101,对于除导航终点外的各楼层的最后一个路径点,确定该路径点对应楼梯;确定该楼梯的起始点在地球地理坐标系下的经纬度信息和偏航方向信息;具体地,设置该路径点位置为该楼梯的起始点位置,从而确定出该楼梯起始点在地球地理坐标系下的经纬度信息;根据预先在地理地图中标注各楼梯的楼梯方向,从而确定出该楼梯起始点在地球地理坐标系下的偏航方向信息;
需要说明的是,对于特殊指示内容中的上下楼内容,因为很多场景要求上下楼内容的指示箭头要朝向楼梯方向,但是由于同一建筑物中的楼梯方向是不同的,如果想要呈现指向楼梯方向的效果,在相关技术中,需要内容制作工程师在点云算法地图中为每个楼梯放置一个AR内容,而且实际使用时无法改变与地面之间的倾斜角,所以该种方式在实际应用中不仅费时,而且生成的内容包体较大;
为了解决这个问题,本实施例采用在地理地图中标注楼梯方向,并利用多坐标对齐公式将方向信息映射到点云算法坐标系中;图12是根据本申请第五实施例的建筑物的地理地图示意图,如图12所示,对于地理地图(例如,百度、高德等地图)来说,其标注技术成熟,标注难度较低,只需要在网页端添加地图元素,并在2D地图中标注箭头,即可用来代表楼梯的朝向信息,该朝向信息以正北为基准,顺时针转动[0,360],便可得到地理坐标系下的方向:anglegeo=θgeo;
特别的,预先在网页端添加地图元素时,可以为楼梯设置长边,进而便于在地理地图中标注各楼梯的楼梯方向时,统一地将楼梯的方向标注为长边所指方向,从而快速完成所有楼梯的方向标记;
步骤S1102,通过地图投影库,将该楼梯起始点在地球地理坐标系下的该经纬度信息和该偏航方向信息,转换成该楼梯起始点在横轴墨卡托投影坐标系下的位置和方向信息;以该位置为起点,沿该方向延伸目标长度,得到目标位置点;确定该目标位置点在横轴墨卡托投影坐标系下的位置和方向信息;
例如,计算上下楼AR内容在点云算法坐标系下的姿态,假设楼梯内容放置点pm在地理坐标系下的楼梯朝向为anglegeo=θgeo,位置为posgeo=(lon,lat),那么根据公式7可得通用横轴墨卡托投影坐标系下的坐标为由于通用横轴墨卡托投影坐标系是一个标准的笛卡尔坐标系,所以可采用向量延伸法来获取pm楼梯方向anglegeo前1m延伸点p'm;图13是根据本申请第五实施例的向量延伸的示意图,如图13所示,p'm、pm与y轴可构成一个直角三角形,所以可利用正弦余弦公式可计算p'm位置信息,需要注意的是,楼梯的方向角的范围是[0,360],而通用的正弦余弦计算方式的角度范围为[-180,180],所以当θgeo>180°时,对楼梯方向角度作以下处理:θgeo=θgeo-360°,最终可计算得到p'm在通用横轴墨卡托投影坐标系下的坐标为:
步骤S1103,通过点云地图和地理地图对齐,并根据预设倾角确定该楼梯起始点和该目标位置在点云算法坐标系下的高度差,确定楼梯起始点和目标位置点在点云算法坐标系下的坐标信息;
例如,根据公式8,可将pm和p'm在通用横轴墨卡托投影坐标系下的坐标转换为点云算法坐标系下的坐标:
楼梯内容放置点pm作为上下楼AR内容的起点,其算法坐标为1m延伸点p'm作为上下楼AR内容的末端点,其算法坐标为/>而末端点的高度h结果计算方式如下:
h=||pmp'm||tan(α) 公式13
其中公式13中的||pmp'm||=1,α为系统配置文件中设置的AR内容与地面的倾角,如果楼梯内容放置点pm的转弯属性为上楼,那么h=-|h|,如果pm的转弯属性为下楼,那么h=|h|;
步骤S1104,根据该楼梯起始点和该目标位置点在点云算法坐标系下的坐标信息,确定该楼梯对应路径点的AR内容的姿态信息;
例如,图14是根据本申请第五实施例的生成上、下楼AR内容的示意图,如图14所示,根据楼梯内容放置点pm和1m延伸点p'm的算法坐标获取AR内容x轴向量:
由于上下楼内容不考虑横滚角的变化,所以可以利用点云算法坐标系z轴方向Znorm=(0,0,1)和AR内容x轴向量的叉乘作为AR内容y轴:
获取AR内容x轴和y轴之后,再利用叉乘就能获取AR内容z轴:
ZB=XB×YB=(h*xa,-h*yb,xa 2-ya*yb) 公式16
在公式16中,
将上下楼AR内容的本体坐标系的三个坐标轴按列存储即可获取点云算法坐标系下的姿态信息:
通过步骤S1101至S1104,实现了上下楼的AR内容的姿态信息的确定,并且,本实施例还至少可以达到以下两个有益效果:
第一,由于在相关技术中,三维点云mesh后的地图质量依赖于点云的质量,如果重建的三维mesh地图质量较差,那么放置3D内容的位置和方向精度会受到限制,而在本实施例中,是预先在地理地图中标注各楼梯的楼梯方向,并以此为准来确定AR内容的姿态信息,由于在地理地图中绘制的线条比三维点云更加精准,因此本实施例中放置的3D内容的位置和方向精度更高;
第二,在相关技术中,内容制作平台生成的AR内容样式是固定的,无法满足实际环境中不同形式内容呈现的需求,而如果改成每个位置都放置3D内容,则又会增加内容包的包体以及制作的复杂度,本实施例在标注方向信息更为简单的地理地图中标注楼梯方向,有效降低了制作成本以及内容包体大小,并通过坐标对齐将地理地图中标注楼梯方向转换为点云算法坐标系下的方向信息,利用向量叉乘和点云算法坐标系z轴方向获取内容本体坐标系,并将内容本体坐标系按列存储获取在点云算法坐标系下的姿态信息,这种方式可通过配置文件改变上下楼指示内容的仰俯角,并且上下楼指示内容在横滚方向上与楼梯本体始终保持一致,从而避免了内容开发者需要为每个楼梯配置不同内容的缺陷。
另外,结合上述实施例中的AR导航内容生成方法,本申请实施例可提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种AR导航内容生成方法。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种AR导航内容生成方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
在一个实施例中,图15是根据本申请实施例的电子设备的内部结构示意图,如图15所示,提供了一种电子设备,该电子设备可以是服务器,其内部结构图可以如图15所示。该电子设备包括通过内部总线连接的处理器、网络接口、内存储器和非易失性存储器,其中,该非易失性存储器存储有操作系统、计算机程序和数据库。处理器用于提供计算和控制能力,网络接口用于与外部的终端通过网络连接通信,内存储器用于为操作系统和计算机程序的运行提供环境,计算机程序被处理器执行时以实现一种AR导航内容生成方法,数据库用于存储数据。
本领域技术人员可以理解,图15中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的电子设备的限定,具体的电子设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(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)等。
本领域的技术人员应该明白,以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种AR导航内容生成方法,其特征在于,所述方法包括:
根据导航起点和导航终点,执行路径规划算法,得到点云算法坐标系下的导航路径,其中,所述导航路径包括多个路径点;
融合地球地理坐标系、通用横轴墨卡托投影坐标系和点云算法坐标系,以确定每个路径点的属性信息,其中,所述属性信息包括:所述路径点在点云算法坐标系下的楼层信息、位姿信息、转弯信息和对应AR内容的姿态信息,以及所述路径点在地球地理坐标系下的经纬度信息和朝向信息;
根据路径点的所述属性信息,生成与所述路径点相对应的AR导航内容。
2.根据权利要求1所述的方法,其特征在于,所述转弯信息包括转弯属性和转弯角度,所述确定每个所述路径点的属性信息的过程包括:
设置导航起点的转弯属性为直行、转弯角度为0度;设置导航终点的转弯属性为到达目的地、转弯角度为0度;
按照楼层划分所述导航路径,得到每个楼层的导航子路径;确定导航起点对应的楼层数字是否大于导航终点对应的楼层数字,若是,设置除导航终点所在楼层外的其余楼层的最后一个路径点的转弯属性为下楼、转弯角度为0度,若否,设置除导航终点所在楼层外的其余楼层的最后一个路径点的转弯属性为上楼、转弯角度为0度;
对于除导航起点和各楼层的最后一个路径点外的其余路径点,确定并对应设置所述路径点的转弯属性和转弯角度。
3.根据权利要求2所述的方法,其特征在于,所述确定并对应设置所述路径点的转弯属性和转弯角度的过程包括:
确定所述路径点的上一路径点、下一路径点,对应得到第一路径点、第二路径点;由所述路径点指向所述第一路径点得到第一向量,由所述路径点指向所述第二路径点得到第二向量;
计算所述第一向量和所述第二向量的叉乘值和夹角大小,并确定所述夹角大小是否在预设角度范围内,若否,则设置所述路径点的转弯属性为直行、转弯角度为0度;
若是,则在所述叉乘值大于0的情况下,设置所述路径点的转弯属性为右转、转弯角度为所述夹角大小,在所述叉乘值小于0的情况下,设置所述路径点的转弯属性为左转、转弯角度为所述夹角大小,在所述叉乘值等于0的情况下,设置所述路径点的转弯属性为直行、转弯角度为0度。
4.根据权利要求1所述的方法,其特征在于,所述确定每个所述路径点的属性信息的过程包括:
确定每个所述路径点在点云算法坐标系下的位姿信息;
通过点云地图和地理地图对齐,得到每个所述路径点在横轴墨卡托投影坐标系下的位姿信息;通过地图投影库,将每个所述路径点在横轴墨卡托投影坐标系下的位姿信息,转换成每个所述路径点在地球地理坐标系下的所述经纬度信息和偏航方向信息;
根据所述偏航方向信息,确定所述朝向信息。
5.根据权利要求2所述的方法,其特征在于,所述确定每个所述路径点的属性信息的过程还包括:
对于除各楼层的最后一个路径点外的其余路径点,根据所述路径点与其下一路径点所在直线,确定所述路径点在点云算法坐标系下的偏航信息,
根据所述偏航信息计算所述路径点对应欧拉角,并输入所述欧拉角至欧拉角转换旋转矩阵的函数,得到所述路径点对应的AR内容的姿态信息;
对于导航终点,设置所述导航终点对应的AR内容在点云算法坐标系下的姿态信息为单位阵。
6.根据权利要求2所述的方法,其特征在于,所述确定出每个所述路径点的属性信息的过程还包括:
对于除导航终点外的各楼层的最后一个路径点,确定所述路径点对应楼梯;确定所述楼梯的起始点在地球地理坐标系下的经纬度信息和偏航方向信息;
通过地图投影库,将所述楼梯起始点在地球地理坐标系下的所述经纬度信息和所述偏航方向信息,转换成所述楼梯起始点在横轴墨卡托投影坐标系下的位置和方向信息;以所述位置为起点,沿所述方向延伸目标长度,得到目标位置点;确定所述目标位置点在横轴墨卡托投影坐标系下的位置和方向信息;
通过点云地图和地理地图对齐,并根据预设倾角确定所述楼梯起始点和所述目标位置在点云算法坐标系下的高度差,确定所述楼梯起始点和所述目标位置点在点云算法坐标系下的坐标信息;
根据所述楼梯起始点和所述目标位置点在点云算法坐标系下的坐标信息,确定所述楼梯对应路径点的AR内容的姿态信息。
7.根据权利要求6所述的方法,其特征在于,所述确定所述楼梯的起始点在地球地理坐标系下的经纬度信息和偏航方向信息的过程包括:
设置所述路径点位置为所述楼梯的起始点位置,确定所述楼梯起始点在地球地理坐标系下的经纬度信息;
根据预先在地理地图中标注各楼梯的楼梯方向,确定所述楼梯起始点在地球地理坐标系下的偏航方向信息。
8.一种AR导航内容生成系统,其特征在于,所述系统包括:
规划模块,用于根据导航起点和导航终点,执行路径规划算法,得到点云算法坐标系下的导航路径,其中,所述导航路径包括多个路径点;
融合模块,用于融合地球地理坐标系、通用横轴墨卡托投影坐标系和点云算法坐标系,以确定每个路径点的属性信息,其中,所述属性信息包括:所述路径点在点云算法坐标系下的楼层信息、位姿信息、转弯信息和和对应AR内容的姿态信息,以及所述路径点在地球地理坐标系下的经纬度信息和朝向信息;
生成模块,用于根据路径点的所述属性信息,生成与所述路径点相对应的AR导航内容。
9.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至7中任一项所述的AR导航内容生成方法。
10.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行权利要求1至7中任一项所述的AR导航内容生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111396806.3A CN114323017B (zh) | 2021-11-23 | 2021-11-23 | Ar导航内容生成方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111396806.3A CN114323017B (zh) | 2021-11-23 | 2021-11-23 | Ar导航内容生成方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114323017A CN114323017A (zh) | 2022-04-12 |
CN114323017B true CN114323017B (zh) | 2023-09-19 |
Family
ID=81046522
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111396806.3A Active CN114323017B (zh) | 2021-11-23 | 2021-11-23 | Ar导航内容生成方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114323017B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102018203462A1 (de) * | 2018-03-07 | 2019-09-12 | Volkswagen Aktiengesellschaft | Verfahren zur Berechnung einer Einblendung von Zusatzinformationen für eine Anzeige auf einer Anzeigeeinheit, Vorrichtung zur Durchführung des Verfahrens sowie Kraftfahrzeug und Computerprogramm |
US10663302B1 (en) * | 2019-03-18 | 2020-05-26 | Capital One Services, Llc | Augmented reality navigation |
CN113465604A (zh) * | 2021-05-31 | 2021-10-01 | 杭州易现先进科技有限公司 | 跨楼层导航的方法和系统 |
CN113658342A (zh) * | 2021-07-20 | 2021-11-16 | 杭州易现先进科技有限公司 | Ar导航路径生成的方法、系统、电子装置和存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019228520A1 (en) * | 2018-06-01 | 2019-12-05 | Beijing Didi Infinity Technology And Development Co., Ltd. | Systems and methods for indoor positioning |
-
2021
- 2021-11-23 CN CN202111396806.3A patent/CN114323017B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102018203462A1 (de) * | 2018-03-07 | 2019-09-12 | Volkswagen Aktiengesellschaft | Verfahren zur Berechnung einer Einblendung von Zusatzinformationen für eine Anzeige auf einer Anzeigeeinheit, Vorrichtung zur Durchführung des Verfahrens sowie Kraftfahrzeug und Computerprogramm |
US10663302B1 (en) * | 2019-03-18 | 2020-05-26 | Capital One Services, Llc | Augmented reality navigation |
CN113465604A (zh) * | 2021-05-31 | 2021-10-01 | 杭州易现先进科技有限公司 | 跨楼层导航的方法和系统 |
CN113658342A (zh) * | 2021-07-20 | 2021-11-16 | 杭州易现先进科技有限公司 | Ar导航路径生成的方法、系统、电子装置和存储介质 |
Non-Patent Citations (2)
Title |
---|
基于室内路网的跨楼层路径规划技术的设计与实现;黄科佳;李少杰;左尧;蔡文文;李绍俊;宋关福;钟耳顺;;地理信息世界;第25卷(第03期);第91-95页 * |
移动增强现实技术的应用研究;周一舟;中国优秀硕士学位论文全文数据库(第12期);第1-80页 * |
Also Published As
Publication number | Publication date |
---|---|
CN114323017A (zh) | 2022-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9223408B2 (en) | System and method for transitioning between interface modes in virtual and augmented reality applications | |
US10593110B2 (en) | Method and device for computing a path in a game scene | |
CN105164500B (zh) | 用于在数字地图上指示用户位置以及面对方向的系统和方法 | |
KR20220004607A (ko) | 목표 검출방법, 전자장치, 노변장치와 클라우드 컨트롤 플랫폼 | |
CN109447326B (zh) | 无人机迁移轨迹生成方法、装置、电子设备和存储介质 | |
US9245366B1 (en) | Label placement for complex geographic polygons | |
CN113077548B (zh) | 针对物体的碰撞检测方法、装置、设备和存储介质 | |
EP3482162B1 (en) | Systems and methods for dynamically providing scale information on a digital map | |
CN107240156A (zh) | 一种高精度室外增强现实空间信息显示系统及方法 | |
CN109241233B (zh) | 一种坐标匹配方法及装置 | |
US8467990B2 (en) | Method for setting the geolocation of a non-GPS enabled device | |
CN114323017B (zh) | Ar导航内容生成方法和系统 | |
JP7375149B2 (ja) | 測位方法、測位装置、ビジュアルマップの生成方法およびその装置 | |
CN110634156A (zh) | 室内平面图的在线配准方法 | |
CN115511701A (zh) | 一种地理信息的转换方法及装置 | |
CN110986931B (zh) | 全球混合导航方法、装置、计算机设备和可读存储介质 | |
KR20150021168A (ko) | 스마트기기를 이용한 현장 조사 시스템 | |
KR101959290B1 (ko) | 설계 도면 데이터를 측량 컨트롤러로서 사용되는 모바일 단말에서 실행되는 웹 브라우저 기반의 어플리케이션 상에서 열람 가능한 변환된 형식의 데이터로 변환하여 제공하는 방법 및 서버 | |
CN109634497A (zh) | 地图标注点的呈现位置调整方法、装置、设备及存储介质 | |
CN117091596B (zh) | 一种姿态信息获取方法以及相关设备 | |
CN103186528A (zh) | 筛选地理信息的方法、装置与移动终端 | |
CN112484729A (zh) | 导航地图切换方法、装置、终端设备及存储介质 | |
CN112667761A (zh) | 地理信息数据生成、地图呈现方法及装置、存储介质、计算设备 | |
CN104995584A (zh) | 计算磁航向 | |
CN114383621B (zh) | 基于网格地图的轨迹纠偏方法、电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |