CN113256718B - 定位方法和装置、设备及存储介质 - Google Patents
定位方法和装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113256718B CN113256718B CN202110587271.1A CN202110587271A CN113256718B CN 113256718 B CN113256718 B CN 113256718B CN 202110587271 A CN202110587271 A CN 202110587271A CN 113256718 B CN113256718 B CN 113256718B
- Authority
- CN
- China
- Prior art keywords
- image frame
- dimensional
- current image
- point
- pose
- 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
- 238000000034 method Methods 0.000 title claims abstract description 76
- 230000000007 visual effect Effects 0.000 claims abstract description 22
- 239000011159 matrix material Substances 0.000 claims description 53
- 238000005457 optimization Methods 0.000 claims description 43
- 238000013519 translation Methods 0.000 claims description 15
- 230000004927 fusion Effects 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 4
- 238000012545 processing Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000002059 diagnostic imaging Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/04—Constraint-based CAD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
- G06T2207/10012—Stereo images
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Geometry (AREA)
- Computational Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种定位方法和装置、设备及存储介质。该定位方法包括:获取设备拍摄的当前图像帧;依据当前图像帧与第一历史图像帧之间的相对位置关系,确定当前图像帧的初始位姿;利用点面约束模型对初始位姿进行优化得到优化后的位姿,并将优化后的位姿确定为设备的视觉定位结果;其中,点面约束模型是利用当前图像帧同第二历史图像帧之间的二维匹配特征点对,与结构化平面之间的关联关系构建的。上述方案,能够提高设备的定位精度。
Description
技术领域
本申请涉及定位技术领域,特别是涉及一种定位方法和装置、设备及存储介质。
背景技术
视觉定位技术在很多领域中都起着很重要的作用,例如在无人驾驶、机器人等等领域。其中,在视觉定位技术中,很多时候会利用结构化平面来优化对设备的定位结果。结构化平面指的是根据构建的三维点建立的三维平面。一般使用结构化平面对设备的定位结果进行优化的方式是基于构建的三维点以及结构化平面的关系优化定位结果,三维点的精度将直接影响对设备的优化结果,若三维点精度不高,则会导致结构化平面对定位结果优化的精度不高。
发明内容
本申请至少提供一种定位方法和装置、设备及存储介质。
本申请提供了一种定位方法,包括:获取设备拍摄的当前图像帧;
依据当前图像帧与第一历史图像帧之间的相对位置关系,确定当前图像帧的初始位姿;利用点面约束模型对初始位姿进行优化得到优化后的位姿,并将优化后的位姿确定为设备的视觉定位结果;其中,点面约束模型是利用当前图像帧同第二历史图像帧之间的二维匹配特征点对,与结构化平面之间的关联关系构建的。
因此,通过当前图像帧同第二历史图像帧之间的二维特征点对,与结构化平面之间的关联关系构建点面约束模型,并通过该点面约束模型对设备的初始位姿进行优化,以使得点面约束模型中不包括三维点参数,从而在利用点面约束模型对初始位姿进行优化的过程中,不受三维点精度的影响,进而提高了设备的定位精度。
其中,结构化平面是利用设备拍摄的当前图像帧及当前图像帧以前的各历史图像帧构建得到的;利用点面约束模型对初始位姿进行优化得到优化后的位姿之前,包括:获取当前图像帧与第二历史图像帧中与结构化平面之间具有关联关系的二维匹配特征点对;依据当前图像帧和第二历史图像帧在世界坐标系下的第一位置参数、二维匹配特征点对的二维坐标以及结构化平面的第二位置参数,构建点面约束模型。
因此,通过使用当前图像帧和第二历史图像帧在世界坐标系下的第一位置参数、二维匹配特征点对的二维坐标以及结构化平面的第二位置参数,构建点面约束模型,无需利用三维点构建点面约束模型,从而在利用点面约束模型对初始位姿进行优化的过程中,不受三维点精度的影响,进而提高了设备的定位精度。
其中,点面约束模型包括点面优化方程,点面优化方程包括第一项和第二项,第一项和第二项分别位于点面优化方程的等号的两边;第一位置参数包括旋转矩阵和平移矩阵,第二位置参数包括方向矩阵以及距离矩阵;利用点面约束模型对初始位姿进行优化得到优化后的位姿,包括:依据当前图像帧和第二历史图像帧的旋转矩阵和平移矩阵、结构化平面的方向矩阵以及距离矩阵、二维匹配特征点对中位于第二历史图像帧中的特征点的二维坐标,确定当前图像帧中与第二历史图像帧中的特征点对应的匹配特征点的预测坐标,其中,预测坐标作为第一项;调整点面优化方程中的预设参数,以使第一项与第二项相等,其中,第二项为匹配特征点的二维坐标,预设参数包括当前图像帧的初始位姿。
因此,通过构建二维特征点与结构化平面之间的关联关系,对包含当前图像帧初始位姿的预设参数进行优化,能够提高对设备的定位精度。
其中,利用点面约束模型对初始位姿进行优化得到优化后的位姿,并将优化后的位姿确定为设备的视觉定位结果的步骤,包括:响应于第二历史图像帧为当前图像帧的上一历史图像帧,对第二历史图像帧的位姿、当前图像帧的位姿以及结构化平面进行优化,得到设备在两个时刻的视觉定位结果;响应于第二历史图像帧不为当前图像帧的上一历史图像帧,对当前图像帧的位姿以及结构化平面进行优化,得到设备在当前时刻的视觉定位结果。
因此,在第二历史图像为当前图像帧的上一历史图像帧的情况下,不仅能够对当前图像帧的位姿进行优化,还能对第二历史图像帧的位姿进行优化,从而提高各时刻设备的定位结果的精度。
其中,获取当前图像帧与第二历史图像帧中与结构化平面之间具有关联关系的二维匹配特征点对之前,包括:对当前图像帧进行三角剖分以得到对应的二维网格组,其中,二维网格组中的顶点为当前图像帧中的二维特征点;将二维网格组投影到世界坐标系下,得到对应的三维网格组,其中,三维网格组中的顶点为当前图像帧中的二维特征点对应的三维点;获取三维网格组中满足预设条件的第一三维网格以生成结构化平面。
因此,通过对当前图像帧进行三角剖分得到二维网格组,并利用二维网格组得到三维网格组,然后获取三维网格组中满足预设条件的三维网格生成结构化平面,并非任意两个三维网格之间都能生成结构化平面,使得构建的结构化平面的精度更高。
其中,三维网格组中包括若干个三维网格;获取三维网格组中满足预设条件的第一三维网格以生成结构化平面,包括:将与当前图像帧的距离小于或等于第一预设距离的三维网格作为候选三维网格;选取候选三维网格之间,方向之差小于或等于第一预设差值和/或距离之差小于或等于第二预设差值的候选三维网格,作为第一三维网格。
因此,通过设置第二预设差值和第一预设距离挑选三维网格生成结构化平面,能够提高结构化平面的准确度。
其中,获取当前图像帧与第二历史图像帧中与结构化平面之间具有关联关系的二维匹配特征点对,包括:获取三维网格组中与结构化平面具备关联关系的第二三维网格;确定当前图像帧和第二历史图像帧中与第二三维网格对应的若干组第一二维匹配特征点对,第一二维匹配特征点对与结构化平面之间具备关联关系。
因此,通过构建三维网格与结构化平面的关联关系,确定二维特征点对于结构化平面之间的关联关系,相对于构建三维点与结构化平面之间的关联关系而言,能够减少错误关联关系构建的几率。
其中,获取三维网格组中与结构化平面具备关联关系的第二三维网格,包括:获取三维网格组中所有三维网格的各顶点与结构化平面之间的第一距离;选取所有顶点与结构化平面之间的第一距离均小于或等于第二预设距离的三维网格作为第二三维网格;或选取所有顶点与结构化平面之间的第一距离小于或等于第二预设距离,且所有顶点组成的平面与结构化平面平行的三维网格作为第二三维网格。
因此,通过选择与结构化平面的距离小于第二预设距离的三维网格,然后构建该三维网格与结构化平面之间的关联关系,能够提高关联关系的准确度。
其中,获取三维网格组中与结构化平面具备关联关系的第二三维网格之前,包括:从结构化平面中选择满足第二预设条件的第一结构化平面,第二预设条件包括与当前图像帧之间的距离小于或等于第三预设距离阈值;获取三维网格组中与结构化平面具备关联关系的第二三维网格,包括:获取三维网格组中与第一结构化平面具备关联关系的第二三维网格。
因此,通过从结构化平面中选择满足第二预设条件的结构化平面,能够减少构建关联关系过程中设备的计算量。
其中,利用点面约束模型对初始位姿进行优化得到优化后的位姿,包括:将点面约束模型与重投影约束模型、IMU约束模型中的至少一个融合,得到融合约束模型;利用融合约束模型对初始位姿进行优化,得到优化后的位姿。
因此,通过构建融合约束模型对设备的当前图像帧的位姿进行优化,能够提高对设备的定位精度。
本申请提供了一种定位装置,包括:图像获取模块,用于获取设备拍摄的当前图像帧;初始位姿获取模块,用于依据当前图像帧与第一历史图像帧之间的相对位置关系,确定当前图像帧的初始位姿;位姿优化模块,用于利用点面约束模型对初始位姿进行优化得到优化后的位姿,并将优化后的位姿确定为设备的视觉定位结果;其中,点面约束模型是利用当前图像帧同第二历史图像帧之间的二维匹配特征点对,与结构化平面之间的关联关系构建的。
本申请提供了一种电子设备,包括存储器和处理器,处理器用于执行存储器中存储的程序指令,以实现上述定位方法。
本申请提供了一种计算机可读存储介质,其上存储有程序指令,程序指令被处理器执行时实现上述定位方法。
上述方案,通过当前图像帧同第二历史图像帧之间的二维特征点对,与结构化平面之间的关联关系构建点面约束模型,并通过该点面约束模型对设备的初始位姿进行优化,以使得点面约束模型中不包括三维点参数,从而在利用点面约束模型对初始位姿进行优化的过程中,不受三维点精度的影响,进而提高了设备的定位精度。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本申请的实施例,并与说明书一起用于说明本申请的技术方案。
图1是本申请定位方法一实施例的流程示意图一;
图2是本申请定位方法一实施例的流程示意图二;
图3是本申请定位装置一实施例的结构示意图;
图4是本申请电子设备一实施例的结构示意图;
图5是本申请计算机可读存储介质一实施例的结构示意图。
具体实施方式
下面结合说明书附图,对本申请实施例的方案进行详细说明。
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本申请。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
请参阅图1,图1是本申请定位方法一实施例的流程示意图一。具体而言,定位方法可以包括如下步骤:
步骤S11:获取设备拍摄的当前图像帧。
其中,本公开实施例提出的定位方法的执行设备可以是拍摄当前图像帧的设备,也可以不是拍摄当前图像帧的设备。例如,执行设备可以通过与拍摄当前图像帧的设备建立通信连接等方式获取当前图像帧。在执行设备与拍摄当前图像帧的设备不是同一设备的情况下,二者之间的通信连接的方式不限。本公开实施例以执行设备与拍摄当前图像帧的设备为同一设备为例。其中,本公开实施例中的设备包括用于拍摄当前图像帧的设备以及传感器。其中,传感器用于测量设备的运动信息。当前图像帧可以是实时获取的且未经过任何图像处理的图像,也可以是经过图像处理的。其中,这里的图像处理可以是裁剪、数据增强等等处理方式。
一些公开实施例中,为保障设备的定位精度,并非执行设备拍摄的所有图像帧均会成为当前图像帧,有的质量较低的图像帧不会作为设备拍摄的当前图像帧。判断设备拍摄的图像帧是否会成为当前图像帧的方式可以有:1、提取图像帧中的特征点,在特征点数量大于或等于第一预设数量的情况下,将该图像帧作为当前图像帧;2、获取图像帧与预设时间段内的历史图像帧之间的匹配特征点对的数量,在匹配特征点的数量大于或等于第二预设数量的情况下,将该图像帧作为当前图像帧。当然,除了这里列举的两个条件之外,还可以是判断图像的清晰度、亮度等等是否满足要求。通过选择满足质量要求的图像帧作为当前图像帧,能够减少因为图像帧的质量不佳导致定位结果过差的情况出现,从而保障了对设备的定位精度。
步骤S12:依据当前图像帧与第一历史图像帧之间的相对位置关系,确定当前图像帧的初始位姿。
其中,第一历史图像是已经经过定位处理的图像帧,例如当前图像帧的上一帧。一般地,相对位置关系包括相对距离和相对角度。本公开实施例中,假定一个距离作为当前图像帧和历史图像帧之间的相对距离,并将当前图像帧和第一历史图像帧之间的传感器读数进行预积分得到二者之间的相对角度。因第一历史图像帧的位姿已知,通过二者之间的相对距离和相对角度,即可确定当前图像帧的初始位姿。
步骤S13:利用点面约束模型对初始位姿进行优化得到优化后的位姿,并将优化后的位姿确定为设备的视觉定位结果;其中,点面约束模型是利用当前图像帧同第二历史图像帧之间的二维匹配特征点对,与结构化平面之间的关联关系构建的。
其中,第一历史图像和第二历史图像帧相同或不同。这里的结构化平面指的是利用当前图像帧和各历史图像帧观测到的三维点构建的三维平面。当前图像帧同第二历史图像帧之间的二维匹配特征点对,是通过当前图像帧中的二维特征点与第二历史图像帧中的二维特征点进行匹配得到。二维匹配特征点对于结构化平面之间的关联关系可以是二维匹配特征点对与结构化平面之间的位置关系。也就是,本公开实施例中,可以通过二维匹配特征点对于结构化平面之间的位置关系优化当前帧的位姿,以得到更为精确的结果。
上述方案,通过当前图像帧同第二历史图像帧之间的二维特征点对,与结构化平面之间的关联关系构建点面约束模型,并通过该点面约束模型对设备的初始位姿进行优化,以使得点面约束模型中不包括三维点参数,从而在利用点面约束模型对初始位姿进行优化的过程中,不受三维点精度的影响,进而提高了设备的定位精度。
一些公开实施例中,结构化平面是利用设备拍摄的当前图像帧及当前图像帧以前的各历史图像帧构建得到的。其中,在执行步骤S13之前,利用当前图像帧与第一历史图像帧构建结构化平面。其中,结构化平面为三维平面。其中,结构化平面可以使用一定的数据表达式进行参数化,例如,使用方向和距离表示。本公开实施例中,结构化平面的参数化表达Π为:Π=[n d]。其中,Π是一个四维的向量,n是一个三维的向量,表示方向,d是一个常量,表示距离。这里的方向是针对世界坐标系而言的,例如,n可以是分别针对三个坐标轴的向量集合,也可认为是针对世界坐标系原点的方向。
其中,具体构建结构化平面的方式可以包括如下几个步骤:
第一步,对当前图像帧进行三角剖分以得到对应的二维网格组。其中,在对当前图像帧进行三角剖分之前,提取当前图像帧中的二维特征点,并将当前图像帧中的二维特征点与上一历史图像帧中的特征点进行匹配,得到匹配成功的二维匹配特征点对。结合当前图像帧的初始位姿与上一历史图像帧的位姿、二维匹配特征点对在各自图像帧中的二维坐标,确定二维匹配特征点对对应的三维点。其中,二维网格组中的各顶点为当前图像帧中的二维特征点。即,对当前图像帧进行三角剖分实际上是对当前图像帧中的二维特征点进行三角剖分。二维网格组由若干的二维网格组成。进一步地,仅对位于二维匹配特征点对中的二维特征点进行三角剖分。
第二步,将二维网格组投影到世界坐标系下,得到对应的三维网格组。其中,三维网格组中的顶点为当前图像帧中的二维特征点对应的三维点。也就是,根据二维网格组中各二维特征点之间的连接关系,确定各二维点对应的三维点之间的连接关系,从而得到对应的三维网格组。三维网格组中包括若干个三维网格。本公开实施例中提出的若干个可以是1个及以上,例如2个、3个、10个、20个、30个、50个等等。其中,一个三维网格中可以包括三个三维点。
第三步,获取三维网格组中满足预设条件的第一三维网格以生成结构化平面。具体地,首先,将与当前图像帧的距离小于或等于第一预设距离的三维网格作为候选三维网格。因为在三维网格距离当前图像帧的距离超过第一预设距离的情况下,这部分的三维网格中的三维点的坐标误差可能相对较大,若使用这部分三维网格构建结构化平面,可能导致构建的结构化平面精度较低。这里的第一预设距离可根据具体场景和需求设置,此处不对其做具体规定。接着,选取候选三维网格之间,方向之差小于或等于第一预设差值和/或距离之差小于或等于第二预设差值的候选三维网格,作为第一三维网格。其中,这里的方向之差小于或等于第一预设差值指的是三维向量的差值均小于或等于第一预设差值。进一步地,本公开实施例中,只有方向之差小于或等于第一预设差值且距离之差小于或等于第二预设差值的情况下,才将候选网格作为第一三维网格。例如,两个三维网格位于同一竖直平面上时,可以将这两个三维网格作为第一三维网格,并生成一个包括这两个三维网格的平面。当然,若在当前图像帧以前,若干历史图像帧已经构建了部分结构化平面,则可以在已构建的部分结构化平面上利用当前图像帧中的信息对已构建的结构化平面进行扩张。此时,选取候选三维网格之间,方向之差小于或等于第一预设差值和/或距离之差小于或等于第二预设差值的候选三维网格时,可以同时执行选取候选三维网格与已构建的结构化平面之间的方向之差小于或等于第一预设差值,和/或距离之差小于或等于第二预设差值的候选三维网格,并将选择出的候选三维网格与对应的结构化平面组成一个新的结构化平面。即,通过此种方式,实现了对结构化平面的扩张,并且对当前帧的定位可以参考之前的信息,使得定位结果更加准确。
通过对当前图像帧进行三角剖分得到二维网格组,并利用二维网格组得到三维网格组,然后获取三维网格组中满足预设条件的三维网格生成结构化平面,并非任意两个三维网格之间都能生成结构化平面,使得构建的结构化平面的精度更高。
进一步地,通过设置第二预设差值和第一预设距离挑选三维网格生成结构化平面,能够提高结构化平面的准确度。
其中,在结构化平面构建之后,获取当前图像帧与第二历史图像帧中与结构化平面之间具有关联关系的二维匹配特征点对。一些公开实施例中,为减轻执行设备的计算量以及为保障后续定位精度,在获取三维网格组中与结构化平面具备关联关系的第二三维网格之前,需要执行以下步骤,以便从众多结构化平面中选出用于执行获取当前图像帧与第二历史图像帧中与结构化平面之间具有关联关系的二维匹配特征点对步骤的结构化平面:从结构化平面中选出满足第二预设条件的第一结构化平面。其中,第二预设条件包括与当前图像帧之间的距离小于或等于第三预设距离阈值。这里的第三预设距离阈值可根据具体执行设备的计算力以及定位精度需求综合确定。例如,对于定位精度需求较高,则第三预设距离阈值则相对较小,若定位精度需求较低,则第三预设距离阈值则相对较高,又例如,执行设备的计算力较弱,则第三预设距离阈值则相对较低,若执行设别的计算力较强,则第三预设距离阈值则相对较高,因此,关于第三预设距离阈值的确定此处不做具体规定。通过从结构化平面中选择满足第二预设条件的结构化平面,能够构建关联关系过程中设备的计算量。
其中,获取所述当前图像帧与所述第二历史图像帧中与所述结构化平面之间具有关联关系的二维匹配特征点对的方式可以包括如下几个步骤:
首先,获取三维网格组中与结构化平面具有关联关系的第二三维网格。具体地,获取三维网格组中所有三维网格的各顶点与结构化平面之间的第一距离。并选取所有顶点与结构化平面之间的第一距离均小于或等于第二预设距离的三维网格作为第二三维网格。即,一个三维网格包括三个顶点,只有三个顶点与结构化平面之间的第一距离均小于或等于第二预设距离的情况下,该三维网格才能作为第二三维网格。或者,选取所有顶点与结构化平面之间的第一距离小于或等于第二预设距离,且所有顶点组成的平面与结构化平面平行的三维网格作为第二三维网格。即,三维网格与结构化平面平行,且二者之间的距离小于或等于第二预设距离。可选地,第二预设距离并非是只有一个的,可根据三维网格或结构化平面相对于当前图像帧的距离动态调整第二预设距离。例如,三维网格或结构化平面与当前图像帧之间的距离与第二预设距离呈正比例关系,即第二预设距离能够在一定的范围内波动。例如,A三维网格与当前图像帧之间的距离为10米,确定第二预设距离为0.1米,B三维网格当前图像帧之间的距离为15米,则确定第二预设距离为0.15米。具体地,获取三维网格组中与第一结构化平面具备关联关系的第二三维网格。如上述,第一结构化平面是从众多结构化平面中选出的。
其次,确定当前图像帧和第二历史图像帧中与第二三维网格对应的若干组第一二维匹配特征点对。第一二维特征点对于结构化平面之间具备关联关系。
通过构建三维网格与结构化平面的关联关系确定二维特征点对于结构化平面之间的关联关系,相对于构建三维点与结构化平面之间的关联关系而言,能够减少错误关联关系构建的几率。
在获取当前图像帧与第二历史图像帧中与结构化平面之间具有关联关系的二维匹配特征点对之后,依据当前图像帧和第二历史图像帧在世界坐标系下的第一位置参数、第二匹配特征点对的二维坐标以及结构化平面的第二位置参数,构建点面约束模型。其中点面约束模型包括点面优化方程。点面优化方程包括第一项和第二项,第一项和第二项分别位于点面优化方程的等号的两边。第一位置参数包括旋转矩阵和平移矩阵,第二位置参数包括方向矩阵以及距离矩阵。其中,这里的旋转矩阵和平移矩阵均是相对于世界坐标系原点的,旋转矩阵用于表示当前图像帧或第二历史图像帧在世界坐标系下的旋转量,平移矩阵用于表示当前图像帧或第二历史图像帧在世界坐标系下的平移量。
其中,点面优化方程如下:
其中,和分别是第二历史图像帧c1和当前图像帧c2对应坐标系下f点的3D坐标,其中,这里的f点是与结构化平面具备关联关系的二维匹配特征点对中的特征点;和分别用于表示第二历史图像帧c1和当前图像帧c2在世界坐标系W下的旋转矩阵;和分别用于表示第二历史图像帧c1和当前图像帧c2在世界坐标系W下的平移矩阵。n和d就是分别用于表示结构化平面的方向矩阵和距离矩阵,E是单位矩阵,T表示转置。对点面优化方程进行简化,得到等式(2):
因为三维坐标转换为归一化相机平面坐标,并且二维匹配特征点对中各特征点在对应的图像帧中的二维坐标已知所以可以将上述等式(2)中的和转换为对应得二维坐标和由此得到最终的点面优化方程。以此利用当前图像帧同第二历史图像帧之间的二维匹配特征点对,与结构化平面之间的关联关系构建了点面约束模型。可选地,第二项为最终点面优化方程中等号左侧的一项,例如,第二项为第一项为最终点面优化方程中等号右侧的一项,例如,第一项为等号右边的运算结果。
通过使用当前图像帧和第二历史图像帧在世界坐标系下的第一位置参数、二维匹配特征点对的二维坐标以及结构化平面的第二位置参数,构建点面约束模型,无需利用三维点构建点面约束模型,从而在利用点面约束模型对初始位姿进行优化的过程中,不受三维点精度的影响,进而提高了设备的定位精度。
其中,利用点面约束模型对初始位姿进行优化得到优化后的位姿,包括:依据当前图像帧和第二历史图像帧的旋转矩阵和平移矩阵、结构化平面的方向矩阵以及距离矩阵、二维匹配特征点对中位于第二历史图像中的特征点的二维坐标,确定当前图像帧中与第二历史图像帧中特征点对应的匹配特征点的预测坐标。其中,预测坐标为点面优化方程中的第一项。并调整点面优化方程中的预设参数,以使点面优化方程中的第一项与点面优化方程中的第二项相等。其中,第二项为对应的匹配特征点的二维坐标。其中,预设参数包括当前图像帧的初始位姿。当前图像帧的初始位姿包括当前图像帧在世界坐标系下的位置和朝向。其中,位置可用上述平移矩阵表示,朝向可用旋转矩阵表示。结合上述点面优化方程而言就是,等式右边计算的结果将会得到当前图像图像帧中f点的二维预测坐标,理论上f点的二维预测坐标应该与f点真实的二维坐标相等。但是,一般因为当前图像帧的初始位姿不太准确,导致f点的二维预测坐标与其在当前图像帧中的二维坐标不相等。因此,可通过预测坐标与真实的二维坐标之间的差值调整点面优化方程中的预设参数,使得最终f点的二维预测坐标与真实的二维坐标相等,或者二者之间的误差小于或等于预设误差。具体地,预设参数包括当前图像帧的旋转矩阵和平移矩阵、结构化平面的方向矩阵和距离矩阵。当然,还可包括第二历史图像帧的旋转矩阵和平移矩阵。通过构建二维特征点与结构化平面之间的关联关系,对包含当前图像帧的初始位姿的预设参数进行优化,能够提高对设备的定位精度。
一些公开实施例中,利用点面约束模型对初始位姿进行优化得到优化后的位姿,还包括:响应于第二历史图像帧为当前图像帧的上一历史图像,对第二历史图像帧的位姿、当前图像帧的位姿以及结构化平面进行优化,得到设备在两个时刻的视觉定位结果。响应于第二历史图像帧不为当前图像帧的上一历史图像帧,对当前图像帧的位姿以及结构化平面进行优化,得到设备在当前时刻的视觉定位结果。因为历史图像帧的拍摄时间越早,则其对应的位姿越准确,同理,历史图像帧的拍摄时间越晚,则其对应位姿的准确度就会有所下滑。本公开实施例中,在第二历史图像为当前图像帧的上一历史图像帧的情况下,在优化当前帧的位姿和结构化平面的同时,还会优化第二历史图像帧的位姿。因此,本公开实施例中,在第二历史图像为当前图像帧的上一历史图像帧的情况下,不仅能够对当前图像帧的位姿进行优化,还能对第二历史图像帧的位姿进行优化,从而提高各时刻设备的定位结果的精度。
本公开实施例中,可以使用若干帧历史图像帧同时对当前图像帧的初始位姿进行优化。例如,先使用当前图像帧的上一历史图像帧对当前图像帧进行优化,再使用该历史图像帧的上一历史图像对当前图像帧进行优化等等。其中,只有当前图像帧和历史图像帧之间具有二维匹配特征点对,并且二维匹配特征点对与结构化平面之间具备关联关系才能够使用历史图像帧对当前图像帧的位姿进行优化。进一步地,可以使用滑动窗口中的历史图像帧作为第二历史图像帧。一般,滑动窗口中最新的一帧为当前图像帧的上一历史图像帧。一些公开实施例中,边缘化较老的点面约束。即滑动窗口的最老的一帧不参与对当前图像帧位姿的优化过程。
一些公开实施例中,利用点面约束模型对初始位姿进行优化得到优化后的位姿,包括:将点面约束模型与重投影约束模型、IMU约束模型中的至少一个融合,得到融合约束模型。并利用融合约束模型对当前图像帧的初始位姿进行优化,得到优化后的位姿。通过构建融合约束模型对设备的当前图像帧的位姿进行优化,能够提高对设备的定位精度。
其中,使用重投影约束模型对当前图像帧位姿的约束的过程主要包括使用重投影误差调整当前图像帧的位姿,使得重投影误差满足误差的要求。IMU约束模型对当前图像帧位姿的约束的过程主要包括使用IMU积分误差对当前图像帧的初始位姿进行优化。本公开实施例中,融合约束模型的形式如下:
其中,X表示需要优化的量,包含设备位姿(当前图像帧对应的设备位姿和/或第二历史图像帧对应的设备位姿),IMU参数,三维点和结构化平面的参数。rp是先验残差,Hp是其对应的测量矩阵,B是所有的IMU测量值,k时刻与k+1时刻的IMU测量值之间的残差是对应的协方差矩阵为C是设备在所有时刻观测到的特征集合,设备在j时刻l点的重投影残差为对应协方差矩阵为P是所有的结构化平面集合,设备在i,j时刻下l点在结构化平面k下的基于单应性平面残差为对应的协方差矩阵为
为更好地理解本公开实施例提出的技术方案,请参阅图2,图2是本申请定位方法一实施例的流程示意图二。本公开实施例中,定位方法包括以下步骤:
步骤S21:获取设备拍摄的当前图像帧。
其中,获取当前图像帧的方式如上述步骤S11,此处不再赘述。
步骤S22:依据当前图像帧与第一历史图像帧之间的相对位置关系,确定当前图像帧的初始位姿。
其中,确定当前图像帧的初始位姿的方式如上述步骤S12,此处不再赘述。
步骤S23:利用当前图像帧生成结构化平面。
具体地,可包括如下步骤:一是对当前图像帧进行三角剖分以得到对应的二维网格组。其中,二维网格组中的顶点为当前图像帧中的二维特征点。二是将二维网格组投影到世界坐标系下,得到对应的三维网格组。其中,三维网格组中的顶点为当前图像帧中的二维特征点对应的三维点。三是获取三维网格组中满足预设条件的第一三维网格以生成结构化平面。其中,这里三个步骤可具体参见上述实施例,此处不再赘述。
步骤S24:获取当前图像帧与第二历史图像帧中与结构化平面之间具有关联关系的二维匹配特征点对。
具体获取当前图像帧与第二历史图像帧中与结构化平面之间具有关联关系的二维匹配特征点对的方式如上述,此处不再赘述。
步骤S25:依据当前图像帧和第二历史图像帧在世界坐标系下的第一位置参数、二维匹配特征点对的二维坐标以及结构化平面的第二位置参数,构建点面约束模型。
其中,点面约束模型以及构建点面约束模型的方式如上述,此处不再赘述。
步骤S26:利用点面约束模型对初始位姿进行优化得到优化后的位姿,并将优化后的位姿确定为设备的视觉定位结果。
其中,利用点面约束模型对初始位姿进行优化得到优化后的位姿,并将优化后的位姿确定为设备的视觉定位结果的方式如上述,此处不再赘述。
上述方案,通过当前图像帧同第二历史图像帧之间的二维特征点对,与结构化平面之间的关联关系构建点面约束模型,并通过该点面约束模型对设备的初始位姿进行优化,以使得点面约束模型中不包括三维点参数,从而在利用点面约束模型对初始位姿进行优化的过程中,不受三维点精度的影响,进而提高了设备的定位精度。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
定位方法的执行主体可以是定位装置,例如,定位方法可以由终端设备或服务器或其它处理设备执行,其中,终端设备可以为具有视觉定位、三维重建、图像配准等需求的用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字处理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备以及自动驾驶汽车,有定位及建图需求的机器人,有配准需求的医疗成像系统,用于增强现实或虚拟现实的眼镜、头盔等产品等。在一些可能的实现方式中,该定位方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
请参阅图3,图3是本申请定位装置一实施例的结构示意图。定位装置30包括图像获取模块31,初始位姿获取模块32以及位姿优化模块33。图像获取模块31,用于获取设备拍摄的当前图像帧;初始位姿获取模块32,用于依据当前图像帧与第一历史图像帧之间的相对位置关系,确定当前图像帧的初始位姿;位姿优化模块33,用于利用点面约束模型对初始位姿进行优化得到优化后的位姿,并将优化后的位姿确定为设备的视觉定位结果;其中,点面约束模型是利用当前图像帧同第二历史图像帧之间的二维匹配特征点对,与结构化平面之间的关联关系构建的。
上述方案,通过当前图像帧同第二历史图像帧之间的二维特征点对,与结构化平面之间的关联关系构建点面约束模型,并通过该点面约束模型对设备的初始位姿进行优化,以使得点面约束模型中不包括三维点参数,从而在利用点面约束模型对初始位姿进行优化的过程中,不受三维点精度的影响,进而提高了设备的定位精度。
一些公开实施例中,结构化平面是利用设备拍摄的当前图像帧及当前图像帧以前的各历史图像帧构建得到的;位姿优化模块33利用点面约束模型对初始位姿进行优化得到优化后的位姿之前,还用于:获取当前图像帧与第二历史图像帧中与结构化平面之间具有关联关系的二维匹配特征点对;依据当前图像帧和第二历史图像帧在世界坐标系下的第一位置参数、二维匹配特征点对的二维坐标以及结构化平面的第二位置参数,构建点面约束模型。
上述方案,通过使用当前图像帧和第二历史图像帧在世界坐标系下的第一位置参数、二维匹配特征点对的二维坐标以及结构化平面的第二位置参数,构建点面约束模型,无需利用三维点构建点面约束模型,从而在利用点面约束模型对初始位姿进行优化的过程中,不受三维点精度的影响,进而提高了设备的定位精度。
一些公开实施例中,点面约束模型包括点面优化方程,点面优化方程包括第一项和第二项,第一项和第二项分别位于点面优化方程的等号的两边;第一位置参数包括旋转矩阵和平移矩阵,第二位置参数包括方向矩阵以及距离矩阵;位姿优化模块33利用点面约束模型对初始位姿进行优化得到优化后的位姿,包括:依据当前图像帧和第二历史图像帧的旋转矩阵和平移矩阵、结构化平面的方向矩阵以及距离矩阵、二维匹配特征点对中位于第二历史图像帧中的特征点的二维坐标,确定当前图像帧中与第二历史图像帧中的特征点对应的匹配特征点的预测坐标,其中,预测坐标作为第一项;调整点面优化方程中的预设参数,以使第一项与第二项相等,其中,第二项为匹配特征点的二维坐标,预设参数包括当前图像帧的初始位姿。
上述方案,通过构建二维特征点与结构化平面之间的关联关系,对包含当前图像帧的初始位姿的预设参数进行优化,能够提高对设备的定位精度。
一些公开实施例中,位姿优化模块33利用点面约束模型对初始位姿进行优化得到优化后的位姿,并将优化后的位姿确定为设备的视觉定位结果的步骤,包括:响应于第二历史图像帧为当前图像帧的上一历史图像帧,对第二历史图像帧的位姿、当前图像帧的位姿以及结构化平面进行优化,得到设备在两个时刻的视觉定位结果;响应于第二历史图像帧不为当前图像帧的上一历史图像帧,对当前图像帧的位姿以及结构化平面进行优化,得到设备在当前时刻的视觉定位结果。
上述方案,在第二历史图像为当前图像帧的上一历史图像帧的情况下,不仅能够对当前图像帧的位姿进行优化,还能对第二历史图像帧的位姿进行优化,从而提高各时刻设备的定位结果的精度。
一些公开实施例中,位姿优化模块33获取当前图像帧与第二历史图像帧中与结构化平面之间具有关联关系的二维匹配特征点对之前,包括:对当前图像帧进行三角剖分以得到对应的二维网格组,其中,二维网格组中的顶点为当前图像帧中的二维特征点;将二维网格组投影到世界坐标系下,得到对应的三维网格组,其中,三维网格组中的顶点为当前图像帧中的二维特征点对应的三维点;获取三维网格组中满足预设条件的第一三维网格以生成结构化平面。
上述方案,通过对当前图像帧进行三角剖分得到二维网格组,并利用二维网格组得到三维网格组,然后获取三维网格组中满足预设条件的三维网格生成结构化平面,并非任意两个三维网格之间都能生成结构化平面,使得构建的结构化平面的精度更高。
一些公开实施例中,三维网格组中包括若干个三维网格。位姿优化模块33获取三维网格组中满足预设条件的第一三维网格以生成结构化平面,包括:将与当前图像帧的距离小于或等于第一预设距离的三维网格作为候选三维网格;选取候选三维网格之间,方向之差小于或等于第一预设差值和/或距离之差小于或等于第二预设差值的候选三维网格,作为第一三维网格。
上述方案,通过设置第二预设差值和第一预设距离挑选三维网格生成结构化平面,能够提高结构化平面的准确度。
一些公开实施例中,位姿优化模块33获取当前图像帧与第二历史图像帧中与结构化平面之间具有关联关系的二维匹配特征点对,包括:获取三维网格组中与结构化平面具备关联关系的第二三维网格;确定当前图像帧和第二历史图像帧中与第二三维网格对应的若干组第一二维匹配特征点对,第一二维匹配特征点对与结构化平面之间具备关联关系。
上述方案,通过构建三维网格与结构化平面的关联关系确定二维特征点对于结构化平面之间的关联关系,相对于构建三维点与结构化平面之间的关联关系而言,能够减少错误关联关系构建的几率。
一些公开实施例中,位姿优化模块33获取三维网格组中与结构化平面具备关联关系的第二三维网格,包括:获取三维网格组中所有三维网格的各顶点与结构化平面之间的第一距离;选取所有顶点与结构化平面之间的第一距离均小于或等于第二预设距离的三维网格作为第二三维网格;或选取所有顶点与结构化平面之间的第一距离小于或等于第二预设距离,且所有顶点组成的平面与结构化平面平行的三维网格作为第二三维网格。
上述方案,通过选择与结构化平面的距离小于第二预设距离的三维网格,然后构建该三维网格与结构化平面之间的关联关系,能够提高关联关系的准确度。
一些公开实施例中,位姿优化模块33获取三维网格组中与结构化平面具备关联关系的第二三维网格之前,包括:从结构化平面中选择满足第二预设条件的第一结构化平面,第二预设条件包括与当前图像帧之间的距离小于或等于第三预设距离阈值;获取三维网格组中与结构化平面具备关联关系的第二三维网格,包括:获取三维网格组中与第一结构化平面具备关联关系的第二三维网格。
上述方案,通过从结构化平面中选择满足第二预设条件的结构化平面,能够构建关联关系过程中设备的计算量。
一些公开实施例中,位姿优化模块33利用点面约束模型对初始位姿进行优化得到优化后的位姿,包括:将点面约束模型与重投影约束模型、IMU约束模型中的至少一个融合,得到融合约束模型;利用融合约束模型对初始位姿进行优化,得到优化后的位姿。
上述方案,通过构建融合约束模型对设备的当前图像帧的位姿进行优化,能够提高对设备的定位精度。
上述方案,通过当前图像帧同第二历史图像帧之间的二维特征点对,与结构化平面之间的关联关系构建点面约束模型,并通过该点面约束模型对设备的初始位姿进行优化,以使得点面约束模型中不包括三维点参数,从而在利用点面约束模型对初始位姿进行优化的过程中,不受三维点精度的影响,进而提高了设备的定位精度。
请参阅图4,图4是本申请电子设备一实施例的结构示意图。电子设备40包括存储器41和处理器42,处理器42用于执行存储器41中存储的程序指令,以实现上述定位方法实施例中的步骤。在一个具体的实施场景中,电子设备40可以包括但不限于:微型计算机、服务器,此外,电子设备40还可以包括笔记本电脑、平板电脑等移动设备,在此不做限定。
具体而言,处理器42用于控制其自身以及存储器41以实现上述定位方法实施例中的步骤。处理器42还可以称为CPU(Central Processing Unit,中央处理单元)。处理器42可能是一种集成电路芯片,具有信号的处理能力。处理器42还可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器42可以由集成电路芯片共同实现。
上述方案,通过当前图像帧同第二历史图像帧之间的二维特征点对,与结构化平面之间的关联关系构建点面约束模型,并通过该点面约束模型对设备的初始位姿进行优化,以使得点面约束模型中不包括三维点参数,从而在利用点面约束模型对初始位姿进行优化的过程中,不受三维点精度的影响,进而提高了设备的定位精度。
请参阅图5,图5为本申请计算机可读存储介质一实施例的结构示意图。计算机可读存储介质50存储有能够被处理器运行的程序指令501,程序指令501用于实现上述定位方法实施例中的步骤。
上述方案,通过当前图像帧同第二历史图像帧之间的二维特征点对,与结构化平面之间的关联关系构建点面约束模型,并通过该点面约束模型对设备的初始位姿进行优化,以使得点面约束模型中不包括三维点参数,从而在利用点面约束模型对初始位姿进行优化的过程中,不受三维点精度的影响,进而提高了设备的定位精度。
在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (13)
1.一种定位方法,其特征在于,包括:
获取设备拍摄的当前图像帧;
依据所述当前图像帧与第一历史图像帧之间的相对位置关系,确定所述当前图像帧的初始位姿;
利用点面约束模型对所述初始位姿进行优化得到优化后的位姿,并将优化后的位姿确定为所述设备的视觉定位结果;
其中,所述点面约束模型是利用所述当前图像帧同第二历史图像帧之间的二维匹配特征点对,与结构化平面之间的关联关系构建的,所述结构化平面指的是利用所述当前图像帧和若干历史图像帧观测到的三维点构建的三维平面。
2.根据权利要求1所述的方法,其特征在于,所述结构化平面是利用设备拍摄的所述当前图像帧及所述当前图像帧以前的各历史图像帧构建得到的;
所述利用点面约束模型对所述初始位姿进行优化得到优化后的位姿之前,包括:
获取所述当前图像帧与所述第二历史图像帧中与所述结构化平面之间具有关联关系的二维匹配特征点对;
依据所述当前图像帧和所述第二历史图像帧在世界坐标系下的第一位置参数、所述二维匹配特征点对的二维坐标以及所述结构化平面的第二位置参数,构建所述点面约束模型。
3.根据权利要求2所述的方法,其特征在于,所述点面约束模型包括点面优化方程,所述点面优化方程包括第一项和第二项,所述第一项和第二项分别位于所述点面优化方程的等号的两边;所述第一位置参数包括旋转矩阵和平移矩阵,所述第二位置参数包括方向矩阵以及距离矩阵;
所述利用点面约束模型对所述初始位姿进行优化得到优化后的位姿,包括:
依据所述当前图像帧和所述第二历史图像帧的旋转矩阵和平移矩阵、所述结构化平面的方向矩阵以及距离矩阵、所述二维匹配特征点对中位于所述第二历史图像帧中的特征点的二维坐标,确定所述当前图像帧中与所述第二历史图像帧中的特征点对应的匹配特征点的预测坐标,其中,所述预测坐标作为所述第一项;
调整所述点面优化方程中的预设参数,以使所述第一项与所述第二项相等,其中,所述第二项为所述匹配特征点的二维坐标,所述预设参数包括所述当前图像帧的初始位姿。
4.根据权利要求2所述的方法,其特征在于,所述利用点面约束模型对所述初始位姿进行优化得到优化后的位姿,并将优化后的位姿确定为所述设备的视觉定位结果的步骤,包括:
响应于所述第二历史图像帧为所述当前图像帧的上一历史图像帧,对所述第二历史图像帧的位姿、所述当前图像帧的位姿以及所述结构化平面进行优化,得到所述设备在两个时刻的视觉定位结果;
响应于所述第二历史图像帧不为所述当前图像帧的上一历史图像帧,对所述当前图像帧的位姿以及所述结构化平面进行优化,得到所述设备在当前时刻的视觉定位结果。
5.根据权利要求2所述的方法,其特征在于,所述获取所述当前图像帧与所述第二历史图像帧中与所述结构化平面之间具有关联关系的二维匹配特征点对之前,包括:
对所述当前图像帧进行三角剖分以得到对应的二维网格组,其中,所述二维网格组中的顶点为所述当前图像帧中的二维特征点;
将所述二维网格组投影到世界坐标系下,得到对应的三维网格组,其中,所述三维网格组中的顶点为所述当前图像帧中的二维特征点对应的三维点;
获取所述三维网格组中满足预设条件的第一三维网格以生成所述结构化平面。
6.根据权利要求5所述的方法,其特征在于,所述三维网格组中包括若干个三维网格;所述获取所述三维网格组中满足预设条件的第一三维网格以生成所述结构化平面,包括:
将与所述当前图像帧的距离小于或等于第一预设距离的三维网格作为候选三维网格;
选取所述候选三维网格之间,方向之差小于或等于第一预设差值和/或距离之差小于或等于第二预设差值的候选三维网格,作为所述第一三维网格。
7.根据权利要求5所述的方法,其特征在于,所述获取所述当前图像帧与所述第二历史图像帧中与所述结构化平面之间具有关联关系的二维匹配特征点对,包括:
获取所述三维网格组中与所述结构化平面具备关联关系的第二三维网格;
确定所述当前图像帧和所述第二历史图像帧中与所述第二三维网格对应的若干组第一二维匹配特征点对,所述第一二维匹配特征点对与所述结构化平面之间具备关联关系。
8.根据权利要求7所述的方法,其特征在于,所述获取所述三维网格组中与所述结构化平面具备关联关系的第二三维网格,包括:
获取所述三维网格组中所有三维网格的各顶点与所述结构化平面之间的第一距离;
选取所有顶点与所述结构化平面之间的第一距离均小于或等于第二预设距离的三维网格作为所述第二三维网格;或选取所有顶点与所述结构化平面之间的第一距离小于或等于第二预设距离,且所有顶点组成的平面与所述结构化平面平行的三维网格作为所述第二三维网格。
9.根据权利要求7所述的方法,其特征在于,所述获取所述三维网格组中与所述结构化平面具备关联关系的第二三维网格之前,包括:
从所述结构化平面中选择满足第二预设条件的第一结构化平面,所述第二预设条件包括与所述当前图像帧之间的距离小于或等于第三预设距离阈值;
所述获取所述三维网格组中与所述结构化平面具备关联关系的第二三维网格,包括:
获取所述三维网格组中与所述第一结构化平面具备关联关系的第二三维网格。
10.根据权利要求1-9任一项所述的方法,其特征在于,所述利用点面约束模型对所述初始位姿进行优化得到优化后的位姿,包括:
将所述点面约束模型与重投影约束模型、IMU约束模型中的至少一个融合,得到融合约束模型;
利用所述融合约束模型对所述初始位姿进行优化,得到优化后的位姿。
11.一种定位装置,其特征在于,包括:
图像获取模块,用于获取设备拍摄的当前图像帧;
初始位姿获取模块,用于依据所述当前图像帧与第一历史图像帧之间的相对位置关系,确定所述当前图像帧的初始位姿;
位姿优化模块,用于利用点面约束模型对所述初始位姿进行优化得到优化后的位姿,并将优化后的位姿确定为所述设备的视觉定位结果;其中,所述点面约束模型是利用所述当前图像帧同第二历史图像帧之间的二维匹配特征点对,与结构化平面之间的关联关系构建的,所述结构化平面指的是利用所述当前图像帧和若干历史图像帧观测到的三维点构建的三维平面。
12.一种电子设备,其特征在于,包括存储器和处理器,所述处理器用于执行所述存储器中存储的程序指令,以实现权利要求1至10任一项所述的方法。
13.一种计算机可读存储介质,其上存储有程序指令,其特征在于,所述程序指令被处理器执行时实现权利要求1至10任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110587271.1A CN113256718B (zh) | 2021-05-27 | 2021-05-27 | 定位方法和装置、设备及存储介质 |
PCT/CN2021/143513 WO2022247286A1 (zh) | 2021-05-27 | 2021-12-31 | 定位方法和装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110587271.1A CN113256718B (zh) | 2021-05-27 | 2021-05-27 | 定位方法和装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113256718A CN113256718A (zh) | 2021-08-13 |
CN113256718B true CN113256718B (zh) | 2023-04-07 |
Family
ID=77184892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110587271.1A Active CN113256718B (zh) | 2021-05-27 | 2021-05-27 | 定位方法和装置、设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113256718B (zh) |
WO (1) | WO2022247286A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113256718B (zh) * | 2021-05-27 | 2023-04-07 | 浙江商汤科技开发有限公司 | 定位方法和装置、设备及存储介质 |
CN113808196A (zh) * | 2021-09-09 | 2021-12-17 | 浙江商汤科技开发有限公司 | 平面融合定位方法、装置、电子设备及存储介质 |
CN113899364B (zh) * | 2021-09-29 | 2022-12-27 | 深圳市慧鲤科技有限公司 | 定位方法及装置、设备、存储介质 |
CN113847907B (zh) * | 2021-09-29 | 2024-09-13 | 深圳市慧鲤科技有限公司 | 定位方法及装置、设备、存储介质 |
CN114998433A (zh) * | 2022-05-31 | 2022-09-02 | Oppo广东移动通信有限公司 | 位姿计算方法、装置、存储介质以及电子设备 |
CN116824026B (zh) * | 2023-08-28 | 2024-01-09 | 华东交通大学 | 一种三维重建方法、装置、系统以及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105469405A (zh) * | 2015-11-26 | 2016-04-06 | 清华大学 | 基于视觉测程的同时定位与地图构建方法 |
CN112396656A (zh) * | 2020-11-24 | 2021-02-23 | 福州大学 | 一种视觉与激光雷达融合的室外移动机器人位姿估计方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10062010B2 (en) * | 2015-06-26 | 2018-08-28 | Intel Corporation | System for building a map and subsequent localization |
US9818217B2 (en) * | 2015-11-10 | 2017-11-14 | Disney Enterprises, Inc. | Data driven design and animation of animatronics |
CN107796397B (zh) * | 2017-09-14 | 2020-05-15 | 杭州迦智科技有限公司 | 一种机器人双目视觉定位方法、装置和存储介质 |
CN111127524A (zh) * | 2018-10-31 | 2020-05-08 | 华为技术有限公司 | 一种轨迹跟踪与三维重建方法、系统及装置 |
CN110223348B (zh) * | 2019-02-25 | 2023-05-23 | 湖南大学 | 基于rgb-d相机的机器人场景自适应位姿估计方法 |
CN111951325B (zh) * | 2019-05-14 | 2024-01-12 | 虹软科技股份有限公司 | 位姿跟踪方法、位姿跟踪装置及电子设备 |
CN110349213B (zh) * | 2019-06-28 | 2023-12-12 | Oppo广东移动通信有限公司 | 基于深度信息的位姿确定方法、装置、介质与电子设备 |
CN110866496B (zh) * | 2019-11-14 | 2023-04-07 | 合肥工业大学 | 基于深度图像的机器人定位与建图方法和装置 |
CN111586360B (zh) * | 2020-05-14 | 2021-09-10 | 佳都科技集团股份有限公司 | 一种无人机投影方法、装置、设备及存储介质 |
CN112270709B (zh) * | 2020-11-12 | 2024-05-14 | Oppo广东移动通信有限公司 | 地图构建方法及装置、计算机可读存储介质和电子设备 |
CN112752028B (zh) * | 2021-01-06 | 2022-11-11 | 南方科技大学 | 移动平台的位姿确定方法、装置、设备和存储介质 |
CN113256718B (zh) * | 2021-05-27 | 2023-04-07 | 浙江商汤科技开发有限公司 | 定位方法和装置、设备及存储介质 |
-
2021
- 2021-05-27 CN CN202110587271.1A patent/CN113256718B/zh active Active
- 2021-12-31 WO PCT/CN2021/143513 patent/WO2022247286A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105469405A (zh) * | 2015-11-26 | 2016-04-06 | 清华大学 | 基于视觉测程的同时定位与地图构建方法 |
CN112396656A (zh) * | 2020-11-24 | 2021-02-23 | 福州大学 | 一种视觉与激光雷达融合的室外移动机器人位姿估计方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113256718A (zh) | 2021-08-13 |
WO2022247286A1 (zh) | 2022-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113256718B (zh) | 定位方法和装置、设备及存储介质 | |
US10659768B2 (en) | System and method for virtually-augmented visual simultaneous localization and mapping | |
US8928736B2 (en) | Three-dimensional modeling apparatus, three-dimensional modeling method and computer-readable recording medium storing three-dimensional modeling program | |
CN113361365B (zh) | 定位方法和装置、设备及存储介质 | |
EP3786890A1 (en) | Method and apparatus for determining pose of image capture device, and storage medium therefor | |
CN106960454B (zh) | 景深避障方法、设备及无人飞行器 | |
CN113409391B (zh) | 视觉定位方法及相关装置、设备和存储介质 | |
CN111612852B (zh) | 用于验证相机参数的方法和装置 | |
CN107809610B (zh) | 摄像头参数集算出装置、摄像头参数集算出方法以及记录介质 | |
US10438412B2 (en) | Techniques to facilitate accurate real and virtual object positioning in displayed scenes | |
CN102472609A (zh) | 位置和姿势校准方法及设备 | |
JP7280385B2 (ja) | 視覚的ポジショニング方法および関連装置、機器並びにコンピュータ可読記憶媒体 | |
JP5833507B2 (ja) | 画像処理装置 | |
CN112083403B (zh) | 用于虚拟场景的定位追踪误差校正方法及系统 | |
US20210334569A1 (en) | Image depth determining method and living body identification method, circuit, device, and medium | |
US20220277480A1 (en) | Position estimation device, vehicle, position estimation method and position estimation program | |
CN109495733B (zh) | 三维影像重建方法、装置及其非暂态电脑可读取储存媒体 | |
CN111383264A (zh) | 一种定位方法、装置、终端及计算机存储介质 | |
CN114608521B (zh) | 单目测距方法及装置、电子设备和存储介质 | |
JP2018173882A (ja) | 情報処理装置、方法、及びプログラム | |
CN114882106A (zh) | 位姿确定方法和装置、设备、介质 | |
JP2009186287A (ja) | 平面パラメータ推定装置、平面パラメータ推定方法及び平面パラメータ推定プログラム | |
CN113048985B (zh) | 已知相对旋转角度条件下的像机相对运动估计方法 | |
CN118120246A (zh) | 学习装置、学习方法、学习程序、摄像机参数算出装置、摄像机参数算出方法以及摄像机参数算出程序 | |
CN109328459B (zh) | 智能终端及其3d成像方法、3d成像系统 |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40049961 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |