CN113256718A - 定位方法和装置、设备及存储介质 - Google Patents

定位方法和装置、设备及存储介质 Download PDF

Info

Publication number
CN113256718A
CN113256718A CN202110587271.1A CN202110587271A CN113256718A CN 113256718 A CN113256718 A CN 113256718A CN 202110587271 A CN202110587271 A CN 202110587271A CN 113256718 A CN113256718 A CN 113256718A
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.)
Granted
Application number
CN202110587271.1A
Other languages
English (en)
Other versions
CN113256718B (zh
Inventor
王帅
陈丹鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Shangtang Technology Development Co Ltd
Original Assignee
Zhejiang Shangtang Technology Development Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang Shangtang Technology Development Co Ltd filed Critical Zhejiang Shangtang Technology Development Co Ltd
Priority to CN202110587271.1A priority Critical patent/CN113256718B/zh
Publication of CN113256718A publication Critical patent/CN113256718A/zh
Priority to PCT/CN2021/143513 priority patent/WO2022247286A1/zh
Application granted granted Critical
Publication of CN113256718B publication Critical patent/CN113256718B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/04Constraint-based CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • G06T2207/10012Stereo 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米。具体地,获取三维网格组中与第一结构化平面具备关联关系的第二三维网格。如上述,第一结构化平面是从众多结构化平面中选出的。
其次,确定当前图像帧和第二历史图像帧中与第二三维网格对应的若干组第一二维匹配特征点对。第一二维特征点对于结构化平面之间具备关联关系。
通过构建三维网格与结构化平面的关联关系确定二维特征点对于结构化平面之间的关联关系,相对于构建三维点与结构化平面之间的关联关系而言,能够减少错误关联关系构建的几率。
在获取当前图像帧与第二历史图像帧中与结构化平面之间具有关联关系的二维匹配特征点对之后,依据当前图像帧和第二历史图像帧在世界坐标系下的第一位置参数、第二匹配特征点对的二维坐标以及结构化平面的第二位置参数,构建点面约束模型。其中点面约束模型包括点面优化方程。点面优化方程包括第一项和第二项,第一项和第二项分别位于点面优化方程的等号的两边。第一位置参数包括旋转矩阵和平移矩阵,第二位置参数包括方向矩阵以及距离矩阵。其中,这里的旋转矩阵和平移矩阵均是相对于世界坐标系原点的,旋转矩阵用于表示当前图像帧或第二历史图像帧在世界坐标系下的旋转量,平移矩阵用于表示当前图像帧或第二历史图像帧在世界坐标系下的平移量。
其中,点面优化方程如下:
Figure BDA0003088125080000111
其中,
Figure BDA0003088125080000112
Figure BDA0003088125080000113
分别是第二历史图像帧c1和当前图像帧c2对应坐标系下f点的3D坐标,其中,这里的f点是与结构化平面具备关联关系的二维匹配特征点对中的特征点;
Figure BDA0003088125080000114
Figure BDA0003088125080000115
分别用于表示第二历史图像帧c1和当前图像帧c2在世界坐标系W下的旋转矩阵;
Figure BDA0003088125080000116
Figure BDA0003088125080000117
分别用于表示第二历史图像帧c1和当前图像帧c2在世界坐标系W下的平移矩阵。n和d就是分别用于表示结构化平面的方向矩阵和距离矩阵,E是单位矩阵,T表示转置。对点面优化方程进行简化,得到等式(2):
Figure BDA0003088125080000121
因为三维坐标转换为归一化相机平面坐标,并且二维匹配特征点对中各特征点在对应的图像帧中的二维坐标已知所以可以将上述等式(2)中的
Figure BDA0003088125080000122
Figure BDA0003088125080000123
转换为对应得二维坐标
Figure BDA0003088125080000124
Figure BDA0003088125080000125
由此得到最终的点面优化方程。以此利用当前图像帧同第二历史图像帧之间的二维匹配特征点对,与结构化平面之间的关联关系构建了点面约束模型。可选地,第二项为最终点面优化方程中等号左侧的一项,例如,第二项为
Figure BDA0003088125080000126
第一项为最终点面优化方程中等号右侧的一项,例如,第一项为等号右边的运算结果。
通过使用当前图像帧和第二历史图像帧在世界坐标系下的第一位置参数、二维匹配特征点对的二维坐标以及结构化平面的第二位置参数,构建点面约束模型,无需利用三维点构建点面约束模型,从而在利用点面约束模型对初始位姿进行优化的过程中,不受三维点精度的影响,进而提高了设备的定位精度。
其中,利用点面约束模型对初始位姿进行优化得到优化后的位姿,包括:依据当前图像帧和第二历史图像帧的旋转矩阵和平移矩阵、结构化平面的方向矩阵以及距离矩阵、二维匹配特征点对中位于第二历史图像中的特征点的二维坐标,确定当前图像帧中与第二历史图像帧中特征点对应的匹配特征点的预测坐标。其中,预测坐标为点面优化方程中的第一项。并调整点面优化方程中的预设参数,以使点面优化方程中的第一项与点面优化方程中的第二项相等。其中,第二项为对应的匹配特征点的二维坐标。其中,预设参数包括当前图像帧的初始位姿。当前图像帧的初始位姿包括当前图像帧在世界坐标系下的位置和朝向。其中,位置可用上述平移矩阵表示,朝向可用旋转矩阵表示。结合上述点面优化方程而言就是,等式右边计算的结果将会得到当前图像图像帧中f点的二维预测坐标,理论上f点的二维预测坐标应该与f点真实的二维坐标相等。但是,一般因为当前图像帧的初始位姿不太准确,导致f点的二维预测坐标与其在当前图像帧中的二维坐标不相等。因此,可通过预测坐标与真实的二维坐标之间的差值调整点面优化方程中的预设参数,使得最终f点的二维预测坐标与真实的二维坐标相等,或者二者之间的误差小于或等于预设误差。具体地,预设参数包括当前图像帧的旋转矩阵和平移矩阵、结构化平面的方向矩阵和距离矩阵。当然,还可包括第二历史图像帧的旋转矩阵和平移矩阵。通过构建二维特征点与结构化平面之间的关联关系,对包含当前图像帧的初始位姿的预设参数进行优化,能够提高对设备的定位精度。
一些公开实施例中,利用点面约束模型对初始位姿进行优化得到优化后的位姿,还包括:响应于第二历史图像帧为当前图像帧的上一历史图像,对第二历史图像帧的位姿、当前图像帧的位姿以及结构化平面进行优化,得到设备在两个时刻的视觉定位结果。响应于第二历史图像帧不为当前图像帧的上一历史图像帧,对当前图像帧的位姿以及结构化平面进行优化,得到设备在当前时刻的视觉定位结果。因为历史图像帧的拍摄时间越早,则其对应的位姿越准确,同理,历史图像帧的拍摄时间越晚,则其对应位姿的准确度就会有所下滑。本公开实施例中,在第二历史图像为当前图像帧的上一历史图像帧的情况下,在优化当前帧的位姿和结构化平面的同时,还会优化第二历史图像帧的位姿。因此,本公开实施例中,在第二历史图像为当前图像帧的上一历史图像帧的情况下,不仅能够对当前图像帧的位姿进行优化,还能对第二历史图像帧的位姿进行优化,从而提高各时刻设备的定位结果的精度。
本公开实施例中,可以使用若干帧历史图像帧同时对当前图像帧的初始位姿进行优化。例如,先使用当前图像帧的上一历史图像帧对当前图像帧进行优化,再使用该历史图像帧的上一历史图像对当前图像帧进行优化等等。其中,只有当前图像帧和历史图像帧之间具有二维匹配特征点对,并且二维匹配特征点对与结构化平面之间具备关联关系才能够使用历史图像帧对当前图像帧的位姿进行优化。进一步地,可以使用滑动窗口中的历史图像帧作为第二历史图像帧。一般,滑动窗口中最新的一帧为当前图像帧的上一历史图像帧。一些公开实施例中,边缘化较老的点面约束。即滑动窗口的最老的一帧不参与对当前图像帧位姿的优化过程。
一些公开实施例中,利用点面约束模型对初始位姿进行优化得到优化后的位姿,包括:将点面约束模型与重投影约束模型、IMU约束模型中的至少一个融合,得到融合约束模型。并利用融合约束模型对当前图像帧的初始位姿进行优化,得到优化后的位姿。通过构建融合约束模型对设备的当前图像帧的位姿进行优化,能够提高对设备的定位精度。
其中,使用重投影约束模型对当前图像帧位姿的约束的过程主要包括使用重投影误差调整当前图像帧的位姿,使得重投影误差满足误差的要求。IMU约束模型对当前图像帧位姿的约束的过程主要包括使用IMU积分误差对当前图像帧的初始位姿进行优化。本公开实施例中,融合约束模型的形式如下:
Figure BDA0003088125080000141
其中,
Figure BDA0003088125080000142
其中,X表示需要优化的量,包含设备位姿(当前图像帧对应的设备位姿和/或第二历史图像帧对应的设备位姿),IMU参数,三维点和结构化平面的参数。rp是先验残差,Hp是其对应的测量矩阵,B是所有的IMU测量值,k时刻与k+1时刻的IMU测量值之间的残差是
Figure BDA0003088125080000143
对应的协方差矩阵为
Figure BDA0003088125080000144
C是设备在所有时刻观测到的特征集合,设备在j时刻l点的重投影残差为
Figure BDA0003088125080000145
对应协方差矩阵为
Figure BDA0003088125080000146
P是所有的结构化平面集合,设备在i,j时刻下l点在结构化平面k下的基于单应性平面残差为
Figure BDA0003088125080000147
对应的协方差矩阵为
Figure BDA0003088125080000148
为更好地理解本公开实施例提出的技术方案,请参阅图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任一项所述的方法。
CN202110587271.1A 2021-05-27 2021-05-27 定位方法和装置、设备及存储介质 Active CN113256718B (zh)

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 true CN113256718A (zh) 2021-08-13
CN113256718B 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)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113847907A (zh) * 2021-09-29 2021-12-28 深圳市慧鲤科技有限公司 定位方法及装置、设备、存储介质
CN113899364A (zh) * 2021-09-29 2022-01-07 深圳市慧鲤科技有限公司 定位方法及装置、设备、存储介质
WO2022247286A1 (zh) * 2021-05-27 2022-12-01 浙江商汤科技开发有限公司 定位方法和装置、设备及存储介质
CN116824026A (zh) * 2023-08-28 2023-09-29 华东交通大学 一种三维重建方法、装置、系统以及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105469405A (zh) * 2015-11-26 2016-04-06 清华大学 基于视觉测程的同时定位与地图构建方法
US20160379092A1 (en) * 2015-06-26 2016-12-29 Intel Corporation System for building a map and subsequent localization
CN107796397A (zh) * 2017-09-14 2018-03-13 杭州迦智科技有限公司 一种机器人双目视觉定位方法、装置和存储介质
CN110223348A (zh) * 2019-02-25 2019-09-10 湖南大学 基于rgb-d相机的机器人场景自适应位姿估计方法
CN110349213A (zh) * 2019-06-28 2019-10-18 Oppo广东移动通信有限公司 基于深度信息的位姿确定方法、装置、介质与电子设备
CN111127524A (zh) * 2018-10-31 2020-05-08 华为技术有限公司 一种轨迹跟踪与三维重建方法、系统及装置
CN111586360A (zh) * 2020-05-14 2020-08-25 佳都新太科技股份有限公司 一种无人机投影方法、装置、设备及存储介质
CN112270709A (zh) * 2020-11-12 2021-01-26 Oppo广东移动通信有限公司 地图构建方法及装置、计算机可读存储介质和电子设备
CN112396656A (zh) * 2020-11-24 2021-02-23 福州大学 一种视觉与激光雷达融合的室外移动机器人位姿估计方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9818217B2 (en) * 2015-11-10 2017-11-14 Disney Enterprises, Inc. Data driven design and animation of animatronics
CN111951325B (zh) * 2019-05-14 2024-01-12 虹软科技股份有限公司 位姿跟踪方法、位姿跟踪装置及电子设备
CN110866496B (zh) * 2019-11-14 2023-04-07 合肥工业大学 基于深度图像的机器人定位与建图方法和装置
CN112752028B (zh) * 2021-01-06 2022-11-11 南方科技大学 移动平台的位姿确定方法、装置、设备和存储介质
CN113256718B (zh) * 2021-05-27 2023-04-07 浙江商汤科技开发有限公司 定位方法和装置、设备及存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160379092A1 (en) * 2015-06-26 2016-12-29 Intel Corporation System for building a map and subsequent localization
CN105469405A (zh) * 2015-11-26 2016-04-06 清华大学 基于视觉测程的同时定位与地图构建方法
CN107796397A (zh) * 2017-09-14 2018-03-13 杭州迦智科技有限公司 一种机器人双目视觉定位方法、装置和存储介质
CN111127524A (zh) * 2018-10-31 2020-05-08 华为技术有限公司 一种轨迹跟踪与三维重建方法、系统及装置
CN110223348A (zh) * 2019-02-25 2019-09-10 湖南大学 基于rgb-d相机的机器人场景自适应位姿估计方法
CN110349213A (zh) * 2019-06-28 2019-10-18 Oppo广东移动通信有限公司 基于深度信息的位姿确定方法、装置、介质与电子设备
CN111586360A (zh) * 2020-05-14 2020-08-25 佳都新太科技股份有限公司 一种无人机投影方法、装置、设备及存储介质
CN112270709A (zh) * 2020-11-12 2021-01-26 Oppo广东移动通信有限公司 地图构建方法及装置、计算机可读存储介质和电子设备
CN112396656A (zh) * 2020-11-24 2021-02-23 福州大学 一种视觉与激光雷达融合的室外移动机器人位姿估计方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张国良等: "考虑多位姿估计约束的双目视觉里程计", 《控制与决策》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022247286A1 (zh) * 2021-05-27 2022-12-01 浙江商汤科技开发有限公司 定位方法和装置、设备及存储介质
CN113847907A (zh) * 2021-09-29 2021-12-28 深圳市慧鲤科技有限公司 定位方法及装置、设备、存储介质
CN113899364A (zh) * 2021-09-29 2022-01-07 深圳市慧鲤科技有限公司 定位方法及装置、设备、存储介质
CN113899364B (zh) * 2021-09-29 2022-12-27 深圳市慧鲤科技有限公司 定位方法及装置、设备、存储介质
CN116824026A (zh) * 2023-08-28 2023-09-29 华东交通大学 一种三维重建方法、装置、系统以及存储介质
CN116824026B (zh) * 2023-08-28 2024-01-09 华东交通大学 一种三维重建方法、装置、系统以及存储介质

Also Published As

Publication number Publication date
CN113256718B (zh) 2023-04-07
WO2022247286A1 (zh) 2022-12-01

Similar Documents

Publication Publication Date Title
CN113256718B (zh) 定位方法和装置、设备及存储介质
US11270460B2 (en) Method and apparatus for determining pose of image capturing device, and storage medium
CN112381919B (zh) 信息处理方法、定位方法及装置、电子设备和存储介质
US8928736B2 (en) Three-dimensional modeling apparatus, three-dimensional modeling method and computer-readable recording medium storing three-dimensional modeling program
CN113361365B (zh) 定位方法和装置、设备及存储介质
CN111612852B (zh) 用于验证相机参数的方法和装置
CN113409391B (zh) 视觉定位方法及相关装置、设备和存储介质
CN112686877B (zh) 基于双目相机的三维房屋损伤模型构建测量方法及系统
US11233983B2 (en) Camera-parameter-set calculation apparatus, camera-parameter-set calculation method, and recording medium
CN112561978B (zh) 深度估计网络的训练方法、图像的深度估计方法、设备
CN111127524A (zh) 一种轨迹跟踪与三维重建方法、系统及装置
JP5833507B2 (ja) 画像処理装置
CN112083403B (zh) 用于虚拟场景的定位追踪误差校正方法及系统
US20210334569A1 (en) Image depth determining method and living body identification method, circuit, device, and medium
JP7280385B2 (ja) 視覚的ポジショニング方法および関連装置、機器並びにコンピュータ可読記憶媒体
WO2023093739A1 (zh) 一种多视图三维重建的方法
CN109495733B (zh) 三维影像重建方法、装置及其非暂态电脑可读取储存媒体
CN114882106A (zh) 位姿确定方法和装置、设备、介质
CN111383264A (zh) 一种定位方法、装置、终端及计算机存储介质
JP2009186287A (ja) 平面パラメータ推定装置、平面パラメータ推定方法及び平面パラメータ推定プログラム
CN115578432B (zh) 图像处理方法、装置、电子设备及存储介质
US11417063B2 (en) Determining a three-dimensional representation of a scene
CN109328459B (zh) 智能终端及其3d成像方法、3d成像系统
CN114608521B (zh) 单目测距方法及装置、电子设备和存储介质
CN116342715A (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
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