CN112017304A - 用于呈现增强现实数据的方法、装置、电子设备及介质 - Google Patents
用于呈现增强现实数据的方法、装置、电子设备及介质 Download PDFInfo
- Publication number
- CN112017304A CN112017304A CN202010984846.9A CN202010984846A CN112017304A CN 112017304 A CN112017304 A CN 112017304A CN 202010984846 A CN202010984846 A CN 202010984846A CN 112017304 A CN112017304 A CN 112017304A
- Authority
- CN
- China
- Prior art keywords
- augmented reality
- artificial
- basic
- mark
- information
- 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.)
- Granted
Links
- 230000003190 augmentative effect Effects 0.000 title claims abstract description 77
- 238000000034 method Methods 0.000 title claims abstract description 65
- 230000003068 static effect Effects 0.000 claims abstract description 63
- 230000004927 fusion Effects 0.000 claims abstract description 27
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 24
- 239000003550 marker Substances 0.000 claims description 34
- 230000015654 memory Effects 0.000 claims description 19
- 239000000126 substance Substances 0.000 claims 1
- 230000000694 effects Effects 0.000 abstract description 9
- 230000008569 process Effects 0.000 description 18
- 238000013507 mapping Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 239000011521 glass Substances 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请实施例公开了用于呈现增强现实数据的方法、装置、电子设备及计算机可读存储介质,涉及人工标记、增强现实、场景定位、数据显示技术领域。该方法的一具体实施方式包括:获取目标物体上设置有人工标记的室内场景视频;其中,该人工标记由至少一个ArUco码构成;根据该人工标记确定该目标物体在世界坐标系下的静态姿态信息;利用跟踪融合算法将不同时刻的静态姿态信息融合为动态姿态轨迹,并根据该动态姿态轨迹对应呈现增强现实数据。应用该实施方式可使室内场景内各物体的定位更加准确,从而间接提升相应物体上增强现实数据的呈现效果,提升了用户体验。
Description
技术领域
本申请涉及数据呈现技术领域,具体涉及人工标记、增强现实、场景定位技术领域,尤其涉及用于呈现增强现实数据的方法、装置、电子设备及计算机可读存储介质。
背景技术
随着电子信息化、万物互联时代的到来,虚拟现实(Virtual Reality,VR)技术和增强现实(Augmented Reality,AR)技术将拥有更广泛的应用空间。
现有针对室内场景下的增强现实数据呈现技术,在所呈现的数据内容的定位方面依赖于室内场景所拥有的自然特征,例如白墙等。
发明内容
本申请实施例提出了一种用于呈现增强现实数据的方法、装置、电子设备及计算机可读存储介质。
第一方面,本申请实施例提出了一种用于呈现增强现实数据的方法,包括:获取目标物体上设置有人工标记的室内场景视频;其中,人工标记由至少一个ArUco码构成;根据人工标记确定目标物体在世界坐标系下的静态姿态信息;利用跟踪融合算法将不同时刻的静态姿态信息融合为动态姿态轨迹,并根据动态姿态轨迹对应呈现增强现实数据。
第二方面,本申请实施例提出了一种用于呈现增强现实数据的装置,包括:室内场景视频获取单元,被配置成获取目标物体上设置有人工标记的室内场景视频;其中,人工标记由至少一个ArUco码构成;静态姿态信息确定单元,被配置成根据人工标记确定目标物体在世界坐标系下的静态姿态信息;增强现实数据呈现单元,被配置成利用跟踪融合算法将不同时刻的静态姿态信息融合为动态姿态轨迹,并根据动态姿态轨迹对应呈现增强现实数据。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,该指令被至少一个处理器执行,以使至少一个处理器执行时能够实现如第一方面中任一实现方式描述的用于呈现增强现实数据的方法。
第四方面,本申请实施例提供了一种存储有计算机指令的非瞬时计算机可读存储介质,该计算机指令用于使计算机执行时能够实现如第一方面中任一实现方式描述的用于呈现增强现实数据的方法。
本申请实施例提供的用于呈现增强现实数据的方法、装置、电子设备及计算机可读存储介质,首先,获取目标物体上设置有由至少一个ArUco码构成的人工标记的室内场景视频;然后,根据人工标记确定目标物体在世界坐标系下的静态姿态信息;接着利用跟踪融合算法将不同时刻的静态姿态信息融合为动态姿态轨迹,最后根据动态姿态轨迹对应呈现增强现实数据。
区别于现有技术基于室内自然特征所进行的定位方式,本申请实施例提供的一种基于由至少一个ArUco码构成的人工标记的定位方式,相较于现有技术采用自然特征存在的大面积重复、结构简单问题导致定位精度差的问题,由人工定义的人工标记可包含多项信息,其尺寸可用作绝对尺寸来衡量大小,且排列组合的多样性也杜绝了重复,可使室内场景内各物体的定位更加准确,从而间接提升相应物体上增强现实数据的呈现效果,提升了用户体验。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请可以应用于其中的示例性系统架构;
图2为本申请实施例提供的一种由四个不同的ArUco码构成的人工标记的示意图;
图3为本申请实施例提供的一种用于呈现增强现实数据的方法的流程图;
图4为本申请实施例提供的另一种用于呈现增强现实数据的方法的流程图;
图5为本申请实施例提供的一种通过跟踪融合算法确定动态姿态轨迹的流程示意图;
图6为本申请实施例提供的一种用于呈现增强现实数据的装置的结构框图;
图7为本申请实施例提供的一种适用于执行用于呈现增强现实数据的方法的电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的用于呈现增强现实数据的方法、装置、电子设备及计算机可读存储介质的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括带有支持VIO(Visual-Inertial Odometry,中文直译为视觉惯性里程计)拍摄功能的拍摄设备101、102、网络103和服务器104。网络103用以在拍摄设备101、102和服务器104之间提供通信链路的介质。网络103可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用拍摄设备101、102通过网络103与服务器104交互,以接收或发送消息等。拍摄设备101、102和服务器104上可以安装有各种用于实现两者之间进行信息通讯的应用,例如AR建图类应用、AR数据渲染类应用、即时通讯类应用等。
通常情况下,拍摄设备101、102为具有VIO拍摄功能的硬件设备,例如全景相机或支持VIO拍摄功能的智能手机等,在特殊情况下(例如仿真测试场景下),拍摄设备101、102也可以为仿真出的虚拟设备,将给定的测试数据作为自己的输出;服务器104可以是硬件,也可以是软件。当服务器104为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器;服务器为软件时,可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块,在此不做具体限定。
服务器104通过内置的各种应用可以提供各种服务,以可以提供AR数据动态呈现服务的AR数据呈现类应用为例,服务器104在运行该类应用时可实现如下效果:首先,通过网络103从拍摄设备101、102中获取其拍摄到的目标室内场景的室内场景视频,其中,目标室内场景中设置有至少一个目标物体,且该目标物体上设有由至少一个ArUco(AugmentedReality library from the University of Cordoba,科尔多瓦大学的增强现实库)码构成的人工标记(图2示出了一个由4个不同的ArUco码构成的人工标记);然后,根据人工标记确定目标物体在世界坐标系下的静态姿态信息;接着利用跟踪融合算法将不同时刻的静态姿态信息融合为动态姿态轨迹,最后根据动态姿态轨迹对应呈现AR数据。其中,确定静态姿态信息的过程实际上对目标室内场景进行建图的过程,建图的目的是方便确定在拍摄过程中因拍摄设备101、102运动所出现的目标物体的运动会对AR数据实时呈现造成的影响。
需要指出的是,目标室内场景的室内场景视频除可以从拍摄设备101、102通过网络103获取到之外,也可以通过各种方式预先存储在服务器104本地。因此,当服务器104检测到本地已经存储有这些数据时(例如开始处理之前留存的待处理建图任务),可选择直接从本地获取这些数据,在此种情况下,示例性系统架构100也可以不包括拍摄设备101、102和网络103。
由于根据室内场景视频进行建图和AR数据的实时呈现渲染需要占用较多的运算资源和较强的运算能力,因此本申请后续各实施例所提供的用于呈现增强现实数据的方法一般由拥有较强运算能力、较多运算资源的服务器104来执行,相应地,用于呈现增强现实数据的装置一般也设置于服务器104中。
应当理解的是,上述例子大多应用于可事先获取到目标室内场景的场景视频的情况下,例如预先拍摄到自家各屋子内部的视频信息,即在可事先获取到目标室内场景的场景视频时,借助服务器的强大运算能力来预先完成便于精准呈现AR数据的建图工作,从而降低实际使用过程中的等待时间;但针对未能事先获取到目标室内场景的场景视频的场景,为实现较好的AR数据呈现效果,也可基于集成有拍摄模块的AR眼镜来进行实时建图和基于建图结果的实时呈现,由于AR眼镜运算能力较弱,实时建图的过程也可以请求远端具有较强运算能力的服务器帮忙进行运算,以提升整体效率。在AR眼镜自身就具有充足算力的情况下,拍摄模块、建图模块、AR渲染模块均可直接集成于AR眼镜内。
应该理解,图1中的拍摄设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的拍摄设备、网络和服务器。
请参考图3,图3为本申请实施例提供的一种用于呈现增强现实数据的方法的流程图,其中流程200包括以下步骤:
步骤201:获取目标物体上设置有人工标记的室内场景视频;
本步骤旨在由用于呈现增强现实数据的方法的执行主体(例如图1所示的服务器104)获取目标物体上设置有人工标记的室内场景视频。其中,室内场景视频是针对目标室内场景拍摄得到,目标室内场景中包括至少一个目标物体,例如墙面、衣柜、床、电脑桌等,且目标物体上设置有由至少一个ArUco码构成的人工标记用于帮助在增强现实场景下对目标物体进行定位。
ArUco码本质上是一种汉明(或称海明)码的格子图,每个ArUco码的外围都有一组黑色边框,同时内部有着确定该标记ID的二维矩阵组合而成,其中,黑色的边框能加速标记在图像中的检测速度,内部的二维编码能唯一识别该标记,同时进行错误检测和错误修复,标记的大小确定了内部矩阵的大小,例如4x4大小的标记有16个bit。ArUco码的特殊构造使其无论拍摄者使用何种角度进行拍摄,都能够准确定位该ArUco码的准确位姿。
本申请基于室内场景的复杂性,使用了至少一个ArUco码来构成该人工标记,以借助多个ArUco码之间遵循或设定的特定排列组合得到数量足够多的标记信息组合,从而实现对更多的物体实现精准定位,图2就示出了一种由四个不同的ArUco码构成的人工标记,其中4个不同的ArUco码分别分布在四个角落。
其中,不同的ArUco码可基于预设的ArUco码字典查询得到其表示的不同含义,其含义也可以称为其能够表达出的语义信息,而由多个ArUco码构成的人工标记应如何组合多个ArUco码,其排列组合信息也可以从某一个ArUco码或分别从各ArUco码中读取得到,例如其排列组合信息为遵循顺时针方向依次组合,或按照左上、右上、右下、坐下的方式依次组合得到等等;同时,ArUco码本身是由遵循标准的最小单位构成(即最小的格子),如图2所示的每个ArUco码都是8×8的大小,可基于其该大小作为衡量目标物体甚至整个场景大小的绝对尺寸,也可以理解为比例尺或标准比例尺,进而确定出合理的显示AR数据的大小。
步骤202:根据人工标记确定目标物体在世界坐标系下的静态姿态信息;
在步骤201的基础上,本步骤旨在由上述执行主体根据人工标记确定目标物体在世界坐标系下的静态姿态信息。
室内场景视频是由多帧静态的图像信息组合而成,即先拍摄得到每个时刻对应的场景图像,再将按时间顺序拼接、组合得到动态的室内场景视频。因此,在对室内场景视频进行处理中,也需要反向按照上述过程,即先根据室内场景视频中包含的人工标记确定其所在的目标物体在世界坐标下的静态姿态信息,然后在将各时刻的静态姿态信息进行融合得到动态姿态轨迹。即本步骤属于其中先确定目标物体每个时刻在世界坐标系下的静态姿态信息的步骤。
其中,世界坐标系指描述用户看到的真实世界中各物体方位信息的坐标系,之所以确定目标物体在世界坐标系下的静态姿态信息,是因为AR就是要在实景的基础上额外显示一些不存在真实世界的信息,其所显示的信息要依托于真实场景下的某物体存在,依托的过程就是让两者处于同一坐标系下的过程。
其中,确定静态姿态信息的过程本质就是根据当前图像中包含的人工标记所表达出的姿态信息,确定其所在的目标物体的姿态信息的过程。
在本申请的一些可选的实施例中,由于需要记录每个目标物体在各时刻的静态姿态信息,为了便于后续的查询和调取,还可以选择将不同的目标物体和对应的静态姿态信息按哈希表的形式进行存储,以借助哈希表的特性实现相对应信息的快速查询和检索。
步骤203:利用跟踪融合算法将不同时刻的静态姿态信息融合为动态姿态轨迹,并根据动态姿态轨迹对应呈现增强现实数据。
在步骤202的基础上,本步骤旨在由上述执行主体利用跟踪融合算法将不同时刻的静态姿态信息融合为动态姿态轨迹,即利用融合出的动态姿态轨迹表征在视频拍摄过程中因拍摄设备运动目标物体的运动轨迹,从而在已知目标物体的运动轨迹的情况下,实时调整相对应的AR数据的呈现方式。
具体的,在不同的运行环境以及可能导致获取到的静态姿态信息存在差异的不同因素的影响下,可以选择对应的、适配的跟踪融合算法来实现本步骤的融合,不同的跟踪融合算法根据其特性的不同,也可能导致最终融合出的动态姿态轨迹在某些方面存在些许差异,可根据实际需求灵活选取,此处不做具体限定。
区别于现有技术基于室内自然特征所进行的定位方式,本申请实施例提供的用于呈现增强现实数据的方法提供了基于由至少一个ArUco码构成的人工标记的定位方式,相较于现有技术采用自然特征存在的大面积重复、结构简单问题导致定位精度差的问题,由人工定义的人工标记可包含多项信息,其尺寸可用作绝对尺寸来衡量大小,且排列组合的多样性也杜绝了重复,可使室内场景内各物体的定位更加准确,从而间接提升相应物体上增强现实数据的呈现效果,提升了用户体验。
请参考图4,图4为本申请实施例提供的另一种用于呈现增强现实数据的方法的流程图,其中流程300包括以下步骤:
步骤301:获取目标物体上设置有人工标记的室内场景视频;
本步骤与流程200中的步骤201一致,相关说明内容可以参见步骤201的相应部分,此处不再赘述。
步骤302:将室内场景视频中首个识别到的人工标记确定为基础标记,并确定基础标记在世界坐标下的基础真实坐标;
在步骤301的基础上,本步骤旨在由上述执行主体将室内场景视频中首个识别到的人工标记确定为基础标记,并确定基础标记在世界坐标下的基础真实坐标。其中,基础标记特指室内场景视频中首个识别到的人工标记,并区别于室内场景视频中非首个识别到的其它人工标记。
在本申请的一些可选的实施例中,一种确定基础标记在世界坐标下的基础真实坐标的方式可以为:
首先,从构成基础标记的至少一个ArUco码中读取出语义信息和描述符,然后,根据语义信息确定各ArUco码在ArUco码词典中的实际编号,接着,根据描述符确定至少一个ArUco码中各ArUco码的实际排列顺序,之后,按实际排列顺序排列各实际编号,得到基础标记的标记信息,最后,根据标记信息确定基础标记在世界坐标系下的基础真实坐标。
根据上述实现步骤可以看出,在确定基础标记在世界坐标系下的基础真实坐标的过程,是通过从构成该基础标记的至少一个ArUco码中读取出的语义信息和描述符实现的,其中,每一个ArUco码均具有对应的语义,描述符即可以分散在每个ArUco码中,也可以同时存在于每个ArUco码中,描述符用于描述各ArUco码的语义组合方式,假定语义组合方式为顺时针依次组合,那么可将能够表达“顺时针依次组合”这一含义的信息或字符串嵌入ArUco码中,以便于读取。应当理解的是,由于ArUco码总数有限,通过多个以特定方式进行组合,可以极大的扩充组合总数的上限,以便允许室内场景存在数量较多的人工标记。
步骤303:分别确定出非基础标记的其它人工标记与基础标记之间的相对位置关系;
步骤304:根据基础真实坐标和相对位置关系,确定出其它人工标记在世界坐标系下的其它真实坐标;
步骤303在步骤302确定出基础标记的基础真实坐标的基础上,由上述执行主体分别确定出非基础标记的其它人工标记与基础标记之间的相对位置关系,然后通过步骤304依据基础真实坐标和相对位置关系,确定出其它人工标记在世界坐标系下的其它真实坐标。
据此可以看出,本实施例为实现确定室内场景视频中所有人工标记在世界坐标系的真实坐标的目的,并非是直接的、依次确定出每个人工标记各自在世界坐标下的真实坐标,而是先确定出一个基础标记在世界坐标系下的真实坐标,再依据可较为简单确定出的与其它人工标记的相对位置关系,采用换算的方式得到其它人工标记的真实坐标,效率更高、错误率更低。
步骤305:根据基础真实坐标和其它真实坐标确定所属的人工标记对应的目标物体的静态姿态信息;
本步骤旨在由上述执行主体根据坐标确定出静态姿态信息,其中静态姿态信息不仅包括空间中的位置信息,还包括翻转信息、角度信息等表示其空间姿态的信息。
步骤306:利用跟踪融合算法将不同时刻的静态姿态信息融合为动态姿态轨迹;
在本申请的一些可选实施例中,一种根据运行环境的操作系统选取适配的跟踪融合算法的实现方式可以为:
首先获取操作系统类型,然后选取与操作系统类型对应的跟踪融合算法,将不同时刻的静态姿态信息融合为动态姿态轨迹。具体的,IOS操作系统和安卓操作系统分别提供了对应的ARKit和ARCore跟踪融合算法。
步骤307:将构成人工标记的至少一个ArUco码的实际尺寸确定为绝对尺寸;
本步骤旨在由上述执行主体将构成人工标记的至少一个ArUco码的实际尺寸确定为绝对尺寸,如图2所示的每个ArUco码都是由8×8个小格子构成的,用作标尺的绝对尺寸可以在不足一个格子的尺寸至倍数个格子的尺寸之间自行选择。
步骤308:根据绝对尺寸计算目标物体的第一尺寸和增强现实数据的第二尺寸;
其中,第一尺寸是目标物体的尺寸,第二尺寸是AR数据显示在目标物体上或附近相关位置的尺寸,其都是基于绝对尺寸建立得到的。
应当理解的是,之所以需要绝对尺寸,是因为视角、拍摄渠道等各种因素影响需要借助一个在真实世界内绝对准确的尺寸信息来帮助判断其它物体的尺寸。因此,借助内嵌或预先已知一个格子的真实尺寸的人工标记,可较好的解决这一问题。
步骤309:根据动态姿态轨迹对应在第一尺寸的目标物体上以第二尺寸显示增强现实数据。
区别于上一实施例,本实施例通过步骤302-步骤305提供了一种具体的确定静态姿态信息的方案,借助从人工标记中读取出的语义信息和描述符,确定出基础标记和其它标记的相对位置关系,并以换算的方式快速、高效的得到各人工标记的真实坐标,提升了效率;通过步骤307-步骤309提供了一种具体如何根据动态姿态轨迹呈现AR数据的方案,根据人工标记的尺寸作为衡量其它物体尺寸的绝对尺寸,提升了AR数据的呈现精度和显示效果。
应当理解的是,步骤302-步骤305提供的优选方案和步骤307-步骤309提供的优选方案之间不存在依赖和因果关系,完全可以单独结合流程200所示的实施例形成不同的实施例,本实施例仅作为同时存在两部分优选方案的优选实施例存在。
为加深理解,本申请还结合一个具体应用场景,给出了一种具体的实现方案:
1)服务器接收到目标室内场景A的建图指示;
2)服务器根据该建图指示查询之前对目标室内场景A拍摄得到的室内场景视频X;
3)服务器解析室内场景视频X,将首个识别到的由四个ArUco码构成的设置在入门靠左墙壁上的人工标记命名为M1,并陆续识别到剩余的9个人工标记,分别命名为M2、M3、M4、M5……M10;
4)服务器首先确定M1在世界坐标下的坐标N1,并根据M1分别与M2、M3、M4、M5……M10在空间中的相对位置关系,在N1的基础上换算得到N2、N3、N4、N5……N10;
5)服务器在N1、N2、N3、N4、N5……N10的基础上,结合由M1、M2、M3、M4、M5……M10中读取到的空间姿态信息,分别确定出的各人工标记的静态姿态信息K1至K10,并按照哈希表的方式记录每个时刻每个人工标记的静态姿态信息;
6)服务器通过调用自身操作系统支持的跟踪融合算法将相同人工标记在各时刻的静态姿态信息进行融合,得到动态姿态轨迹;
一种通过跟踪融合算法融合得到动态姿态轨迹的实现流程示意图可参见图5:
可以看出,在输出最终的动态姿态轨迹之前分为两条支路,上支路步骤依次为:获取场景视频、从场景视频中识别出各人工标记、从各人工标记中提取记录语义组合信息的描述符、确定出的人工标记在场景的静态姿态的匹配、对匹配命中结果进行姿态估算,下支路则是通过跟踪融合算法获取到场景视频中包含的VIO姿态,上下两支路的交汇则是VIO姿态与姿态估算结果进行的姿态优化,最后确定出动态姿态轨迹。
上述过程可以简要表达为下述跟踪融合公式:
correctPose=VIOcur*inv(VIOpre)*Marker_pose_c2m*inv(Marker_pose_w2m);式中,VIOcur为当前的VIO姿态,inv为功能函数,VIOpre为之前定位成功时的VIO姿态,Marker_pose_c2m为人工标记中每个ArUco码相对拍摄设备的姿态,Marker_pose_w2m为人工标记相对世界系的Pose,即静态姿态信息,得到的correctPose再经过优化就得到最终的动态姿态轨迹。
7)服务器将完成动态姿态轨迹运算后的场景内容作为建图结果返回。
在后续使用阶段,服务器可随时根据用户发起的在目标室内场景A的AR数据显示请求,实时渲染得到相应的AR数据返回给用户进行显示。
进一步参考图6,作为对上述各图所示方法的实现,本申请提供了一种用于呈现增强现实数据的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图6所示,本实施例的用于呈现增强现实数据的装置500可以包括:室内场景视频获取单元501、静态姿态信息确定单元502、增强现实数据呈现单元503。其中,室内场景视频获取单元501,被配置成获取目标物体上设置有人工标记的室内场景视频;其中,人工标记由至少一个ArUco码构成;静态姿态信息确定单元502,被配置成根据人工标记确定目标物体在世界坐标系下的静态姿态信息;增强现实数据呈现单元503,被配置成利用跟踪融合算法将不同时刻的静态姿态信息融合为动态姿态轨迹,并根据动态姿态轨迹对应呈现增强现实数据。
在本实施例中,用于呈现增强现实数据的装置500中:室内场景视频获取单元501、静态姿态信息确定单元502、增强现实数据呈现单元503的具体处理及其所带来的技术效果可分别参考图2对应实施例中的步骤201-203的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,增强现实数据呈现单元503可以进一步被配置成:
将构成人工标记的至少一个ArUco码的实际尺寸确定为绝对尺寸;
根据绝对尺寸计算目标物体的第一尺寸和增强现实数据的第二尺寸;
根据动态姿态轨迹对应在第一尺寸的目标物体上以第二尺寸显示增强现实数据。
在本实施例的一些可选的实现方式中,静态姿态信息确定单元502可以包括:
基础真实坐标确定子单元,被配置成将首个识别到的人工标记确定为基础标记,并确定基础标记在世界坐标下的基础真实坐标;
相对位置关系确定子单元,被配置成分别确定出非基础标记的其它人工标记与基础标记之间的相对位置关系;
其它真实坐标确定子单元,被配置成根据基础真实坐标和相对位置关系,确定出其它人工标记在世界坐标系下的其它真实坐标;
静态姿态信息确定子单元,被配置成根据基础真实坐标和其它真实坐标确定所属的人工标记对应的目标物体的静态姿态信息。
在本实施例的一些可选的实现方式中,该基础真实坐标确定子单元进一步被配置成:
从构成基础标记的至少一个ArUco码中读取出语义信息和描述符;
根据语义信息确定各ArUco码在ArUco码词典中的实际编号;
根据描述符确定至少一个ArUco码中各ArUco码的实际排列顺序;
按实际排列顺序排列各实际编号,得到基础标记的标记信息;
根据标记信息确定基础标记在世界坐标系下的基础真实坐标。
在本实施例的一些可选的实现方式中,增强现实数据呈现单元503可以进一步被配置成:
获取操作系统类型;
选取与操作系统类型对应的跟踪融合算法,将不同时刻的静态姿态信息融合为动态姿态轨迹。
在本实施例的一些可选的实现方式中,用于呈现增强现实数据的装置500还可以包括:
哈希表形式存储单元,被配置成将不同的目标物体和对应的静态姿态信息按哈希表的形式进行存储。
本实施例作为对应于上述方法实施例的装置实施例存在,区别于现有技术基于室内自然特征所进行的定位方式,本申请实施例提供的用于呈现增强现实数据的装置提供了基于由至少一个ArUco码构成的人工标记的定位方式,相较于现有技术采用自然特征存在的大面积重复、结构简单问题导致定位精度差的问题,由人工定义的人工标记可包含多项信息,其尺寸可用作绝对尺寸来衡量大小,且排列组合的多样性也杜绝了重复,可使室内场景内各物体的定位更加准确,从而间接提升相应物体上增强现实数据的呈现效果,提升了用户体验。
根据本申请的实施例,本申请还提供了一种电子设备和一种计算机可读存储介质。
图7示出了一种适于用来实现本申请实施例的用于呈现增强现实数据的方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图7所示,该电子设备包括:一个或多个处理器601、存储器602,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图7中以一个处理器601为例。
存储器602即为本申请所提供的非瞬时计算机可读存储介质。其中,存储器存储有可由至少一个处理器执行的指令,以使至少一个处理器执行本申请所提供的用于呈现增强现实数据的方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的用于呈现增强现实数据的方法。
存储器602作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的用于呈现增强现实数据的方法对应的程序指令/模块(例如,附图6所示的室内场景视频获取单元501、静态姿态信息确定单元502、增强现实数据呈现单元503)。处理器601通过运行存储在存储器602中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的用于呈现增强现实数据的方法。
存储器602可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储该电子设备在执行用于呈现增强现实数据的方法所创建的各类数据等。此外,存储器602可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器602可选包括相对于处理器601远程设置的存储器,这些远程存储器可以通过网络连接至适用于执行用于呈现增强现实数据的方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
适用于执行用于呈现增强现实数据的方法的电子设备还可以包括:输入装置603和输出装置604。处理器601、存储器602、输入装置603和输出装置604可以通过总线或者其他方式连接,图7中以通过总线连接为例。
输入装置603可接收输入的数字或字符信息,以及产生适用于执行用于呈现增强现实数据的方法的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置604可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决传统物理主机与虚拟专用服务器(VPS,Virtual Private Server)服务中存在的管理难度大,业务扩展性弱的缺陷。
区别于现有技术基于室内自然特征所进行的定位方式,本申请实施例提供了基于由至少一个ArUco码构成的人工标记的定位方式,相较于现有技术采用自然特征存在的大面积重复、结构简单问题导致定位精度差的问题,由人工定义的人工标记可包含多项信息,其尺寸可用作绝对尺寸来衡量大小,基本不会出现重复,可使室内场景内各物体的定位更加准确,从而间接提升相应物体上增强现实数据的呈现效果,提升了用户体验。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (14)
1.一种用于呈现增强现实数据的方法,包括:
获取目标物体上设置有人工标记的室内场景视频;其中,所述人工标记由至少一个ArUco码构成;
根据所述人工标记确定所述目标物体在世界坐标系下的静态姿态信息;
利用跟踪融合算法将不同时刻的静态姿态信息融合为动态姿态轨迹,并根据所述动态姿态轨迹对应呈现增强现实数据。
2.根据权利要求1所述的方法,其中,所述根据所述动态姿态轨迹对应呈现增强现实数据,包括:
将构成所述人工标记的至少一个ArUco码的实际尺寸确定为绝对尺寸;
根据所述绝对尺寸计算所述目标物体的第一尺寸和所述增强现实数据的第二尺寸;
根据所述动态姿态轨迹对应在所述第一尺寸的目标物体上以所述第二尺寸显示所述增强现实数据。
3.根据权利要求1所述的方法,其中,所述根据所述人工标记确定所述目标物体在世界坐标系下的静态姿态信息,包括:
将所述室内场景视频中首个识别到的人工标记确定为基础标记,并确定所述基础标记在所述世界坐标下的基础真实坐标;
分别确定出非所述基础标记的其它人工标记与所述基础标记之间的相对位置关系;
根据所述基础真实坐标和所述相对位置关系,确定出所述其它人工标记在所述世界坐标系下的其它真实坐标;
根据所述基础真实坐标和所述其它真实坐标确定所属的人工标记对应的目标物体的静态姿态信息。
4.根据权利要求3所述的方法,其中,所述确定所述基础标记在所述世界坐标下的基础真实坐标,包括:
从所述构成基础标记的至少一个ArUco码中读取出语义信息和描述符;
根据所述语义信息确定各ArUco码在ArUco码词典中的实际编号;
根据所述描述符确定至少一个ArUco码中各ArUco码的实际排列顺序;
按所述实际排列顺序排列各所述实际编号,得到所述基础标记的标记信息;
根据所述标记信息确定所述基础标记在所述世界坐标系下的基础真实坐标。
5.根据权利要求1所述的方法,其中,所述利用跟踪融合算法将不同时刻的静态姿态信息融合为动态姿态轨迹,包括:
获取操作系统类型;
选取与所述操作系统类型对应的跟踪融合算法,将不同时刻的静态姿态信息融合为动态姿态轨迹。
6.根据权利要求1至5任一项所述的方法,还包括:
将不同的目标物体和对应的静态姿态信息按哈希表的形式进行存储。
7.一种用于呈现增强现实数据的装置,包括:
室内场景视频获取单元,被配置成获取目标物体上设置有人工标记的室内场景视频;其中,所述人工标记由至少一个ArUco码构成;
静态姿态信息确定单元,被配置成根据所述人工标记确定所述目标物体在世界坐标系下的静态姿态信息;
增强现实数据呈现单元,被配置成利用跟踪融合算法将不同时刻的静态姿态信息融合为动态姿态轨迹,并根据所述动态姿态轨迹对应呈现增强现实数据。
8.根据权利要求7所述的装置,其中,所述增强现实数据呈现单元进一步被配置成:
将构成所述人工标记的至少一个ArUco码的实际尺寸确定为绝对尺寸;
根据所述绝对尺寸计算所述目标物体的第一尺寸和所述增强现实数据的第二尺寸;
根据所述动态姿态轨迹对应在所述第一尺寸的目标物体上以所述第二尺寸显示所述增强现实数据。
9.根据权利要求7所述的装置,其中,所述静态姿态信息确定单元包括:
基础真实坐标确定子单元,被配置成将所述室内场景视频中首个识别到的人工标记确定为基础标记,并确定所述基础标记在所述世界坐标下的基础真实坐标;
相对位置关系确定子单元,被配置成分别确定出非所述基础标记的其它人工标记与所述基础标记之间的相对位置关系;
其它真实坐标确定子单元,被配置成根据所述基础真实坐标和所述相对位置关系,确定出所述其它人工标记在所述世界坐标系下的其它真实坐标;
静态姿态信息确定子单元,被配置成根据所述基础真实坐标和所述其它真实坐标确定所属的人工标记对应的目标物体的静态姿态信息。
10.根据权利要求9所述的装置,其中,所述基础真实坐标确定子单元进一步被配置成:
从所述构成基础标记的至少一个ArUco码中读取出语义信息和描述符;
根据所述语义信息确定各ArUco码在ArUco码词典中的实际编号;
根据所述描述符确定至少一个ArUco码中各ArUco码的实际排列顺序;
按所述实际排列顺序排列各所述实际编号,得到所述基础标记的标记信息;
根据所述标记信息确定所述基础标记在所述世界坐标系下的基础真实坐标。
11.根据权利要求7所述的装置,其中,所述增强现实数据呈现单元进一步被配置成:
获取操作系统类型;
选取与所述操作系统类型对应的跟踪融合算法,将不同时刻的静态姿态信息融合为动态姿态轨迹。
12.根据权利要求7至11任一项所述的装置,还包括:
哈希表形式存储单元,被配置成将不同的目标物体和对应的静态姿态信息按哈希表的形式进行存储。
13.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6中任一项所述的用于呈现增强现实数据的方法。
14.一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行权利要求1-6中任一项所述的用于呈现增强现实数据的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010984846.9A CN112017304B (zh) | 2020-09-18 | 2020-09-18 | 用于呈现增强现实数据的方法、装置、电子设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010984846.9A CN112017304B (zh) | 2020-09-18 | 2020-09-18 | 用于呈现增强现实数据的方法、装置、电子设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112017304A true CN112017304A (zh) | 2020-12-01 |
CN112017304B CN112017304B (zh) | 2023-12-22 |
Family
ID=73522779
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010984846.9A Active CN112017304B (zh) | 2020-09-18 | 2020-09-18 | 用于呈现增强现实数据的方法、装置、电子设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112017304B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114299809A (zh) * | 2021-12-30 | 2022-04-08 | 北京有竹居网络技术有限公司 | 方向信息显示方法、显示装置、电子设备和可读存储介质 |
CN115439635A (zh) * | 2022-06-30 | 2022-12-06 | 亮风台(上海)信息科技有限公司 | 一种呈现目标对象的标记信息的方法与设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107450714A (zh) * | 2016-05-31 | 2017-12-08 | 大唐电信科技股份有限公司 | 基于增强现实和图像识别的人机交互支撑测试系统 |
US20190102951A1 (en) * | 2017-10-03 | 2019-04-04 | ExtendView Inc. | Sensor-based object tracking and monitoring |
-
2020
- 2020-09-18 CN CN202010984846.9A patent/CN112017304B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107450714A (zh) * | 2016-05-31 | 2017-12-08 | 大唐电信科技股份有限公司 | 基于增强现实和图像识别的人机交互支撑测试系统 |
US20190102951A1 (en) * | 2017-10-03 | 2019-04-04 | ExtendView Inc. | Sensor-based object tracking and monitoring |
Non-Patent Citations (2)
Title |
---|
ALEX HILL等: "KHARMA: An open KML/HTML architecture for mobile augmented reality applications", 《 IEEE XPLORE》 * |
武雪玲;任福;杜清运;: "混合硬件跟踪定位的空间信息虚实配准", 地理与地理信息科学, no. 03 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114299809A (zh) * | 2021-12-30 | 2022-04-08 | 北京有竹居网络技术有限公司 | 方向信息显示方法、显示装置、电子设备和可读存储介质 |
CN114299809B (zh) * | 2021-12-30 | 2024-03-22 | 北京有竹居网络技术有限公司 | 方向信息显示方法、显示装置、电子设备和可读存储介质 |
CN115439635A (zh) * | 2022-06-30 | 2022-12-06 | 亮风台(上海)信息科技有限公司 | 一种呈现目标对象的标记信息的方法与设备 |
CN115439635B (zh) * | 2022-06-30 | 2024-04-26 | 亮风台(上海)信息科技有限公司 | 一种呈现目标对象的标记信息的方法与设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112017304B (zh) | 2023-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108304075B (zh) | 一种在增强现实设备进行人机交互的方法与设备 | |
US10249089B2 (en) | System and method for representing remote participants to a meeting | |
CN106846497B (zh) | 应用于终端的呈现三维地图的方法和装置 | |
JP2017038397A (ja) | 情報をその上に投影するための実世界内の表面の動的な選択 | |
CN111462029B (zh) | 视觉点云与高精地图融合方法、装置和电子设备 | |
CN103248810A (zh) | 图像处理装置、图像处理方法和程序 | |
CN109992111B (zh) | 增强现实扩展方法和电子设备 | |
CN112181141B (zh) | Ar定位的方法、装置、电子设备及存储介质 | |
CN110120087B (zh) | 三维虚拟沙盘的标签标注方法、装置及终端设备 | |
US11423650B2 (en) | Visual positioning method and apparatus, and computer-readable storage medium | |
US11694405B2 (en) | Method for displaying annotation information, electronic device and storage medium | |
CN112017304B (zh) | 用于呈现增强现实数据的方法、装置、电子设备及介质 | |
CN111311743B (zh) | 三维重建精度测试方法、测试装置和电子设备 | |
US20230073750A1 (en) | Augmented reality (ar) imprinting methods and systems | |
CN111882634A (zh) | 一种图像渲染方法、装置、设备及存储介质 | |
KR102566300B1 (ko) | 실내 측위 방법, 장치, 장비 및 저장 매체 | |
CN111698422B (zh) | 一种全景图像的采集方法、装置、电子设备及存储介质 | |
CN116858215B (zh) | 一种ar导航地图生成方法及装置 | |
CN111915642B (zh) | 图像样本的生成方法、装置、设备和可读存储介质 | |
CN111967481A (zh) | 视觉定位方法、装置、电子设备及存储介质 | |
CN112102417A (zh) | 确定世界坐标的方法和装置及用于车路协同路侧相机的外参标定方法 | |
CN112488126A (zh) | 特征图处理方法、装置、设备以及存储介质 | |
CN111918114A (zh) | 图像显示方法、装置、显示设备及计算机可读存储介质 | |
CN111898489B (zh) | 用于标注手掌位姿的方法、装置、电子设备及存储介质 | |
CN112381877A (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 |