CN109887026B - 多视角定位跟踪方法、装置、设备及计算机可读存储介质 - Google Patents
多视角定位跟踪方法、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN109887026B CN109887026B CN201910135076.8A CN201910135076A CN109887026B CN 109887026 B CN109887026 B CN 109887026B CN 201910135076 A CN201910135076 A CN 201910135076A CN 109887026 B CN109887026 B CN 109887026B
- Authority
- CN
- China
- Prior art keywords
- point
- dimensional coordinates
- spanning tree
- acquiring
- mark
- 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
Images
Landscapes
- Length Measuring Devices By Optical Means (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种多视角定位跟踪方法及装置、设备和存储介质,该方法包括:获取定位跟踪设备上各相机之间的几何关系,基于几何关系确定待定位端各基准点在预设虚拟坐标系上的基准点三维坐标;确定各基准点三维坐标所转换的基准点邻接矩阵,并基于预设遍历算法确定在各基准点邻接矩阵所关联的基准点生成树;获取待定位端中的跟踪物体上各标记点在虚拟坐标系上的标记点三维坐标,并基于各标记点三维坐标计算标记点邻接矩阵,在标记点邻接矩阵中获取标记点生成树;在各基准点生成树中获取和标记点生成树匹配的目标生成树,输出目标生成树对应的基准点序列,以实现多视角定位跟踪。本发明解决了相机定位跟踪物体位置的准确性较低的技术问题。
Description
技术领域
本发明涉及定位跟踪技术领域,尤其涉及一种多视角定位跟踪方法、装置、设备及计算机可读存储介质。
背景技术
三维空间的跟踪定位是虚拟现实VR、增强现实AR和其它一些机器人领域的关键技术。常见的定位方案有激光定位、光学定位以及基于计算机视觉的定位,其中光学定位又分为主动式和被动式两种。激光定位和光学定位存在成本高、可检测范围小、难以实现多目标定位等问题。为解决这一系列问题,当前基本上是采用凸包、几何约束等方法来实现定位跟踪物体的位置及姿态的,但是在采用这些方法进行定位跟踪物体位置时,会存在较高的误识别现象,并且使用范围也局限于畸变较小的相机,而例如高畸变的鱼眼相机则不能这样处理。因此,如何提高相机定位跟踪物体位置的准确性成为目前亟待解决的技术问题。
发明内容
本发明的主要目的在于提供一种多视角定位跟踪的填充方法、多视角定位跟踪装置、设备和计算机存储介质,旨在解决现有技术中相机定位跟踪物体位置的准确性较低的技术问题。
为实现上述目的,本发明提供一种多视角定位跟踪方法,所述多视角定位跟踪方法包括:
获取定位跟踪设备上各相机之间的几何关系,基于所述几何关系确定待定位端各基准点在预设的虚拟坐标系上的基准点三维坐标;
确定各所述基准点三维坐标所转换的基准点邻接矩阵,并基于预设遍历算法确定在各所述基准点邻接矩阵所关联的基准点生成树;
获取所述待定位端中的跟踪物体上各标记点在所述虚拟坐标系上的标记点三维坐标,并基于各所述标记点三维坐标计算标记点邻接矩阵,在所述标记点邻接矩阵中获取标记点生成树;
在各所述基准点生成树中获取和标记点生成树匹配的目标生成树,并在定位跟踪设备上输出所述目标生成树对应的基准点序列,以实现多视角定位跟踪。
可选地,所述确定各所述基准点三维坐标所转换的基准点邻接矩阵的步骤,包括:
获取各所述基准点三维坐标之间的第一位置距离;
在各所述基准点三维坐标中确定顶点三维坐标,并基于所述顶点三维坐标和各所述第一位置距离建立基准点邻接矩阵。
可选地,所述基于所述顶点三维坐标和各所述第一位置距离建立基准点邻接矩阵的步骤,包括:
在各所述基准点三维坐标中获取和所述顶点三维坐标连通的各连通点三维坐标;
基于各所述第一位置距离将各所述连通点三维坐标依次和所述顶点三维坐标连通以构建基准点邻接矩阵。
可选地,所述基于预设遍历算法确定在各所述基准点邻接矩阵所关联的基准点生成树的步骤,包括:
获取所述基准点邻接矩阵中的起始点三维坐标,通过预设遍历算法对与所述起始点三维坐标相连通的各所述连通点三维坐标进行遍历,并将遍历时经过的各所述连通点三维坐标所构成的图案作为基准点生成树。
可选地,所述基于各所述标记点三维坐标计算标记点邻接矩阵,在所述标记点邻接矩阵中获取标记点生成树的步骤,包括:
获取各所述标记点三维坐标之间的第二位置距离;
在各所述标记点三维坐标中确定初级三维坐标,并基于各所述第二位置距离将所述初级三维坐标与各所述标记点三维坐标中所述初级三维坐标之外的其它各所述标记点三维坐标连通,以获取初级邻接矩阵;
在各所述初级邻接矩阵中获取标记点邻接矩阵,并在所述标记点邻接矩阵中获取标记点生成树。
可选地,所述在各所述初级邻接矩阵中获取标记点邻接矩阵,并在所述标记点邻接矩阵中获取标记点生成树的步骤,包括:
在各所述初级邻接矩阵中随机选择一个具有各所述标记点三维坐标的初级邻接矩阵作为标记点邻接矩阵;
获取所述定位跟踪设备中的预设遍历算法,并通过所述预设遍历算法对所述标记点邻接矩阵进行遍历以获取标记点生成树。
可选地,所述基于所述几何关系确定待定位端各基准点在预设的虚拟坐标系上的基准点三维坐标
获取待定位端上的基准点在各所述相机上的投影点;
通过几何关系和各所述投影点在预设的虚拟坐标系上的虚拟三维坐标进行三维测量计算,以确定所述基准点在所述虚拟坐标系上的基准点三维坐标。
此外,为实现上述目的,本发明还提供一种多视角定位跟踪装置,所述多视角定位跟踪装置包括:
获取模块,用于获取定位跟踪设备上各相机之间的几何关系,基于所述几何关系确定待定位端各基准点在预设的虚拟坐标系上的基准点三维坐标;
确定模块,用于确定各所述基准点三维坐标所转换的基准点邻接矩阵,并基于预设遍历算法确定在各所述基准点邻接矩阵所关联的基准点生成树;
计算模块,用于获取所述待定位端中的跟踪物体上各标记点在所述虚拟坐标系上的标记点三维坐标,并基于各所述标记点三维坐标计算标记点邻接矩阵,在所述标记点邻接矩阵中获取标记点生成树;
输出模块,用于在各所述基准点生成树中获取和标记点生成树匹配的目标生成树,并在定位跟踪设备上输出所述目标生成树对应的基准点序列,以实现多视角定位跟踪。
此外,为实现上述目的,本发明还提供一种多视角定位跟踪设备;
所述多视角定位跟踪设备包括:相机、存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中:
所述计算机程序被所述处理器执行时实现如上所述的多视角定位跟踪方法的步骤。
此外,为实现上述目的,本发明还提供计算机可读存储介质;
所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述的多视角定位跟踪方法的步骤。
本发明通过获取定位跟踪设备上各相机之间的几何关系,基于所述几何关系确定待定位端各基准点在预设的虚拟坐标系上的基准点三维坐标;确定各所述基准点三维坐标所转换的基准点邻接矩阵,并基于预设遍历算法确定在各所述基准点邻接矩阵所关联的基准点生成树;获取所述待定位端中的跟踪物体上各标记点在所述虚拟坐标系上的标记点三维坐标,并基于各所述标记点三维坐标计算标记点邻接矩阵,在所述标记点邻接矩阵中获取标记点生成树;在各所述基准点生成树中获取和标记点生成树匹配的目标生成树,并在定位跟踪设备上输出所述目标生成树对应的基准点序列,以实现多视角定位跟踪。通过先获取各个基准点生成树,然后再获取标记点生成树,并在各个基准点生成树中获取和标记点生成树匹配的目标生成树,再输出此目标生成树的基准点序列,让用户能够根据基准点序列确定跟踪物体上各标记点在待定位端上的位置,实现了对各标记点的多视角定位跟踪,并避免了将有误差的标记点图像误认为正确图像,出现误识别的现象发生,从而提高了定位跟踪物体位置的可靠性、增强了定位跟踪物体位置的抗干扰性,并且由于是采用通过邻接矩阵来获取生成树的,而邻接矩阵又包含各个基准点之间的位置距离,因此,也提高了适用范围和定位跟踪物体位置的准确性。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的终端\装置结构示意图;
图2为本发明多视角定位跟踪方法第一实施例的流程示意图;
图3为本发明多视角定位跟踪方法第二实施例的流程示意图;
图4为本发明多视角定位跟踪装置的功能模块示意图;
图5为本发明多视角定位跟踪方法的单点多视角测量的场景示意图;
图6为本发明多视角定位跟踪方法的邻接矩阵图。
本发明目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。
本发明实施例终端为多视角定位跟踪设备。
如图1所示,该终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,终端还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示屏的亮度,接近传感器可在终端设备移动到耳边时,关闭显示屏和/或背光。当然,终端设备还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及多视角定位跟踪程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的多视角定位跟踪程序,并执行以下操作:
获取定位跟踪设备上各相机之间的几何关系,基于所述几何关系确定待定位端各基准点在预设的虚拟坐标系上的基准点三维坐标;
确定各所述基准点三维坐标所转换的基准点邻接矩阵,并基于预设遍历算法确定在各所述基准点邻接矩阵所关联的基准点生成树;
获取所述待定位端中的跟踪物体上各标记点在所述虚拟坐标系上的标记点三维坐标,并基于各所述标记点三维坐标计算标记点邻接矩阵,在所述标记点邻接矩阵中获取标记点生成树;
在各所述基准点生成树中获取和标记点生成树匹配的目标生成树,并在定位跟踪设备上输出所述目标生成树对应的基准点序列,以实现多视角定位跟踪。
参照图2,本发明提供一种多视角定位跟踪方法,在多视角定位跟踪方法一实施例中,多视角定位跟踪方法包括以下步骤:
步骤S10,获取定位跟踪设备上各相机之间的几何关系,基于所述几何关系确定待定位端各基准点在预设的虚拟坐标系上的基准点三维坐标;
在本实施例中,定位跟踪设备可以是具有对目标物体定位跟踪功能的设备,可以包括显示端、相机等装置。待定位端可以是带有标记点的眼镜和手柄。预设的虚拟坐标系可以是用户基于自身的喜好需求自行设置的虚拟坐标系。相机可以是大视角的鱼眼相机,也可以是小视角、畸变的相机,并且相机的数量在此不做限制要求。位置关系包括平移关系和旋转关系。基准点可以是眼镜上的反光点,或者是手柄上的红外灯。基准点三维坐标可以是基准点在预设的三维坐标系中的三维坐标。由于目前大多数AR和VR以及其它需要自动检测的场合都有应用到光学测量来定位跟踪物体的位置及姿态,因此在本实施例中可以通过检测跟踪物体上的多个标记点来定位该跟踪物体的三维坐标信息。并且,目前市场上已有的带标记点物体,均可以反射红外光线,所以可以通过加滤光片的相机抓拍到。而由于在抓拍标记点时,不止应用一个相机,需要多个相机相互配合,才能准确地定位到待定位端中的跟踪物体在预设的虚拟坐标系上的三维坐标信息。但是,由于定位跟踪设备上各相机之间的几何关系存在平移关系和旋转关系,因此只有先获取并确定各个相机之间的几何关系,才能进行测量,而测量相机之间的几何关系可以通过立体标定来确定。当目标物体上的标记点已被多个已确定几何关系的相机同时检测到时,可以通过如三维测量的方式确定出标记点三维坐标,同理,基准点对应的基准点三维坐标也可以通过采用和确定标记点的标记点三维坐标相同的方式来确定获取。
为辅助理解如何获取到基准点对应的基准点三维坐标,下面进行举例说明。
例如,如图5所示,O1,O2是相机的投影中心,C1,C2是成像面,P是空间中的点状物体,p1,p2分别是基准点在两个相机上的投影点,由于相机坐标系之间的关系已提前确定,因此可以通过三维测量的方法来计算出P点的三维坐标。
步骤S20,确定各所述基准点三维坐标所转换的基准点邻接矩阵,并基于预设遍历算法确定在各所述基准点邻接矩阵所关联的基准点生成树;
基准点邻接矩阵表示基准点之间相邻关系的矩阵。预设遍历算法可以是用户提前预设设置的遍历算法,所谓遍历(Traversal)是指沿着某条搜索路线,依次对树中每个结点均做一次且仅做一次访问。基准点生成树可以是所有基准点均由边连接在一起,且不存在回路的图。当获取到各个基准点三维坐标后,需要从这些基准点三维坐标中选择一个基准点三维坐标作为起始顶点,并和其它基准点三维坐标连通以获取基准点邻接矩阵,然后通过预设遍历算法在基准点邻接矩阵中获取所有基准点生成树。其中,以不同的基准点三维坐标作为起始顶点,获取到的基准点邻接矩阵是不相同的,并且就算起始顶点相同,但与起始顶点连通的各基准点三维坐标不同,也会形成不同的基准点邻接矩阵,即可以认为一个基准点三维坐标对应有多个基准点邻接矩阵。而在一个基准点邻接矩阵中也能通过预设遍历算法获取到多个基准点生成树。
步骤S30,获取所述待定位端中的跟踪物体上各标记点在所述虚拟坐标系上的标记点三维坐标,并基于各所述标记点三维坐标计算标记点邻接矩阵,在所述标记点邻接矩阵中获取标记点生成树;
标记点可以是待定位物体上的反光球。当待定位端中的跟踪物体上的标记点已被多个已确定几何关系的相机同时检测到时,可以通过如三维测量的方式确定出各标记点在虚拟坐标系上的标记点三维坐标,再根据点结构分布特性,例如以结构的重心为原点构建局部坐标系,通过一个比较容易区分的两个最长点之间的距离作为特征在测量到的三维点结构中搜索,这样就可以建立初始的对应关系,并且在获取到各个标记点三维坐标时,可以使用图结构来描述该检测问题,将标记点视为图的顶点,那么就可以使用邻接矩阵来描述这个结构。例如,如图6所示,假设一个结构有N个标记点组成,V={V1,V2,V3,V4,V5,V6,V7,V8},从V0开始,找到V1,通过V1找到V2,再通过V2找下一节点等,直到所有的节点V1-V8均接通,从而形成邻接矩阵,并且图6中的邻接表是对邻接矩阵的进一步说明。
在获取到标记点邻接矩阵后,需要在这些标记点邻接矩阵中搜索一个具有标记点的生成树作为标记点生成树,以便后续和原先获取到的各个生成树进行匹配。
步骤S40,在各所述基准点生成树中获取和标记点生成树匹配的目标生成树,并在定位跟踪设备上输出所述目标生成树对应的基准点序列,以实现多视角定位跟踪。
目标生成树可以是用户最终需要的生成树。基准点序列可以是目标生成树中的各个基准点的排列顺序。当获取到各个基准点生成树和标记点生成树后,还需要将标记点生成树依次和各个基准点生成树进行匹配,直到发现有基准点生成树和标记点生成树匹配成功,则可以将匹配成功的基准点生成树作为目标生成树,并在定位跟踪设备上获取输出此目标生成树对应的基准点序列,让用户能够知道跟踪物体在待定位端的具体位置,从而实现多视角定位跟踪。进一步地,为了辅助理解采用生成树来描述定位结构的步骤,下面进行举例说明。例如,在制作出带基准点的结构之后,可以采用直尺测量出各个点之间的长度,然后将其表示为邻接矩阵的形式,再使用图的遍历算法搜索出所有的生成树,并记录各个生成树对应的序列号,将其保存为该结构的模板,以供后面匹配使用。在测量系统测得发光点的三维坐标之后,需要计算本次测量的邻接矩阵,然后同样通过遍历算法来搜索一个生成树,并将此生成树和原先保存的模板中的各个生成树进行匹配,当匹配到模板中的一个生成树时,那么对应的点序列也就成功检索出来了,结构搜索即可完成,此时也成功识别到特定结构。
在本实施例中,通过获取定位跟踪设备上各相机之间的几何关系,基于所述几何关系确定待定位端各基准点在预设的虚拟坐标系上的基准点三维坐标;确定各所述基准点三维坐标所转换的基准点邻接矩阵,并基于预设遍历算法确定在各所述基准点邻接矩阵所关联的基准点生成树;获取所述待定位端中的跟踪物体上各标记点在所述虚拟坐标系上的标记点三维坐标,并基于各所述标记点三维坐标计算标记点邻接矩阵,在所述标记点邻接矩阵中获取标记点生成树;在各所述基准点生成树中获取和标记点生成树匹配的目标生成树,并在定位跟踪设备上输出所述目标生成树对应的基准点序列,以实现多视角定位跟踪。通过先获取各个基准点生成树,然后再获取标记点生成树,并在各个基准点生成树中获取和标记点生成树匹配的目标生成树,再输出此目标生成树的基准点序列,让用户能够根据基准点序列确定跟踪物体上各标记点在待定位端上的位置,实现了对各标记点的多视角定位跟踪,并避免了将有误差的标记点图像误认为正确图像,出现误识别的现象发生,从而提高了定位跟踪物体位置的可靠性、增强了定位跟踪物体位置的抗干扰性,并且由于是采用通过邻接矩阵来获取生成树的,而邻接矩阵又包含各个基准点之间的位置距离,因此,也提高了适用范围和定位跟踪物体位置的准确性。
进一步地,在本发明第一实施例的基础上,提出了本发明多视角定位跟踪方法的第二实施例,本实施例是本发明第一实施例的步骤S20,确定各所述基准点三维坐标所转换的基准点邻接矩阵的步骤的细化,参照图3,包括:
步骤S21,获取各所述基准点三维坐标之间的第一位置距离;
第一位置距离可以是各个基准点之间的相互空间距离。当获取到各个基准点对应的基准点三维坐标后,还需要计算每个基准点和其它基准点之间的第一位置距离,即可以根据各个基准点三维坐标通过三维运算来确定各个基准点之间的第一位置距离,也可以直接用直尺测量来获取各个基准点之间的第一位置距离。
步骤S22,在各所述基准点三维坐标中确定顶点三维坐标,并基于所述顶点三维坐标和各所述第一位置距离建立基准点邻接矩阵。
顶点三维坐标可以是构建基准点邻接矩阵最开始访问的基准点三维坐标。由于构建基准点邻接矩阵是需要先确定顶点三维坐标,再从顶点三维坐标出发连接所有的基准点形成的,并且当顶点三维坐标不同时,其构成的基准点邻接矩阵也是不同的。因此,当获取到各个基准点三维坐标之间的第一位置距离,并在各个基准点三维坐标中确定顶点三维坐标后,则可以根据顶点三维坐标和第一位置距离绘制出基准点邻接矩阵,然后在基准点邻接矩阵中通过预设遍历算法来获取各个基准点生成树。为辅助理解遍历算法,进行举例说明。例如,以某一节点开始,访问该节点,并记录哪些节点访问过了,哪些节点没有访问过,当发现某个节点的邻接节点都访问过了,则回退到上一个节点,访问上一个节点的其它相邻节点,直至返回开始节点。
在本实施例中,通过获取各个基准点三维坐标之间的第一位置距离来建立各个基准点邻接矩阵,从而保障了邻接矩阵的准确性,提高了后续的生成树匹配的准确性,提高了用户使用体验感。
具体地,基于所述顶点三维坐标和各所述第一位置距离建立基准点邻接矩阵的步骤,包括:
步骤S221,在各所述基准点三维坐标中获取和所述顶点三维坐标连通的各连通点三维坐标;
连通点三维坐标可以是与顶点三维坐标连通的其它基准点三维坐标。当获取到各个基准点三维坐标后,还需要确定有哪些基准点三维坐标需要和顶点三维坐标进行连通,并将其作为连通点三维坐标,然后筛选出来。例如,假设基准点三维坐标有a、b、c、d、e、f四种,但经过确定发现,a为顶点三维坐标,b、c、d、e为连通点三维坐标时,则可以从a开始找到b、通过b找到d,通过d找到c,而c的相邻节点都访问过,所以回退到d,通过d又找到e,e的相邻节点都访问过,回退到d,...直至结束。
步骤S222,基于各所述第一位置距离将各所述连通点三维坐标依次和所述顶点三维坐标连通以构建基准点邻接矩阵。
当获取到各个连通点三维坐标和各个基准点三维坐标之间的第一位置距离后,则可以依次将顶点三维坐标和各个连通点三维坐标连通,以构成基准点三维坐标。需要说明的是,每个连通点三维坐标和顶点三维坐标连通的方式可以不用直接相连,可以通过其它连通点三维坐标间接相连。
在本实施例中,通过确定与基准点三维坐标连通的各连通点三维坐标,从而保证了获取到的基准点三维坐标的多样性,提高了用户的使用体验感。
进一步地,基于预设遍历算法确定在各所述基准点邻接矩阵所关联的基准点生成树的步骤,包括:
步骤A23,获取所述基准点邻接矩阵中的起始点三维坐标,通过预设遍历算法对与所述起始点三维坐标相连通的各所述基准点三维坐标进行遍历,并将遍历时经过的各所述基准点三维坐标所构成的图作为基准点生成树。
起始点三维坐标可以是在基准点邻接矩阵中选择的一个顶点三维坐标。由于每个基准点邻接矩阵包含有多个生成树,因此从基准点邻接矩阵中的不同基准点出发进行遍历,可以得到不同的基准点生成树。并且在同一个基准点邻接矩阵中获取到的多个基准点生成树具有以下特点,基准点生成树的基准点个数和邻接矩阵中基准点个数相同;基准点生成树是此基准点邻接矩阵的极小连通子图;生成树中任意两个基准点之间的路径是唯一的。
当获取到基准点邻接矩阵中的起始点三维坐标后,通过预设遍历算法对与起始点三维坐标相连通的各基准点三维坐标进行遍历,直至将矩阵中所有的基准点三维坐标均遍历完成,再将遍历时经过的路径和各个基准点三维坐标构成的图作为基准点生成树。
在本实施例中,通过在邻接矩阵中获取起始点三维坐标来确定基准点生成树,从而保证能够获取到所有的生成树,为后续的生成树匹配提供了基础,保障了用户的体验使用感。
进一步地,在本发明第一至第二任意一个实施例的基础上,提出了本发明多视角定位跟踪方法的第三实施例,本实施例是本发明第一实施例的步骤S30,基于各所述标记点三维坐标计算标记点邻接矩阵,在所述标记点邻接矩阵中获取标记点生成树的步骤的细化,包括:
步骤S31,获取各所述标记点三维坐标之间的第二位置距离;
第二位置距离可以是各个标记点之间的相互空间距离。当获取到各个标记点在虚拟坐标系中的标记点三维坐标后,还需要计算每个标记点和其它标记点之间的第二位置距离,即可以根据各个标记点三维坐标通过三维运算来确定各个标记点之间的第二位置距离,也可以直接用直尺测量来获取各个标记点之间的第二位置距离。
步骤S32,在各所述标记点三维坐标中确定初级三维坐标,并基于各所述第二位置距离将所述初级三维坐标与各所述标记点三维坐标中所述初级三维坐标之外的其它各所述标记点三维坐标连通,以获取初级邻接矩阵;
初级三维坐标可以是在各个标记点三维坐标中优先参与构建邻接矩阵的标记点三维坐标。初级邻接矩阵可以是具有标记点的所有邻接矩阵,即可以包含所有标记点的邻接矩阵,也可以是只包含部分标记点的邻接矩阵。当获取到各个标记点三维坐标后,需要测量每个标记点三维坐标距离其它各个标记点三维坐标的第二位置距离,并从各个标记点三维坐标中筛选出最先开始参与构建邻接矩阵的标记点三维坐标,即初级三维坐标,再基于第二位置距离将初级三维坐标与各标记点三维坐标中初级三维坐标之外的其它各标记点三维坐标连通,以获取初级邻接矩阵。
步骤S33,在各所述初级邻接矩阵中获取标记点邻接矩阵,并在所述标记点邻接矩阵中获取标记点生成树。
在各个初级邻接矩阵中可以随机获取一个具有各个标记点三维坐标的标记点邻接矩阵,并由于生成树是邻接矩阵中的极小连通子图,因此,可以在标记点邻接矩阵中通过预设遍历算法来获取标记点生成树。需要说明的是,由于在标记点邻接矩阵中,可以获取多个标记点生成树,在本实施例中,只需要随机获取一个具有所有标记点的标记点生成树。
在本实施例中,通过确定具有各标记点三维坐标的标记点邻接矩阵,并在标记点邻接矩阵中确定标记点生成树,从而保障了获取到标记点的准确性,提高了用户的使用体验感。
具体地,在各所述初级邻接矩阵中获取标记点邻接矩阵,并在所述标记点邻接矩阵中获取标记点生成树的步骤,包括:
步骤S331,在各所述初级邻接矩阵中随机选择一个具有各所述标记点三维坐标的初级邻接矩阵作为标记点邻接矩阵;
当获取到各个初级邻接矩阵后,还需要从这些初级邻接矩阵中随机选择一个具有各个标记点三维坐标的初级邻接矩阵作为标记点邻接矩阵,具体地选择方式,在此不做限制。
步骤S332,获取所述定位跟踪设备中的预设遍历算法,并通过所述预设遍历算法对所述标记点邻接矩阵进行遍历以获取标记点生成树。
当获取到标记点邻接矩阵后,还需要获取定位跟踪设备中的预设遍历算法,并可以通过预设遍历算法对标记点邻接矩阵进行遍历,以获取标记点生成树,需要说明的是,在本实施例中,标记点生成树只需要匹配成功一次就可以了。
在本实施例中,通过确定具有各标记点三维坐标的标记点邻接矩阵,并在标记点邻接矩阵中确定标记点生成树,从而保障了获取到标记点的准确性,提高了用户的使用体验感。
进一步地,在本发明第一至第三任意一个实施例的基础上,提出了本发明多视角定位跟踪方法的第四实施例,本实施例是本发明第一实施例的步骤S10,获取各相机之间的几何关系,基于所述几何关系确定各基准点对应的基准点三维坐标的步骤的细化,包括:
步骤S11,获取待定位端上的基准点在各所述相机上的投影点;
投影点可以是投影中心对基准点进行投影后的点。投影中心可以是相机中发出光源投影的光源点。成像面接收投影中心发射光的平面。在相机中,先获取投影中心和成像面,并通过投影中心将待定位端上的基准点投影到成像面上以形成投影点。
步骤S12,通过几何关系和各所述投影点在预设的虚拟坐标系上的虚拟三维坐标进行三维测量计算,以确定所述基准点在所述虚拟坐标系上的基准点三维坐标。
虚拟三维坐标可以是投影点和各相机在虚拟坐标系中的空间位置。当通过投影中心确定各个基准点在相机中成像面上的投影点后,由于在定位跟踪物体位置时,不止采用一个相机,因此需要确定每一个基准点在不同相机中成像面上的投影点,再通过三维测量计算来确定基准点在预设的虚拟坐标系中的基准点三维坐标。需要说明的是,每个基准点对应的基准点三维坐标,其确定方式均可以是相同的。
在本实施例中,通过获取相机的投影中心、成像面和基准点,保障了获取到的投影点的准确性,提高了用户的体验使用感。
具体地,确定所述投影点和各所述相机在预设的虚拟坐标系上的虚拟三维坐标的步骤,包括:
步骤A12,获取预设的虚拟坐标系,并确定所述预设坐标系中的原点;
预设的虚拟坐标系可以是用户基于自身需求定义的坐标系,也可以是先计算自定义的屏幕坐标系与相机坐标系之间的相对关系,得到3D场景桌面的虚拟坐标系。
步骤A13,通过所述原点确定各所述投影点在所述预设坐标系上的投影点三维坐标,并基于所述几何关系和各所述投影点三维坐标确定所述基准点对应的基准点三维坐标。
在预设坐标系中,当确定原点坐标所在位置之后,还需要确定各个投影点在预设坐标系上的投影点三维坐标,并由于已提前确定各个相机之间的几何关系,则需要根据已确定的各个投影点三维坐标进行三维测量计算,以确定此基准点对应的基准点三维坐标。需要说明的是,在进行确定基准点三维坐标时,只需要将该基准点在每个相机成像面中的投影点获取进行三维测量计算即可。
在本实施例中,通过获取预设坐标系,来确定基准点对应的基准点三维坐标,从而保障了计算基准点三维坐标的准确性,提高了用户的使用体验感。
此外,参照图4,本发明实施例还提出一种多视角定位跟踪装置,所述多视角定位跟踪装置包括:
获取模块,用于获取定位跟踪设备上各相机之间的几何关系,基于所述几何关系确定待定位端各基准点在预设的虚拟坐标系上的基准点三维坐标;
确定模块,用于确定各所述基准点三维坐标所转换的基准点邻接矩阵,并基于预设遍历算法确定在各所述基准点邻接矩阵所关联的基准点生成树;
计算模块,用于获取所述待定位端中的跟踪物体上各标记点在所述虚拟坐标系上的标记点三维坐标,并基于各所述标记点三维坐标计算标记点邻接矩阵,在所述标记点邻接矩阵中获取标记点生成树;
输出模块,用于在各所述基准点生成树中获取和标记点生成树匹配的目标生成树,并在定位跟踪设备上输出所述目标生成树对应的基准点序列,以实现多视角定位跟踪。
可选地,所述确定模块,还用于:
获取各所述基准点三维坐标之间的第一位置距离;
在各所述基准点三维坐标中确定顶点三维坐标,并基于所述顶点三维坐标和各所述第一位置距离建立基准点邻接矩阵。
可选地,所述确定模块,还用于:
在各所述基准点三维坐标中获取和所述顶点三维坐标连通的各连通点三维坐标;
基于各所述第一位置距离将各所述连通点三维坐标依次和所述顶点三维坐标连通以构建基准点邻接矩阵。
可选地,所述确定模块,还用于:
获取所述基准点邻接矩阵中的起始点三维坐标,通过预设遍历算法对与所述起始点三维坐标相连通的各所述连通点三维坐标进行遍历,并将遍历时经过的各所述连通点三维坐标所构成的图案作为基准点生成树。
可选地,所述计算模块,还用于:
获取各所述标记点三维坐标之间的第二位置距离;
在各所述标记点三维坐标中确定初级三维坐标,并基于各所述第二位置距离将所述初级三维坐标与各所述标记点三维坐标中所述初级三维坐标之外的其它各所述标记点三维坐标连通,以获取初级邻接矩阵;
在各所述初级邻接矩阵中获取标记点邻接矩阵,并在所述标记点邻接矩阵中获取标记点生成树。
可选地,所述计算模块,还用于:
在各所述初级邻接矩阵中随机选择一个具有各所述标记点三维坐标的初级邻接矩阵作为标记点邻接矩阵;
获取所述定位跟踪设备中的预设遍历算法,并通过所述预设遍历算法对所述标记点邻接矩阵进行遍历以获取标记点生成树。
可选地,所述获取模块,还用于:
获取待定位端上的基准点在各所述相机上的投影点;
通过几何关系和各所述投影点在预设的虚拟坐标系上的虚拟三维坐标进行三维测量计算,以确定所述基准点在所述虚拟坐标系上的基准点三维坐标。
其中,多视角定位跟踪装置的各个功能模块实现的步骤可参照本发明多视角定位跟踪方法的各个实施例,此处不再赘述。
本发明还提供一种多视角定位跟踪设备,所述多视角定位跟踪设备包括:相机、存储器、处理器、通信总线以及存储在所述存储器上的多视角定位跟踪程序:
所述通信总线用于实现处理器和存储器之间的连接通信;
所述处理器用于执行所述多视角定位跟踪程序,以实现上述多视角定位跟踪方法各实施例的步骤。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于实现上述多视角定位跟踪方法各实施例的步骤。
本发明计算机可读存储介质具体实施方式与上述多视角定位跟踪方法各实施例基本相同,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种多视角定位跟踪方法,其特征在于,所述多视角定位跟踪方法包括以下步骤:
获取定位跟踪设备上各相机之间的几何关系,基于所述几何关系确定待定位端各基准点在预设的虚拟坐标系上的基准点三维坐标;
确定各所述基准点三维坐标所转换的基准点邻接矩阵,并基于预设遍历算法确定在各所述基准点邻接矩阵所关联的基准点生成树;
获取所述待定位端中的跟踪物体上各标记点在所述虚拟坐标系上的标记点三维坐标,并获取各所述标记点三维坐标之间的第二位置距离;
在各所述标记点三维坐标中确定初级三维坐标,并基于各所述第二位置距离将所述初级三维坐标与各所述标记点三维坐标中所述初级三维坐标之外的其它各所述标记点三维坐标连通,以获取初级邻接矩阵;
在各所述初级邻接矩阵中获取标记点邻接矩阵,并在所述标记点邻接矩阵中获取标记点生成树;
在各所述基准点生成树中获取和标记点生成树匹配的目标生成树,并在定位跟踪设备上输出所述目标生成树对应的基准点序列,以实现多视角定位跟踪。
2.如权利要求1所述的多视角定位跟踪方法,其特征在于,所述确定各所述基准点三维坐标所转换的基准点邻接矩阵的步骤,包括:
获取各所述基准点三维坐标之间的第一位置距离;
在各所述基准点三维坐标中确定顶点三维坐标,并基于所述顶点三维坐标和各所述第一位置距离建立基准点邻接矩阵。
3.如权利要求2所述的多视角定位跟踪方法,其特征在于,所述基于所述顶点三维坐标和各所述第一位置距离建立基准点邻接矩阵的步骤,包括:
在各所述基准点三维坐标中获取和所述顶点三维坐标连通的各连通点三维坐标;
基于各所述第一位置距离将各所述连通点三维坐标依次和所述顶点三维坐标连通以构建基准点邻接矩阵。
4.如权利要求3所述的多视角定位跟踪方法,其特征在于,所述基于预设遍历算法确定在各所述基准点邻接矩阵所关联的基准点生成树的步骤,包括:
获取所述基准点邻接矩阵中的起始点三维坐标,通过预设遍历算法对与所述起始点三维坐标相连通的各所述连通点三维坐标进行遍历,并将遍历时经过的各所述连通点三维坐标所构成的图案作为基准点生成树。
5.如权利要求1所述的多视角定位跟踪方法,其特征在于,所述在各所述初级邻接矩阵中获取标记点邻接矩阵,并在所述标记点邻接矩阵中获取标记点生成树的步骤,包括:
在各所述初级邻接矩阵中随机选择一个具有各所述标记点三维坐标的初级邻接矩阵作为标记点邻接矩阵;
获取所述定位跟踪设备中的预设遍历算法,并通过所述预设遍历算法对所述标记点邻接矩阵进行遍历以获取标记点生成树。
6.如权利要求1所述的多视角定位跟踪方法,其特征在于,所述基于所述几何关系确定待定位端各基准点在预设的虚拟坐标系上的基准点三维坐标获取待定位端上的基准点在各所述相机上的投影点;
通过几何关系和各所述投影点在预设的虚拟坐标系上的虚拟三维坐标进行三维测量计算,以确定所述基准点在所述虚拟坐标系上的基准点三维坐标。
7.一种多视角定位跟踪装置,其特征在于,所述多视角定位跟踪装置包括:
获取模块,用于获取定位跟踪设备上各相机之间的几何关系,基于所述几何关系确定待定位端各基准点在预设的虚拟坐标系上的基准点三维坐标;
确定模块,用于确定各所述基准点三维坐标所转换的基准点邻接矩阵,并基于预设遍历算法确定在各所述基准点邻接矩阵所关联的基准点生成树;
计算模块,用于获取所述待定位端中的跟踪物体上各标记点在所述虚拟坐标系上的标记点三维坐标,并获取各所述标记点三维坐标之间的第二位置距离;在各所述标记点三维坐标中确定初级三维坐标,并基于各所述第二位置距离将所述初级三维坐标与各所述标记点三维坐标中所述初级三维坐标之外的其它各所述标记点三维坐标连通,以获取初级邻接矩阵;在各所述初级邻接矩阵中获取标记点邻接矩阵,并在所述标记点邻接矩阵中获取标记点生成树;
输出模块,用于在各所述基准点生成树中获取和标记点生成树匹配的目标生成树,并在定位跟踪设备上输出所述目标生成树对应的基准点序列,以实现多视角定位跟踪。
8.一种多视角定位跟踪设备,其特征在于,所述多视角定位跟踪设备包括:相机、存储器、处理器及存储在所述存储器上并可在所述处理器上运行的多视角定位跟踪程序,所述多视角定位跟踪程序被所述处理器执行时实现如权利要求1至6中任一项所述的多视角定位跟踪方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有多视角定位跟踪程序,所述多视角定位跟踪程序被处理器执行时实现如权利要求1至6中任一项所述的多视角定位跟踪方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910135076.8A CN109887026B (zh) | 2019-02-20 | 2019-02-20 | 多视角定位跟踪方法、装置、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910135076.8A CN109887026B (zh) | 2019-02-20 | 2019-02-20 | 多视角定位跟踪方法、装置、设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109887026A CN109887026A (zh) | 2019-06-14 |
CN109887026B true CN109887026B (zh) | 2021-07-16 |
Family
ID=66928971
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910135076.8A Active CN109887026B (zh) | 2019-02-20 | 2019-02-20 | 多视角定位跟踪方法、装置、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109887026B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006062377A1 (en) * | 2004-12-10 | 2006-06-15 | Electronics And Telecommunications Research Institute | Apparatus for universal coding for multi-view video |
CN104282026A (zh) * | 2014-10-24 | 2015-01-14 | 上海交通大学 | 基于分水岭算法和最小生成树的分布均匀性评估方法 |
CN107560593A (zh) * | 2017-08-28 | 2018-01-09 | 荆门程远电子科技有限公司 | 基于最小生成树的特殊无人机影像空三自由网构建方法 |
CN107690650A (zh) * | 2015-06-17 | 2018-02-13 | 三菱电机株式会社 | 用于将3d场景重构为3d模型的方法 |
-
2019
- 2019-02-20 CN CN201910135076.8A patent/CN109887026B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006062377A1 (en) * | 2004-12-10 | 2006-06-15 | Electronics And Telecommunications Research Institute | Apparatus for universal coding for multi-view video |
CN104282026A (zh) * | 2014-10-24 | 2015-01-14 | 上海交通大学 | 基于分水岭算法和最小生成树的分布均匀性评估方法 |
CN107690650A (zh) * | 2015-06-17 | 2018-02-13 | 三菱电机株式会社 | 用于将3d场景重构为3d模型的方法 |
CN107560593A (zh) * | 2017-08-28 | 2018-01-09 | 荆门程远电子科技有限公司 | 基于最小生成树的特殊无人机影像空三自由网构建方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109887026A (zh) | 2019-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107328420B (zh) | 定位方法和装置 | |
US9953461B2 (en) | Navigation system applying augmented reality | |
CN104936283A (zh) | 室内定位方法、服务器和系统 | |
CN110443850B (zh) | 目标对象的定位方法及装置、存储介质、电子装置 | |
CN106304335A (zh) | 定位方法、装置及终端 | |
CN110887499B (zh) | 一种地图中道路数据和兴趣点数据的处理方法及终端 | |
JP2004506215A (ja) | 3次元再構成のためのストラップダウンシステム | |
CN108534789B (zh) | 一种多路径定位坐标统一方法、电子设备和可读存储介质 | |
CN112184793B (zh) | 深度数据的处理方法、装置及可读存储介质 | |
CN110706278A (zh) | 一种基于激光雷达和摄像头的物体识别方法和装置 | |
KR20180126408A (ko) | 사용자 단말의 위치를 판단하는 방법 | |
Wohlfeil et al. | Automatic camera system calibration with a chessboard enabling full image coverage | |
CN114037768A (zh) | 一种多套跟踪式扫描仪联合标定的方法和装置 | |
EP3910967B1 (en) | Method and device for positioning internet of things devices | |
US11758100B2 (en) | Portable projection mapping device and projection mapping system | |
CN109887026B (zh) | 多视角定位跟踪方法、装置、设备及计算机可读存储介质 | |
JP7412260B2 (ja) | 測位システム、測位装置、測位方法および測位プログラム | |
CN111161350B (zh) | 位置信息及位置关系确定方法、位置信息获取装置 | |
CN110969704B (zh) | 一种基于ar导视的标记生成跟踪方法及装置 | |
CN112070844A (zh) | 结构光系统的校准方法及装置、校准工具图、设备及介质 | |
CN113450414A (zh) | 一种摄像机标定方法、设备、系统及存储介质 | |
JP6281947B2 (ja) | 情報提示システム、方法及びプログラム | |
CN108228580A (zh) | 一种在图像中展现业务对象数据的方法和装置 | |
CN113008135B (zh) | 用于确定空间中目标点位置的方法、设备、电子装置及介质 | |
CN115082520A (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 |