本申请实施例涉及数据处理技术领域,特别涉及一种地图构建方法、装置及系统、存储介质。
背景技术:
随着智能驾驶技术的不断发展,智能驾驶车辆的应用也越来越广泛。其中,停车场环境是智能驾驶车辆很重要的一个应用环境,具有高准确度的停车场定位图层(localizationmaplayer,lml)能够为智能驾驶车辆的安全行驶提供保障。该停车场定位图层中包括停车场中各个特征点(例如:行驶路线的宽度、行驶路线的长度或路沿的高度等几何特征,以及,摩天大厦或雷峰塔等地标特征)的信息。该停车场定位图层可以通过该各个特征点对停车场的当前环境进行描述,为确定车辆在该停车场中的定位提供先验信息(如该智能车辆在该停车场环境中的位置信息和姿态信息等),以便于根据该定位进行自动泊车、自动寻找车位和智能召唤车辆等。
目前,在获取停车场定位图层时,可以通过图像采集组件获取携带有该停车场环境的图像信息的多帧图像,并根据该多帧图像确定停车场环境中的特征点,然后根据全球定位系统(globalpositioningsystem,gps)提供的每个特征点在世界坐标系中的绝对坐标,确定不同特征点之间的位移关系,然后根据该位移关系建立包括多个特征点的停车场定位图层。
由于该停车场定位图层的获取过程需要依赖gps提供的位置信息,但停车场环境中的gps信号可能会被影响,导致根据该gps信号确定的位置信息可靠性较低,例如,可能会收到错误的位置信息和/或收不到位置信息,因此,按照该方式获取的停车场定位图层的准确度较低。
技术实现要素:
本申请实施例提供了一种地图构建方法、装置及系统、存储介质,可以解决相关技术中gps信号可能会被影响,导致根据该gps信号确定的位置信息可靠性较低,进而导致获取的停车场定位图层的准确度较低的问题。技术方案包括:
根据本申请的第一方面,提供了一种地图构建方法,该方法包括:在用于构建地图的多个图层中,对每两个图层中的特征点进行特征点匹配,得到多个特征点对,每个特征点对包括分别来自两个图层且互相匹配的两个特征点,每个图层包括多帧图像中的特征点,每帧图像携带有目标环境的图像信息;根据每个特征点对中每个特征点在对应图层中的图层空间坐标,获取两个图层的目标位移关系,图层空间坐标根据特征点在目标图像中的图像坐标,及每两帧目标图像采集地点的相对位移得到,相对位移根据图像采集组件在图像采集地点的运动参数得到,运动参数用于指示图像采集组件的运动状态,目标图像为特征点所在的图像;根据每两个图层的目标位移关系,对每两个图层进行图层融合,得到目标环境的地图。
通过对每两个图层中的特征点进行特征点匹配,根据每个特征点对中每个特征点在对应图层中的图层空间坐标,获取两个图层的目标位移关系,并根据每两个图层的目标位移关系,对该每两个图层进行图层融合,由于每个特征点的图层空间坐标根据对应的特征点在目标图像中的图像坐标,及每两帧目标图像采集地点的相对位移得到,且该相对位移根据图像采集组件在图像采集地点的运动参数得到,相较于相关技术,该特征点的图层空间坐标无需依赖gps提供图像中特征点的位置信息,能够避免gps信号被影响导致根据该gps信号确定的位置信息可靠性较低的问题,有效地提高了通过图层融合得到的地图的准确度。
其中,两个图层可以包括第一图层和第二图层,根据每个特征点对中每个特征点在对应图层中的图层空间坐标,获取两个图层的目标位移关系的实现过程,包括:根据第一图层中属于多个特征点对的所有特征点的图层空间坐标,确定至少一个第一投影平面,根据第二图层中属于多个特征点对的所有特征点的图层空间坐标,确定至少一个第二投影平面,至少一个第一投影平面与至少一个第二投影平面一一对应,且用于确定每个第一投影平面的多个特征点与用于确定对应第二投影平面的多个特征点为一一匹配的特征点;根据具有对应关系的投影平面中特征点的图层空间坐标,构建第一图形与第二图形的投影误差函数,投影误差函数用于表征第一图形与第二图形的投影误差跟随两个图层的位移关系的变化关系,第一图形为以第一图层中属于多个特征点对的所有特征点为顶点的图形,第二图形为以第二图层中属于多个特征点对的所有特征点为顶点的图形;将使投影误差函数取得最小值的位移关系确定为目标位移关系。
通过确定至少一个第一投影平面和至少一个第二投影平面,并根据具有对应关系的投影平面构建误差函数获取该目标位移关系,能够将3d空间内的计算问题转化为平面内的计算问题,能够降低计算的复杂度,并提高计算精度和计算的稳定性。
可选地,根据具有对应关系的投影平面中特征点的图层空间坐标,构建第一图形与第二图形的投影误差函数的实现过程,可以包括:对于每对具有对应关系的第一投影平面和第二投影平面,根据第一投影平面中多个第一特征点的图层空间坐标,及第二投影平面中多个第二特征点的图层空间坐标,构建第一多边形与第二多边形的子投影误差函数,子投影误差函数用于表征第一多边形与第二多边形的投影误差跟随位移关系的变化关系,第一多边形为连接多个第一特征点得到的多边形中面积最大的多边形,第二多边形为连接多个第二特征点得到的多边形中面积最大的多边形;将根据至少一对具有对应关系的第一投影平面与第二投影平面构建的子投影误差函数的和确定为投影误差函数。
可选地,在根据第一投影平面中多个第一特征点的图层空间坐标,及第二投影平面中多个第二特征点的图层空间坐标,构建第一多边形与第二多边形的子投影误差函数之前,该方法还可以包括:根据多个第一特征点的图层空间坐标,确定第一多边形的质心坐标;根据多个第二特征点的图层空间坐标,确定第二多边形的质心坐标。
相应的,根据第一投影平面中多个第一特征点的图层空间坐标,及第二投影平面中多个第二特征点的图层空间坐标,构建第一多边形与第二多边形的子投影误差函数的实现过程,可以包括:根据多个第一特征点的图层空间坐标、多个第二特征点的图层空间坐标、第一多边形的质心坐标和第二多边形的质心坐标,构建子投影误差函数。
通过获取第一多边形的质心坐标和第二多边形的质心坐标,并根据该质心坐标构建子投影误差函数,能够提高根据该子投影函数确定的位移关系的准确性。
在一种可实现方式中,位移关系可以包括:旋转关系和平移关系,第一特征点的图层空间坐标sr、第二特征点的图层空间坐标sl、第一多边形的质心坐标xr、第二多边形的质心坐标xl、子投影误差函数e、旋转关系r和平移关系t满足:
其中,n为第一投影平面中第一特征点的总数,||.||为范数运算。
作为一种可实现方式,根据第一图层中属于多个特征点对的所有特征点的图层空间坐标,确定至少一个第一投影平面的实现过程,可以包括:在第一图层中属于多个特征点对的所有特征点中,根据任意三个未被标记的特征点的图层空间坐标确定初始平面,并将三个未被标记的特征点添加至初始平面对应的第一目标点集合,第一图层中属于多个特征点对的所有特征点的初始标记状态均为未被标记;依次对每个其他特征点执行筛选流程,直至第一目标点集合中的特征点总数达到预设数量,得到一个第一目标点集合,并对第一目标点集合中的所有特征点进行标记,其他特征点为所有未被标记的特征点中除三个未被标记的特征点外的特征点;重复确定初始平面和执行筛选流程的过程,直至第一图层中属于多个特征点对的所有特征点均被标记,得到至少一个第一目标点集合;根据每个第一目标点集合中的所有特征点确定一个第一投影平面,得到至少一个第一投影平面。
其中,对于每个其他特征点,筛选流程包括:当其他特征点到初始平面的距离小于预设距离阈值时,确定以其他特征点和第一目标点集合中所有特征点为顶点的多个多边形;当多个多边形中存在凸多边形时,将其他特征点添加到第一目标点集合中,得到更新后的第一目标点集合。
作为一种可实现方式,根据第二图层中属于多个特征点对的所有特征点的图层空间坐标,确定至少一个第二投影平面的实现过程,可以包括:在第二图层的所有特征点中,分别根据每个第一投影平面确定一个第二目标点集合,每个第二目标点集合中包括与第一投影平面中的多个特征点一一匹配的多个特征点;将每个第二目标点集合所包括的多个特征点所在的平面确定为与对应第一投影平面所对应的第二投影平面,得到至少一个第二投影平面。
两个图层可以包括第一图层和第二图层。在一种可实现方式中,对两个图层中的特征点进行特征点匹配的实现过程,包括:分别根据第一图像中任一第一待匹配特征点的像素值与第二图像中每个第二待匹配特征点的像素值,获取与第二待匹配特征点对应的指定参数,指定参数用于指示第一待匹配特征点与第二待匹配特征点所表征的图像信息的差异,第一图像为第一图层对应的多帧图像中第一待匹配特征点所在的任一图像,第二图像为第二图层对应的多帧图像中第二待匹配特征点所在的任一图像;将最小指定参数对应的第二待匹配特征点确定为与第一待匹配特征点匹配的特征点。
通过在第二图层的所有图像中遍历特征点,并根据第一图层中特征点和第二图层中每个特征点计算指定参数,并将最小指定参数对应的特征点确定为与该第一图层中特征点匹配的特征点,能够提高匹配的稳定性和准确性
在另一种可实现方式中,对两个图层中的特征点进行特征点匹配的实现过程,包括:根据第一图像中任一第一待匹配特征点的像素值与第二图像中任一第二待匹配特征点的像素值,获取与第二待匹配特征点对应的指定参数,指定参数用于指示第一待匹配特征点与第二待匹配特征点所表征的图像信息的差异,第一图像为第一图层对应的多帧图像中第一待匹配特征点所在的任一图像,第二图像为第二图层对应的多帧图像中第二待匹配特征点所在的任一图像;当指定参数小于第一预设阈值时,确定第一待匹配特征点与第二待匹配特征点匹配。
为了提高计算该指定参数的准确率,获取与第二待匹配特征点对应的指定参数的实现过程,可以包括:根据第一图像块中每个像素点的像素值和第二图像块中每个像素点的像素值,获取指定参数,第一图像块包括第一待匹配特征点对应的像素点,第二图像块包括第二待匹配特征点对应的像素点,第二图像块的大小与第一图像块的大小相同。
其中,第一图像和第二图像均可以由包括多级子图像的图像金字塔表征,且第一图像的多级子图像与第二图像的多级子图像一一对应,该获取与第二待匹配特征点对应的指定参数的实现过程,可以包括:根据第一图像的每级子图像和第二图像对应级的子图像,分别获取对应级的指定参数分量;将多级子图像对应的指定参数分量的和确定为指定参数。
通过采用图像金字塔表征图像,能够利用图像金字塔的特性,在多个分辨率条件下分别计算两个待匹配特征点的像素灰度差和描述子的相似度,可以进一步提高该指定参数的准确度和匹配的精度。并且,当根据基于该图像金字塔计算得到的指定参数进行特征点匹配时,能够保证匹配的精度和稳定性。
可选地,指定参数可以包括:像素灰度差和/或描述子的相似度。
其中,根据每两个图层的目标位移关系,对每两个图层进行图层融合,得到目标环境的地图的实现过程,可以包括:对于两个图层中至少一个图层,对图层中所有特征点的图层空间坐标进行坐标转换,使得包括多个图层中特征点的地图中所有特征点的图层空间坐标根据同一参考坐标系得到。
可选地,目标环境可以为停车场环境。
根据本申请的第二方面,提供了一种地图构建方法,该方法包括:获取携带有目标环境图像信息的多帧图像,多帧图像由图像采集组件采集得到;获取图像采集组件在各帧图像的采集地点的运动参数,运动参数用于指示图像采集组件的运动状态;根据图像采集组件的运动参数,获取每两帧图像的采集地点的相对位移;根据多帧图像和相对位移,获取包括多帧图像中特征点的图层,图层用于构建地图;向服务器发送图层和相对位移。
可选地,多帧图像均为携带有目标环境的图像信息的关键帧图像,获取携带有目标环境图像信息的多帧图像,包括:获取携带有目标环境的图像信息的多帧待筛选图像;获取每帧待筛选图像的目标参数,该目标参数用于指示待筛选图像相对于指定图像的变化量;当待筛选图像的目标参数大于第二预设阈值时,确定待筛选图像为关键帧图像。
通过对图像采集组件采集的原始图像进行筛选,可以有效减小获取的图像中的冗余信息,以减少后续确定图层间的目标位移关系和图层融合等过程中的计算量。
其中,目标参数可以包括以下一个或多个:待筛选图像的采集时间与指定图像的采集时间的时间间隔;采集待筛选图像时图像采集组件的取景角度相对于采集指定图像时图像采集组件的取景角度的角度变化量;待筛选图像的采集地点与指定图像的采集地点的相对位移;待筛选图像所包括的特征点的第一总数;以及,第二总数与第一总数的第一比值,第二总数为待筛选图像所包括的特征点中相对于指定图像所包括的特征点中的不同特征点的总数。
可选地,多帧图像在时序上相邻,每帧待筛选图像对应的指定图像为多帧图像中,时序在待筛选图像之前,且时序距离待筛选图像最近的一帧关键帧图像。
进一步地,当待筛选图像的目标参数大于第二预设阈值时,确定待筛选图像为关键帧图像的实现过程,可以包括:当待筛选图像的目标参数大于第二预设阈值时,确定第二总数与第三总数的第二比值,第三总数为待筛选图像所包括的特征点的总数,第二总数为待筛选图像所包括的特征点中相对于指定图像所包括的特征点中的不同特征点的总数;当第二比值大于预设比值时,将待筛选图像确定为关键帧图像。
在确定待筛选图像的目标参数大于第二预设阈值后,通过进一步地对该待筛选图像进行筛选,可以进一步减少冗余信息。
根据本申请的第三方面,提供了一种地图构建装置,该装置包括:匹配模块,用于在用于构建地图的多个图层中,对每两个图层中的特征点进行特征点匹配,得到多个特征点对,每个特征点对包括分别来自两个图层且互相匹配的两个特征点,每个图层包括多帧图像中的特征点,每帧图像携带有目标环境的图像信息;获取模块,用于根据每个特征点对中每个特征点在对应图层中的图层空间坐标,获取两个图层的目标位移关系,图层空间坐标根据特征点在目标图像中的图像坐标,及每两帧目标图像采集地点的相对位移得到,相对位移根据图像采集组件在图像采集地点的运动参数得到,运动参数用于指示图像采集组件的运动状态,目标图像为特征点所在的图像;融合模块,用于根据每两个图层的目标位移关系,对每两个图层进行图层融合,得到目标环境的地图。
可选地,两个图层包括第一图层和第二图层,该获取模块,包括:第一确定子模块,用于根据第一图层中属于多个特征点对的所有特征点的图层空间坐标,确定至少一个第一投影平面;第一确定子模块,用于根据第二图层中属于多个特征点对的所有特征点的图层空间坐标,确定至少一个第二投影平面,至少一个第一投影平面与至少一个第二投影平面一一对应,且用于确定每个第一投影平面的多个特征点与用于确定对应第二投影平面的多个特征点为一一匹配的特征点;构建子模块,用于根据具有对应关系的投影平面中特征点的图层空间坐标,构建第一图形与第二图形的投影误差函数,投影误差函数用于表征第一图形与第二图形的投影误差跟随两个图层的位移关系的变化关系,第一图形为以第一图层中属于多个特征点对的所有特征点为顶点的图形,第二图形为以第二图层中属于多个特征点对的所有特征点为顶点的图形;第二确定子模块,用于将使投影误差函数取得最小值的位移关系确定为目标位移关系。
可选地,该第一确定子模块,用于:对于每对具有对应关系的第一投影平面和第二投影平面,根据第一投影平面中多个第一特征点的图层空间坐标,及第二投影平面中多个第二特征点的图层空间坐标,构建第一多边形与第二多边形的子投影误差函数,子投影误差函数用于表征第一多边形与第二多边形的投影误差跟随位移关系的变化关系,第一多边形为连接多个第一特征点得到的多边形中面积最大的多边形,第二多边形为连接多个第二特征点得到的多边形中面积最大的多边形;将根据至少一对具有对应关系的第一投影平面与第二投影平面构建的子投影误差函数的和确定为投影误差函数。
可选地,获取模块还包括:第三确定子模块,用于根据多个第一特征点的图层空间坐标,确定第一多边形的质心坐标;该第三确定子模块,还用于根据多个第二特征点的图层空间坐标,确定第二多边形的质心坐标。
第一确定子模块,用于:根据多个第一特征点的图层空间坐标、多个第二特征点的图层空间坐标、第一多边形的质心坐标和第二多边形的质心坐标,构建子投影误差函数。
可选地,位移关系包括:旋转关系和平移关系,第一特征点的图层空间坐标sr、第二特征点的图层空间坐标sl、第一多边形的质心坐标xr、第二多边形的质心坐标xl、子投影误差函数e、旋转关系r和平移关系t满足:
其中,n为第一投影平面中第一特征点的总数,||.||为范数运算。
可选地,该第一确定子模块,用于:在第一图层中属于多个特征点对的所有特征点中,根据任意三个未被标记的特征点的图层空间坐标确定初始平面,并将三个未被标记的特征点添加至初始平面对应的第一目标点集合,第一图层中属于多个特征点对的所有特征点的初始标记状态均为未被标记;依次对每个其他特征点执行筛选流程,直至第一目标点集合中的特征点总数达到预设数量,得到一个第一目标点集合,并对第一目标点集合中的所有特征点进行标记,其他特征点为所有未被标记的特征点中除三个未被标记的特征点外的特征点;重复确定初始平面和执行筛选流程的过程,直至第一图层中属于多个特征点对的所有特征点均被标记,得到至少一个第一目标点集合;根据每个第一目标点集合中的所有特征点确定一个第一投影平面,得到至少一个第一投影平面。
其中,对于每个其他特征点,筛选流程包括:当其他特征点到初始平面的距离小于预设距离阈值时,确定以其他特征点和第一目标点集合中所有特征点为顶点的多个多边形;当多个多边形中存在凸多边形时,将其他特征点添加到第一目标点集合中,得到更新后的第一目标点集合。
可选地,该第一确定子模块,用于:在第二图层的所有特征点中,分别根据每个第一投影平面确定一个第二目标点集合,每个第二目标点集合中包括与第一投影平面中的多个特征点一一匹配的多个特征点;将每个第二目标点集合所包括的多个特征点所在的平面确定为与对应第一投影平面所对应的第二投影平面,得到至少一个第二投影平面。
可选地,该匹配模块,包括:获取子模块,用于分别根据第一图像中任一第一待匹配特征点的像素值与第二图像中每个第二待匹配特征点的像素值,获取与第二待匹配特征点对应的指定参数,指定参数用于指示第一待匹配特征点与第二待匹配特征点所表征的图像信息的差异,第一图像为第一图层对应的多帧图像中第一待匹配特征点所在的任一图像,第二图像为第二图层对应的多帧图像中第二待匹配特征点所在的任一图像;第四确定子模块,用于将最小指定参数对应的第二待匹配特征点确定为与第一待匹配特征点匹配的特征点。
可选地,该匹配模块,包括:获取子模块,用于根据第一图像中任一第一待匹配特征点的像素值与第二图像中任一第二待匹配特征点的像素值,获取与第二待匹配特征点对应的指定参数,指定参数用于指示第一待匹配特征点与第二待匹配特征点所表征的图像信息的差异,第一图像为第一图层对应的多帧图像中第一待匹配特征点所在的任一图像,第二图像为第二图层对应的多帧图像中第二待匹配特征点所在的任一图像;第四确定子模块,用于当指定参数小于第一预设阈值时,确定第一待匹配特征点与第二待匹配特征点匹配。
可选地,该获取子模块,用于:根据第一图像块中每个像素点的像素值和第二图像块中每个像素点的像素值,获取指定参数,第一图像块包括第一待匹配特征点对应的像素点,第二图像块包括第二待匹配特征点对应的像素点,第二图像块的大小与第一图像块的大小相同。
可选地,第一图像和第二图像均由包括多级子图像的图像金字塔表征,且第一图像的多级子图像与第二图像的多级子图像一一对应,该获取子模块,用于:根据第一图像的每级子图像和第二图像对应级的子图像,分别获取对应级的指定参数分量;将多级子图像对应的指定参数分量的和确定为指定参数。
可选地,指定参数包括:像素灰度差和/或描述子的相似度。
可选地,该融合模块,用于:对于两个图层中至少一个图层,对图层中所有特征点的图层空间坐标进行坐标转换,使得包括多个图层中特征点的地图中所有特征点的图层空间坐标根据同一参考坐标系得到。
可选地,该目标环境为停车场环境。
根据本申请的第四方面,提供了一种地图构建装置,该装置包括:第一获取模块,用于获取携带有目标环境图像信息的多帧图像,多帧图像由图像采集组件采集得到;第二获取模块,用于获取图像采集组件在各帧图像的采集地点的运动参数,运动参数用于指示图像采集组件的运动状态;第三获取模块,用于根据图像采集组件的运动参数,获取每两帧图像的采集地点的相对位移;第四获取模块,用于根据多帧图像和相对位移,获取包括多帧图像中特征点的图层,图层用于构建地图;发送模块,用于向服务器发送图层和相对位移。
可选地,多帧图像均为携带有目标环境的图像信息的关键帧图像,第一获取模块,用于:获取携带有目标环境的图像信息的多帧待筛选图像;获取每帧待筛选图像的目标参数,目标参数用于指示待筛选图像相对于指定图像的变化量;当待筛选图像的目标参数大于第二预设阈值时,确定待筛选图像为关键帧图像。
可选地,目标参数包括以下一个或多个:待筛选图像的采集时间与指定图像的采集时间的时间间隔;采集待筛选图像时图像采集组件的取景角度相对于采集指定图像时图像采集组件的取景角度的角度变化量;待筛选图像的采集地点与指定图像的采集地点的相对位移;待筛选图像所包括的特征点的第一总数;以及,第二总数与第一总数的第一比值,第二总数为待筛选图像所包括的特征点中相对于指定图像所包括的特征点中的不同特征点的总数。
可选地,多帧图像在时序上相邻,每帧待筛选图像对应的指定图像为多帧图像中,时序在待筛选图像之前,且时序距离待筛选图像最近的一帧关键帧图像。
可选地,第一获取模块,用于:当待筛选图像的目标参数大于第二预设阈值时,确定第二总数与第三总数的第二比值,第三总数为待筛选图像所包括的特征点的总数,第二总数为待筛选图像所包括的特征点中相对于指定图像所包括的特征点中的不同特征点的总数;当第二比值大于预设比值时,将待筛选图像确定为关键帧图像。
根据本申请的第五方面,提供了一种地图构建系统,该系统包括:终端和服务器,终端包括第四方面任一的地图构建装置,服务器包括第三方面任一的地图构建装置。
可选地,终端可以配置在图像采集车上,该图像采集车用于目标环境的图像信息。
根据本申请的第六方面,提供了一种地图构建装置,包括处理器和存储器;在处理器执行存储器存储的计算机程序时,服务器执行第一方面任一的地图构建方法,或者,执行第二方面任一的地图构建方法。
根据本申请的第七方面,提供了一种存储介质,存储介质内存储有计算机程序,计算机程序指示服务器执行第一方面任一的地图构建方法,或者,执行第二方面任一的地图构建方法。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种地图构建方法所涉及到的地图构建系统的结构示意图;
图2是本申请实施例提供的一种关键帧和特征点的关系示意图;
图3是本申请实施例提供的一种地图构建方法的流程图;
图4是本申请实施例提供的一种对图像进行筛选,以获取关键帧图像的方法流程图;
图5是本申请实施例提供的一种当待筛选图像的目标参数大于第二预设阈值时,对图像进一步进行筛选的方法流程图;
图6是本申请实施例提供的一种对第一图像中的特征点和第二图像中的特征点进行特征点匹配时,寻找最优匹配特征点的方法流程图;
图7是本申请实施例提供的一种图像由图像金字塔表征的示意图;
图8是本申请实施例提供的一种对第一图像中的特征点和第二图像中的特征点进行特征点匹配时,对第一待匹配特征点和第二待匹配特征点进行特征点匹配的方法流程图;
图9是本申请实施例提供的一种对第一图层中的特征点和第二图层中的特征点进行特征点匹配时,寻找最优匹配特征点的方法流程图;
图10是本申请实施例提供的一种对第一图层中的特征点和第二图层中的特征点进行特征点匹配时,对第一待匹配特征点和第二待匹配特征点进行特征点匹配的方法流程图;
图11是本申请实施例提供的一种根据每个所述特征点对中每个特征点在对应图层中的图层空间坐标,获取所述两个图层的目标位移关系的方法流程图;
图12是本申请实施例提供的一种根据第一图层中属于多个特征点对的所有特征点的图层空间坐标确定至少一个第一投影平面的方法流程图;
图13是本申请实施例提供的一种筛选流程的方法流程图;
图14是本申请实施例提供的一种其他特征点x4与点x2和点x3组成的内角的示意图;
图15是本申请实施例提供的一种根据第二图层中属于多个特征点对的所有特征点在对应图层中的图层空间坐标确定至少一个第二投影平面的方法流程图;
图16是本申请实施例提供的一种根据具有对应关系的投影平面中特征点在对应图层中的图层空间坐标,构建第一图形与第二图形的投影误差函数的方法流程图;
图17是本申请实施例提供的一种地图构建装置的结构示意图;
图18是本申请实施例提供的一种获取模块的结构示意图;
图19是本申请实施例提供的另一种获取模块的结构示意图;
图20是本申请实施例提供的一种匹配模块的结构示意图;
图21是本申请实施例提供的另一种地图构建装置的结构示意图;
图22是本申请实施例提供的一种地图构建装置的结构框图;
图23是本申请实施例提供的另一种地图构建装置的结构框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
图1为本申请实施例提供的地图构建方法所涉及到的地图构建系统的结构示意图。请参考图1,该实施环境可以包括:服务器10和终端20。其中,服务器10和终端20之间可以通过通过有线或无线网络建立连接。
服务器10可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心。终端20可以为计算机。该计算机可以为通用计算机(general-purposecomputer)、专用计算机(special-purposecomputer)、个人电脑或智能手机等具有运算功能的机器。
其中,终端20可以获取携带有目标环境的图像信息的多帧图像,分别获取图像采集组件在不同图像的采集地点的运动参数,该运动参数用于指示图像采集组件的运动状态。根据图像采集组件的运动参数,获取不同图像的采集地点之间的相对位移。然后基于多帧图像和对应的相对位移,获取包括多帧图像中特征点的图层,且该图层用于构建地图。并向服务器发送该图层和该相对位移。其中,终端20中可以集成有图像采集组件,此时,终端20可以通过该图像采集组件采集图像,以获取该图像。或者,终端20可以与图像采集组件连接,在该图像采集组件采集图像后,可将采集的图像发送至终端20,使终端20获取该图像。在一种可实现方式中,图像采集组件可以包括相机。该运动参数可以通过运动传感器或者相机获得。
示例的,该目标环境可以为停车场环境,图像采集车上可以固定设置有终端20、相机和惯性测量单元(inertialmeasurementunit,imu),该相机和该惯性测量单元均与终端20连接。图像采集车在该停车场环境中行驶的过程中,相机可以采集该停车场环境中的图像,且相机在采集该停车场环境中的图像后,可以将采集的图像发送至终端20。惯性测量单元可以获取图像采集车在行驶过程中的俯仰角(pitch)、滚转角(roll)、偏航角(yaw)、加速度和/或角速度等运动参数,并将该运动参数发送至终端20。且由于相机和该惯性测量单元均固定设置在该图像采集车上,因此,该图像采集车的运动参数即为该相机的运动参数。终端20在获取图像和运动参数后,通过对相机采集的图像进行空间位置标定,及对相机采集的图像和惯性测量单元获取的运动参数进行时间同步处理,可以确定该相机在每帧图像的图像采集地点的运动参数。并且,由于相机和惯性测量单元的成本较低,通过相机采集图像,及通过惯性测量单元获取运动参数,可以降低该地图构建系统的硬件成本。
可选的,在终端20向服务器发送图像之前,该终端20还可以对该多帧图像进行图像预处理,然后将图像预处理后的图像发送至服务器10。示例的,该图像预处理可以包括:获取图像中的特征点(landmark),和/或,在该多帧图像中确定关键帧(keyframe,kf)图像等。其中,关键帧图像为具有明显场景区分度的图像。该关键帧图像可以携带有:图像信息,特征点信息,关键帧图像的时间戳信息,图像采集组件采集该关键帧图像时的位置信息,及图像采集组件采集该关键帧图像时的姿态信息等。当图像采集组件固定设置在图像采集车上时,该图像采集组件采集该关键帧图像时的位置信息可视为该图像采集组件采集该关键帧图像时该图像采集车的位置信息,图像采集组件采集该关键帧图像时的姿态信息可视为图像采集组件采集该关键帧图像时图像采集车的姿态信息。该姿态信息可以为该图像采集车对应的俯仰角、滚转角或偏航角等运动参数。
服务器10根据终端20向其发送的图层,可以对不同图层中的特征点进行特征点匹配,得到多个特征点对。基于多个特征点对中每个特征点在对应图层中的图层空间坐标,获取每两个图层的位移关系。并根据该位移关系,对该两个图层进行图层融合,以得到目标环境的地图。其中,每个特征点对包括的特征点用于表征目标环境中的同一个物体。该每个特征点在对应图层中的图层空间坐标是根据该特征点在目标图像中的图像坐标,及每两帧目标图像的采集地点的相对位移得到。可选地,该服务器可以为云端服务器,以利用云端的资源对数据进行处理。
示例的,当该目标环境为停车场环境时,通过多次采集该停车场环境中的图像,可以得到多个图层。通过对不同图层中的特征点进行特征点匹配,可以得到多个特征点对。基于多个特征点对中每个特征点在对应图层中的图层空间坐标,可以获取不同图层的位移关系。通过根据该位移关系对该不同图层进行图层融合,可以得到该停车场的地图(也称定位图层)。
其中,在每次图像采集过程中可以获取多帧图像,根据该多帧图像可以确定多个特征点,并且,根据惯性测量单元获取的运动参数,可以获取该多个特征点之间的相对位移,然后根据该相对位移和该多个特征点,可以确定包括该多个特征点的一个图层(也称为子地图)。并且,每个图层具有一个锚点(anchorpoint,ap)。该锚点为该图层中的一个标记点。例如,每个图层的锚点可以为每次采集过程的起始时刻对应的位置。不同图层的目标位移关系可以视为该不同图层中锚点之间的位移关系。特征点在对应图层中的图层空间坐标是根据以该图层中锚点为坐标原点建立的坐标系所确定的空间坐标。
例如,在某天图像采集车采集了两次停车场环境的图像,该两次采集的时间分别为:11:00至12:00,及14:00至15:00,根据11:00至12:00采集的多帧图像可以确定一个图层,根据14:00至15:00采集的多帧图像可以确定另一个图层,且每个图层的锚点为对应采集过程的起始时刻对应的位置。
特征点是对目标环境中具有明显语义特征的信息描述。每个特征点具有一个特征点序列号,该特征点序列号用于唯一地标识该特征点。按照特征点所表示的内容,特征点可以包括:语义特征点和几何特征点。语义特征点可以为图像中在语义上具有明显特征的像素点的集合。例如,本申请实施例中所使用的语义特征点可以包括:用于表示车道线、路面标志、交通标志牌、车辆和行人等语义特征的像素点的集合。视觉几何特征点可以为图像中在视觉上具有明显特征的像素点的集合。例如,本申请实施例中所使用的视觉几何特征点可以包括:用于表示点、直线、平面、折线或角点(cornerpoint,cp)的像素点的集合,用于表示车道线段上的顶点的像素点的集合,以及,用于表示图像中具有明显黑白对比的像素点的集合等。按照特征点的空间维数,特征点可以包括2d(维度,dimension)特征点和3d特征点。2d特征点是指图像空间内的特征点。3d特征点是指立体空间中实物上的特征点。可选的,本申请实施例中的特征点可以为orb(orientedfastandrotatedbrief,orb)特征点等。且当特征点邻域内有足够多的邻域像素点与该特征点的灰度值之差大于预设灰度阈值时,可以确定该特征点为orb特征点。
当目标环境为停车场环境时,若本申请实施例提供的地图构建方法中采用上述特征点,相较于采用车道线和交通标志牌等语义特征点的相关技术,由于停车场环境中包含有较多的上述特征点,且含有较少的车道线和交通标志牌等语义特征点,在根据特征点进行特征点匹配时,能够提高对特征点进行匹配的成功率,避免因特征点较少出现无法匹配的情况。
每帧图像中的特征点可以由该图像中的至少一个像素点组成。并且,每一帧图像中可能存在多个特征点,每个特征点也可能存在多帧图像中。例如,请参考图2,关键帧1中存在特征点1和特征点2,关键帧2中存在特征点1、特征点2和特征点3,关键帧3中存在特征点2和特征点3,关键帧4中存在特征点3。
需要说明的是,在该服务器10中执行的全部动作也可以在终端20中执行。或者,对图像进行图像预处理的动作也可以由服务器10执行。例如,终端20在获取多帧图像和运动参数之后,可以直接将该多帧图像和该运动参数发送至服务器10,服务器10可以获取该每帧图像中的特征点,并在该多帧图像中确定关键帧图像,然后再执行根据关键帧图像获取图层、进行特征点匹配、确定不同图层之间的位移关系,及根据位移关系进行图层融合等操作。
图3是本申请实施例提供的一种地图构建方法的流程图。在图层融合过程中,待融合的图层通常包括多个图层,本申请实施例以第一图层和第二图层的图层融合过程为例,对该地图构建方法的实现过程进行说明,其他待融合图层的图层融合过程请相应参考该第一图层和该第二图层的图层融合过程。该第一图层和该第二图层为该多个图层中的任两个图层。如图3所示,该方法可以包括:
步骤201、终端获取携带有目标环境的图像信息的多帧图像。
其中,该多帧图像可以由图像采集组件采集得到。该图像采集组件可以集成在终端中,或者,该图像采集组件可以与终端连接,在该图像采集组件采集图像后,可将采集的图像发送至终端,使终端获取该多帧图像。
可选的,该多帧图像可以为图像采集组件采集的原始图像,或者,可以是对该原始图像进行筛选后的图像。例如,该多帧图像均可以为根据图像采集组件采集的原始图像进行筛选后的关键帧图像。通过对图像采集组件采集的原始图像进行筛选,可以有效减小获取的图像中的冗余信息,以减少后续确定图层间的目标位移关系和图层融合等过程中的计算量。
如图4所示,对图像进行筛选,以获取关键帧图像的实现过程可以包括:
步骤2011、获取携带有目标环境的图像信息的多帧待筛选图像。
该多帧待筛选图像可以为图像采集组件采集的原始图像。且该图像可以为彩色图像(如rgb彩色图像)或灰度图像。
步骤2012、获取每帧待筛选图像的目标参数,该目标参数用于指示待筛选图像相对于指定图像的变化量。
其中,该目标参数可以包括以下一个或多个:待筛选图像的采集时间与指定图像的采集时间的时间间隔,采集待筛选图像时图像采集组件的取景角度相对于采集指定图像时图像采集组件的取景角度的角度变化量,待筛选图像的采集地点与指定图像的采集地点的相对位移,待筛选图像所包括的特征点的第一总数,以及,第二总数与第一总数的第一比值。其中,第二总数为待筛选图像所包括的特征点中相对于指定图像所包括的特征点中的不同特征点的总数。
可选的,相机和该惯性测量单元都具有时钟系统,可以通过该时钟系统确定图像的采集时间。可以采用惯性测量单元获取图像采集组件的运动参数,并根据该运动参数获取采集图像时图像采集组件的取景角度,及图像的采集地点与指定图像的采集地点的相对位移。并且,当该待筛选图像的目标参数包括第一总数和/或第一比值时,在获取该目标参数之前,可以先获取图像中的特征点,以便于根据图像中的特征点获取该第一总数和/或第一比值。
并且,该指定图像可以根据实际需要确定。例如,当多帧图像在时序上相邻时,每帧待筛选图像对应的指定图像可以为该多帧图像中,时序在该待筛选图像之前,且时序距离该待筛选图像最近的一帧关键帧图像,也即是,每帧待筛选图像对应的指定图像可以为该待筛选图像的上一帧关键帧图像。相应的,目标参数可以包括以下一个或多个:待筛选图像的采集时间与上一帧关键帧图像的采集时间的时间间隔,采集待筛选图像时图像采集组件的取景角度相对于采集上一帧关键帧图像时图像采集组件的取景角度的角度变化量,图像的采集地点与上一帧关键帧图像的采集地点的相对位移,待筛选图像所包括的特征点的第一总数,及第二总数与第一总数的第一比值。其中,第二总数为待筛选图像所包括的特征点中相对于上一帧关键帧图像所包括的特征点中的不同特征点的总数。
确定两个特征点是否为相同特征点的实现过程可以包括:分别计算待筛选图像中的每个特征点与指定图像中的每个特征点的描述子(descriptor)相似度等参数,当两个特征点对应的参数大于预设参数阈值时,确定该两个特征点为相同的特征点。描述子用于从视觉角度对特征点进行描述。常用的描述子可以包括:orb描述子和尺度不变特征变换(scale-invariantfeaturetransform,sift)描述子等。
通过根据时间间隔、角度变化量、相对位移和/或特征点的相关信息对待筛选图像进行筛选,使得能够在不同的采集状况下均能够对图像进行筛选。例如,可以对在图像采集车处于低速行驶、高速行驶、直线行驶或转弯等多种状态下采集的图像进行筛选。或者,可以对在不同天气和不同光照条件下采集的图像进行筛选。由于能够在不同的采集状况下对图像进行筛选,若根据该筛选后的图像进行图层融合,能够保证融合得到的图层的精度。
步骤2013、当该待筛选图像的目标参数大于第二预设阈值时,确定该待筛选图像为关键帧图像。
当该待筛选图像的目标参数包括:待筛选图像的采集时间与指定图像的采集时间的时间间隔时,若该时间间隔大于第二预设阈值,说明在限定的时间间隔内没有任何关键帧,此时,可以将该待筛选图像确定为关键帧图像,对该待筛选图像所包含的图像信息进行记录。
当该待筛选图像的目标参数包括:采集待筛选图像时图像采集组件的取景角度相对于采集指定图像时图像采集组件的取景角度的角度变化量时,由于图像采集组件固定在图像采集车上,该图像采集组件的取景角度变化量可视为该图像采集车的旋转角度,若该角度变化量大于第二预设阈值,说明图像采集车的旋转角度发生了较大的变化,该待筛选图像中所包括的特征点对应的空间点的空间坐标相对于指定图像中特征点对应的空间点的空间坐标也发生了较大变化,此时,可以将该待筛选图像确定为关键帧图像,对该待筛选图像所包含的图像信息进行记录。
当该待筛选图像的目标参数包括:待筛选图像的采集地点与指定图像的采集地点的相对位移时,由于图像采集组件固定在图像采集车上,该相对位移可视为该图像采集车的在采集该待筛选图像的地点相对于采集指定图像的地点的位移,若该相对位移大于第二预设阈值,说明图像采集车的位置发生了较大的变化,该待筛选图像中所包括的特征点对应的空间点的空间坐标相对于指定图像中特征点对应的空间点的空间坐标也发生了较大变化,此时,可以将该待筛选图像确定为关键帧图像,对该待筛选图像所包含的图像信息进行记录。
当该待筛选图像的目标参数包括:待筛选图像所包括的特征点的第一总数时,若该第一总数大于第二预设阈值,说明该待筛选图像中包括了足够多的特征点,此时,可以将该待筛选图像确定为关键帧图像,对该待筛选图像所包含的图像信息进行记录。
当该待筛选图像的目标参数包括:第二总数与第一总数的第一比值时,该第一比值用于反映该待筛选图像不同于指定图像中特征点的比例,相应的,该第一比值能够反映该待筛选图像中特征点与指定图像中特征点的重合度,若该第一比值大于第二预设阈值,说明该待筛选图像中特征点与指定图像中特征点的重合度较小,该待筛选图像中的图像信息具有较大的参考价值,此时,可以将该待筛选图像确定为关键帧图像,对该待筛选图像所包含的图像信息进行记录。
其中,当该图像的目标参数包括的内容不同时,其对应的第二预设阈值可以根据实际需要进行设置。例如,当该图像的目标参数包括:图像的采集时间与指定图像的采集时间的时间间隔时,该第二预设阈值可以为150毫秒。当该图像的目标参数包括:采集图像时图像采集组件的取景角度相对于采集指定图像时图像采集组件的取景角度的角度变化量时,该第二预设阈值可以为30度。当该图像的目标参数包括:图像的采集地点与指定图像的采集地点的相对位移时,该第二预设阈值可以为10米。并且,当该图像的目标参数包括多项参数时,该多项参数中的每项参数对应的第二预设阈值也可以根据实际需要进行设置。
需要说明的是,在确定待筛选图像的目标参数大于第二预设阈值后,还可以进一步对该待筛选图像进行筛选,并在该待筛选图像满足筛选条件后,确定该待筛选图像为关键帧图像,以进一步减少图像信息的冗余,以便于在后续特征点匹配过程中进行稀疏化计算,加速特征点匹配过程。例如,在确定待筛选图像的目标参数大于第二预设阈值后,还可以对该目标参数大于第二预设阈值的待筛选图像进行分类,并将满足分类条件的待筛选图像确定为关键帧图像。示例地,请参考图5,该实现过程可以包括:
步骤2013a、当待筛选图像的目标参数大于第二预设阈值时,确定第二总数与第三总数的第二比值,该第三总数为待筛选图像所包括的特征点的总数,该第二总数为待筛选图像所包括的特征点中相对于指定图像所包括的特征点中的不同特征点的总数。
可以分别获取该待筛选图像中的特征点和该指定图像中的特征点,然后统计该待筛选图像包括的特征点的总数,以得到第三总数。并确定该待筛选图像包括的所有特征点中与指定图像包括的特征点不同的特征点,然后统计该不同的特征点的总数,以得到第二总数。其中,在确定该待筛选图像包括的所有特征点中与指定图像包括的特征点不同的特征点的过程中,可以分别计算待筛选图像中的每个特征点与指定图像中的每个特征点的描述子相似度等参数,当两个特征点对应的参数大于预设参数阈值时,确定该两个特征点为相同的特征点,然后统计该待筛选图像中中与指定图像中相同的特征点的总数,并将第三总数与该相同的特征点的总数的差确定为该第二总数。可选的,可以采用sift算法,或者,harris角点检测等算法,获取图像中的特征点。
步骤2013b、当第二比值大于预设比值时,将该待筛选图像确定为关键帧图像。
当第二比值大于预设比值时,说明该待筛选图像中特征点与指定图像中特征点的重合度较小,该待筛选图像中的图像信息具有较大的参考价值,因此,可将该待筛选图像确定为关键帧图像。其中,该预设比值可以根据实际需要确定,例如,该预设比值可以为20%。
当目标参数包括图像的采集时间的时间间隔、图像采集组件的取景角度的角度变化量、像的采集地点的相对位移和第一总数中的至少一个时,由于目标参数主要表现的是图像在时间维度、角度维度、距离维度和/或信息数量上的变化量,若该待筛选图像的目标参数大于第二预设阈值,就将待筛选图像确定为关键帧图像,该关键帧图像中可能还存在较多冗余信息。且当目标参数包括第一比值时,若第二预设阈值的取值较小,将对应目标参数大于第二预设阈值的待筛选图像确定为关键帧图像,该关键帧图像中也可能还存在较多冗余信息。因此,在确定待筛选图像的目标参数大于第二预设阈值后,还可以进一步对该待筛选图像进行筛选,以进一步减少冗余信息。
例如,在图像采集车在某时段内处于原地不动的状态时,每隔固定的时间间隔dt,都会采集到新的图像,但是在该时段内,图像采集车的位置、姿态和速度等信息均未发生变化,且在该时段内采集的图像中的特征点也几乎不变,因此,在该时段内采集到的图像可以被其他的图像代替,即在该时段内采集的图像中包含了较多的冗余信息。但是,当目标参数为待筛选图像的采集时间与指定图像的采集时间的时间间隔,且该时段的时长大于第二预设阈值时,就会将该时段内采集的图像确定为关键帧图像,该关键帧图像中会存在较多的冗余信息。此时,通过进一步对该大于第二预设阈值的图像进行筛选,并在待筛选图像对应的第二比值大于预设比值时,将该述待筛选图像确定为关键帧图像,可以将包括具有较多不同图像信息和特征点信息的图像确定为关键帧,能够减少后续过程中的计算量和计算复杂度。
其中,该预设比值的取值可以根据实际需要进行确定。例如:可以根据图层融合所需的信息量确定该预设比值的取值。示例地,当初始选择的预设比值为x0时,若经过判断确定根据该预设比值确定的关键帧图像所包含的信息不足以用于图层融合,此时,可适当减小该预设比值的取值,使得根据该减小后的预设比值确定的关键帧图像所包含的信息足够用于图层融合。
步骤202、终端获取该多帧图像中每两帧图像的采集地点的相对位移。
该步骤202的实现过程可以包括以下步骤:
步骤2021、分别获取图像采集组件在各帧图像的采集地点的运动参数。
其中,运动参数用于指示图像采集组件的运动状态。该运动参数可以为图像采集组件的俯仰角、滚转角、偏航角、加速度和/或角速度等参数。
可以通过惯性测量单元采集图像采集组件的运动参数。该惯性测量单元可以按照第一预设频率获取图像采集车的运动参数。且由于该惯性测量单元和该图像采集组件均固定在图像采集车上,该惯性测量单元测量的图像采集车的运动参数即为该图像采集组件的运动参数。图像采集组件可以按照第二预设频率采集图像,通过对图像采集组件采集的图像进行空间位置标定,并对图像采集组件采集的图像和惯性测量单元获取的运动参数进行时间同步处理,可以确定该图像采集组件在每帧图像的图像采集地点的运动参数。
步骤2023、根据图像采集组件的运动参数,获取每两帧图像的采集地点的相对位移。
在获取图像采集组件在采集每帧图像的图像采集地点的运动参数后,可以根据每两帧图像中每帧图像的运动参数,及采集该两帧图像的时间间隔,确定该两帧图像的采集地点的相对位移。
通常的,由于图像采集组件采集的多帧图像为时序上相邻的图像,在后续对图像进行处理时,仅需针对时序上相邻的每两帧图像进行图像处理,因此,在获取每两帧图像的采集地点的相对位移时,仅需要获取时序相邻的每两帧图像的图像采集地点的相对位移,以减少计算量。
步骤203、终端根据多帧图像和相对位移,获取包括多个特征点所在的图层。
可以根据该多帧图像,获取每帧图像中的特征点。通过对每两帧图像中的特征点进行特征点匹配,确定用于表示目标环境中的同一个物体的特征点和该特征点所在的多帧图像。并根据该多帧图像中每帧图像所包括的所有特征点,及根据惯性测量单元获取的运动参数,可以确定位于不同图像中的不同特征点之间的位移关系,并根据该不同特征点之间的位移关系建立包括多个特征点的图层。其中,该多帧图像可以为在同一次图像采集过程中采集的图像。且由于该多帧图像在同一次图像采集过程中采集得到,在根据惯性测量单元获取的运动参数确定的特征点之间的位移关系时,能够保证确定的位移关系的准确性。且能够保证该图层中所有特征点的图层空间坐标为在同一坐标系下获取的坐标,进而能够保证该图层中所有特征点位置参照的一致性。
其中,对两帧图像中的特征点进行特征点匹配的实现方式可以有多种,本申请实施例以以下两种可实现方式为例对其进行说明:
在对两帧图像中的特征点进行特征点匹配的一种可实现方式中,对于第一图像中的任一第一待匹配特征点,可以在第二图像包括的多个特征点中,寻找该第一待匹配特征点的最优匹配特征点。如图6所示,该寻找最优匹配特征点的实现过程可以包括:
步骤2031a、分别根据第一图像中任一第一待匹配特征点的像素值与第二图像中每个第二待匹配特征点的像素值,获取与每个第二待匹配特征点对应的指定参数。
指定参数用于指示第一待匹配特征点与第二待匹配特征点所表征的图像信息的差异。可选的,该指定参数可以包括:像素灰度差和/或描述子的相似度。并且,当该指定参数包括:像素灰度差和描述子的相似度时,该指定参数的取值为该像素灰度差的取值与该描述子的相似度的取值之和。其中,该描述子可以为orb描述子。该orb描述子用于描述orb特征点,该orb描述子可以包括:用于表示特征点与邻域像素的像素值大小关系的矩阵,以及,特征点的像素值的梯度方向。
可选的,为了提高计算该指定参数的准确率,在获取与第二待匹配特征点对应的指定参数时,可以根据第一图像块中每个像素点的像素值和第二图像块中每个像素点的像素值,获取该指定参数。其中,第一图像块包括第一待匹配特征点对应的像素点,第二图像块包括第二待匹配特征点对应的像素点,且该第二图像块的大小与该第一图像块的大小相同。该图像块的大小可以根据实际需要进行确定,且特征点可以由图像块中处于中心区域的像素点进行表征。
进一步的,第一图像和第二图像也可以由包括多级子图像的图像金字塔表征,且第一图像的多级子图像与第二图像的多级子图像一一对应。此时,获取与第二待匹配特征点对应的指定参数的实现过程,可以包括:根据第一图像的每级子图像和第二图像对应级的子图像,分别获取该对应级的指定参数分量,并将多级子图像对应的指定参数分量的和确定为指定参数。其中,对应级的指定参数分量用于指示第一待匹配特征点与第二待匹配特征点在对应级子图像中所表征的图像信息的差异。
如图7所示,一帧图像的图像金字塔为一系列按照金字塔形状排列的分辨率逐步降低,且来源于同一张原始图像的图像集合。该图像金字塔通过对图像进行梯次向下采样得到,且该梯次向下采样的过程在达到预设终止条件时停止。在该图像金字塔中,图像的层级越高,图像的大小越小,相应的,图像的分辨率越低。可选地,该图像金字塔可以为拉普拉斯金字塔或高斯金字塔等。
通过采用图像金字塔表征图像,能够利用图像金字塔的特性,在多个分辨率条件下分别计算两个待匹配特征点的像素灰度差和描述子的相似度,可以进一步提高该指定参数的准确度和匹配的精度。并且,当根据基于该图像金字塔计算得到的指定参数进行特征点匹配时,能够保证匹配的精度和稳定性。其中,匹配的精度由匹配误差的绝对值表征,且匹配误差的绝对值越小时,该匹配的精度越高。匹配的稳定性由误匹配的概率表征,且误匹配的概率越低时,该匹配的稳定性越好。
示例的,假设关键帧图像fa包括特征点a1、a2、a3、......、an,第一待匹配特征点a为该多个特征点中的任一特征点,该第一待匹配特征点a所在的图像块为pa,关键帧图像fb包括特征点b1、b2、b3、......、bn,第二待匹配特征点b为该多个特征点中的任一特征点,该第二待匹配特征点b所在的图像块为pb,该图像块pa和图像块pb的大小均为j,关键帧图像fa和关键帧图像fb均由包括0,1,......,l级的图像金字塔表征,则第二待匹配特征点b对应的像素灰度差e1和描述子的相似度e2分别满足:
其中,“.”表示点乘运算,sl为金字塔等级的缩放系数,sl=0.5l,a和b为关键帧图像fa与关键帧图像fb的固定偏差,p1为第一待匹配特征点a中像素点的图像坐标,p2为第二待匹配特征点b中像素点的图像坐标。pj为图像块中像素点的偏移坐标,且d为图像块相对于所属关键帧图像的位置映射关系,该映射关系用于表示图像块在该关键帧图像中的相对位置,(p dpj)为图像块中像素点pj在关键帧图像中的坐标,i(x)为像素点在坐标x处的像素值。f(x)为衡量像素点之间相似度的函数,可选地,该函数可以为欧式距离函数、幅值函数或相位函数等。
需要说明的是,为便于描述,在该像素灰度差e1和描述子的相似度e2的公式中,仅以特征点包括一个像素点为例进行说明。当特征点包括多个像素点时,可以参考该像素灰度差e1的公式,计算特征点中每个像素点对应的像素灰度差,并将根据每个像素点计算的像素灰度差的和确定为该特征点的像素灰度差。类似的,当特征点包括多个像素点时,可以参考该描述子的相似度e2的公式,计算特征点中每个像素点对应的描述子的相似度,并将根据每个像素点计算的描述子的相似度的和确定为该特征点的描述子的相似度。
步骤2032a、将最小指定参数对应的第二待匹配特征点确定为与第一待匹配特征点匹配的特征点。
当第二图像中某个第二待匹配特征点对应的指定参数最小时,说明第一待匹配特征点与该第二待匹配特征点所表征的图像信息的差异最小,此时,可将该第二待匹配特征点确定为与该第一待匹配特征点匹配的特征点。通过在第二图像包括的多个特征点中,寻找该第一待匹配特征点的最优匹配特征点,并建立该第一特征点和对应的最优匹配特征点的匹配关系,能够提高特征点匹配的稳定性和准确度。
可选的,为了保证该第一待匹配特征点和第二待匹配特征点的匹配准确性,在将最小指定参数对应的第二待匹配特征点确定为与第一待匹配特征点匹配的特征点之前,还可以对该第二待匹配特征点进行验证,当该第二待匹配特征点通过验证时,再将该第二待匹配特征点确定为与第一待匹配特征点匹配的特征点。
例如,在将最小指定参数对应的第二待匹配特征点确定为与第一待匹配特征点匹配的特征点之前,可以将该最小指定参数与预设参数阈值进行比较,当该最小指定参数小于预设参数阈值时,再将最小指定参数对应的第二待匹配特征点确定为与该第一待匹配特征点匹配的特征点。
和/或,可以将该最小指定参数与第二小指定参数进行比较,当该第二小指定参数与该最小指定参数的差大于预设差值时,再将最小指定参数对应的第二待匹配特征点确定为特征点。其中,该预设参数阈值和该预设差值可以根据实际需要进行确定。
和/或,可以根据该最小指定参数对应的第二待匹配特征点的像素值,与第一图像中每个第一待匹配特征点的像素值,获取与每个第一待匹配特征点对应的指定参数,并判断最小指定参数对应的第一待匹配特征点与上述步骤2031a中“任一第一待匹配特征点”是否为同一特征点,当两者为同一特征点时,再将最小指定参数对应的第二待匹配特征点确定为与该第一待匹配特征点匹配的特征点。
在对两帧图像中的特征点进行特征点匹配的另一种可实现方式中,对于第一图像中的一个第一待匹配特征点和第二图像中的一个第二待匹配特征点,当该两个待匹配特征点所表征的图像信息的差异小到满足预设要求时,即确认该第一待匹配特征点和该第二待匹配特征点匹配点。如图8所示,该实现过程可以包括:
步骤2031b、根据第一图像中任一第一待匹配特征点的像素值与第二图像中任一第二待匹配特征点的像素值,获取与第二待匹配特征点对应的指定参数。
步骤2032b、当指定参数小于第一预设阈值时,确定第一待匹配特征点与第二待匹配特征点匹配,得到包括第一待匹配特征点和第二待匹配特征点的特征点对。
该步骤2031b至步骤2032b的实现过程请相应参考步骤2031a至步骤2032a的实现过程,此处不再赘述。
步骤204、终端向服务器发送图层和每两帧图像的采集地点的相对位移。
终端可以通过与服务器的通信连接,向服务器发送该第一图像的相关信息、第二图像的相关信息、相对位移和包括多个特征点的图层。其中,该图像的相关信息可以包括:图像中的像素点的信息,图像中的特征点的信息,及采集图像时图像采集组件在采集对应图像时的运动参数等信息。
需要说明的是,若步骤201中对获取的多帧原始图像执行了筛选操作,步骤202至步骤204中的多帧图像中的每帧图像均为根据筛选操作确定的关键帧图像。若步骤201中未对获取的多帧原始图像执行筛选操作,该步骤202至步骤204中的多帧图像为获取的多帧原始图像。
步骤205、服务器对两个图层中的特征点进行特征点匹配,得到多个特征点对。
其中,每个特征点对包括分别来自两个图层且互相匹配的两个特征点。例如,每个特征点对包括分别来自第一图层和第二图层且互相匹配的两个特征点。可选地,对该第一图层中的特征点和该第二图层中的特征点进行特征点匹配,得到特征点对的实现方式可以有多种,本申请实施例以以下两种可实现方式为例对其进行说明:
在一种可实现方式中,对于第一图层中的任一第一待匹配特征点,可以在第二图层包括的多个特征点中,寻找该第一待匹配特征点的最优匹配特征点。如图9所示,该寻找最优匹配特征点的实现过程可以包括:
步骤2051a、分别根据第一图层中任一第一待匹配特征点的像素值与第二图层中每个第二待匹配特征点的像素值,获取与每个第二待匹配特征点对应的指定参数。
该步骤2051a的实现过程可以相应参考步骤2031a的实现过程。
步骤2052a、将最小指定参数对应的第二待匹配特征点确定为与第一待匹配特征点匹配的特征点。
当第二图层中某个第二待匹配特征点对应的指定参数最小时,说明第一待匹配特征点与该第二待匹配特征点所表征的图像信息的差异最小,此时,可将该第二待匹配特征点确定为与该第一待匹配特征点匹配的特征点。通过在第二图层包括的多个特征点中,寻找该第一待匹配特征点的最优匹配特征点,并建立该第一特征点和对应的最优匹配特征点的匹配关系,能够提高特征点匹配的稳定性和准确度。
可选的,为了保证该第一待匹配特征点和第二待匹配特征点的匹配准确性,在将最小指定参数对应的第二待匹配特征点确定为与第一待匹配特征点匹配的特征点之前,还可以对该第二待匹配特征点进行验证,当该第二待匹配特征点通过验证时,将该第二待匹配特征点确定为与第一待匹配特征点匹配的特征点。
例如,在将最小指定参数对应的第二待匹配特征点确定为与第一待匹配特征点匹配的特征点之前,可以将该最小指定参数与预设参数阈值进行比较,当该最小指定参数小于预设参数阈值时,再将最小指定参数对应的第二待匹配特征点确定为与第一待匹配特征点匹配的特征点。
和/或,可以将该最小指定参数与第二小指定参数进行比较,当该第二小指定参数与该最小指定参数的差大于预设差值时,再将最小指定参数对应的第二待匹配特征点确定为与第一待匹配特征点匹配的特征点。其中,该预设参数阈值和该预设差值可以根据实际需要进行确定。
和/或,可以根据该最小指定参数对应的第二待匹配特征点的像素值,与第一图层中每个第一待匹配特征点的像素值,获取与每个第一待匹配特征点对应的指定参数,并判断最小指定参数对应的第一待匹配特征点与上述步骤2051a中“任一第一待匹配特征点”是否为同一特征点,当两者为同一特征点时,再将最小指定参数对应的第二待匹配特征点确定为与第一待匹配特征点匹配的特征点。
在另一种可实现方式中,对于第一图层中的一个第一待匹配特征点和第二图层中的一个第二待匹配特征点,当该两个待匹配特征点所表征的图像信息的差异小到满足预设要求时,即确认该第一待匹配特征点和该第二待匹配特征点匹配点。如图10所示,该实现过程可以包括:
步骤2051b、根据第一图层中任一第一待匹配特征点的像素值与第二图层中任一第二待匹配特征点的像素值,获取与第二待匹配特征点对应的指定参数。
步骤2052b、当指定参数小于第一预设阈值时,确定第一待匹配特征点与第二待匹配特征点匹配,得到包括第一待匹配特征点和第二待匹配特征点的特征点对。
该步骤2051b至步骤2052b的实现过程请相应参考步骤2051a至步骤2052a的实现过程,此处不再赘述。
步骤206、服务器获取每个特征点对中特征点在对应图层中的图层空间坐标,并根据每个特征点对中特征点在对应图层中的图层空间坐标,获取两个图层的目标位移关系。
可选地,可以根据特征点在图层对应的目标图像中的图像坐标,及该多帧目标图像中每两帧图像的采集地点的相对位移,利用几何关系求解该特征点在图层中的图层空间坐标。其中,特征点在对应图层中的图层空间坐标可以为以该图层中指定点(如锚点)为原点建立的坐标系所确定的空间坐标。并且,两帧图像的采集地点的相对位移根据图像采集组件在对应图像采集地点的运动参数得到。该运动参数用于指示图像采集组件的运动状态。
可选的,如图11所示,根据每个特征点对中每个特征点在对应图层中的图层空间坐标,获取两个图层的目标位移关系的实现过程可以包括:
步骤2061、根据第一图层中属于多个特征点对的所有特征点的图层空间坐标确定至少一个第一投影平面。
可选的,如图12所示,步骤2061的实现过程,可以包括:
步骤2061a1、在第一图层中属于多个特征点对的所有特征点中,根据任意三个未被标记的特征点的图层空间坐标,确定初始平面,将该三个未被标记的特征点添加至该初始平面对应的第一目标点集合,且该第一图层中属于多个特征点对的所有特征点的初始标记状态均为未被标记。
根据三点共面的原理,任意三个点可以确定一个平面。因此,在该步骤2061a1中,可以在第一图层中属于多个特征点对的所有特征点中,根据任意三个未被标记的特征点的图层空间坐标,确定一个初始平面。并根据该初始平面创建一个第一目标点集合,且该创建的第一目标点集合为空集。
步骤2061b1、依次对每个其他特征点执行筛选流程,直至第一目标点集合中的特征点总数达到预设数量,得到一个第一目标点集合,并对第一目标点集合中的所有特征点进行标记。
其中,其他特征点为所有未被标记的特征点中除该三个未被标记的特征点外的特征点。当第一目标点集合中的特征点总数达到预设数量时,可以确定根据该第一目标点集合中所有特征点确定的平面为一个有效平面,该平面的置信度较高,可以根据该有效平面确定第一图层和第二图层的位移关系。且该预设数量可以根据实际需要确定。例如,该预设数量可以为10。
可选的,如图13所示,对每个其他特征点,该筛选流程可以包括以下步骤:
步骤b11、当其他特征点到初始平面的距离小于预设距离阈值时,确定以其他特征点和第一目标点集合中所有特征点为顶点的多个多边形。
对于每个其他特征点,可以计算该其他特征点到该初始平面的距离,当该其他特征点到初始平面的距离小于预设距离阈值时,可以确定在误差允许的范围内,该其他特征点位于该初始平面内。此时,可以根据该其他特征点和第一目标点集合中所有特征点,确定以该其他特征点和第一目标点集合中所有特征点为顶点的多个多边形。并根据该多个多边形的形状确定对应的特征点是否为该初始平面内的有效特征点,即执行步骤b12。
步骤b12、当多个多边形中存在凸多边形时,将其他特征点添加到第一目标点集合中,得到更新后的第一目标点集合。
当多个多边形中存在凸多边形时,可以确定该其他特征点为该初始平面内的有效特征点,由于以该其他特征点和第一目标点集合中所有特征点为顶点能够确定多个多边形,且凸多边形在该多个多边形中占少数,确定该凸多边形的特征点为对应平面中的有效特征点,可以根据该其他特征点的图层空间坐标确定第一图层和第二图层的位移关系。因此,当多个多边形中存在凸多边形时,可以将该其他特征点添加到第一目标点集合中,以更新该第一目标点集合。并且,通过根据凸多边形确定第一目标点集合,能够降低计算的复杂度,并提高计算的精度和稳定性。其中,对于一个多边形,沿一个多边形的任意一条边向两侧无限延长,使之延长为直线,若该多边形的其他各边都在该直线的同一侧,那么该多边形为凸多边形。
需要说明的是,在该步骤b11和该步骤b12的实现过程中,当其他特征点到初始平面的距离小于预设距离阈值时,也可以将该其他特征点分别与第一目标点集合中任意两个特征点进行连接,并在该两个特征点与该其他特征点组成的内角小于180度时,确定以该其他特征点与该第一目标点集合中的所有特征点为顶点的多边形中存在凸多边形,可将该其他特征点添加到第一目标点集合中,以更新的第一目标点集合。
示例的,如图14所示,假设第一目标点集合中包括点x1、点x2和点x3,当其他特征点x4到该点x1、点x2和点x3确定的初始平面的距离小于预设距离阈值时,可以将该其他特征点x4分别与点x2和点x3连接,该其他特征点x4与点x2和点x3组成的内角为角θ,根据该图14可知该角θ小于180度,此时,可以确定以该点x1、点x2、点x3和该其他特征点x4为顶点的多边形中存在凸多边形,可以将该其他特征点x4添加到第一目标点集合中,以得到更新后的第一目标点集合包括点x1、点x2、点x3和该其他特征点x4。
步骤2061c1、重复确定初始平面和执行筛选流程的过程,直至第一图层中属于多个特征点对的所有特征点均被标记,得到至少一个第一目标点集合。
步骤2061d1、根据每个第一目标点集合中的所有特征点确定一个第一投影平面,得到至少一个第一投影平面。
每个第一目标点集合中的所有特征点可以确定一个平面,该平面即为根据该第一目标点集合中所有特征点确定的第一投影平面。经过步骤2061a1至步骤2061c1后,可以得到至少一个第一目标点集合,此时,根据该至少一个第一目标点集合中每个第一目标点集合可以确定一个第一投影平面,以得到至少一个第一投影平面。
步骤2062、根据第二图层中属于多个特征点对的所有特征点的图层空间坐标确定至少一个第二投影平面。
其中,至少一个第一投影平面与至少一个第二投影平面一一对应,且用于确定每个第一投影平面的多个特征点与用于确定对应第二投影平面的多个特征点为一一匹配的特征点。
在该步骤2062的第一种可实现方式中,可以参考步骤2061的实现过程,根据特征点的图层空间坐标确定初始平面和执行筛选流程,以得到至少一个第二投影平面。
在该步骤2062的第二种可实现方式中,由于第二图层中属于多个特征点对的所有特征点与第一图层中属于多个特征点对的所有特征点一一匹配,在根据第一图层中属于多个特征点对的所有特征点确定至少一个第一投影平面后,可以根据与每个第一投影平面中特征点匹配的特征点确定一个第二投影平面,以得到至少一个第二投影平面。如图15所示,该实现过程可以包括以下步骤:
步骤2062a2、在第二图层的所有特征点中,分别根据每个第一投影平面确定一个第二目标点集合,每个第二目标点集合中包括与第一投影平面中多个特征点一一匹配的多个特征点。
对于每个第一投影平面,可以确定该第一投影平面包括的多个特征点,并根据第一图层中特征点与第二图层中特征点的一一匹配关系,在第二图层的多个特征点中,确定与该第一投影平面包括的多个特征点一一匹配的多个特征点,得到一个第二目标点集合。相应的,根据至少一个第一投影平面可以确定至少一个第二目标点集合。
步骤2062b2、将每个第二目标点集合所包括的多个特征点所在的平面确定为与对应第一投影平面所对应的第二投影平面,得到至少一个第二投影平面。
每个第二目标点集合中包括的多个特征点可以确定一个第二投影平面,相应的,根据至少一个目标特征,可以得到至少一个第二投影平面。
步骤2063、根据具有对应关系的投影平面中特征点的图层空间坐标,构建第一图形与第二图形的投影误差函数。
其中,投影误差函数用于表征第一图形与第二图形的投影误差跟随第一图层和第二图层的位移关系的变化关系,该第一图形为以第一图层中属于多个特征点对的所有特征点为顶点的图形,该第二图形为以第二图层中属于多个特征点对的所有特征点为顶点的图形。可选的,如图16所示,该步骤2063的实现过程可以包括:
步骤2063a、根据第一投影平面中多个第一特征点的图层空间坐标,确定第一多边形的质心坐标,并根据第二投影平面中多个第二特征点的图层空间坐标,确定第二多边形的质心坐标。
其中,第一多边形为连接多个第一特征点得到的多边形中面积最大的多边形,第二多边形为连接多个第二特征点得到的多边形中面积最大的多边形。
可选的,对于第一投影平面中的多个第一特征点,连接该多个第一特征点得到的第一多边形的质心坐标xm=∑mi×xi/∑mi。其中,xi为第一特征点的图层空间坐标,mi为对应的第一特征点的权重,i为正整数。且该每个第一特征点对应的权重可以根据实际需要确定,例如,该每个特征点对应的权重m可以均为1。第二多边形的质心坐标的计算方式可以相应参考该第一多边形的质心坐标的计算方式。
步骤2063b、对于每对具有对应关系的第一投影平面和第二投影平面,根据第一投影平面中多个第一特征点的图层空间坐标和第二投影平面中多个第二特征点的图层空间坐标,构建第一多边形与第二多边形的子投影误差函数。
其中,子投影误差函数用于表征第一多边形与第二多边形的投影误差跟随第一图层和第二图层的位移关系的变化关系。该位移关系可以包括:旋转关系和平移关系。
在构建第一多边形与第二多边形的子投影误差函数时,可以根据多个第一特征点的图层空间坐标、多个第二特征点的图层空间坐标、第一多边形的质心坐标和第二多边形的质心坐标,构建子投影误差函数。且当根据质心坐标构建子投影函数时,能够提高根据该子投影函数确定的位移关系的准确性。
可选的,第一特征点i的图层空间坐标sri、第二特征点i的图层空间坐标sli、第一多边形的质心坐标xr、第二多边形的质心坐标xl、子投影误差函数e、旋转关系r和平移关系t可以满足:
其中,“.”表示点乘运算,n为第一投影平面中第一特征点的总数,||.||为范数运算。
需要说明的是,在确定第一图层和第二图层的第一位移的过程中,也可以选择不执行步骤2063a。当未执行步骤2063a时,该第一特征点的图层空间坐标sr、第二特征点的图层空间坐标sl、子投影误差函数e、旋转关系r和平移关系t可以满足:
步骤2063c、将根据至少一对具有对应关系的第一投影平面与第二投影平面构建的子投影误差函数的和确定为投影误差函数。
在根据每对具有对应关系的第一投影平面和第二投影平面,构建对应的第一多边形与第二多边形的子投影误差函数后,可以将至少一对具有对应关系的第一投影平面和第二投影平面对应的子投影误差函数的和确定为投影误差函数,即投影误差函数
步骤2064、将使投影误差函数取得最小值的位移关系确定为目标位移关系。
在确定第一图形相对于第二图形的投影误差函数后,可以通过优化算法对该投影误差函数进行优化,以获取使该投影误差函数取得最小值的旋转关系r和平移关系t,并将该使投影误差函数取得最小值的旋转关系r确定为目标位移关系中的旋转关系,将该使投影误差函数取得最小值的平移关系t确定为目标位移关系中的平移关系。
由于第一图层和第二图层中均包括多个特征点,且每个特征点的图层空间坐标均为3d坐标,若直接根据该特征点的图层空间坐标获取第一图层和第二图层的目标位移关系,其实现过程相当于3d空间内的位姿解算过程,其具有较高的计算复杂度,且计算精度较低。在本申请实施例中,通过确定至少一个第一投影平面和至少一个第二投影平面,并根据具有对应关系的投影平面构建误差函数获取该目标位移关系,能够将3d空间内的计算问题转化为平面内的计算问题,能够降低计算的复杂度,并提高计算精度和计算的稳定性。
步骤207、服务器根据每两个图层的目标位移关系,对每两个图层进行图层融合,得到目标环境的地图。
在对每两个图层中的特征点进行特征点匹配后,可以确定该每图层中相互重叠的区域,此时,可以根据该每两个图层间的目标位移关系,对该每两个图层中的至少一个图层中所有特征点的图层空间坐标进行坐标转换,使得该每两个图层中所有特征点转换后的图层空间坐标根据同一参考坐标系得到。此时,可将多个图层展开到同一个坐标下,得到包括多个图层中特征点的地图,且该地图中所有特征点的图层空间坐标均根据同一参考基准得到。其中,该参考坐标系可以为多个图层中任一图层所在的坐标系,或者,该参考坐标系可以为其他指定的坐标系,本申请实施例对此不作具体限定。
当待融合图层为根据停车场环境中的图像确定的图层时,通过本申请实施例提供的地图构建方法能够得到该停车场环境中的定位图层。该停车场定位图层可以通过该各个特征点对停车场的当前环境进行描述,且该停车场定位图层中所有特征点的坐标均是根据同一坐标系确定的,因此,通过将待定位车辆当前所处的环境的描述与定位图层进行比较,可以准确地确定该待定位车辆在该停车场中的位置,实现对该待定位车辆位置的精确定位,进而为智能驾驶车辆的安全行驶提供保障。
综上所述,本申请实施例提供的地图构建方法,通过对每两个图层中的特征点进行特征点匹配,根据每个特征点对中每个特征点在对应图层中的图层空间坐标,获取两个图层的目标位移关系,并根据每两个图层的目标位移关系,对该每两个图层进行图层融合,由于每个特征点的图层空间坐标根据对应的特征点在目标图像中的图像坐标,及每两帧目标图像的采集地点的相对位移得到,且该相对位移根据图像采集组件在图像采集地点的运动参数得到,相较于相关技术,该特征点的图层空间坐标无需依赖gps提供图像中特征点的位置信息,能够避免gps信号被影响导致根据该gps信号确定的位置信息可靠性较低的问题,有效地提高了通过图层融合得到的地图的准确度。
并且,由于该地图构建方法无需依赖gps提供图像中特征点的位置信息,使得该方法能够应用于没有gps信号或gps信号较弱的目标环境中,使得该方法具有较大的应用范围。例如,当将该地图构建方法应用于停车场环境中时,能够避免出现停车场环境中gps信号被影响导致根据该gps信号确定的位置信息可靠性较低的问题,可以提高得到的停车场定位图层的准确度和精度,为智能驾驶车辆的安全行驶提供有效的保障。
需要说明的是,本发明实施例提供的地图构建方法步骤的先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本发明的保护范围之内,因此不再赘述。
本申请实施例还提供了一种地图构建装置,如图17所示,该装置600可以包括:
匹配模块601,用于在用于构建地图的多个图层中,对每两个图层中的特征点进行特征点匹配,得到多个特征点对,每个特征点对包括分别来自两个图层且互相匹配的两个特征点,每个图层包括多帧图像中的特征点,每帧图像携带有目标环境的图像信息。
获取模块602,用于根据每个特征点对中每个特征点在对应图层中的图层空间坐标,获取两个图层的目标位移关系,图层空间坐标根据特征点在目标图像中的图像坐标,及每两帧目标图像采集地点的相对位移得到,相对位移根据图像采集组件在图像采集地点的运动参数得到,运动参数用于指示图像采集组件的运动状态,目标图像为特征点所在的图像。
融合模块603,用于根据每两个图层的目标位移关系,对每两个图层进行图层融合,得到目标环境的地图。
可选地,两个图层可以包括第一图层和第二图层,如图18所示,获取模块602,可以包括:
第一确定子模块6021,用于根据第一图层中属于多个特征点对的所有特征点的图层空间坐标,确定至少一个第一投影平面;
第一确定子模块6021,还用于根据第二图层中属于多个特征点对的所有特征点的图层空间坐标,确定至少一个第二投影平面,至少一个第一投影平面与至少一个第二投影平面一一对应,且用于确定每个第一投影平面的多个特征点与用于确定对应第二投影平面的多个特征点为一一匹配的特征点。
构建子模块6022,用于根据具有对应关系的投影平面中特征点的图层空间坐标,构建第一图形与第二图形的投影误差函数,投影误差函数用于表征第一图形与第二图形的投影误差跟随两个图层的位移关系的变化关系,第一图形为以第一图层中属于多个特征点对的所有特征点为顶点的图形,第二图形为以第二图层中属于多个特征点对的所有特征点为顶点的图形。
第二确定子模块6023,用于将使投影误差函数取得最小值的位移关系确定为目标位移关系。
可选地,第一确定子模块6021,用于:
对于每对具有对应关系的第一投影平面和第二投影平面,根据第一投影平面中多个第一特征点的图层空间坐标,及第二投影平面中多个第二特征点的图层空间坐标,构建第一多边形与第二多边形的子投影误差函数,子投影误差函数用于表征第一多边形与第二多边形的投影误差跟随位移关系的变化关系,第一多边形为连接多个第一特征点得到的多边形中面积最大的多边形,第二多边形为连接多个第二特征点得到的多边形中面积最大的多边形。
将根据至少一对具有对应关系的第一投影平面与第二投影平面构建的子投影误差函数的和确定为投影误差函数。
可选地,如图19所示,获取模块602还可以包括:
第三确定子模块6024,用于根据多个第一特征点的图层空间坐标,确定第一多边形的质心坐标。
第三确定子模块6024,还用于根据多个第二特征点的图层空间坐标,确定第二多边形的质心坐标。
相应的,第一确定子模块6021,用于:根据多个第一特征点的图层空间坐标、多个第二特征点的图层空间坐标、第一多边形的质心坐标和第二多边形的质心坐标,构建子投影误差函数。
可选地,位移关系可以包括:旋转关系和平移关系,第一特征点的图层空间坐标sr、第二特征点的图层空间坐标sl、第一多边形的质心坐标xr、第二多边形的质心坐标xl、子投影误差函数e、旋转关系r和平移关系t可以满足:
其中,n为第一投影平面中第一特征点的总数,||.||为范数运算。
可选地,第一确定子模块6021,用于:
在第一图层中属于多个特征点对的所有特征点中,根据任意三个未被标记的特征点的图层空间坐标确定初始平面,并将该三个未被标记的特征点添加至初始平面对应的第一目标点集合,第一图层中属于多个特征点对的所有特征点的初始标记状态均为未被标记。
依次对每个其他特征点执行筛选流程,直至第一目标点集合中的特征点总数达到预设数量,得到一个第一目标点集合,并对第一目标点集合中的所有特征点进行标记,其他特征点为所有未被标记的特征点中除三个未被标记的特征点外的特征点。
重复确定初始平面和执行筛选流程的过程,直至第一图层中属于多个特征点对的所有特征点均被标记,得到至少一个第一目标点集合。
根据每个第一目标点集合中的所有特征点确定一个第一投影平面,得到至少一个第一投影平面。
其中,对于每个其他特征点,筛选流程可以包括:
当其他特征点到初始平面的距离小于预设距离阈值时,确定以其他特征点和第一目标点集合中所有特征点为顶点的多个多边形。
当多个多边形中存在凸多边形时,将其他特征点添加到第一目标点集合中,得到更新后的第一目标点集合。
可选地,第一确定子模块6021,用于:
在第二图层的所有特征点中,分别根据每个第一投影平面确定一个第二目标点集合,每个第二目标点集合中可以包括与第一投影平面中多个特征点一一匹配的多个特征点。
将每个第二目标点集合所包括的多个特征点所在的平面确定为与对应第一投影平面所对应的第二投影平面,得到至少一个第二投影平面。
在一种可实现方式中,如图20所示,匹配模块601,可以包括:
获取子模块6011,用于分别根据第一图像中任一第一待匹配特征点的像素值与第二图像中每个第二待匹配特征点的像素值,获取与第二待匹配特征点对应的指定参数,指定参数用于指示第一待匹配特征点与第二待匹配特征点所表征的图像信息的差异,第一图像为第一图层对应的多帧图像中第一待匹配特征点所在的任一图像,第二图像为第二图层对应的多帧图像中第二待匹配特征点所在的任一图像。
第四确定子模块6012,用于将最小指定参数对应的第二待匹配特征点确定为与第一待匹配特征点匹配的特征点。
在另一种可实现方式中,请继续参考图20,匹配模块601,可以包括:
获取子模块6011,用于根据第一图像中任一第一待匹配特征点的像素值与第二图像中任一第二待匹配特征点的像素值,获取与第二待匹配特征点对应的指定参数,指定参数用于指示第一待匹配特征点与第二待匹配特征点所表征的图像信息的差异,第一图像为第一图层对应的多帧图像中第一待匹配特征点所在的任一图像,第二图像为第二图层对应的多帧图像中第二待匹配特征点所在的任一图像。
第四确定子模块6012,用于当指定参数小于第一预设阈值时,确定第一待匹配特征点与第二待匹配特征点匹配。
可选地,获取子模块6011,用于:根据第一图像块中每个像素点的像素值和第二图像块中每个像素点的像素值,获取指定参数,第一图像块包括第一待匹配特征点对应的像素点,第二图像块包括第二待匹配特征点对应的像素点,第二图像块的大小与第一图像块的大小相同。
可选地,第一图像和第二图像均由包括多级子图像的图像金字塔表征,且第一图像的多级子图像与第二图像的多级子图像一一对应,相应的,获取子模块6011,用于:
根据第一图像的每级子图像和第二图像对应级的子图像,分别获取对应级的指定参数分量。
将多级子图像对应的指定参数分量的和确定为指定参数。
可选地,指定参数可以包括:像素灰度差和/或描述子的相似度。
可选地,融合模块603,用于:对于两个图层中至少一个图层,对图层中所有特征点的图层空间坐标进行坐标转换,使得包括多个图层中特征点的地图中所有特征点的图层空间坐标根据同一参考坐标系得到。
可选地,目标环境为停车场环境。
综上所述,本申请实施例提供的地图构建装置,通过匹配模块对每两个图层中的特征点进行特征点匹配,根据每个特征点对中每个特征点在对应图层中的图层空间坐标,获取模块获取两个图层的目标位移关系,融合模块根据每两个图层的目标位移关系,对该每两个图层进行图层融合,由于每个特征点的图层空间坐标根据对应的特征点在目标图像中的图像坐标,及每两帧目标图像的采集地点的相对位移得到,且该相对位移根据图像采集组件在图像采集地点的运动参数得到,相较于相关技术,该特征点的图层空间坐标无需依赖gps提供图像中特征点的位置信息,能够避免gps信号被影响导致根据该gps信号确定的位置信息可靠性较低的问题,有效地提高了通过图层融合得到的地图的准确度。
并且,由于该构建地图的过程无需依赖gps提供图像中特征点的位置信息,使得该装置能够应用于没有gps信号或gps信号较弱的目标环境中,使得该装置具有较大的应用范围。例如,当将该地图构建装置应用于停车场环境中时,能够避免出现停车场环境中gps信号被影响导致根据该gps信号确定的位置信息可靠性较低的问题,可以提高得到的停车场定位图层的准确度和精度,为智能驾驶车辆的安全行驶提供有效的保障。
本申请实施例还提供了一种地图构建装置,如图21所示,该地图构建装置700可以包括:
第一获取模块701,用于获取携带有目标环境的图像信息的多帧图像,多帧图像由图像采集组件采集得到。
第二获取模块702,用于获取图像采集组件在各帧图像的采集地点的运动参数,运动参数用于指示图像采集组件的运动状态。
第三获取模块703,用于根据图像采集组件的运动参数,获取每两帧图像的采集地点的相对位移。
第四获取模块704,用于根据多帧图像和相对位移,获取包括多帧图像中特征点的图层,该图层用于构建地图。
发送模块705,用于向服务器发送图层和相对位移。
可选地,多帧图像均为携带有目标环境的图像信息的关键帧图像,第一获取模块701,用于:
获取携带有目标环境的图像信息的多帧待筛选图像。
获取每帧待筛选图像的目标参数,目标参数用于指示待筛选图像相对于指定图像的变化量。
当待筛选图像的目标参数大于第二预设阈值时,确定待筛选图像为关键帧图像。
可选地,目标参数可以包括以下一个或多个:
待筛选图像的采集时间与指定图像的采集时间的时间间隔。
采集待筛选图像时图像采集组件的取景角度相对于采集指定图像时图像采集组件的取景角度的角度变化量。
待筛选图像的采集地点与指定图像的采集地点的相对位移。
待筛选图像所包括的特征点的第一总数。
以及,第二总数与第一总数的第一比值,第二总数为待筛选图像所包括的特征点中相对于指定图像所包括的特征点中的不同特征点的总数。
可选地,多帧图像在时序上相邻,每帧待筛选图像对应的指定图像为多帧图像中,时序在待筛选图像之前,且时序距离待筛选图像最近的一帧关键帧图像。
可选地,第一获取模块701,用于:
当待筛选图像的目标参数大于第二预设阈值时,确定第二总数与第三总数的第二比值,第三总数为待筛选图像所包括的特征点的总数,第二总数为待筛选图像所可以包括的特征点中相对于指定图像所可以包括的特征点中的不同特征点的总数。
当第二比值大于预设比值时,将待筛选图像确定为关键帧图像。
综上所述,本申请实施例提供的地图构建装置,通过第一获取模获取携带有目标环境的图像信息的多帧图像,第二获取模块获取图像采集组件在各帧图像的采集地点的运动参数,第三获取模块根据该运动参数,获取每两帧图像的采集地点的相对位移,第四获取模块根据多帧图像和相对位移,获取包括多帧图像中特征点的图层,及发送模块向服务器发送图层和相对位移,使得服务器能够根据特征点在目标图像中的图像坐标,及每两帧目标图像的采集地点的相对位移得到特征点的图层空间坐标,且该相对位移根据图像采集组件在图像采集地点的运动参数得到,相较于相关技术,该特征点的图层空间坐标无需依赖gps提供图像中特征点的位置信息,能够避免gps信号被影响导致根据该gps信号确定的位置信息可靠性较低的问题,有效地提高了通过图层融合得到的地图的准确度。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置模块和子模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种地图构建装置,该地图构建装置可以包括处理器和存储器。该存储器中可存储有计算机程序,在处理器执行存储器存储的计算机程序时,该地图构建装置可以执行本申请实施例提供的地图构建方法。例如,该地图构建装置用于执行上述方法实施例中的步骤205至步骤207。
具体地,请参考图22,该地图构建装置20可以包括:处理器22、信号接口24、存储器26和总线28等部件。其中,存储器26与信号接口24分别通过总线28与处理器22相连。
处理器22可以包括一个或者一个以上处理核心。处理器22通过运行软件程序以及模块,从而执行各种功能应用以及数据处理。处理器22可以包括中央处理单元、数字信号处理器、微处理器、微控制器或人工智能处理器中的一种或多种,还可以进一步选择性地可以包括执行运算所需的硬件加速器,如各种逻辑运算电路。
信号接口24可以为多个,该信号接口24用于与其它装置或模块建立连接,例如:可以通过该信号接口24与收发机进行连接。因此,可选地,该地图构建装置20还可可以包括收发机(图中未示出)。该收发机具体执行信号收发,例如,该收发机可以用于接收终端发送的图层和图像的采集地点间的相对位移。当处理器22需要执行信号收发操作的时候可以调用或驱动收发机执行相应收发操作。因此,当地图构建装置20进行信号收发的时候,处理器22用于决定或发起收发操作,相当于发起者,而收发机用于具体收发执行,相当于执行者。该收发机也可以是收发电路、射频电路或射频单元,本实施例对此不限定。
存储器26可用于存储计算机程序以及模块。该计算机程序可以是应用程序或驱动程序。示例地,存储器26可存储至少一个功能所需的程序模块262。其中,该程序模块262可以包括:
匹配单元2621,具有与匹配模块601相同或相似的功能。例如,该匹配单元2621用于执行上述方法实施例中的步骤205。
获取单元2622,具有与获取模块602相同或相似的功能。例如,该获取单元2622用于执行上述方法实施例中的步骤206。
融合单元2623,具有与融合模块603相同或相似的功能。例如,该融合单元2623用于执行上述方法实施例中的步骤207。
本申请实施例还提供了一种地图构建装置,该地图构建装置可以包括处理器和存储器。该存储器中可存储有计算机程序,在处理器执行存储器存储的计算机程序时,该地图构建装置可以执行本申请实施例提供的地图构建方法。例如,该地图构建装置用于执行上述方法实施例中的步骤201至步骤204。
具体地,请参考图23,该地图构建装置40可以包括:处理器42、信号接口44、存储器46和总线48等部件。其中,存储器46与信号接口44分别通过总线48与处理器42相连。
处理器42可以包括一个或者一个以上处理核心。处理器42通过运行软件程序以及模块,从而执行各种功能应用以及数据处理。处理器42可以包括中央处理单元、数字信号处理器、微处理器、微控制器或人工智能处理器中的一种或多种,还可以进一步选择性地可以包括执行运算所需的硬件加速器,如各种逻辑运算电路。
信号接口44可以为多个,该信号接口44用于与其它装置或模块建立连接,例如:可以通过该信号接口44与收发机进行连接。因此,可选地,该地图构建装置40还可可以包括收发机(图中未示出)。该收发机具体执行信号收发,例如,该收发机可以用于向服务器发送图层和图像的采集地点间的相对位移。当处理器42需要执行信号收发操作的时候可以调用或驱动收发机执行相应收发操作。因此,当地图构建装置40进行信号收发的时候,处理器42用于决定或发起收发操作,相当于发起者,而收发机用于具体收发执行,相当于执行者。该收发机也可以是收发电路、射频电路或射频单元,本实施例对此不限定。
存储器46可用于存储计算机程序以及模块。该计算机程序可以是应用程序或驱动程序。示例地,存储器46可存储至少一个功能所需的程序模块462。其中,该程序模块462可以包括:
第一获取单元4621,具有与第一获取模块701相同或相似的功能。例如,该第一获取单元4621用于执行上述方法实施例中的步骤201。
第二获取单元4622,具有与第二获取模块702相同或相似的功能。例如,该第二获取单元4622用于执行上述方法实施例中的步骤202。
第三获取单元4623,具有与第三获取模块703相同或相似的功能。例如,该第三获取单元4623用于执行上述方法实施例中的步骤203。
第四获取单元4624,具有与第四获取模块704相同或相似的功能。例如,该第四获取单元4624用于执行上述方法实施例中的步骤204。
发送单元4625,具有与发送模块705相同或相似的功能。例如,该发送单元4625用于执行上述方法实施例中的步骤205。
在一种可实现方式中,该地图构建装置40还可以包括:显示屏和摄像头组件等。
该显示屏用于显示ui(userinterface,用户界面)。例如,该显示屏可用于显示携带有目标环境的图像信息的图像。该ui可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏是触摸显示屏时,显示屏还具有采集在显示屏的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器进行处理。此时,显示屏还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏可以为一个,设置在地图构建装置的前面板;在另一些实施例中,显示屏可以为至少两个,分别设置在地图构建装置的不同表面或呈折叠设计;在再一些实施例中,显示屏可以是柔性显示屏,设置在地图构建装置的弯曲表面上或折叠面上。甚至,显示屏还可以设置成非矩形的不规则图形,也即异形屏。显示屏可以采用lcd(liquidcrystaldisplay,液晶显示屏)、oled(organiclight-emittingdiode,有机发光二极管)等材质制备。
摄像头组件用于采集图像或视频。例如,该摄像头用于采集携带有目标环境图像信息的图像。可选地,摄像头组件包括前置摄像头和后置摄像头。示例地,前置摄像头设置在地图构建装置的前面板,后置摄像头设置在地图构建装置的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及vr(virtualreality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
本申请实施例还提供了一种存储介质,该存储介质可以为非易失性计算机可读存储介质,存储介质内存储有计算机程序,计算机程序指示服务器执行本申请实施例提供的地图构建方法。该存储介质可以包括:只读存储器(read-onlymemory,rom)或随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可存储程序代码的介质。
本申请实施例还提供了一种包含指令的计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行本申请实施例提供的地图构建方法。该计算机程序产品可以包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者通过该计算机可读存储介质进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如,固态硬盘(solidstatedisk,ssd))等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
1.一种地图构建方法,其特征在于,所述方法包括:
在用于构建地图的多个图层中,对每两个图层中的特征点进行特征点匹配,得到多个特征点对,每个所述特征点对包括分别来自所述两个图层且互相匹配的两个特征点,每个所述图层包括多帧图像中的特征点,每帧所述图像携带有目标环境的图像信息;
根据每个所述特征点对中每个特征点在对应图层中的图层空间坐标,获取所述两个图层的目标位移关系,所述图层空间坐标根据所述特征点在目标图像中的图像坐标,及每两帧所述目标图像采集地点的相对位移得到,所述相对位移根据图像采集组件在图像采集地点的运动参数得到,所述运动参数用于指示所述图像采集组件的运动状态,所述目标图像为所述特征点所在的图像;
根据所述每两个图层的目标位移关系,对所述每两个图层进行图层融合,得到所述目标环境的地图。
2.根据权利要求1所述的方法,其特征在于,所述两个图层包括第一图层和第二图层,所述根据每个所述特征点对中每个特征点在对应图层中的图层空间坐标,获取所述两个图层的目标位移关系,包括:
根据所述第一图层中属于所述多个特征点对的所有特征点的图层空间坐标,确定至少一个第一投影平面;
根据所述第二图层中属于所述多个特征点对的所有特征点的图层空间坐标,确定至少一个第二投影平面,所述至少一个第一投影平面与所述至少一个第二投影平面一一对应,且用于确定每个所述第一投影平面的多个特征点与用于确定对应第二投影平面的多个特征点为一一匹配的特征点;
根据具有对应关系的投影平面中特征点的图层空间坐标,构建第一图形与第二图形的投影误差函数,所述投影误差函数用于表征所述第一图形与所述第二图形的投影误差跟随所述两个图层的位移关系的变化关系,所述第一图形为以所述第一图层中属于所述多个特征点对的所有特征点为顶点的图形,所述第二图形为以所述第二图层中属于所述多个特征点对的所有特征点为顶点的图形;
将使所述投影误差函数取得最小值的位移关系确定为所述目标位移关系。
3.根据权利要求2所述的方法,其特征在于,所述根据具有对应关系的投影平面中特征点的图层空间坐标,构建第一图形与第二图形的投影误差函数,包括:
对于每对具有对应关系的第一投影平面和第二投影平面,根据所述第一投影平面中多个第一特征点的图层空间坐标,及所述第二投影平面中多个第二特征点的图层空间坐标,构建第一多边形与第二多边形的子投影误差函数,所述子投影误差函数用于表征所述第一多边形与所述第二多边形的投影误差跟随所述位移关系的变化关系,所述第一多边形为连接所述多个第一特征点得到的多边形中面积最大的多边形,所述第二多边形为连接所述多个第二特征点得到的多边形中面积最大的多边形;
将根据至少一对具有对应关系的第一投影平面与第二投影平面构建的子投影误差函数的和确定为所述投影误差函数。
4.根据权利要求3所述的方法,其特征在于,在所述根据所述第一投影平面中多个第一特征点的图层空间坐标,及所述第二投影平面中多个第二特征点的图层空间坐标,构建第一多边形与第二多边形的子投影误差函数之前,所述方法还包括:
根据所述多个第一特征点的图层空间坐标,确定所述第一多边形的质心坐标;
根据所述多个第二特征点的图层空间坐标,确定所述第二多边形的质心坐标;
所述根据所述第一投影平面中多个第一特征点的图层空间坐标,及所述第二投影平面中多个第二特征点的图层空间坐标,构建第一多边形与第二多边形的子投影误差函数,包括:
根据所述多个第一特征点的图层空间坐标、所述多个第二特征点的图层空间坐标、所述第一多边形的质心坐标和所述第二多边形的质心坐标,构建所述子投影误差函数。
5.根据权利要求2至4任一所述的方法,所述根据所述第一图层中属于所述多个特征点对的所有特征点的图层空间坐标,确定至少一个第一投影平面,包括:
在所述第一图层中属于所述多个特征点对的所有特征点中,根据任意三个未被标记的特征点的图层空间坐标确定初始平面,并将所述三个未被标记的特征点添加至所述初始平面对应的第一目标点集合,所述第一图层中属于所述多个特征点对的所有特征点的初始标记状态均为未被标记;
依次对每个其他特征点执行筛选流程,直至第一目标点集合中的特征点总数达到预设数量,得到一个第一目标点集合,并对所述第一目标点集合中的所有特征点进行标记,所述其他特征点为所有未被标记的特征点中除所述三个未被标记的特征点外的特征点;
重复所述确定初始平面和执行筛选流程的过程,直至所述第一图层中属于所述多个特征点对的所有特征点均被标记,得到至少一个第一目标点集合;
根据每个所述第一目标点集合中的所有特征点确定一个第一投影平面,得到所述至少一个第一投影平面;
其中,对于每个其他特征点,所述筛选流程包括:
当所述其他特征点到所述初始平面的距离小于预设距离阈值时,确定以所述其他特征点和所述第一目标点集合中所有特征点为顶点的多个多边形;
当所述多个多边形中存在凸多边形时,将所述其他特征点添加到所述第一目标点集合中,得到更新后的第一目标点集合。
6.根据权利要求2至5任一所述的方法,所述根据所述第二图层中属于所述多个特征点对的所有特征点的图层空间坐标,确定至少一个第二投影平面,包括:
在所述第二图层的所有特征点中,分别根据每个所述第一投影平面确定一个第二目标点集合,每个所述第二目标点集合中包括与所述第一投影平面中多个特征点一一匹配的多个特征点;
将每个所述第二目标点集合所包括的多个特征点所在的平面确定为与对应第一投影平面所对应的第二投影平面,得到所述至少一个第二投影平面。
7.根据权利要求1至6任一所述的方法,其特征在于,所述两个图层包括第一图层和第二图层,所述对每两个图层中的特征点进行特征点匹配,包括:
分别根据第一图像中任一第一待匹配特征点的像素值与第二图像中每个第二待匹配特征点的像素值,获取与所述第二待匹配特征点对应的指定参数,所述指定参数用于指示所述第一待匹配特征点与所述第二待匹配特征点所表征的图像信息的差异,所述第一图像为所述第一图层对应的多帧图像中所述第一待匹配特征点所在的任一图像,所述第二图像为所述第二图层对应的多帧图像中所述第二待匹配特征点所在的任一图像;
将最小指定参数对应的第二待匹配特征点确定为与所述第一待匹配特征点匹配的特征点。
8.根据权利要求1至6任一所述的方法,其特征在于,所述两个图层包括第一图层和第二图层,所述对每两个图层中的特征点进行特征点匹配,包括:
根据所述第一图像中任一第一待匹配特征点的像素值与所述第二图像中任一第二待匹配特征点的像素值,获取与所述第二待匹配特征点对应的指定参数,所述指定参数用于指示所述第一待匹配特征点与所述第二待匹配特征点所表征的图像信息的差异,所述第一图像为所述第一图层对应的多帧图像中所述第一待匹配特征点所在的任一图像,所述第二图像为所述第二图层对应的多帧图像中所述第二待匹配特征点所在的任一图像;
当所述指定参数小于第一预设阈值时,确定所述第一待匹配特征点与所述第二待匹配特征点匹配。
9.根据权利要求7或8所述的方法,其特征在于,所述第一图像和所述第二图像均由包括多级子图像的图像金字塔表征,且所述第一图像的多级子图像与所述第二图像的多级子图像一一对应,所述获取与所述第二待匹配特征点对应的指定参数,包括:
根据所述第一图像的每级子图像和所述第二图像对应级的子图像,分别获取对应级的指定参数分量;
将所述多级子图像对应的指定参数分量的和确定为所述指定参数。
10.一种地图构建方法,其特征在于,所述方法包括:
获取携带有目标环境图像信息的多帧图像,所述多帧图像由图像采集组件采集得到;
获取所述图像采集组件在各帧图像的采集地点的运动参数,所述运动参数用于指示所述图像采集组件的运动状态;
根据所述图像采集组件的运动参数,获取每两帧图像的采集地点的相对位移;
根据所述多帧图像和所述相对位移,获取包括所述多帧图像中特征点的图层,所述图层用于构建地图;
向所述服务器发送所述图层和所述相对位移。
11.根据权利要求10所述的方法,其特征在于,所述多帧图像均为携带有所述目标环境的图像信息的关键帧图像,所述获取携带有目标环境图像信息的多帧图像,包括:
获取携带有所述目标环境的图像信息的多帧待筛选图像;
获取每帧所述待筛选图像的目标参数,所述目标参数用于指示所述待筛选图像相对于指定图像的变化量;
当所述待筛选图像的目标参数大于第二预设阈值时,确定所述待筛选图像为关键帧图像。
12.一种地图构建装置,其特征在于,所述装置包括:
匹配模块,用于在用于构建地图的多个图层中,对每两个图层中的特征点进行特征点匹配,得到多个特征点对,每个所述特征点对包括分别来自所述两个图层且互相匹配的两个特征点,每个所述图层包括多帧图像中的特征点,每帧所述图像携带有目标环境的图像信息;
获取模块,用于根据每个所述特征点对中每个特征点在对应图层中的图层空间坐标,获取所述两个图层的目标位移关系,所述图层空间坐标根据所述特征点在目标图像中的图像坐标,及每两帧所述目标图像采集地点的相对位移得到,所述相对位移根据图像采集组件在图像采集地点的运动参数得到,所述运动参数用于指示所述图像采集组件的运动状态,所述目标图像为所述特征点所在的图像;
融合模块,用于根据所述每两个图层的目标位移关系,对所述每两个图层进行图层融合,得到所述目标环境的地图。
13.根据权利要求12所述的装置,其特征在于,所述两个图层包括第一图层和第二图层,所述获取模块,包括:
第一确定子模块,用于根据所述第一图层中属于所述多个特征点对的所有特征点的图层空间坐标,确定至少一个第一投影平面;
所述第一确定子模块,用于根据所述第二图层中属于所述多个特征点对的所有特征点的图层空间坐标,确定至少一个第二投影平面,所述至少一个第一投影平面与所述至少一个第二投影平面一一对应,且用于确定每个所述第一投影平面的多个特征点与用于确定对应第二投影平面的多个特征点为一一匹配的特征点;
构建子模块,用于根据具有对应关系的投影平面中特征点的图层空间坐标,构建第一图形与第二图形的投影误差函数,所述投影误差函数用于表征所述第一图形与所述第二图形的投影误差跟随所述两个图层的位移关系的变化关系,所述第一图形为以所述第一图层中属于所述多个特征点对的所有特征点为顶点的图形,所述第二图形为以所述第二图层中属于所述多个特征点对的所有特征点为顶点的图形;
第二确定子模块,用于将使所述投影误差函数取得最小值的位移关系确定为所述目标位移关系。
14.根据权利要求13所述的装置,其特征在于,所述第一确定子模块,用于:
对于每对具有对应关系的第一投影平面和第二投影平面,根据所述第一投影平面中多个第一特征点的图层空间坐标,及所述第二投影平面中多个第二特征点的图层空间坐标,构建第一多边形与第二多边形的子投影误差函数,所述子投影误差函数用于表征所述第一多边形与所述第二多边形的投影误差跟随所述位移关系的变化关系,所述第一多边形为连接所述多个第一特征点得到的多边形中面积最大的多边形,所述第二多边形为连接所述多个第二特征点得到的多边形中面积最大的多边形;
将根据至少一对具有对应关系的第一投影平面与第二投影平面构建的子投影误差函数的和确定为所述投影误差函数。
15.根据权利要求14所述的装置,其特征在于,所述获取模块还包括:
第三确定子模块,用于根据所述多个第一特征点的图层空间坐标,确定所述第一多边形的质心坐标;
所述第三确定子模块,还用于根据所述多个第二特征点的图层空间坐标,确定所述第二多边形的质心坐标;
所述第一确定子模块,用于:
根据所述多个第一特征点的图层空间坐标、所述多个第二特征点的图层空间坐标、所述第一多边形的质心坐标和所述第二多边形的质心坐标,构建所述子投影误差函数。
16.根据权利要求13至15任一所述的装置,所述第一确定子模块,用于:
在所述第一图层中属于所述多个特征点对的所有特征点中,根据任意三个未被标记的特征点的图层空间坐标确定初始平面,并将所述三个未被标记的特征点添加至所述初始平面对应的第一目标点集合,所述第一图层中属于所述多个特征点对的所有特征点的初始标记状态均为未被标记;
依次对每个其他特征点执行筛选流程,直至第一目标点集合中的特征点总数达到预设数量,得到一个第一目标点集合,并对所述第一目标点集合中的所有特征点进行标记,所述其他特征点为所有未被标记的特征点中除所述三个未被标记的特征点外的特征点;
重复所述确定初始平面和执行筛选流程的过程,直至所述第一图层中属于所述多个特征点对的所有特征点均被标记,得到至少一个第一目标点集合;
根据每个所述第一目标点集合中的所有特征点确定一个第一投影平面,得到所述至少一个第一投影平面;
其中,对于每个其他特征点,所述筛选流程包括:
当所述其他特征点到所述初始平面的距离小于预设距离阈值时,确定以所述其他特征点和所述第一目标点集合中所有特征点为顶点的多个多边形;
当所述多个多边形中存在凸多边形时,将所述其他特征点添加到所述第一目标点集合中,得到更新后的第一目标点集合。
17.根据权利要求13至16任一所述的装置,所述第一确定子模块,用于:
在所述第二图层的所有特征点中,分别根据每个所述第一投影平面确定一个第二目标点集合,每个所述第二目标点集合中包括与所述第一投影平面中多个特征点一一匹配的多个特征点;
将每个所述第二目标点集合所包括的多个特征点所在的平面确定为与对应第一投影平面所对应的第二投影平面,得到所述至少一个第二投影平面。
18.根据权利要求12至17任一所述的装置,其特征在于,所述匹配模块,包括:
获取子模块,用于分别根据第一图像中任一第一待匹配特征点的像素值与第二图像中每个第二待匹配特征点的像素值,获取与所述第二待匹配特征点对应的指定参数,所述指定参数用于指示所述第一待匹配特征点与所述第二待匹配特征点所表征的图像信息的差异,所述第一图像为所述第一图层对应的多帧图像中所述第一待匹配特征点所在的任一图像,所述第二图像为所述第二图层对应的多帧图像中所述第二待匹配特征点所在的任一图像;
第四确定子模块,用于将最小指定参数对应的第二待匹配特征点确定为与所述第一待匹配特征点匹配的特征点。
19.根据权利要求12至17任一所述的装置,其特征在于,所述匹配模块,包括:
获取子模块,用于根据所述第一图像中任一第一待匹配特征点的像素值与所述第二图像中任一第二待匹配特征点的像素值,获取与所述第二待匹配特征点对应的指定参数,所述指定参数用于指示所述第一待匹配特征点与所述第二待匹配特征点所表征的图像信息的差异,所述第一图像为所述第一图层对应的多帧图像中所述第一待匹配特征点所在的任一图像,所述第二图像为所述第二图层对应的多帧图像中所述第二待匹配特征点所在的任一图像;
第四确定子模块,用于当所述指定参数小于第一预设阈值时,确定所述第一待匹配特征点与所述第二待匹配特征点匹配。
20.根据权利要求18或19所述的装置,其特征在于,所述第一图像和所述第二图像均由包括多级子图像的图像金字塔表征,且所述第一图像的多级子图像与所述第二图像的多级子图像一一对应,所述获取子模块,用于:
根据所述第一图像的每级子图像和所述第二图像对应级的子图像,分别获取对应级的指定参数分量;
将所述多级子图像对应的指定参数分量的和确定为所述指定参数。
21.一种地图构建装置,其特征在于,所述装置包括:
第一获取模块,用于获取携带有目标环境图像信息的多帧图像,所述多帧图像由图像采集组件采集得到;
第二获取模块,用于获取图像采集组件在各帧图像的采集地点的运动参数,所述运动参数用于指示所述图像采集组件的运动状态;
第三获取模块,用于根据所述图像采集组件的运动参数,获取每两帧图像的采集地点的相对位移;
第四获取模块,用于根据所述多帧图像和所述相对位移,获取包括所述多帧图像中特征点的图层,所述图层用于构建地图;
发送模块,用于向所述服务器发送所述图层和所述相对位移。
22.根据权利要求21所述的装置,其特征在于,所述多帧图像均为携带有所述目标环境的图像信息的关键帧图像,所述第一获取模块,用于:
获取携带有所述目标环境的图像信息的多帧待筛选图像;
获取每帧所述待筛选图像的目标参数,所述目标参数用于指示所述待筛选图像相对于指定图像的变化量;
当所述待筛选图像的目标参数大于第二预设阈值时,确定所述待筛选图像为关键帧图像。
23.一种地图构建系统,其特征在于,所述系统包括:终端和服务器,所述终端包括权利要求21或22所述的地图构建装置,所述服务器包括权利要求12至20任一所述的地图构建装置。
24.根据权利要求23任一所述的方法,其特征在于,所述终端配置在图像采集车上,所述图像采集车用于采集目标环境的图像信息。
25.一种地图构建装置,其特征在于,包括处理器和存储器;
在所述处理器执行所述存储器存储的计算机程序时,所述服务器执行权利要求1至9任一所述的地图构建方法,或者,执行权利要求10或11所述的地图构建方法。
26.一种存储介质,其特征在于,所述存储介质内存储有计算机程序,所述计算机程序指示服务器执行权利要求1至9任一所述的地图构建方法,或者,执行权利要求10或11所述的地图构建方法。
技术总结