车辆定位方法、装置、计算机设备和存储介质与流程
未命名
09-20
阅读:88
评论:0

1.本技术涉及自动驾驶技术领域,特别是涉及一种车辆定位方法、装置、计算机设备和存储介质。
背景技术:
2.在自动驾驶领域中,车辆定位直接影响自动驾驶系统的稳定性和安全性。
3.现有的车辆定位方法主要依赖视觉、激光和惯性测量传感器。其中,基于视觉传感器的回环检测算法主要原理是:将当前采集到的图像与数据库中的历史场景图像进行匹配,根据当前采集到的图像与任一历史场景图像之间的相似性,判断车辆是否经过同一个地方,来实现对车辆的定位。
4.传统技术中,比对图像之间相似性的方法包括基于预训练词袋模型的定位方法和将描述子转换为哈希表的位置敏感哈希函数lsh(location sensitive hash)方法。
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.图1为一个实施例中车辆定位方法的应用环境图;
52.图2为一个实施例中构建图像描述子的流程示意图;
53.图3为一个实施例中生成当前编码信息的流程示意图;
54.图4为一个实施例中基于正交基确定当前编码信息的流程示意图;
55.图5为另一个实施例中车辆定位方法的流程示意图;
56.图6为一个实施例中车辆定位装置的结构框图;
57.图7为一个实施例中计算机设备的内部结构图。
具体实施方式
58.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
59.本技术实施例提供的车辆定位方法,该方法可适用于自动驾驶的场景下,具体可以用于车辆定位的场景下。可选的,该方法可以由计算机设备来执行,该计算机设备可以是车载终端。具体的,在一个实施例中,如图1所示,该方法具体包括以下步骤:
60.s101,获取配置于车辆上的视觉传感器采集的当前场景图像。
61.其中,当前场景图像是车辆在当前行驶过程中,所采集到的车辆周围环境的图像,当前场景图像中至少包括一个静态的目标,其中,各目标的位置信息通过车辆当前的定位系统确定,车辆当前的定位系统可能由于车辆在运行过程中的累计误差而存在偏差,因此,需要通过回环检测消除该偏差,实现对车辆的重新定位。可以理解的是,回环检测是指车辆再次经过同一地点时,检测到当前时刻与某一历史时刻之间的场景一致性,根据场景的当前位姿与场景的历史位姿之间的联系,来实现对车辆的重定位。
62.s102,提取当前场景图像的图像描述子。
63.其中,图像描述子是图像的描述子,描述子是用于刻画特征的一个数据结构,一个描述子的维数可以一维或者多维,示例性的,多维度数据可以包括位置、尺度、旋转不变量等。可选的,可以将当前场景图像输入至相应的提取模型,得到对应的图像描述子。
64.s103,基于正交基,对图像描述子进行编码,得到图像描述子的当前编码信息。
65.其中,正交基是一组两两正交的、非零基向量。本实施例中每个基向量的数据维度可以根据图像描述子的特性,以及所要达到的编码效果来确定;示例性的,基于训练集和相应算法,生成图像对应的样本正交基,根据样本正交基的编码效果以及车辆定位信息的准
确性,调整样本正交基,得到与待测图像适配的正交基。
66.可以理解的是,图像描述子与各基向量相乘,即可将图像描述子投影到各基向量所在的维度上,上述投影过程相当于将图像描述子变换为一组各维度之间线性无关(相互独立)的表示,正交基中的各基向量用于提取图像描述子的主要特征分量,保留图像描述子的特性,使得在相同场景、不同角度下所拍摄的各图像的编码信息之间具有相似性,保证了后续匹配过程的准确性。进一步的,正交化的基向量相比于非正交化的基向量更有利于原始数据(本实施例中的图像描述子)的重构,能够保持原始数据空间中的度量结构(如果在向量投影时使用全部的规范正交基向量,则相当于旋转映射,不会改变原始空间中点之间的距离)。
67.s104,将当前编码信息,与各历史场景图像的历史编码信息进行匹配。
68.其中,各历史场景图像是车辆在历史行驶过程中,所采集到的车辆所在周围环境的图像,各历史场景图像中的周围环境包括也至少一个静态的目标,且历史场景图像中各目标的位置是已知的、世界坐标系下的三维位置。
69.其中,将各历史场景图像以上述s103中的编码方式编码后,所得到的历史编码信息与当前编码信息的编码方式相同,故可以将相同格式的当前编码信息与历史编码信息进行比对分析,以实现将当前编码信息,与各历史场景图像的历史编码信息进行匹配的操作。
70.s105,若匹配成功,则基于匹配成功的历史场景图像,确定车辆的定位信息。
71.具体的,匹配结果可以用相似度结果来表示,当相似度达到阈值时,则确定当前编码信息与该历史编码信息匹配成功,反正,则未匹配成功。可以理解的是,若匹配成功,则当前编码信息至少对应一个历史编码信息,若对应多个历史编码信息,则可以从多个历史编码信息中选择一个历史编码信息,作为与当前编码信息匹配成功的历史编码信息。可选的,将匹配成功的历史场景图像和历史场景图像的属性信息均存储于数据库中,历史场景图像的属性信息可以包括历史场景中各目标的位置信息。
72.可以理解的是,匹配成功的历史场景图像中包含的相应目标(部分或全部)与当前场景图像中的相应目标(部分或全部)为相同的目标,即车辆到达同一场景。在定位车辆时,从历史场景图像中获取该相同目标的基准位置(即世界坐标系下的坐标),从当前场景图像中确定该相同目标的待校准位置,根据基准位置、待校准位置以及相应的算法,例如perspective-n-point(pnp)算法,即可确定当前视觉传感器的位姿,进一步的,基于视觉传感器与车辆之间的位置关系(装配关系),即可确定车辆的定位信息。
73.上述车辆定位方法中,采用正交基对图像描述子进行编码,能够将图像描述子变换为一组各维度之间相互独立的表示(即当前编码信息),各维度用于提取图像描述子的主要特征的分量,使得在相同场景、不同角度下所拍摄的各图像的编码信息之间具有相似性,保证了后续匹配过程的准确性;因此,当前编码信息不但保留了图像描述子的特性,相比于图像描述子还具有数据量较小的优势,在后续将当前编码信息,与各历史场景图像的历史编码信息进行匹配时,能够降低对比过程中的计算量,提高匹配速度,进而提高了车辆定位的实效性。
74.在一个实施例中,本实施例提供了一种基于匹配成功的历史场景图像,确定车辆的定位信息的可选方式,即提供了一种对s105进行细化的方式。具体实现过程可以包括:获取匹配成功的历史场景图像中的各历史特征点;确定当前场景图像中与各历史特征点匹配
的各当前特征点的位置信息;基于各当前特征点的位置信息和各历史特征点的位置信息,确定车辆的定位信息。
75.其中,各历史特征点为上述相同目标(例如,目标a)在历史场景图像中对应的特征点,历史特征点的位置信息即为该相同目标(例如,目标a)在世界坐标系下的坐标;当前特征点为上述相同目标(例如,目标a)在当前场景图像中对应的特征点,当前特征点的位置信息即为该相同目标(例如,目标a)在当前场景图像中对应像素点的坐标。
76.具体的,在应用pnp算法求解视觉传感器的位姿时,上述各历史特征点和各当前特征点的个数均为3个。pnp算法用于解决3d到2d点对的物体运动定位问题,即已知物体在世界坐标系下的坐标,以及物体在相机的图像平面的像素坐标,求解相机的位姿(六个自由度,位置坐标和三个方向角),因此可以用于确定车辆的定位信息。
77.本实施例中,通过各历史特征点和各当前特征点,即可确定视觉传感器的位姿,实现对车辆的定位。
78.如图2所示,本实施例提供了一种提取当前场景图像的图像描述子的可选方式,即提供了一种对s102进行细化的方式。具体实现过程可以包括:
79.s201,基于角点检测算法,提取当前场景图像的角点。
80.其中,角点就是极值点,即在某方面属性特别突出的点,是在某些属性上强度最大或者最小的孤立点、线段的终点。对于当前场景图像而言,图像的角点是指图像中目标(物体)轮廓线的连接点。
81.可以理解的是,角点检测算法基本思想是使用一个固定窗口(取某个像素的一个邻域窗口)在图像上进行任意方向上的滑动,比较滑动前与滑动后两种情况窗口中的像素灰度变化程度,如果存在任意方向上的滑动,都有着较大灰度变化,则认为该窗口中存在角点。可选的,本实施例中的角点检测算法可以为features from accelerated segment test(fast)算法、哈里斯角点检测(harris corner detection,harris)方法等。
82.s202,基于描述子提取算法,确定角点对应的角点描述子。
83.其中,角点描述子是用于刻画角点的数据特征。描述子提取算法可以为binary robust independent elementary features(brief)算法、oriented fast and rotated brief(orb)算法和scale-invariant feature transform(sift)算法。
84.s203,基于角点描述子,构建当前场景图像的图像描述子。
85.具体的,将各角点的角点描述子进行组合,即可得到当前场景图像的图像描述子。
86.可以理解的是,角点是图像的关键特征,对图像的理解和分析有很重要的作用,角点在保留图像重要特征的同时,可以有效地减少信息的数据量、提高计算速度,有利于图像的可靠匹配,使得实时处理成为可能;进一步的,对于同一场景,即使拍摄视角发生变化(即历史场景图像的视角与当前场景图像的视角存在差异),角点也具备稳定性,使得在相同场景、不同角度下所拍摄的各图像描述子之间具有相似性,进而使得编码后的在相同场景、不同角度下所拍摄的各图像的编码信息之间具有相似性。
87.本实施例中,提取图像中角点,基于角点的描述子得到图像描述子,能够进一步降低当前场景图像的数据量,优化车辆定位的计算实时性。
88.基于各角点描述子得到图像描述子后,对图像描述子进行编码,即为对各角点描述子的编码;如图3所示,本实施例提供了一种基于正交基,对图像描述子进行编码,得到图
像描述子的当前编码信息的可选方式,即提供了一种对s103进行细化的方式。具体实现过程可以包括:
89.s301,基于各角点的角点描述子,构建当前场景图像的描述子矩阵。
90.其中,描述子矩阵的行数表征当前场景中的角点个数,描述子矩阵的列数表征任一角点描述子的数据维度。示例性的,描述子矩阵的n个行表征n个角点,m个列表征角点描述子的m个维度,m和n均为正整数。
91.s302,基于正交基,对描述子矩阵进行编码,得到图像描述子的当前编码信息。
92.可选的,在基于正交基对描述子矩阵进行编码时,可以将同一角点描述子在各维度上的数据进行编码降维,也可以将各角点描述子在同一维度上的数据进行编码降维。
93.在基于正交基对描述子矩阵进行编码时,为了保留角点描述子的各维度,保证图像各维度数据的完整性;如图4所示,在一个实施例中,正交基包括至少两个基向量;本实施例提供了一种基于正交基,对描述子矩阵进行编码,得到图像描述子的当前编码信息的可选方式,即对s301的细化,具体实现过程可以包括:
94.s401,针对于每个基向量,将描述子矩阵中的每个列向量与该基向量相乘,得到每个列向量的单一编码数值。
95.可选的,在将描述子矩阵中的每个列向量与每个基向量相乘之前,首先要构建各个基向量,即确定基向量的个数、每个基向量中包含的数据维度,以及每个基向量中各数据维度的数值。
96.具体的,在构建每个基向量中包含的数据维度时,可以包括以下过程:确定当前场景图像中的角点个数;基于角点个数,构建正交基;其中,正交基中的每个基向量的维度,与角点个数相同。另外,基向量的个数以及每个基向量中各数据维度的数值可以根据上述s103中基于训练集和相应算法确定,或者是根据经验值确定。
97.在确定了正交基中每个基向量的数据维度之后,假定描述子矩阵包含4个列向量,4个列向量分别表征l1,l2,l3,l4这四个维度的角点描述子的数据;针对于l1维度,描述子矩阵的列向量为{d1,d2,d3,d4}
t
,其中,dn表征当前场景中的第n个角点在l1维度下的数据。进一步的,假定正交基中的各基向量分别为{u1、u2、u3},具体为,u1{x1,x2,x3,x4}、u2{y1,y2,y3,y4}和u3{z1,z2,z3,z4}。则将l1对应的列向量与基向量u1相乘,得到的单一编码数值p1为:p1=d1*x1+d2*x2+d3*x3+d4*x4;对应的,l1对应的列向量与基向量u2相乘,单一编码数值为p2;l1对应的列向量与基向量u3相乘,单一编码数值为p3,可以理解的是,本实施例中任一列向量与任一基向量相乘的计算过程如上述所示。
98.s402,针对于每个列向量,根据该列向量基于各基向量生成的单一编码数值,确定该列向量的叠加编码数值。
99.具体的,针对于任一列向量,例如上述l1维度对应的列向量,叠加编码数值=单一编码数值p1+单一编码数值p2+单一编码数值p3。
100.s403,基于各列向量的叠加编码数值,得到图像描述子的当前编码信息。
101.其中,对各列向量进行编码,即为将任一描述子维度下的各角点的数据进行编码降维;在任一描述子维度下,当前场景图像中n个角点对应的n个数据,被转换为该维度下的叠加编码数值(单一数值),因此,上述描述子矩阵(n*m)经过编码压缩后,所得到的当前编码信息为1*m的向量。
102.本实施例中,基于正交基,将任一维度下当前场景图像中n个角点对应的n个数据,转换为该维度下的叠加编码数值,其中每个叠加编码数值包含了n个角点在各相互独立的基向量下投影的综合结果,各基向量保证了叠加编码数值对n个角点的数据刻画的准确性,在数据压缩的同时,保留了对图像特征描述的精确度。
103.在一个实施例中,本实施例提供了一种基于正交基,对图像描述子进行编码,得到图像描述子的当前编码信息的可选方式,即提供了一种对s104进行细化的方式。具体实现过程可以包括:基于当前编码信息与各历史编码信息之间的距离差值;若存在小于基准距离的距离差值,则确定该距离差值对应的历史场景图像与当前场景图像匹配成功。
104.其中,当前编码信息和历史编码信息的数据维度相同,且均可以对应多个维度,示例性的,即上述描述子矩阵(n*m)经过编码压缩后,得到的当前编码信息为1*m的向量,则对应的,历史编码信息也为1*m的向量。
105.具体的,将当前场景图像的1*m向量与各历史场景图像的1*m向量分别进行比对,计算各向量之间的差值,即可得到各距离差值。
106.本实施例中,通过计算各向量之间的差值,即可确定与当前场景图像匹配成功的历史场景图像,简化了计算过程,提高了计算实时性。
107.示例性的,在上述实施例的基础上,本实施例提供了一种车辆定位方法的可选实例。如图5所示,具体实现过程包括:
108.s501,获取配置于车辆上的视觉传感器采集的当前场景图像。
109.s502,基于角点检测算法,提取当前场景图像的角点。
110.s503,基于描述子提取算法,确定角点对应的角点描述子。
111.s504,基于角点描述子,构建当前场景图像的图像描述子。
112.s505,确定当前场景图像中的角点个数。
113.s506,基于角点个数,构建正交基。
114.其中,正交基中的每个基向量的维度,与角点个数相同
115.s507,基于各角点的角点描述子,构建当前场景图像的描述子矩阵。
116.其中,描述子矩阵的行数表征角点个数,描述子矩阵的列数表征任一角点描述子的数据维度。
117.s508,针对于每个基向量,将描述子矩阵中的每个列向量与该基向量相乘,得到每个列向量的单一编码数值。
118.s509,针对于每个列向量,根据该列向量基于各基向量生成的单一编码数值,确定该列向量的叠加编码数值。
119.s510,基于各列向量的叠加编码数值,得到图像描述子的当前编码信息。
120.s511,将当前编码信息,与各历史场景图像的历史编码信息进行匹配。
121.s512,若匹配成功,则基于匹配成功的历史场景图像,确定车辆的定位信息。
122.上述s501-s512的具体过程可以参见上述方法实施例的描述,其实现原理和技术效果类似,在此不再赘述。
123.应该理解的是,虽然如上的各实施例所涉及的流程图中的各步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如
上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
124.基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的车辆定位方法的车辆定位装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个车辆定位装置实施例中的具体限定可以参见上文中对于车辆定位方法的限定,在此不再赘述。
125.在一个实施例中,如图6所示,提供了一种车辆定位装置,包括:获取模块11、提取模块12、编码模块13、匹配模块14和定位模块15,其中:
126.获取模块11,用于获取配置于车辆上的视觉传感器采集的当前场景图像;
127.提取模块12,用于提取当前场景图像的图像描述子;
128.编码模块13,用于基于正交基,对图像描述子进行编码,得到图像描述子的当前编码信息;
129.匹配模块14,英语将当前编码信息,与各历史场景图像的历史编码信息进行匹配;
130.定位模块15,用于若匹配成功,则基于匹配成功的历史场景图像,确定车辆的定位信息。
131.在一个实施例中,提取模块12,包括:
132.角点检测子模块,用于提取当前场景图像的角点;
133.描述子提取子模块,用于基于描述子提取算法,确定角点对应的角点描述子;
134.构建子模块,用于基于角点描述子,构建当前场景图像的图像描述子。
135.在一个实施例中,该车辆定位装置还包括正交基构建模块,用于确定当前场景图像中的角点个数;
136.基于角点个数,构建正交基;其中,正交基中的每个基向量的维度,与角点个数相同。
137.在一个实施例中,编码模块13,包括:
138.矩阵生成子模块,用于基于各角点的角点描述子,构建当前场景图像的描述子矩阵;其中,描述子矩阵的行数表征角点个数,描述子矩阵的列数表征任一角点描述子的数据维度;
139.矩阵编码子模块,用于基于正交基,对描述子矩阵进行编码,得到图像描述子的当前编码信息。
140.在一个实施例中,矩阵编码子模块还用于:针对于每个基向量,将描述子矩阵中的每个列向量与该基向量相乘,得到每个列向量的单一编码数值;
141.针对于每个列向量,根据该列向量基于各基向量生成的单一编码数值,确定该列向量的叠加编码数值;
142.基于各列向量的叠加编码数值,得到图像描述子的当前编码信息。
143.在一个实施例中,匹配模块14,用于基于当前编码信息与各历史编码信息之间的距离差值;
144.若存在小于基准距离的距离差值,则确定该距离差值对应的历史场景图像与当前
场景图像匹配成功。
145.在一个实施例中,定位模块15,用于获取匹配成功的历史场景图像中的各历史特征点;
146.确定当前场景图像中与各历史特征点匹配的各当前特征点的位置信息;
147.基于各当前特征点的位置信息和各历史特征点的位置信息,确定车辆的定位信息。
148.上述车辆定位装置中的各模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各模块对应的操作。
149.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、移动蜂窝网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种车辆定位方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
150.本领域技术人员可以理解,图7中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
151.在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
152.获取配置于车辆上的视觉传感器采集的当前场景图像;
153.提取当前场景图像的图像描述子;
154.基于正交基,对图像描述子进行编码,得到图像描述子的当前编码信息;
155.将当前编码信息,与各历史场景图像的历史编码信息进行匹配;
156.若匹配成功,则基于匹配成功的历史场景图像,确定车辆的定位信息。
157.在一个实施例中,处理器执行计算机程序提取当前场景图像的图像描述子的逻辑时,具体实现以下步骤:基于角点检测算法,提取当前场景图像的角点;基于描述子提取算法,确定角点对应的角点描述子;基于角点描述子,构建当前场景图像的图像描述子。
158.在一个实施例中,处理器执行计算机程序时还实现以下步骤:确定当前场景图像中的角点个数;基于角点个数,构建正交基;其中,正交基中的每个基向量的维度,与角点个数相同。
159.在一个实施例中,处理器执行计算机程序基于正交基,对图像描述子进行编码,得到图像描述子的当前编码信息的逻辑时,具体实现以下步骤:基于各角点的角点描述子,构建当前场景图像的描述子矩阵;其中,描述子矩阵的行数表征角点个数,描述子矩阵的列数表征任一角点描述子的数据维度;基于正交基,对描述子矩阵进行编码,得到图像描述子的
当前编码信息。
160.在一个实施例中,正交基包括至少两个基向量;处理器执行计算机程序基于正交基,对描述子矩阵进行编码,得到图像描述子的当前编码信息的逻辑时,具体实现以下步骤:针对于每个基向量,将描述子矩阵中的每个列向量与该基向量相乘,得到每个列向量的单一编码数值;针对于每个列向量,根据该列向量基于各基向量生成的单一编码数值,确定该列向量的叠加编码数值;基于各列向量的叠加编码数值,得到图像描述子的当前编码信息。
161.在一个实施例中,处理器执行计算机程序将当前编码信息,与各历史场景图像的历史编码信息进行匹配的逻辑时,具体实现以下步骤:基于当前编码信息与各历史编码信息之间的距离差值;若存在小于基准距离的距离差值,则确定该距离差值对应的历史场景图像与当前场景图像匹配成功。
162.在一个实施例中,处理器执行计算机程序基于匹配成功的历史场景图像,确定车辆的定位信息的逻辑时,具体实现以下步骤:获取匹配成功的历史场景图像中的各历史特征点;确定当前场景图像中与各历史特征点匹配的各当前特征点的位置信息;基于各当前特征点的位置信息和各历史特征点的位置信息,确定车辆的定位信息。
163.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
164.获取配置于车辆上的视觉传感器采集的当前场景图像;
165.提取当前场景图像的图像描述子;
166.基于正交基,对图像描述子进行编码,得到图像描述子的当前编码信息;
167.将当前编码信息,与各历史场景图像的历史编码信息进行匹配;
168.若匹配成功,则基于匹配成功的历史场景图像,确定车辆的定位信息。
169.在一个实施例中,计算机程序提取当前场景图像的图像描述子的逻辑被处理器执行时,具体实现以下步骤:基于角点检测算法,提取当前场景图像的角点;基于描述子提取算法,确定角点对应的角点描述子;基于角点描述子,构建当前场景图像的图像描述子。
170.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:确定当前场景图像中的角点个数;基于角点个数,构建正交基;其中,正交基中的每个基向量的维度,与角点个数相同。
171.在一个实施例中,计算机程序基于正交基,对图像描述子进行编码,得到图像描述子的当前编码信息的逻辑被处理器执行时,具体实现以下步骤:基于各角点的角点描述子,构建当前场景图像的描述子矩阵;其中,描述子矩阵的行数表征角点个数,描述子矩阵的列数表征任一角点描述子的数据维度;基于正交基,对描述子矩阵进行编码,得到图像描述子的当前编码信息。
172.在一个实施例中,正交基包括至少两个基向量;计算机程序基于正交基,对描述子矩阵进行编码,得到图像描述子的当前编码信息的逻辑被处理器执行时,具体实现以下步骤:针对于每个基向量,将描述子矩阵中的每个列向量与该基向量相乘,得到每个列向量的单一编码数值;针对于每个列向量,根据该列向量基于各基向量生成的单一编码数值,确定该列向量的叠加编码数值;基于各列向量的叠加编码数值,得到图像描述子的当前编码信息。
173.在一个实施例中,计算机程序将当前编码信息,与各历史场景图像的历史编码信息进行匹配的逻辑被处理器执行时,具体实现以下步骤:基于当前编码信息与各历史编码信息之间的距离差值;若存在小于基准距离的距离差值,则确定该距离差值对应的历史场景图像与当前场景图像匹配成功。
174.在一个实施例中,计算机程序基于匹配成功的历史场景图像,确定车辆的定位信息的逻辑被处理器执行时,具体实现以下步骤:获取匹配成功的历史场景图像中的各历史特征点;确定当前场景图像中与各历史特征点匹配的各当前特征点的位置信息;基于各当前特征点的位置信息和各历史特征点的位置信息,确定车辆的定位信息。
175.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
176.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
177.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
技术特征:
1.一种车辆定位方法,其特征在于,所述方法包括:获取配置于车辆上的视觉传感器采集的当前场景图像;提取所述当前场景图像的图像描述子;基于正交基,对所述图像描述子进行编码,得到所述图像描述子的当前编码信息;将所述当前编码信息,与各历史场景图像的历史编码信息进行匹配;若匹配成功,则基于匹配成功的历史场景图像,确定所述车辆的定位信息。2.根据权利要求1所述的方法,其特征在于,所述提取所述当前场景图像的图像描述子,包括:基于角点检测算法,提取所述当前场景图像的角点;基于描述子提取算法,确定所述角点对应的角点描述子;基于所述角点描述子,构建所述当前场景图像的图像描述子。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:确定所述当前场景图像中的角点个数;基于所述角点个数,构建所述正交基;其中,所述正交基中的每个基向量的维度,与所述角点个数相同。4.根据权利要求3所述的方法,其特征在于,所述基于正交基,对所述图像描述子进行编码,得到所述图像描述子的当前编码信息,包括:基于各角点的角点描述子,构建所述当前场景图像的描述子矩阵;其中,所述描述子矩阵的行数表征所述角点个数,所述描述子矩阵的列数表征任一角点描述子的数据维度;基于正交基,对所述描述子矩阵进行编码,得到所述图像描述子的当前编码信息。5.根据权利要求4所述的方法,其特征在于,所述正交基包括至少两个基向量;所述基于正交基,对所述描述子矩阵进行编码,得到所述图像描述子的当前编码信息,包括:针对于每个基向量,将所述描述子矩阵中的每个列向量与该基向量相乘,得到每个列向量的单一编码数值;针对于每个列向量,根据该列向量基于各基向量生成的单一编码数值,确定该列向量的叠加编码数值;基于各列向量的叠加编码数值,得到所述图像描述子的当前编码信息。6.根据权利要求1所述的方法,其特征在于,所述将所述当前编码信息,与各历史场景图像的历史编码信息进行匹配,包括:确定所述当前编码信息与各历史编码信息之间的距离差值;若存在小于基准距离的距离差值,则确定该距离差值对应的历史场景图像与所述当前场景图像匹配成功。7.根据权利要求1所述的方法,其特征在于,所述基于匹配成功的历史场景图像,确定所述车辆的定位信息,包括:获取匹配成功的历史场景图像中的各历史特征点;确定所述当前场景图像中与各历史特征点匹配的各当前特征点的位置信息;各当前特征点的位置信息和各历史特征点的位置基于各当前特征点的位置信息和各历史特征点的位置信息,确定所述车辆的定位信息。8.一种车辆定位装置,其特征在于,所述装置包括:
获取模块,用于获取配置于车辆上的视觉传感器采集的当前场景图像;提取模块,用于提取所述当前场景图像的图像描述子;编码模块,用于基于正交基,对所述图像描述子进行编码,得到所述图像描述子的当前编码信息;匹配模块,英语将所述当前编码信息,与各历史场景图像的历史编码信息进行匹配;定位模块,用于若匹配成功,则基于匹配成功的历史场景图像,确定所述车辆的定位信息。9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
技术总结
本申请涉及自动驾驶技术领域,特别是涉及一种车辆定位方法、装置、计算机设备和存储介质。该方法包括:获取配置于车辆上的视觉传感器采集的当前场景图像;提取当前场景图像的图像描述子;基于正交基,对图像描述子进行编码,得到图像描述子的当前编码信息;将当前编码信息,与各历史场景图像的历史编码信息进行匹配;若匹配成功,则基于匹配成功的历史场景图像,确定车辆的定位信息。本申请能够提高车辆定位的实时性。定位的实时性。定位的实时性。
技术研发人员:张振林 冯悠扬 唐培培
受保护的技术使用者:中汽创智科技有限公司
技术研发日:2023.06.29
技术公布日:2023/9/19
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:用于压缩气体的装置的制作方法 下一篇:一种温室大棚喷灌装置的制作方法