一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

地图构建方法、位姿确定方法及相关装置、设备与流程

2022-06-02 14:19:41 来源:中国专利 TAG:


1.本技术涉及图像处理技术领域,特别是涉及一种地图构建方法、位姿确定方法及相关装置、设备。


背景技术:

2.在计算机视觉技术领域,三维重建是指根据单视图或者多视图的图像重建三维信息的过程。在该领域中,运动恢复结构(structure from motion,sfm)是一种通过分析图像序列得到相机参数并进行三维重建的技术,该技术具有广泛的应用,例如可以应用于增强现实、机器人和自动驾驶等领域。
3.目前,在利用sfm技术进行三维重建时,存在着重建的地图点的位置不够准确的问题,导致很多时候无法直接使用利用sfm技术构建的地图,这极大的限制了sfm技术在三维重建的进一步应用。
4.因此,如何改进sfm技术以提高得到的地图点的位置精度,具有重要的意义。


技术实现要素:

5.本技术至少提供一种地图构建方法、位姿确定方法及相关装置、设备。
6.本技术第一方面提供了一种地图构建方法,方法包括:获取对目标环境拍摄得到的若干组目标图像对,其中,每组目标图像对包含两张场景图像;基于若干组目标图像对,确定各组目标图像对中两张场景图像之间的位姿变化;利用位姿变化以及场景图像的参考定位信息,得到目标环境中的若干地图点的位置信息,其中,参考定位信息是利用预设定位方式对场景图像定位得到的,地图点是目标环境中与若干组目标图像对中的图像点对应的空间点。
7.因此,通过利用场景图像的参考定位信息来得到目标环境中的若干地图点的位置信息,可以利用参考定位信息来得到地图点的位置信息,实现了利用参考定位信息和目标图像对的位姿变化共同得到地图点的位置信息,有助于提高地图点的位置精度。
8.其中,上述的位姿变化包括第一旋转变化,上述的利用位姿变化以及场景图像的参考定位信息,得到目标环境中的若干地图点的位置信息,包括:利用位姿变化,确定各场景图像的目标位姿,其中,目标位姿包括目标旋转和目标平移;利用目标位姿,确定目标环境中的若干地图点的位置信息;其中,目标旋转、目标平移和地图点的位置信息中的至少一者还利用参考定位信息确定的。
9.因此,通过设置目标旋转、目标平移和地图点的位置信息中的至少一者还利用参考定位信息确定的,实现了利用参考定位信息来进行地图构建,有助于提高地图点的位置精度。
10.其中,上述的利用位姿变化,确定各场景图像的目标位姿,包括:初始化若干组目标图像对中的场景图像的候选旋转;利用第一优化因子对候选旋转进行优化,得到各场景图像经优化的候选旋转,其中,第一优化因子包括第一旋转变化,或者包括第一旋转变化和
参考定位信息中场景图像的参考旋转;将场景图像经优化的候选旋转作为场景图像的目标旋转;或者迭代执行利用第一优化因子对候选旋转进行优化,得到各场景图像经优化的候选旋转,在满足预设迭代条件后,将场景图像当前经优化的候选旋转作为场景图像的目标旋转。
11.因此,通过获取第一优化因子,可以实现对场景图像的候选旋转进行优化。另外,在第一优化因子包括参考定位信息中场景图像的参考旋转时,通过利用第一优化因子对场景图像的候选旋转进行优化,实现了利用参考定位信息优化得到场景图像的候选旋转,有助于提高得到的目标旋转的准确度。
12.其中,上述的利用第一优化因子对候选旋转进行优化,得到各场景图像经优化的候选旋转,包括:基于第一旋转变化和当前候选旋转,确定各组目标图像对的旋转变化偏移量,其中,旋转变化偏移量表示第一旋转变化与第二旋转变化之间的偏移量,第二旋转变化是利用目标图像对的当前候选旋转确定的;利用旋转变化偏移量确定旋转修正量,或者利用旋转变化偏移量以及各场景图像的参考旋转偏移量,确定旋转修正量,其中,场景图像的参考旋转偏移量表示场景图像的当前候选旋转与场景图像的参考旋转之间的偏移量;利用场景图像的旋转修正量与当前候选旋转,得到场景图像经优化的候选旋转。
13.因此,通过获取目标图像对的旋转变化偏移量以及各场景图像的参考旋转偏移量,以此可以通过优化的方法确定旋转修正量,进而能够对场景图像的候选旋转进行优化,实现了利用参考定位信息优化得到场景图像的候选旋转,有助于提高得到的候选旋转的准确度。
14.其中,上述的利用位姿变化,确定各场景图像的目标位姿,包括:初始化场景图像的目标平移;利用第二优化因子,对各场景图像的目标平移进行优化,其中,第二优化因子包括以下至少一者:各组目标图像对的相对相机中心的位移方向、各地图点在各场景图像中对应的图像点的特征射线方向、参考定位信息中各场景图像的参考平移。
15.因此,通过利用第二优化因子,能够对各场景图像的目标平移进行优化。另外,在第二优化因子包括参考定位信息中各场景图像的参考平移时,实现了利用参考定位信息优化得到场景图像的目标平移,有助于提高得到的目标平移的准确度。
16.其中,上述的利用第二优化因子,对各场景图像的目标平移进行优化,包括:利用各组目标图像对的位移方向差异、各地图点在各场景图像的射线方向差异、各场景图像的平移差异,建立第二优化方程,求解得到各场景图像经优化的目标平移;其中,目标图像对的位移方向差异为目标图像对的相对相机中心的位移方向与参考位移方向之间的差异,参考位移方向是利用目标图像对的场景图像的当前目标平移得到的;地图点在场景图像的射线方向差异为地图点在场景图像中对应的特征射线方向与参考射线方向之间的差异,参考射线方向是利用场景图像的当前目标平移和地图点的当前位置确定的;场景图像的平移差异为场景图像的当前目标平移与场景图像的参考平移之间的差异。
17.因此,通过建立第二优化方程,实现了利用参考定位信息优化得到场景图像的目标平移,有助于提高得到的目标平移的准确度。
18.其中,上述的第二优化方程使得:各组目标图像对的位移方向差异、各地图点在各场景图像的射线方向差异、各场景图像的平移差异的加权结果满足预设优化条件。
19.因此,通过使得第二优化方程的各组目标图像对的位移方向差异、各地图点在各
场景图像的射线方向差异、各场景图像的平移差异的加权结果满足预设优化条件,可以实现利用参考定位信息优化得到场景图像的目标平移,有助于提高得到的目标平移的准确度。
20.其中,上述的位姿变化还包括平移变化,目标图像对的位移变化为从目标图像对中的第一场景图像平移至目标图像对中的第二场景图像产生的变化,在利用第二优化因子,对各场景图像的目标平移进行优化之前,方法还包括:利用目标图像对中的第一场景图像的目标旋转、以及目标图像对的位移变化,得到目标图像对的相对相机中心的位移方向;
21.因此,通过利用目标图像对中的第一场景图像的目标旋转、以及目标图像对的位移变化,以此能够得到目标图像对的相对相机中心的位移方向。
22.在利用第二优化因子,对各场景图像的目标平移进行优化之前,方法还包括:利用场景图像的目标旋转、以及地图点在场景图像中对应的图像点的位置信息,得到地图点在场景图像中对应的图像点的特征射线方向。
23.因此,通过利用场景图像的目标旋转、以及地图点在场景图像中对应的图像点的位置信息,能够得到地图点在场景图像中对应的图像点的特征射线方向。
24.其中,上述的利用目标位姿,确定目标环境中的若干地图点的位置信息,包括:利用目标位姿,得到若干地图点的位置信息;利用第三优化因子,对若干地图点的位置信息进行优化,以得到若干个地图点经优化的位置信息,其中,第三优化因子包括以下至少一者:各地图点在各场景图像中的投影点误差、参考定位信息中各场景图像的参考旋转、参考定位信息中各场景图像的参考平移。
25.因此,通过利用第三优化因子,可以实现对地图点的位置信息的优化。在第三优化因子包括参考定位信息中各场景图像的参考旋转、参考定位信息中各场景图像的参考平移的至少一者时,实现了利用参考定位信息优化得到地图点的位置,有助于提高得到的地图点的位置的准确度。其中,上述的
26.其中,上述的利用第三优化因子,对若干地图点的位置信息进行优化,包括:利用地图点在各场景图像中的投影点误差、各场景图像的目标旋转与参考旋转之间的差异、各场景图像的目标平移与参考平移之间的差异,建立第三优化方程以对地图点的位置信息进行优化。
27.因此,通过利用第三优化方程进行优化,可以实现利用参考定位信息来对地图点的位置进行优化,有助于提高得到的地图点的位置的准确度。
28.其中,上述的预设定位方式为是卫星惯性导航系统进行定位。
29.因此,通过获取由卫星惯性导航系统得到的参考定位信息,以此能够结合卫星惯性导航系统的定位信息来进行地图构建,有助于提高地图点的位置精度。
30.其中,上述的获取对目标环境拍摄得到的若干组目标图像对,包括:获取对目标环境拍摄得到的多个场景图像;将多个场景图像进行匹配,得到多个匹配图像对;从多个匹配图像对中,选出若干组目标图像对。
31.其中,上述的从多个匹配图像对中,选出若干组目标图像对,包括:从多个匹配图像对中,查找出匹配特征点对数量满足预设要求的预设数量组目标图像对;将包含同一场景图像的两组目标图像对组成关联图像组,其中,关联图像组包括第三场景图像、第四场景图像和第五场景图像,第三场景图像为两组目标图像对均包含的场景图像,第四场景图像
和第五场景图像分别是两组目标图像对各自包含的场景图像;对于各关联图像组,响应于关联图像组的两两图像对之间的第二旋转变化满足可信条件,将关联图像组中的第四场景图像和第五场景图像组成新的目标图像对。
32.因此,通过将关联图像组的两两图像对之间的第二旋转变化满足可信条件的第四场景图像和第五场景图像组成新的目标图像对,可以增加符合要求的目标图像对,使得后续确定地图点的位置信息,有更多的参考信息,有助于提高最后确定的地图点的位置精度。
33.其中,上述的可信条件为:关联图像组的两两图像对之间的第二旋转变化满足旋转回环约束。
34.因此,通过设置可信条件为:关联图像组的两两图像对之间的第二旋转变化满足旋转回环约束,以此可以使得新增加的目标图像对的可信程度较高,有助于提高最后确定的地图点的位置精度。
35.其中,上述的从多个匹配图像对中,查找出匹配特征点对数量满足预设要求的预设数量组目标图像对,包括:利用多个匹配图像对,基于匹配特征点对数量构建最小生成树,其中,最小生成树中的每个节点为一场景图像,最小生成树中相连的两个节点组成一组目标图像对。
36.因此,通过构建最小生成树来确定目标图像对,可以起到筛除错误匹配图像对的效果,减少了目标图像对中的错误匹配图像对,有助于提高后续利用目标图像对确定的地图点的位置信息。
37.本技术第二方面提供了一种位姿确定方法,方法包括:获取对目标环境拍摄得到的若干组目标图像对,其中,每组目标图像对包含两张场景图像;基于若干组目标图像对,确定各组目标图像对中两张场景图像之间的位姿变化;利用位姿变化以及场景图像的参考定位信息,确定各场景图像的目标位姿,其中,参考定位信息是利用预设定位方式对场景图像定位得到的,目标位姿包括目标旋转和目标平移,目标旋转和目标平移中的至少一者是利用参考定位信息确定的。
38.因此,通过利用位姿变化以及场景图像的参考定位信息,确定各场景图像的目标位姿,以此实现利用参考定位信息来对目标位姿进行优化,有助于提高得到的目标位姿的准确度。
39.其中,上述的位姿变化包括第一旋转变化和平移变化,上述的利用位姿变化以及场景图像的参考定位信息,确定各场景图像的目标位姿,包括:初始化若干组目标图像对中的场景图像的候选旋转,并利用第一优化因子对候选旋转进行优化,得到各场景图像经优化的候选旋转;将场景图像经优化的候选旋转作为场景图像的目标旋转,或者迭代执行利用第一优化因子对候选旋转进行优化,得到各场景图像经优化的候选旋转的步骤,在满足预设迭代条件后,将场景图像当前经优化的候选旋转作为场景图像的目标旋转;其中,第一优化因子包括第一旋转变化,或者包括第一旋转变化和参考定位信息中场景图像的参考旋转。
40.因此,通过利用第一优化因子对场景图像的候选旋转进行优化,实现了利用参考定位信息优化得到场景图像的候选旋转,有助于提高得到的目标旋转的准确度。
41.其中,上述的利用平移变化和各场景图像的目标旋转,得到各场景图像的目标平移;利用第二优化因子,对各场景图像的目标平移进行优化,其中,第二优化因子包括以下
至少一者:各组目标图像对的相对相机中心的位移方向、各地图点在各场景图像中对应的图像点的特征射线方向、参考定位信息中各场景图像的参考平移,其中,地图点是目标环境中与若干组目标图像对中的图像点对应的空间点。
42.因此,通过利用第二优化因子,实现了利用参考定位信息优化得到场景图像的目标平移,有助于提高得到的目标平移的准确度。
43.其中,在利用位姿变化以及场景图像的参考定位信息,确定各场景图像的目标位姿之后,位姿确定方法还包括:利用目标位姿,得到若干地图点的位置信息;利用第三优化因子,对目标位姿进行优化,以得到经优化的目标位姿,其中,第三优化因子包括以下至少一者:各地图点在各场景图像中的投影点误差、参考定位信息中各场景图像的参考旋转、参考定位信息中各场景图像的参考平移
44.因此,通过利用第三优化方程优化后得到的目标位姿确定为场景图像经优化后的目标位姿,以此实现了利用参考位姿信息对目标位姿的再次优化,有助于提高目标位姿的准确度。
45.本技术第三方面提供了一种地图构建装置,地图构建装置包括获取模块、确定模块和地图点模块,其中,取模块用于获取对目标环境拍摄得到的若干组目标图像对,其中,每组目标图像对包含两张场景图像;确定模块用于基于若干组目标图像对,确定各组目标图像对中两张场景图像之间的位姿变化;地图点模块用于利用位姿变化以及场景图像的参考定位信息,得到目标环境中的若干地图点的位置信息,其中,参考定位信息是利用预设定位方式对场景图像定位得到的,地图点是目标环境中与若干组目标图像对中的图像点对应的空间点。
46.本技术第四方面提供了一种位姿确定装置,位姿确定装置包括获取模块、第一确定模块和第二确定模块,其中,获取模块用于获取对目标环境拍摄得到的若干组目标图像对,其中,每组目标图像对包含两张场景图像;第一确定模块用于基于若干组目标图像对,确定各组目标图像对中两张场景图像之间的位姿变化;第二确定模块用于利用位姿变化以及场景图像的参考定位信息,确定各场景图像的目标位姿,其中,参考定位信息是利用预设定位方式对场景图像定位得到的,目标位姿包括目标旋转和目标平移,目标旋转和目标平移中的至少一者是利用参考定位信息确定的。
47.本技术第五方面提供了一种电子设备,包括相互耦接的存储器和处理器,处理器用于执行存储器中存储的程序指令,以实现上述第一方面中的地图构建方法,或实现上述第二方面中的位姿确定方法。
48.本技术第六方面提供了一种计算机可读存储介质,其上存储有程序指令,程序指令被处理器执行时实现上述第一方面中的地图构建方法,或实现上述第二方面中的位姿确定方法。
49.上述方案,通过利用场景图像的参考定位信息来得到目标环境中的若干地图点的位置信息,可以利用参考定位信息来得到地图点的位置信息,实现了利用参考定位信息和目标图像对的位姿变化共同得到地图点的位置信息,有助于提高地图点的位置精度。
50.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本技术。
附图说明
51.此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本技术的实施例,并与说明书一起用于说明本技术的技术方案。
52.图1是本技术地图构建方法一实施例的流程示意图;
53.图2是本技术地图构建方法另一实施例的第一流程示意图;
54.图3是本技术地图构建方法另一实施例的第二流程示意图;
55.图4是本技术地图构建方法另一实施例的第三流程示意图
56.图5是本技术地图构建方法又一实施例的流程示意图;
57.图6是本技术地图构建方法再一实施例的流程示意图;
58.图7是本技术位姿确定方法实施例的流程示意图;
59.图8是本技术地图构建装置实施例的框架示意图;
60.图9是本技术位姿确定装置实施例的框架示意图;
61.图10是本技术电子设备一实施例的框架示意图;
62.图11为本技术计算机可读存储介质一实施例的框架示意图。
具体实施方式
63.下面结合说明书附图,对本技术实施例的方案进行详细说明。
64.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本技术。
65.本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括a、b、c中的至少一种,可以表示包括从a、b和c构成的集合中选择的任意一个或多个元素。
66.请参阅图1,图1是本技术地图构建方法一实施例的流程示意图。具体而言,可以包括如下步骤:
67.步骤s11:获取对目标环境拍摄得到的若干组目标图像对,其中,每组目标图像对包含两张场景图像。
68.在本实施例中,目标环境是现实世界的任意一部分。场景图像是利用具有拍摄功能的设备对目标环境进行拍摄得到的图像,拍摄设备例如是手机、平板电脑、摄像头等等。
69.在获得场景图像以后,可以基于图像处理技术领域中通用的图像匹配方法来确定两两场景图像之间的匹配关系,以此得到目标图像对。图像匹配方法例如是模板匹配方法、特征点匹配方法等,此处不再赘述。
70.步骤s12:基于若干组目标图像对,确定各组目标图像对中两张场景图像之间的位姿变化。
71.确定目标图像对以后,可以利用图像处理技术领域中通用的图像配准的方法,确定目标图像对的位姿变化,此处不再赘述。在一个具体实施方式中,目标图像对的位姿变化可以包括目标图像对的第一旋转变化和/或平移变化。
72.在一个具体实施方式中,上述的位姿变化为从目标图像对中的第一场景图像变化至目标图像对中的第二场景图像产生的变化。也即第一旋转变换可以是从目标图像对中的第一场景图像旋转至目标图像对中的第二场景图像产生的变化,平移变化是从目标图像对中的第一场景图像平移至目标图像对中的第二场景图像产生的变化。例如,在第一旋转变化r
ij
中,目标图像对中的第一场景图像为i,第二张场景图像为j,r
ij
即表示场景图像i旋转至场景图像j的变化,也可以认为是场景图像j相对于场景图像i的旋转变化。
73.步骤s13:利用位姿变化以及场景图像的参考定位信息,得到目标环境中的若干地图点的位置信息。
74.在本实施例中,场景图像的参考定位信息是利用预设定位方式对场景图像定位得到的。预设定位方式例如是通过传感器获得的定位信息,例如是通过全球卫星导航系统,惯性传感器(inertial measurement unit,imu),姿态传感器(attitude sensor)等获得的定位信息。在一个具体实施方式中,参考定位信息具体可以表现为与每一帧场景图像对应的位姿信息,例如是每一帧场景图像的参考旋转和参考平移。在另一个具体实施方式中,参考定位信息还可以表现为基于场景图像的位姿信息得到的目标图像对之间的参考位姿变化等等。
75.另外,本实施例中的地图点是目标环境中与若干组目标图像对中的图像点对应的空间点。目标图像对中的图像点例如是目标图像对包含的两张场景图像的任意一张的图像点对应的空间点。地图点的位置信息的例如是在预设坐标下,地图点的三维坐标。
76.在本实施例中,可以通过获取目标图像对的位姿变化,并同时利用参考定位信息作为约束项,通过利用sfm技术进行地图重建,以此共同确定目标环境中的若干地图点的位置信息。例如,可以将参考定位信息中的目标图像对之间的参考位姿变化和步骤s12得到的位姿变化共同作为约束项,以此优化得到地图点的位置信息。又如,可以将参考定位信息中的每一帧场景图像对应的位姿信息作为约束项,来优化每一帧场景图像的目标位姿,以此得到地图点的位置信息。
77.因此,通过利用场景图像的参考定位信息来得到目标环境中的若干地图点的位置信息,可以利用参考定位信息来得到地图点的位置信息,实现了利用参考定位信息和目标图像对的位姿变化共同得到地图点的位置信息,有助于提高地图点的位置精度。
78.在一个实施方式中,预设定位方式为是卫星惯性导航系统进行定位。因此,通过获取由卫星惯性导航系统得到的参考定位信息,以此能够结合卫星惯性导航系统的定位信息来进行地图构建,有助于提高地图点的位置精度。
79.请参阅图2,图2是本技术地图构建方法另一实施例的第一流程示意图。在本实施例中,基于目标图像对确定的目标图像对的位姿变化包括第一旋转变化。上述步骤提及的“利用位姿变化以及场景图像的参考定位信息,得到目标环境中的若干地图点的位置信息”具体包括步骤s21和步骤s22。
80.步骤s21:利用位姿变化,确定各场景图像的目标位姿。
81.步骤s22:利用目标位姿,确定目标环境中的若干地图点的位置信息。
82.在本实施例中,目标位姿包括目标旋转和目标平移,例如是预设坐标下的目标旋转和目标平移。另外,目标旋转、目标平移和地图点的位置信息中的至少一者还利用参考定位信息确定的。例如,可以利用参考定位信息中的各场景图像的参考旋转信息来确定目标
旋转,利用参考定位信息中的各场景图像的参考平移信息作为约束项来确定目标平移。又如,用于确定目标环境中的若干地图点的位置信息的目标位姿,是利用参考定位信息作为约束项获得的。再如,用于确定目标环境中的若干地图点的位置信息的目标位姿,没有利用参考定位信息,但是在利用目标位姿确定目标环境中的若干地图点的位置信息,会利用参考定位信息作为约束项,来优化得到地图点的位置信息。
83.因此,通过设置目标旋转、目标平移和地图点的位置信息中的至少一者还利用参考定位信息确定的,实现了利用参考定位信息来进行地图构建,有助于提高地图点的位置精度。
84.在一个实施方式中,场景图像的目标位姿与参考定位信息可以是基于同一预设坐标系确定的,以此可以使得后续求解得到的场景图像的目标位姿,以及地图点的位置与参考定位信息的坐标系一致,便于直接使用场景图像的目标位姿以及地图点的位置。在另一个实施方式中,在场景图像的目标位姿与参考定位信息可以不是基于同一预设坐标系确定时,可以将目标位姿转换为与参考定位信息一致的坐标系下的目标位姿,以进行相关的运用。
85.在本技术中,将场景图像的位姿信息与参考定位信息做相关比较时,默认场景图像的位姿信息与参考定位信息处于同一坐标系。
86.请参阅图3,图3是本技术地图构建方法另一实施例的第二流程示意图。在本实施例中,上述的步骤“利用位姿变化,确定各场景图像的目标位姿”具体包括步骤s211至步骤s214。
87.步骤s211:初始化若干组目标图像对中的场景图像的候选旋转。
88.场景图像的候选旋转,具体可以是场景图像在预设坐标下旋转。初始化例如是随机初始化,以此可以为场景图像设置对应的候选旋转。在一个具体实施方式中,场景图像的候选旋转和参考定位信息可以是在同一预设坐标系的位姿信息。
89.在一个具体实施方式中,以r
global
={r1,

,rn}表示场景图像的候选旋转,其中,r
global
表示场景图像的候选旋转,r1表示第一张场景图像的候选旋转,rn表示第n张场景图像的候选旋转。
90.步骤s212:利用第一优化因子对候选旋转进行优化,得到各场景图像经优化的候选旋转。
91.在本实施例中,第一优化因子包括第一旋转变化,或者包括第一旋转变化和参考定位信息中场景图像的参考旋转。因为第一旋转变化是基于目标图像对得到的,参考定位信息中的场景图像的参考旋转是通过预设定位方法得到的,因此均可以将第一旋转变化和参考旋转作为约束项,以此来优化场景图像的候选旋转。
92.在一个实施方式中,表示场景图像的参考旋转,表示对应于第一张场景图像的参考旋转,表示对应于第n张场景图像的参考旋转。可以理解的,对于每张场景图像,其均具有对应的一个参考旋转。
93.在一个实施方式中,上述的步骤“利用第一优化因子对候选旋转进行优化,得到各场景图像经优化的候选旋转”具体包括步骤s2121至步骤s2123。
94.步骤s2121:基于第一旋转变化和当前候选旋转,确定各组目标图像对的旋转变化
偏移量。
95.在本实施方式中,旋转变化偏移量表示第一旋转变化与第二旋转变化之间的偏移量,第二旋转变化是利用目标图像对的当前候选旋转确定的。
96.在一个具体实施方式中,以表示第二旋转变化,其中,是场景图像i的旋转矩阵的逆矩阵,rj是场景图像j的旋转矩阵。
97.在一个具体实施方式中,以r
rel
={r
ij1
,

,r
ijk
}表示目标图像对的第一旋转变化,其中,r
ij1
表示场景图像i和场景图像j1的第一旋转变化,r
ijk
表示场景图像i和场景图像jk的第一旋转变化。
98.在一个具体实施方式中,可以通过以下公式(1)确定一个目标图像对的旋转变化偏移量δr
ij

[0099][0100]
步骤s2122:利用旋转变化偏移量以及各场景图像的参考旋转偏移量,确定旋转修正量。
[0101]
在本实施方式中,场景图像的参考旋转偏移量表示场景图像的当前候选旋转与场景图像的参考旋转之间的偏移量。
[0102]
在一个具体实施方式中,可以通过以下公式(2)确定参考旋转偏移量在一个具体实施方式中,可以通过以下公式(2)确定参考旋转偏移量
[0103]
其中,表示场景图像i的候选旋转矩阵的逆矩阵,表示场景图像的参考旋转。
[0104]
在一个具体实施方式中,可以利用建立以下优化公式(3),来得到旋转修正量δri。
[0105][0106]
其中,δr
ij
表示旋转变化偏移量,表示参考旋转偏移量,优化公式(3)可以理解为,通过调整为部分或全部的场景图像的候选旋转确定旋转修正量,使得基于全部目标图像对得到的旋转变化偏移量和基于全部场景图像得到的参考旋转偏移量的误差最小。
[0107]
在一个具体方式中,也可以是利用旋转变化偏移量确定旋转修正量,此时可以相应的将公式(3)中的删除即可,以此可以实现利用旋转变化偏移量确定旋转修正量。
[0108]
步骤s2123:利用场景图像的旋转修正量与当前候选旋转,得到场景图像经优化的候选旋转。
[0109]
在一个具体实施方式中,可以通过以下公式(4)得到场景图像经优化的候选旋转。
[0110]rk
=rkδrkꢀꢀꢀ
(4)
[0111]
其中,等式右边的rk表示场景图像k的当前的候选旋转,δrk表示场景图像k的旋转修正量,等式左边的rk表示场景图像k经优化的候选旋转。
[0112]
因此,通过获取目标图像对的旋转变化偏移量以及各场景图像的参考旋转偏移量,以此可以通过优化的方法确定旋转修正量,进而能够对场景图像的候选旋转进行优化,实现了利用参考定位信息优化得到场景图像的候选旋转,有助于提高得到的候选旋转的准
确度。
[0113]
在一个例子中,上述的步骤“利用旋转变化偏移量以及各场景图像的参考旋转偏移量,确定旋转修正量”包括步骤1至步骤3。
[0114]
步骤1:将旋转变化偏移量进行李代数转换得到第一李代数,将参考旋转偏移量进行李代数转换得到第二李代数。
[0115]
例如,可以通过以下公式(5)得到第一李代数,以及利用公式(6)得到第二李代数。
[0116]
δω
rel
=log(δr
ij
)
ꢀꢀ
(5)
[0117][0118]
其中,δω
rel
表示将旋转变化偏移量进行李代数转换得到第一李代数,表示将参考旋转偏移量进行李代数转换得到第二李代数。
[0119]
步骤2:利用第一李代数、第一李代数构建第一优化方程,求解得到表示旋转修正量的第三李代数。
[0120]
例如,可以通过以下公式(7)得到表示旋转修正量的第三李代数。
[0121][0122]
其中,系数矩阵a1在j和i的位置上分别为3
×
3的矩阵i和-i,系数矩阵a2在i的位置上为3
×
3的矩阵i,δω
global
表示旋转修正量的第三李代数,δω
rel
表示全部目标图像对得到的旋转变化偏移量,表示基于全部场景图像得到的参考旋转偏移量。
[0123]
对于公式(7)而言,其可以通过本领域通用优化方法求解,例如是利用l1-irls优化方法得到旋转修正量,此处不再赘述。
[0124]
步骤3:将第三李代数转换得到旋转修正量。
[0125]
例如,可以通过以下公式(8)确定旋转修正量。
[0126]
δri=exp(δωk)(8)
[0127]
其中,δωk为表示旋转修正量的第三李代数。
[0128]
因此,通过获取旋转变化偏移量以及的参考旋转偏移量各自对应的李代数,以此可以旋转变化偏移量的李代数以及参考旋转偏移量的李代数实现对场景图像的候选旋转进行优化,实现了利用参考定位信息优化得到场景图像的候选旋转,有助于提高得到的候选旋转的准确度。
[0129]
在一个实施方式可以,对应于利用旋转变化偏移量确定旋转修正量的情况,可以是相应的将公式(7)中的删除,以此即可实现利用旋转变化偏移量确定旋转修正量。
[0130]
步骤s213:将场景图像经优化的候选旋转作为场景图像的目标旋转。
[0131]
在一个实施方式中,可以直接将场景图像经优化的候选旋转作为场景图像的目标旋转。
[0132]
步骤s214:迭代执行利用第一优化因子对候选旋转进行优化,得到各场景图像经优化的候选旋转,在满足预设迭代条件后,将场景图像当前经优化的候选旋转作为场景图像的目标旋转。
[0133]
在一个实施方式中,预设迭代条件例如是||δr
ij
||《∈,其中,∈为预设阈值,预设阈值可以根据需要进行设置,此处不再赘述。在将李代数求解时,预设迭代条件例如是至||δω
rel
||《。在其他实施方式中,预设迭代条件或者是
[0134]
在本实施例中,在满足预设迭代条件后,可以确定此时得到的旋转修正量符合要求,以此便可以利用该旋转修正量得到场景图像的目标旋转。
[0135]
因此,通过获取第一优化因子,可以实现对场景图像的候选旋转进行优化。另外,在第一优化因子包括参考定位信息中场景图像的参考旋转时,通过利用第一优化因子对场景图像的候选旋转进行优化,实现了利用参考定位信息优化得到场景图像的候选旋转,有助于提高得到的目标旋转的准确度。
[0136]
请参阅图4,图4是本技术地图构建方法另一实施例的第三流程示意图。在本实施例中,上述的步骤“利用位姿变化,确定各场景图像的目标位姿”还可以包括步骤s215和步骤s216。
[0137]
步骤s215:初始化场景图像的目标平移。
[0138]
在一个具体实施方式中,可以是利用随机初始化的方法为场景图像的的平移赋值,以此得到场景图像的目标平移。在另一个具体实施方式中,也可以是利用场景图像的目标旋转以及场景图像所属的目标图像对的位姿变化,求解得到各场景图像的平移,作为目标平移。可以理解的,初始化的方式不受限制。
[0139]
在一个具体实施方式中,以t
global
={t1,

,tn}表示场景图像的目标平移,其中,t1表示第一张场景图像的目标平移,t1表示第一张场景图像的目标平移。在一个具体实施方式中,以t
rel
={t
ij1
,

,t
ijk
}表示基于目标图像对确定的各组目标图像对的位姿变化中的平移变化,其中,t
ij1
表示场景图像j1相对于场景图像i的平移。
[0140]
步骤s216:利用第二优化因子,对各场景图像的目标平移进行优化。
[0141]
在本实施例中,第二优化因子包括以下至少一者:各组目标图像对的相对相机中心的位移方向、各地图点在各场景图像中对应的图像点的特征射线方向、参考定位信息中各场景图像的参考平移。对各场景图像的目标平移进行优化,可以认为是调整部分或者是全部场景图像的目标平移,使得基于第二优化因子确定的迭代优化条件能够满足,以此得到场景图像的目标平移。
[0142]
在一个实施方式中,各组目标图像对的相对相机中心的位移方向为目标图像对的两张场景图像的位移方向。例如,表示场景图像j1相对于场景图像i的位移方向。在一个具体实施方式中,可以利用目标图像对中的第一场景图像的目标旋转、以及目标图像对的位移变化,得到目标图像对的相对相机中心的位移方向。例如可以通过以下公式(9)确定目标图像对的相对相机中心的位移方向
[0143][0144]
其中,t
ij
表示基于目标图像对确定的各组目标图像对的位姿变化中的位移变化,可以是场景图像i的旋转矩阵的逆矩阵,例如是上述实施例得到的目标旋转的逆矩阵。
[0145]
因此,通过利用目标图像对中的第一场景图像的目标旋转、以及目标图像对的位移变化,以此能够得到目标图像对的相对相机中心的位移方向。
[0146]
在一个实施方式中,地图点可以认为是基于场景图像构建的特征地图上的空间点。地图点的三维坐标例如可以通过随机初始化的方法确定。在一个具体实施方式中,以x={x1,

,xm}表示地图点。
[0147]
各地图点在各场景图像中对应的图像点的特征射线方向可以认为是以场景图像的光心为起点指向各地图点在场景图像中对应的图像点的射线。
[0148]
在一个具体实施方式中,可以利用场景图像的目标旋转、以及地图点在场景图像中对应的图像点的位置信息,得到地图点在场景图像中对应的图像点的特征射线方向。例如,各地图点在各场景图像中对应的图像点的特征射线方向可以通过公式(10)确定。
[0149][0150]
其中,的定义与公式(9)相同,k为拍摄场景图像的相机的内参,x
ik
为地图点xk场景图像i上的特征点x
ik
的位置信息,如坐标。
[0151]
因此,通过利用场景图像的目标旋转、以及地图点在场景图像中对应的图像点的位置信息,能够得到地图点在场景图像中对应的图像点的特征射线方向。
[0152]
在一个实施方式中,参考定位信息中各场景图像的参考平移,是利用预设定位方式确定的场景图像的平移。在一个具体实施方式中,以表示场景图像的参考平移,其中,表示第一张场景图像的参考平移。
[0153]
因此,通过利用第二优化因子,能够对各场景图像的目标平移进行优化。另外,在第二优化因子包括参考定位信息中各场景图像的参考平移时,实现了利用参考定位信息优化得到场景图像的目标平移,有助于提高得到的目标平移的准确度。
[0154]
在一个实施方式中,上述提及的“利用第二优化因子,对各场景图像的目标平移进行优化”,包括:利用各组目标图像对的位移方向差异、各地图点在各场景图像的射线方向差异、各场景图像的平移差异,建立第二优化方程,求解得到各场景图像经优化的目标平移。
[0155]
在本实施方式中,目标图像对的位移方向差异为目标图像对的相对相机中心的位移方向与参考位移方向之间的差异,参考位移方向是利用目标图像对的场景图像的当前目标位移得到的。在一个具体实施方式中,可以利用目标图像对的场景图像的当前目标平移得到目标图像对的当前目标位移。在一个具体实施方式中,以表示参考位移方向,其中,ti和tj表示场景图像i和场景图像j的目标平移,t
j-ti表示目标图像对的当前目标位移。以表示位移方向差异。
[0156]
在本实施方式中,地图点在场景图像的射线方向差异为地图点在场景图像中对应的特征射线方向与参考射线方向之间的差异,参考射线方向是利用场景图像的当前目标平移和地图点的当前位置确定的。在一个具体实施方式中,以表示参考射线方向,其中,ti表示场景图像i的目标平移,xk表示场景图像i上的特征点对应的空间点xk的当前位置。以表示射线方向差异。
[0157]
在本实施方式中,场景图像的平移差异为场景图像的当前目标平移与场景图像的参考平移之间的差异。在一个具体实施方式中,以表示场景图像的平移差异,其中,ti表示场景图像i的目标平移,表示场景图像的参考平移。以表示平移差异。
[0158]
在本实施方式中,第二优化方程的表达式(11)如下:
[0159][0160]
其中,v表示全部目标图像对的集合,(i,j)为目标图像对,n为场景图像数量,m为全部地图点的数量,w1,w2,w3为权重系数;另外,
[0161]
以此即可以表示基于场景图像i上的全部特征点对应的地图点得到参考射线方向所确定的射线方向差异。
[0162]
通过公式(11)即可基于全部目标图像对和全部场景图像来对场景图像的目标平移进行优化。在一个具体实施方式中,可以是通过调整部分或者全部场景图像的目标平移,以使得第二优化方程满足预设优化条件。在另一个具体实施方式中,可以调整部分或者全部场景图像的目标平移,以及部分或全部的地图点的位置,以使得第二优化方程满足预设优化条件。第二优化方程满足预设优化条件时对应的场景图像的目标平移,即可确认为优化后的目标平移。因此,通过建立第二优化方程,实现了利用参考定位信息优化得到场景图像的目标平移,有助于提高得到的目标平移的准确度。
[0163]
在一个具体实施方式中,在利用第二优化方程进行优化时,可以使得各组目标图像对的位移方向差异、各地图点在各场景图像的射线方向差异、各场景图像的平移差异的加权结果满足预设优化条件,此时可以认为得到的目标平移满足要求。预设优化条件例如是得到加权结果的最小值。因此,通过使得第二优化方程的各组目标图像对的位移方向差异、各地图点在各场景图像的射线方向差异、各场景图像的平移差异的加权结果满足预设优化条件,可以实现利用参考定位信息优化得到场景图像的目标平移,有助于提高得到的目标平移的准确度。
[0164]
请参阅图5,图5是本技术地图构建方法又一实施例的流程示意图。在本实施例中,上述的“利用目标位姿,确定目标环境中的若干地图点的位置信息以及经优化的目标位姿”,具体包括步骤s31和步骤s32。
[0165]
步骤31:利用目标位姿,得到若干地图点的位置信息。
[0166]
目标位姿即为通过实施例确定的场景图像的目标旋转和目标位移。具体利用目标位姿得到若干地图点的位置信息的方法,可以是本领域中通用的通过三角化重新生成特征地图,以此确定地图点的位置信息的方法,此处不再赘述。
[0167]
步骤s32:利用第三优化因子,对若干地图点的位置信息和目标位姿进行优化,以得到若干个地图点经优化的位置信息。
[0168]
在本实施例中,第三优化因子包括以下至少一者:各地图点在各场景图像中的投影点误差、参考定位信息中各场景图像的参考旋转、参考定位信息中各场景图像的参考平移。
[0169]
在一个实施方式中,各地图点在各场景图像中的投影点误差可以表示为其中,n为场景图像数量,m为全部地图点的数量,k为拍摄场景图像的相机内参,ri和ti为场景图像的目标位姿,xk为地图点,k(rixk ti)为地图点在场景图像i上的投影点,x
ik
为地图点xk场景图像i上对应的特征点,另外,
[0170][0171]
便可表示各地图点在各场景图像中的投影点误差。
[0172]
在一个具体实施方式中,可以通过调整地图点的位置来进行优化。在另一个具体实施方式中,还可以调整地图点的位置,场景图像的目标位姿来进行优化,以此得到地图点经优化的位置信息。因此,通过利用第三优化因子,可以实现对地图点的位置信息的优化。在第三优化因子包括参考定位信息中各场景图像的参考旋转、参考定位信息中各场景图像的参考平移的至少一者时,实现了利用参考定位信息优化得到地图点的位置,有助于提高得到的地图点的位置的准确度。
[0173]
在一个实施方式中,可以利用地图点在各场景图像中的投影点误差、各场景图像的目标旋转与参考旋转之间的差异、各场景图像的目标平移与参考平移之间的差异,建立第三优化方程以对地图点的位置信息进行优化。在一个具体实施方式中,第三优化方程的表达式(12)如下:
[0174][0175]
其中,n为场景图像数量,m为全部地图点的数量,w4,w5为权重系数,表示地图点在各场景图像中的投影点误差,表示各场景图像的目标旋转与参考旋转之间的差异,表示各场景图像的目标旋转与参考旋转之间的差异,表示各场景图像的目标平移与参考平移之间的差异。在本实施例中,可以通过调整相机内参k,场景图像的目标位姿r,t,以及地图点的位置x,来进行优化,以使得f(k,r,t,x)最小。在一个例子中,相机内参k的初始值可以为相机出厂时确定的内参,以此可以加快优化的速度。
[0176]
在一个实施方式中,可以将第三优化方程优化后得到的目标位姿确定为场景图像新的目标位姿,以此实现了利用参考位姿信息对目标位姿的再次优化,有助于提高目标位姿的准确度。
[0177]
在另一个实施方式中,可以将第三优化方程优化后得到的相机内参k确定新的相机内参,以此实现对相机内参k的优化。
[0178]
因此,通过利用第三优化方程进行优化,可以实现利用参考定位信息来对地图点
的位置进行优化,有助于提高得到的地图点的位置的准确度。
[0179]
请参阅图6,图6是本技术地图构建方法再一实施例的流程示意图。在本实施例中,上述的“获取对目标环境拍摄得到的若干组目标图像对”具体包括步骤s41至步骤43。
[0180]
步骤s41:获取对目标环境拍摄得到的多个场景图像。
[0181]
获取多个场景图像的具体描述请参阅上述步骤s11的相关描述,此处不再赘述。
[0182]
步骤s42:将多个场景图像进行匹配,得到多个匹配图像对。
[0183]
将多个场景图像进行匹配,得到多个匹配图像对的详细描述,请参阅上述步骤s11的相关描述,此处不再赘述。
[0184]
步骤s43:从多个匹配图像对中,选出若干组目标图像对。
[0185]
选择若干组目标图像对,可以是基于目标图像对的匹配的特征点数量的来进行选择,也可以是基于其他方法选择,此处不做限制。
[0186]
在一个实施方式中,上述提及的步骤“从多个匹配图像对中,选出若干组目标图像对”具体包括步骤s431至步骤s433。
[0187]
步骤s431:从多个匹配图像对中,查找出匹配特征点对数量满足预设要求的预设数量组目标图像对。
[0188]
匹配图像对的匹配特征点对数量满足预设要求,例如是匹配图像对的匹配特征点对数量大于预设数量阈值。
[0189]
在一个具体实施方式中,可以在多个匹配图像对中,基于匹配特征点对数量构建最小生成树,其中,最小生成树中的每个节点为一场景图像,最小生成树中相连的两个节点组成一组目标图像对。在构建最小生成树时,可以基于匹配图像对的匹配特征点对数量的来确定匹配图像对的场景图像对应的节点之间的边的权重。具体地,可以认为匹配图像对的匹配特征点对数量越多,其对应的边的权重越小。因此,通过构建最小生成树来确定目标图像对,可以起到筛除错误匹配图像对的效果,减少了目标图像对中的错误匹配图像对,有助于提高后续利用目标图像对确定的地图点的位置信息。
[0190]
步骤s432:将包含同一场景图像的两组目标图像对组成关联图像组。
[0191]
在本实施方式中,关联图像组包括第三场景图像、第四场景图像和第五场景图像,第三场景图像为两组目标图像对均包含的场景图像,第四场景图像和第五场景图像分别是两组目标图像对各自包含的场景图像。例如,一组目标图像对为(i,j),另一组目标图像对(j,k),则可以确定场景图像i为第三场景图像,场景图像j和场景图像k分别为第四场景图像和第五场景图像。
[0192]
步骤s433:对于各关联图像组,响应于关联图像组的两两图像对之间的第二旋转变化满足可信条件,将关联图像组中的第四场景图像和第五场景图像组成新的目标图像对。
[0193]
可信条件例如是基于两两图像对之间的第二旋转变化确定的偏差小于预设偏差阈值。因此,通过将关联图像组的两两图像对之间的第二旋转变化满足可信条件的第四场景图像和第五场景图像组成新的目标图像对,可以增加符合要求的目标图像对,使得后续确定地图点的位置信息,有更多的参考信息,有助于提高最后确定的地图点的位置精度。
[0194]
在一个具体实施方式中,可信条件为:关联图像组的两两图像对之间的第二旋转变化满足旋转回环约束。可以用公式(13)表达旋转回环约束。
[0195]
d(r
ijrjkrki
,i)《δ
[0196]
其中,r
ij
表示图像对为(i,j)的旋转变化,r
jk
表示图像对(j,k)的旋转变化,r
ki
表示图像对(k,i)的旋转变化,i表示场景图像,d(r
ijrjkrki
,i)表示基于场景图像确定的旋转变化之间的距离,具体为r
ijrjk
与r
ki
的偏差是否小于预设偏差阈值δ,当d(r
ijrjkrki
,i)《δ满足时,认为关联图像组的两两图像对之间的第二旋转变化满足旋转回环约束;当当d(r
ijrjkrki
,i)《δ不满足时,认为关联图像组的两两图像对之间的第二旋转变化不满足旋转回环约束。
[0197]
因此,通过设置可信条件为:关联图像组的两两图像对之间的第二旋转变化满足旋转回环约束,以此可以使得新增加的目标图像对的可信程度较高,有助于提高最后确定的地图点的位置精度。
[0198]
请参阅图7,图7是本技术位姿确定方法实施例的流程示意图。在本实施例中,位姿确定方法包括步骤s51和步骤s52。
[0199]
步骤s51:获取对目标环境拍摄得到的若干组目标图像对。
[0200]
在本实施例中,每组目标图像对包含两张场景图像。关于该步骤的详细描述,请参阅上述步骤s11,此处不再赘述。
[0201]
步骤s52:利用位姿变化以及场景图像的参考定位信息,确定各场景图像的目标位姿。
[0202]
在本实施例中,参考定位信息是利用预设定位方式对场景图像定位得到的,目标位姿包括目标旋转和目标平移,目标旋转和目标平移中的至少一者是利用参考定位信息确定的。
[0203]
关于如何确定各场景图像的目标位姿的详细过程,请参阅上述地图构建方法实施例的相关描述,此处不再赘述。
[0204]
因此,通过利用位姿变化以及场景图像的参考定位信息,确定各场景图像的目标位姿,以此实现利用参考定位信息来对目标位姿进行优化,有助于提高得到的目标位姿的准确度。
[0205]
在一个实施方式中,位姿变化包括第一旋转变化和平移变化,上述提及的步骤“利用位姿变化以及场景图像的参考定位信息,确定各场景图像的目标位姿”具体包括步骤s521和/或步骤s522。
[0206]
步骤s521:初始化若干组目标图像对中的场景图像的候选旋转,并利用第一优化因子对候选旋转进行优化,得到各场景图像经优化的候选旋转;将场景图像经优化的候选旋转作为场景图像的目标旋转,或者迭代执行利用第一优化因子对候选旋转进行优化,得到各场景图像经优化的候选旋转的步骤,在满足预设迭代条件后,将场景图像当前经优化的候选旋转作为场景图像的目标旋转;其中,第一优化因子包括第一旋转变化,或者包括第一旋转变化和参考定位信息中场景图像的参考旋转
[0207]
关于步骤s521的详细描述,请参阅上述地图构建方法实施例的相关描述,此处不再赘述。因此,通过利用第一优化因子对场景图像的候选旋转进行优化,实现了利用参考定位信息优化得到场景图像的候选旋转,有助于提高得到的目标旋转的准确度。
[0208]
步骤s522:利用平移变化和各场景图像的目标旋转,得到各场景图像的目标平移;利用第二优化因子,对各场景图像的目标平移进行优化,其中,第二优化因子包括以下至少
一者:各组目标图像对的相对相机中心的位移方向、各地图点在各场景图像中对应的图像点的特征射线方向、参考定位信息中各场景图像的参考平移,其中,地图点是目标环境中与若干组目标图像对中的图像点对应的空间点。
[0209]
关于步骤s522的详细描述,请参阅上述地图构建方法实施例的相关描述,此处不再赘述。因此,通过利用第二优化因子,实现了利用参考定位信息优化得到场景图像的目标平移,有助于提高得到的目标平移的准确度。
[0210]
在一个具体实施方式中,在步骤“利用位姿变化以及场景图像的参考定位信息,确定各场景图像的目标位姿”之后,位姿确定方法还包括:利用目标位姿,得到若干地图点的位置信息;利用第三优化因子,对目标位姿进行优化,以得到经优化的目标位姿,其中,第三优化因子包括以下至少一者:各地图点在各场景图像中的投影点误差、参考定位信息中各场景图像的参考旋转、参考定位信息中各场景图像的参考平移。关于该步骤的详细描述,请参阅上述地图构建方法实施例的相关描述,此处不再赘述。因此,通过利用第三优化方程优化后得到的目标位姿确定为场景图像经优化后的目标位姿,以此实现了利用参考位姿信息对目标位姿的再次优化,有助于提高目标位姿的准确度。
[0211]
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
[0212]
请参阅图8,图8是本技术地图构建装置实施例的框架示意图。地图构建装置80包括获取模块81、确定模块82和地图点模块83,其中,取模块81用于获取对目标环境拍摄得到的若干组目标图像对,其中,每组目标图像对包含两张场景图像;确定模块82用于基于若干组目标图像对,确定各组目标图像对中两张场景图像之间的位姿变化;地图点模块83用于利用位姿变化以及场景图像的参考定位信息,得到目标环境中的若干地图点的位置信息,其中,参考定位信息是利用预设定位方式对场景图像定位得到的,地图点是目标环境中与若干组目标图像对中的图像点对应的空间点。
[0213]
其中,上述的位姿变化包括第一旋转变化,上述的地图点模块83用于利用位姿变化以及场景图像的参考定位信息,得到目标环境中的若干地图点的位置信息,包括:利用位姿变化,确定各场景图像的目标位姿,其中,目标位姿包括目标旋转和目标平移;利用目标位姿,确定目标环境中的若干地图点的位置信息;其中,目标旋转、目标平移和地图点的位置信息中的至少一者还利用参考定位信息确定的。
[0214]
其中,上述的地图点模块83用于利用位姿变化,确定各场景图像的目标位姿,包括:初始化若干组目标图像对中的场景图像的候选旋转;利用第一优化因子对候选旋转进行优化,得到各场景图像经优化的候选旋转,其中,第一优化因子包括第一旋转变化,或者包括第一旋转变化和参考定位信息中场景图像的参考旋转;将场景图像经优化的候选旋转作为场景图像的目标旋转;或者迭代执行利用第一优化因子对候选旋转进行优化,得到各场景图像经优化的候选旋转,在满足预设迭代条件后,将场景图像当前经优化的候选旋转作为场景图像的目标旋转。
[0215]
其中,上述的地图点模块83用于利用第一优化因子对候选旋转进行优化,得到各场景图像经优化的候选旋转,包括:基于第一旋转变化和当前候选旋转,确定各组目标图像对的旋转变化偏移量,其中,旋转变化偏移量表示第一旋转变化与第二旋转变化之间的偏
移量,第二旋转变化是利用目标图像对的当前候选旋转确定的;利用旋转变化偏移量确定旋转修正量,或者利用旋转变化偏移量以及各场景图像的参考旋转偏移量,确定旋转修正量,其中,场景图像的参考旋转偏移量表示场景图像的当前候选旋转与场景图像的参考旋转之间的偏移量;利用场景图像的旋转修正量与当前候选旋转,得到场景图像经优化的候选旋转。
[0216]
其中,上述的地图点模块83用于利用位姿变化,确定各场景图像的目标位姿,包括:初始化场景图像的目标平移;利用第二优化因子,对各场景图像的目标平移进行优化,其中,第二优化因子包括以下至少一者:各组目标图像对的相对相机中心的位移方向、各地图点在各场景图像中对应的图像点的特征射线方向、参考定位信息中各场景图像的参考平移。
[0217]
其中,上述的地图点模块83用于利用第二优化因子,对各场景图像的目标平移进行优化,包括:利用各组目标图像对的位移方向差异、各地图点在各场景图像的射线方向差异、各场景图像的平移差异,建立第二优化方程,求解得到各场景图像经优化的目标平移;其中,目标图像对的位移方向差异为目标图像对的相对相机中心的位移方向与参考位移方向之间的差异,参考位移方向是利用目标图像对的场景图像的当前目标平移得到的;地图点在场景图像的射线方向差异为地图点在场景图像中对应的特征射线方向与参考射线方向之间的差异,参考射线方向是利用场景图像的当前目标平移和地图点的当前位置确定的;场景图像的平移差异为场景图像的当前目标平移与场景图像的参考平移之间的差异。
[0218]
其中,上述的第二优化方程使得:各组目标图像对的位移方向差异、各地图点在各场景图像的射线方向差异、各场景图像的平移差异的加权结果满足预设优化条件。
[0219]
其中,位姿变化还包括平移变化,目标图像对的位移变化为从目标图像对中的第一场景图像平移至目标图像对中的第二场景图像产生的变化;在地图点模块83用于利用第二优化因子,对各场景图像的目标平移进行优化之前,地图点模块83还用于利用目标图像对中的第一场景图像的目标旋转、以及目标图像对的位移变化,得到目标图像对的相对相机中心的位移方向;和/或,利用场景图像的目标旋转、以及地图点在场景图像中对应的图像点的位置信息,得到地图点在场景图像中对应的图像点的特征射线方向。
[0220]
其中,上述的地图点模块83用于利用目标位姿,确定目标环境中的若干地图点的位置信息,包括:利用目标位姿,得到若干地图点的位置信息;利用第三优化因子,对若干地图点的位置信息进行优化,以得到若干个地图点经优化的位置信息,其中,第三优化因子包括以下至少一者:各地图点在各场景图像中的投影点误差、参考定位信息中各场景图像的参考旋转、参考定位信息中各场景图像的参考平移。
[0221]
其中,上述的地图点模块83用于利用第三优化因子,对若干地图点的位置信息进行优化,包括:利用地图点在各场景图像中的投影点误差、各场景图像的目标旋转与参考旋转之间的差异、各场景图像的目标平移与参考平移之间的差异,建立第三优化方程以对地图点的位置信息进行优化。
[0222]
其中,上述的预设定位方式为是卫星惯性导航系统进行定位;和/或,上述的获取模块81用于获取对目标环境拍摄得到的若干组目标图像对,包括:获取对目标环境拍摄得到的多个场景图像;将多个场景图像进行匹配,得到多个匹配图像对;从多个匹配图像对中,选出若干组目标图像对。
[0223]
其中,上述的获取模块81用于从多个匹配图像对中,选出若干组目标图像对,包括:从多个匹配图像对中,查找出匹配特征点对数量满足预设要求的预设数量组目标图像对;将包含同一场景图像的两组目标图像对组成关联图像组,其中,关联图像组包括第三场景图像、第四场景图像和第五场景图像,第三场景图像为两组目标图像对均包含的场景图像,第四场景图像和第五场景图像分别是两组目标图像对各自包含的场景图像;对于各关联图像组,响应于关联图像组的两两图像对之间的第二旋转变化满足可信条件,将关联图像组中的第四场景图像和第五场景图像组成新的目标图像对。
[0224]
其中,上述的可信条件为:关联图像组的两两图像对之间的第二旋转变化满足旋转回环约束;和/或,上述的获取模块81用于从多个匹配图像对中,查找出匹配特征点对数量满足预设要求的预设数量组目标图像对,包括:利用多个匹配图像对,基于匹配特征点对数量构建最小生成树,其中,最小生成树中的每个节点为一场景图像,最小生成树中相连的两个节点组成一组目标图像对。
[0225]
请参阅图9,图9是本技术位姿确定装置实施例的框架示意图。位姿确定装置90包括获取模块91、第一确定模块92和第二确定模块93,其中,获取模块91用于获取对目标环境拍摄得到的若干组目标图像对,其中,每组目标图像对包含两张场景图像;第一确定模块92用于基于若干组目标图像对,确定各组目标图像对中两张场景图像之间的位姿变化;第二确定模块93用于利用位姿变化以及场景图像的参考定位信息,确定各场景图像的目标位姿,其中,参考定位信息是利用预设定位方式对场景图像定位得到的,目标位姿包括目标旋转和目标平移,目标旋转和目标平移中的至少一者是利用参考定位信息确定的。
[0226]
其中,上述的位姿变化包括第一旋转变化和平移变化,上述的第二确定模块93用于利用位姿变化以及场景图像的参考定位信息,确定各场景图像的目标位姿,包括:初始化若干组目标图像对中的场景图像的候选旋转,并利用第一优化因子对候选旋转进行优化,得到各场景图像经优化的候选旋转;将场景图像经优化的候选旋转作为场景图像的目标旋转,或者迭代执行利用第一优化因子对候选旋转进行优化,得到各场景图像经优化的候选旋转的步骤,在满足预设迭代条件后,将场景图像当前经优化的候选旋转作为场景图像的目标旋转;其中,第一优化因子包括第一旋转变化,或者包括第一旋转变化和参考定位信息中场景图像的参考旋转。
[0227]
上述的第二确定模块93用于利用位姿变化以及场景图像的参考定位信息,确定各场景图像的目标位姿,包括:利用平移变化和各场景图像的目标旋转,得到各场景图像的目标平移;利用第二优化因子,对各场景图像的目标平移进行优化,其中,第二优化因子包括以下至少一者:各组目标图像对的相对相机中心的位移方向、各地图点在各场景图像中对应的图像点的特征射线方向、参考定位信息中各场景图像的参考平移,其中,地图点是目标环境中与若干组目标图像对中的图像点对应的空间点。
[0228]
在上述的第二确定模块93用于利用位姿变化以及场景图像的参考定位信息,确定各场景图像的目标位姿之后,第二确定模块93还用于:在利用位姿变化以及场景图像的参考定位信息,确定各场景图像的目标位姿之后,方法还包括:利用目标位姿,得到若干地图点的位置信息;利用第三优化因子,对目标位姿进行优化,以得到经优化的目标位姿,其中,第三优化因子包括以下至少一者:各地图点在各场景图像中的投影点误差、参考定位信息中各场景图像的参考旋转、参考定位信息中各场景图像的参考平移。
[0229]
请参阅图10,图10是本技术电子设备一实施例的框架示意图。电子设备100包括相互耦接的存储器101和处理器102,处理器102用于执行存储器101中存储的程序指令,以实现上述任一地图构建方法实施例的步骤,或实现上述任一位姿确定方法实施例中的步骤。在一个具体的实施场景中,电子设备100可以包括但不限于:微型计算机、服务器,此外,电子设备100还可以包括笔记本电脑、平板电脑等移动设备,在此不做限定。
[0230]
具体而言,处理器102用于控制其自身以及存储器101以实现上述任一地图构建方法实施例的步骤,或实现上述任一位姿确定方法实施例中的步骤。处理器102还可以称为cpu(central processing unit,中央处理单元)。处理器102可能是一种集成电路芯片,具有信号的处理能力。处理器102还可以是通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器102可以由集成电路芯片共同实现。
[0231]
请参阅图11,图11为本技术计算机可读存储介质一实施例的框架示意图。计算机可读存储介质110存储有能够被处理器运行的程序指令111,程序指令111用于实现上述任一地图构建方法实施例的步骤,或实现上述任一位姿确定方法实施例中的步骤。
[0232]
上述方案,通过利用场景图像的参考定位信息来得到目标环境中的若干地图点的位置信息,可以利用参考定位信息来得到地图点的位置信息,实现了利用参考定位信息和目标图像对的位姿变化共同得到地图点的位置信息,有助于提高地图点的位置精度。
[0233]
在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
[0234]
上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。
[0235]
本公开涉及增强现实领域,通过获取现实环境中的目标对象的图像信息,进而借助各类视觉相关算法实现对目标对象的相关特征、状态及属性进行检测或识别处理,从而得到与具体应用匹配的虚拟与现实相结合的ar效果。示例性的,目标对象可涉及与人体相关的脸部、肢体、手势、动作等,或者与物体相关的标识物、标志物,或者与场馆或场所相关的沙盘、展示区域或展示物品等。视觉相关算法可涉及视觉定位、slam、三维重建、图像注册、背景分割、对象的关键点提取及跟踪、对象的旋转量或深度检测等。具体应用不仅可以涉及跟真实场景或物品相关的导览、导航、讲解、重建、虚拟效果叠加展示等交互场景,还可以涉及与人相关的特效处理,比如妆容美化、肢体美化、特效展示、虚拟模型展示等交互场景。
[0236]
可通过卷积神经网络,实现对目标对象的相关特征、状态及属性进行检测或识别处理。上述卷积神经网络是基于深度学习框架进行模型训练而得到的网络模型。
[0237]
在本技术所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的
相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
[0238]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0239]
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施方式方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0240]
若本技术技术方案涉及个人信息,应用本技术技术方案的产品在处理个人信息前,已明确告知个人信息处理规则,并取得个人自主同意。若本技术技术方案涉及敏感个人信息,应用本技术技术方案的产品在处理敏感个人信息前,已取得个人单独同意,并且同时满足“明示同意”的要求。例如,在摄像头等个人信息采集装置处,设置明确显著的标识告知已进入个人信息采集范围,将会对个人信息进行采集,若个人自愿进入采集范围即视为同意对其个人信息进行采集;或者在个人信息处理的装置上,利用明显的标识/信息告知个人信息处理规则的情况下,通过弹窗信息或请个人自行上传其个人信息等方式获得个人授权;其中,个人信息处理规则可包括个人信息处理者、个人信息处理目的、处理方式以及处理的个人信息种类等信息。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献