发明内容
本发明提供了一种基于图像组的建图方法及装置,以提高构建的地图信息的准确性。具体的技术方案如下。
第一方面,本发明实施例公开了一种基于图像组的建图方法,包括:
获取车辆在同一位置区域中多次行驶时相机设备采集的多组道路图像,以及每组道路图像中的每个道路图像对应的定位位姿;
对每个道路图像中的道路标志进行特征检测,得到每个道路图像中的语义特征;
根据每个道路图像中的语义特征,对各组道路图像之间进行数据关联,得到各组道路图像之间属于同一道路标志的关联语义特征,并确定所述关联语义特征在世界坐标系中的第一位置;其中,所述世界坐标系为地图所在坐标系;
根据所述第一位置以及每个道路图像对应的定位位姿,确定所述关联语义特征与每个道路图像中对应的语义特征之间的重投影误差,并确定各个重投影误差之间的投影误差和值,根据所述投影误差和值,确定所述关联语义特征在世界坐标系中的第二位置;
将所述关联语义特征和所述第二位置添加至所述地图中。
可选的,所述根据每个道路图像中的语义特征,对各组道路图像之间进行数据关联,得到各组道路图像之间属于同一道路标志的关联语义特征,并确定所述关联语义特征在世界坐标系中的第一位置的步骤,包括:
针对每组道路图像,对该组道路图像中各个道路图像之间的语义特征进行匹配,得到该组道路图像中属于同一道路标志的匹配语义特征;
针对每组道路图像中的每个匹配语义特征,对该匹配语义特征进行三维重建和坐标系转换,得到该匹配语义特征在世界坐标系中的第三位置;
根据每组道路图像中的所述匹配语义特征,对各组道路图像之间的匹配语义特征进行数据关联,得到各组道路图像之间属于同一道路标志的关联语义特征;
对各组道路图像中所述关联语义特征的第三位置进行融合,得到所述关联语义特征在世界坐标系中的第一位置。
可选的,所述根据每组道路图像中所述匹配语义特征,对各组道路图像之间的匹配语义特征进行数据关联,得到各组道路图像之间属于同一道路标志的关联语义特征的步骤,包括:
当各组道路图像中匹配语义特征的第三位置之间的接近程度满足预设距离条件时,将各组道路图像中的匹配语义特征确定为属于同一道路标志的关联语义特征;或者,
获取各组道路图像中匹配语义特征的第一属性信息,当各个第一属性信息之间的匹配程度满足预设相似条件时,将各组道路图像中的匹配语义特征确定为属于同一道路标志的关联语义特征。
可选的,所述对每个道路图像中的道路标志进行特征检测,得到每个道路图像中的语义特征的步骤,包括:
对每个道路图像中的道路标志进行特征检测,得到各个语义区域;
从预先建立的各个语义模型中确定与各个语义区域对应的语义模型;
将每个道路图像中的语义区域采用对应的语义模型表示,得到每个道路图像中的每个语义特征;
其中,各个语义模型包括:直线模型、角点模型和样条曲线模型。
可选的,所述根据所述第一位置以及每个道路图像对应的定位位姿,确定所述关联语义特征与每个道路图像中对应的语义特征之间的重投影误差,并确定各个重投影误差之间的投影误差和值,根据所述投影误差和值,确定所述关联语义特征在世界坐标系中的第二位置的步骤,包括:
将所述第一位置作为所述关联语义特征在世界坐标系中的估计位置的初始值,将每个道路图像对应的定位位姿作为估计位姿的初始值;
根据每个道路图像对应的估计位姿,确定每个道路图像对应的相机坐标系与世界坐标系之间的转换矩阵;
根据对应的转换矩阵和所述估计位置,将所述关联语义特征与每个道路图像中对应的语义特征映射至同一坐标系中,确定映射至同一坐标系中的所述关联语义特征和每个道路图像中对应的语义特征之间的重投影误差,并确定各个重投影误差之间的投影误差和值;
当所述投影误差和值大于预设误差阈值时,对所述估计位姿和所述估计位置进行调整,返回执行所述根据每个道路图像对应的估计位姿,确定每个道路图像对应的相机坐标系与世界坐标系之间的转换矩阵的步骤;
当所述投影误差和值不大于预设误差阈值时,根据所述估计位置的当前值,确定所述关联语义特征在所述世界坐标系中的第二位置。
可选的,所述根据对应的转换矩阵和所述估计位置,将所述关联语义特征与每个道路图像中对应的语义特征映射至同一坐标系中,确定映射至同一坐标系中的所述关联语义特征和每个道路图像中对应的语义特征之间的重投影误差的步骤,包括:
针对每个道路图像,根据与该道路图像对应的转换矩阵,以及对应的相机坐标系与图像坐标系之间的投影关系,将所述估计位置映射至该图像坐标系中,得到第一映射位置,计算所述第一映射位置与该道路图像中的对应语义特征的图像位置之间的重投影误差;或者,
针对每个道路图像,根据与该道路图像对应的转换矩阵,以及对应的相机坐标系与图像坐标系之间的投影关系,将该道路图像中与所述关联语义特征对应的语义特征映射至所述世界坐标系中,得到该对应的语义特征的第二映射位置,计算所述第二映射位置与所述估计位置之间的重投影误差。
可选的,在将所述关联语义特征和所述第二位置添加至所述地图中之后,还包括:
确定所述关联语义特征在各组道路图像中的观测分布数据;其中,所述观测分布数据包括:所述关联语义特征在各组道路图像中的出现次数,和/或,所述关联语义特征在不同组道路图像中的分布均匀程度;
当确定所述观测分布数据未达到预设阈值时,将所述关联语义特征和所述第二位置从所述地图中删除。
可选的,所述同一位置区域为多个子区域中的任一位置区域,各个子区域为根据道路的分布属性对待建图区域划分后得到;在将所述关联语义特征和所述第二位置添加至所述地图中之后,所述方法还包括:
当确定各个子区域中的语义特征和对应的世界坐标系位置均添加至所述地图中时,确定各个子区域之间的重叠区域中属于同一道路标志的目标语义特征;
根据所述重叠区域中目标语义特征的世界坐标系位置差异,对对应的子区域内的所有语义特征的世界坐标系位置进行调整,并更新至所述地图中,得到包含所述待建图区域的地图。
可选的,所述确定各个子区域之间的重叠区域中属于同一道路标志的目标语义特征的步骤,包括:
根据各个子区域的坐标范围确定各个子区域之间的重叠区域;
当各个子区域的重叠区域中的语义特征的世界坐标系位置之间的接近程度满足预设距离条件时,将所述各个子区域的重叠区域中的语义特征确定为属于同一道路标志的目标语义特征;或者,获取各个子区域的重叠区域中的语义特征的第二属性信息,当各个第二属性信息之间的匹配程度满足预设相似条件时,将各个子区域的重叠区域中的语义特征确定为属于同一道路标志的目标语义特征。
第二方面,本发明实施例公开了一种基于图像组的建图装置,包括:
图像获取模块,被配置为获取车辆在同一位置区域中多次行驶时相机设备采集的多组道路图像,以及每组道路图像中的每个道路图像对应的定位位姿;
特征检测模块,被配置为对每个道路图像中的道路标志进行特征检测,得到每个道路图像中的语义特征;
关联确定模块,被配置为根据每个道路图像中的语义特征,对各组道路图像之间进行数据关联,得到各组道路图像之间属于同一道路标志的关联语义特征,并确定所述关联语义特征在世界坐标系中的第一位置;其中,所述世界坐标系为地图所在坐标系;
位置确定模块,被配置为根据所述第一位置以及每个道路图像对应的定位位姿,确定所述关联语义特征与每个道路图像中对应的语义特征之间的重投影误差,并确定各个重投影误差之间的投影误差和值,根据所述投影误差和值,确定所述关联语义特征在世界坐标系中的第二位置;
特征添加模块,被配置为将所述关联语义特征和所述第二位置添加至所述地图中。
可选的,所述关联确定模块,具体被配置为:
针对每组道路图像,对该组道路图像中各个道路图像之间的语义特征进行匹配,得到该组道路图像中属于同一道路标志的匹配语义特征;
针对每组道路图像中的每个匹配语义特征,对该匹配语义特征进行三维重建和坐标系转换,得到该匹配语义特征在世界坐标系中的第三位置;
根据每组道路图像中的所述匹配语义特征,对各组道路图像之间的匹配语义特征进行数据关联,得到各组道路图像之间属于同一道路标志的关联语义特征;
对各组道路图像中所述关联语义特征的第三位置进行融合,得到所述关联语义特征在世界坐标系中的第一位置。
可选的,所述关联确定模块,根据每组道路图像中所述匹配语义特征,对各组道路图像之间的匹配语义特征进行数据关联,得到各组道路图像之间属于同一道路标志的关联语义特征时,包括:
当各组道路图像中匹配语义特征的第三位置之间的接近程度满足预设距离条件时,将各组道路图像中的匹配语义特征确定为属于同一道路标志的关联语义特征;或者,
获取各组道路图像中匹配语义特征的第一属性信息,当各个第一属性信息之间的匹配程度满足预设相似条件时,将各组道路图像中的匹配语义特征确定为属于同一道路标志的关联语义特征。
可选的,所述特征检测模块,具体被配置为:
对每个道路图像中的道路标志进行特征检测,得到各个语义区域;
从预先建立的各个语义模型中确定与各个语义区域对应的语义模型;
将每个道路图像中的语义区域采用对应的语义模型表示,得到每个道路图像中的每个语义特征;
其中,各个语义模型包括:直线模型、角点模型和样条曲线模型。
可选的,所述位置确定模块,具体被配置为:
将所述第一位置作为所述关联语义特征在世界坐标系中的估计位置的初始值,将每个道路图像对应的定位位姿作为估计位姿的初始值;
根据每个道路图像对应的估计位姿,确定每个道路图像对应的相机坐标系与世界坐标系之间的转换矩阵;
根据对应的转换矩阵和所述估计位置,将所述关联语义特征与每个道路图像中对应的语义特征映射至同一坐标系中,确定映射至同一坐标系中的所述关联语义特征和每个道路图像中对应的语义特征之间的重投影误差,并确定各个重投影误差之间的投影误差和值;
当所述投影误差和值大于预设误差阈值时,对所述估计位姿和所述估计位置进行调整,返回执行所述根据每个道路图像对应的估计位姿,确定每个道路图像对应的相机坐标系与世界坐标系之间的转换矩阵的操作;
当所述投影误差和值不大于预设误差阈值时,根据所述估计位置的当前值,确定所述关联语义特征在所述世界坐标系中的第二位置。
可选的,所述位置确定模块,根据对应的转换矩阵和所述估计位置,将所述关联语义特征与每个道路图像中对应的语义特征映射至同一坐标系中,确定映射至同一坐标系中的所述关联语义特征和每个道路图像中对应的语义特征之间的重投影误差时,包括:
针对每个道路图像,根据与该道路图像对应的转换矩阵,以及对应的相机坐标系与图像坐标系之间的投影关系,将所述估计位置映射至该图像坐标系中,得到第一映射位置,计算所述第一映射位置与该道路图像中的对应语义特征的图像位置之间的重投影误差;或者,
针对每个道路图像,根据与该道路图像对应的转换矩阵,以及对应的相机坐标系与图像坐标系之间的投影关系,将该道路图像中与所述关联语义特征对应的语义特征映射至所述世界坐标系中,得到该对应的语义特征的第二映射位置,计算所述第二映射位置与所述估计位置之间的重投影误差。
可选的,装置还包括:数据删除模块;所述数据删除模块,被配置为:
在将所述关联语义特征和所述第二位置添加至所述地图中之后,确定所述关联语义特征在各组道路图像中的观测分布数据;其中,所述观测分布数据包括:所述关联语义特征在各组道路图像中的出现次数,和/或,所述关联语义特征在不同组道路图像中的分布均匀程度;
当确定所述观测分布数据未达到预设阈值时,将所述关联语义特征和所述第二位置从所述地图中删除。
可选的,所述同一位置区域为多个子区域中的任一位置区域,各个子区域为根据道路的分布属性对待建图区域划分后得到;所述装置还包括:位置调整模块;所述位置调整模块,被配置为:
在将所述关联语义特征和所述第二位置添加至所述地图中之后,当确定各个子区域中的语义特征和对应的世界坐标系位置均添加至所述地图中时,确定各个子区域之间的重叠区域中属于同一道路标志的目标语义特征;
根据所述重叠区域中目标语义特征的世界坐标系位置差异,对对应的子区域内的所有语义特征的世界坐标系位置进行调整,并更新至所述地图中,得到包含所述待建图区域的地图。
可选的,所述位置调整模块,确定各个子区域之间的重叠区域中属于同一道路标志的目标语义特征时,包括:
根据各个子区域的坐标范围确定各个子区域之间的重叠区域;
当各个子区域的重叠区域中的语义特征的世界坐标系位置之间的接近程度满足预设距离条件时,将所述各个子区域的重叠区域中的语义特征确定为属于同一道路标志的目标语义特征;或者,获取各个子区域的重叠区域中的语义特征的第二属性信息,当各个第二属性信息之间的匹配程度满足预设相似条件时,将各个子区域的重叠区域中的语义特征确定为属于同一道路标志的目标语义特征。
由上述内容可知,本发明实施例提供的基于图像组的建图方法、装置及车载终端,可以针对车辆在同一位置区域中多次行驶时相机设备采集的多组道路图像,从各组道路图像的语义特征中得到属于同一道路标志的关联语义特征,基于关联语义特征与每个道路图像中对应的语义特征之间的重投影误差,确定关联语义特征在世界坐标系中更准确的位置。由于多组道路图像是车辆在同一位置区域中多次行驶时采集得到的,相机设备能够从不同角度采集到同一道路标志,基于在大量道路图像中的重投影所得到的关联语义特征的位置,相比于基于一次行驶过程中获取的数据,本发明实施例能够提高所确定的关联语义特征的位置的准确性,进而提高构建的地图信息的准确性。当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
本发明实施例的创新点包括:
1、通过车辆的多次行驶,预先采集道路上的多组道路图像和对应的定位位姿,基于采集的大量数据离线构建地图,在确定语义特征位置时,能够基于大量数据进行,这样能够提高所确定的地图信息的准确性。
2、针对采集的大量道路图像,在进行语义特征的数据关联时,先在组内的帧图像之间匹配语义特征,然后组之间再进行语义特征的关联,能够更准确地确定关联语义特征。
3、采用预先建立的更加简化的语义模型表示语义特征,能够减少语义特征的数据量,使得构建的地图数据量更加精简,适合于大范围应用。
4、在根据第一位置和定位位姿,以及重投影误差,确定更准确的第二位置时,采用迭代的方式,根据重投影误差不断地修正估计位置,使得估计位置逐渐接近于真实值,提供了一种求解更准确的第二位置的实施方式。
5、将待建图区域划分成子区域,针对子区域分别建图,当子区域建图之后,根据子区域之间重叠区域中属于同一道路标志的目标语义特征之间的位置差异,对子区域内的所有语义特征的位置进行调整,实现对子区域的整体优化,能够提高地图信息的准确性。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明实施例及附图中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含的一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
本发明实施例公开了一种基于图像组的建图方法及装置,以提高构建的地图信息的准确性。下面对本发明实施例进行详细说明。
图1为本发明实施例提供的基于图像组的建图方法的一种流程示意图。该方法应用于电子设备。该电子设备可以为普通计算机、服务器或者智能终端设备等,也可以为车载电脑或车载工业控制计算机(Industrial Personal Computer,IPC)等车载终端。本实施例中,车载终端可以安装于车辆中,车辆是指智能车辆。该方法具体包括以下步骤。
S110:获取车辆在同一位置区域中多次行驶时相机设备采集的多组道路图像,以及每组道路图像中的每个道路图像对应的定位位姿。
其中,位置区域可以为根据定位位姿确定的区域,位置区域可以为一条道路或者一条道路中的一段等。当设置有相机设备以及IMU、轮速计或者全球定位系统(GlobalPositioning System,GPS)等传感器的车辆,多次在同一位置区域中行驶时,相机设备可以采集道路图像。当车辆每次从该位置区域的一端行驶至另一端的过程中,相机设备采集的多个道路图像构成一组道路图像。每组道路图像中包括多个道路图像。参见图2所示,当车辆N次在同一位置区域中行驶时,可以得到第一组道路图像、第二组道路图像……第N组道路图像,每组道路图像中包括多个道路图像。
车辆在同一位置区域中多次行驶时,每次行驶时所在的车道可以不同,这样能够使得每组道路图像之间的拍摄角度不同,提高数据的多样性。
相机设备可以按照预设的频率采集道路图像,道路图像可以包括道路标志或者相机设备的图像采集范围内的其他任何物体的图像数据。本实施例中,道路图像所在的场所可以是户外,也可以是停车场等。
在相机设备采集每个道路图像时,可以根据车辆中设置的GPS和/或IMU采集的数据进行定位,确定在采集该道路图像时的定位位姿。该定位位姿可以为GPS或者IMU的定位位姿,也可以为车辆的定位位姿。
S120:对每个道路图像中的道路标志进行特征检测,得到每个道路图像中的语义特征。
其中,道路标志可以包括车道线、路灯杆、交通牌、道路边缘线、停止线、地面标识和红绿灯等。
对每个道路图像中的道路标志进行特征检测,可以理解为,对每组道路图像中的每个道路图像中的道路标志进行特征检测,即所有组中的所有道路图像均进行特征检测。
每个道路图像中的语义特征,可以为一个或者多个。例如,一个道路图像中,可以包括一个交通牌的语义特征和一个车道线的语义特征等。
道路图像中可以包括地面的道路标志和地面以上的道路标志。相机设备在采集道路图像时,图像采集范围包括车辆周围的部分空间区域。
S130:根据每个道路图像中的语义特征,对各组道路图像之间进行数据关联,得到各组道路图像之间属于同一道路标志的关联语义特征,并确定关联语义特征在世界坐标系中的第一位置。
其中,世界坐标系为地图所在坐标系。世界坐标系为三维坐标系,第一位置为采用世界坐标系表示的位置。
各组道路图像之间属于同一道路标志的关联语义特征的种类可以为一个或者多个。例如,针对同一路段的3组道路图像中均存在交通牌1、交通牌2、车道线1、车道线2、车道线3的语义特征,则交通牌1、交通牌2、车道线1、车道线2和车道线3,均可以确定为关联语义特征,即关联语义特征包括5个,并采用不同的ID(Identification)号码表示。
S140:根据第一位置以及每个道路图像对应的定位位姿,确定关联语义特征与每个道路图像中对应的语义特征之间的重投影误差,并确定各个重投影误差之间的投影误差和值,根据投影误差和值,确定关联语义特征在世界坐标系中的第二位置。
第一位置可以理解为关联语义特征的初始位置,该初始位置的准确性还不够高。为了确定关联语义特征更准确的第二位置,本步骤中可以确定关联语义特征与每个道路图像中对应的语义特征之间的重投影误差,进而确定第二位置。
本步骤的每个道路图像包括所有组道路图像中的每个道路图像。其中,道路图像中对应的语义特征,可以理解为,道路图像中与关联语义特征对应的语义特征,即道路图像中与关联语义特征属于同一道路标志的语义特征。
例如,针对同一路段的3组道路图像中均存在交通牌1,该交通牌1即为关联语义特征。3组道路图像中,第一组道路图像中有30帧图像中存在交通牌1,第二组道路图像中有40帧图像中存在交通牌1,第三组道路图像中有35帧图像中存在交通牌1。则在确定该关联语义特征(交通牌1)的第二位置时,可以根据第一位置以及上述包括交通牌1的30帧图像、40帧图像和35帧图像对应的定位位姿,确定该关联语义特征分别与上述105帧图像(30帧图像+40帧图像+35帧图像)中的交通牌1的语义特征之间的重投影误差,并求和。
上述针对一个道路图像确定的重投影误差,可以理解为,关联语义特征与道路图像中对应的语义特征之间在同一坐标系中时的位置差异。
本步骤为确定每个关联语义特征的第二位置的方式,当该存在多个关联语义特征时,可以针对每个关联语义特征采用本步骤的方式确定每个第二位置。
S150:将关联语义特征和第二位置添加至地图中。
本步骤中,具体可以是将关联语义特征和第二位置之间的对应关系添加至地图中。当关联语义特征为多个时,将所有关联语义特征和第二位置之间的对应关系添加至地图中。
由上述内容可知,本实施例可以针对车辆在同一位置区域中多次行驶时相机设备采集的多组道路图像,从各组道路图像的语义特征中得到属于同一道路标志的关联语义特征,基于关联语义特征与每个道路图像中对应的语义特征之间的重投影误差,确定关联语义特征在世界坐标系中更准确的位置。由于多组道路图像是车辆在同一位置区域中多次行驶时采集得到的,相机设备能够从不同角度采集到同一道路标志,基于在大量道路图像中的重投影所得到的关联语义特征的位置,相比于基于一次行驶过程中获取的数据,本实施例能够提高所确定的关联语义特征的位置的准确性,进而提高构建的地图信息的准确性。
在上述实施例中,步骤S110和步骤S120可以理解为建图之前的准备工作。参见图3所示,在车辆中的相机、IMU、GPS等传感器采集数据后,可以对采集的道路图像进行视觉感知,得到道路图像中的语义特征;IMU和GPS采集的数据用于轨迹解算,得到车辆行驶过程中的轨迹,该轨迹包括各个时间点的定位位姿;将得到的语义特征和轨迹用于语义建图。
本实施例中,车辆中的相机设备可以为单目摄像头,其可以是全局快门(globalshutter)式相机,也可以是更廉价的卷帘快门(rolling shutter)式相机。对于定位传感器来说,不同级别的定位数据均可以应用于本实施例,例如定位数据既可以是高精定位数据(例如根据实时动态(Real-time kinematic,RTK)载波相位差分技术进行的定位),也可以是低精数据(例如根据单点GPS数据进行的定位)。
在本发明的另一实施例中,基于图1所示实施例,步骤S130,根据每个道路图像中的语义特征,对各组道路图像之间进行数据关联,得到各组道路图像之间属于同一道路标志的关联语义特征,并确定所关联语义特征在世界坐标系中的第一位置的步骤,包括以下步骤1a~4a。
步骤1a:针对每组道路图像,对该组道路图像中各个道路图像之间的语义特征进行匹配,得到该组道路图像中属于同一道路标志的匹配语义特征。
本步骤中,在每组道路图像内针对语义特征进行帧间匹配,可以确定该组道路图像中属于同一道路标志的匹配语义特征。其中,每组道路图像中的各个道路图像为连续采集的图像帧,该匹配可以在相邻帧之间进行。所有的道路图像组均执行本步骤的操作。该组道路图像中确定的匹配语义特征可以为一个或者多个。
例如,经过语义特征的匹配后确定道路图像组1中第1-30帧存在交通牌1和车道线1,且交通牌1在第1-30帧中的图像位置可能不同,车道线1在第1-30帧中的图像位置可能不同。交通牌1和车道线1均可以确定为匹配语义特征。
针对每组道路图像,可以根据该组中各个道路图像之间语义特征的图像位置进行匹配,将图像位置之间的差异小于阈值的语义特征,确定为属于同一道路标志的匹配语义特征;也可以根据该组中各个道路图像之间语义特征的属性信息进行匹配,将属性信息的相似度大于阈值的语义特征,确定为匹配语义特征。属性信息可以为根据图像像素确定的特征。
步骤2a:针对每组道路图像中的每个匹配语义特征,对该匹配语义特征进行三维重建和坐标系转换,得到该匹配语义特征在世界坐标系中的第三位置。
本步骤中,具体可以包括:针对每组道路图像中的每个匹配语义特征,对该匹配语义特征进行三维重建,确定该匹配语义特征在相机坐标系中的位置,根据坐标系转换,将该匹配语义特征在相机坐标系中的位置转换至世界坐标系中,得到第三位置。
当匹配语义特征为地面以上的道路标志的语义特征时,例如交通牌、交通灯、路灯杆等道路标志,对该匹配语义特征进行三维重建时,具体可以获取该匹配语义特征所对应的道路图像,根据连续的道路图像帧,基于三角测量方法,确定该匹配语义特征在相机坐标系中的位置。例如,道路图像组1中第1-30帧中存在该匹配语义特征,则可以从该第1-30帧中获取至少两帧图像,基于三角测量方法,确定匹配语义特征中点的深度信息。
参见图4A所示,为基于三角测量方法测量图像点的深度信息的原理示意图。从不同的角度观察同一个三维点P,该点P在两个道路图像I1和I2中的投影分别是p1和p2。O1和O2分别为相机坐标系的原点处于不同定位位姿下的位置,如果已知从O2到O1的过程中相机坐标系的位姿变化参量包括旋转矩阵R和平移矩阵t,设点P在O1和O2坐标系下的深度信息分别为s1和s2,即点O1和O2到点P的距离分别为s1和s2,以上参量满足以下关系:
s1*p1=s2*R*p2+t
其中,*为乘号,为p1的反对称。根据上面的公式可以求得s1和s2,根据该深度信息能够求得点P在相机坐标系中的三维坐标。
根据道路图像对应的定位位姿,可以确定相机坐标系与世界坐标系之间的转换关系,根据该转换关系可以将匹配语义特征在相机坐标系中的位置转换至世界坐标系中,得到第三位置。相机坐标系为相机设备所在的坐标系。
当匹配语义特征为地面的道路标志的语义特征时,例如针对车道线、道路边缘线等道路标志,对该匹配语义特征进行三维重建时,具体可以根据以下投影原理确定匹配语义特征在相机坐标系中的深度信息,进而根据该深度信息确定匹配语义特征在世界坐标系中的第三位置。
参见图4B,为车体、相机和地面之间的一种相互关系原理图。其中,假设车体和地面是一个刚体,且车体附近的地面是一个平面,通过标定相机坐标系和车体坐标系之间的旋转矩阵Rcv以及相机到地面的高度H,可以确定地面点的三维信息。假设相机坐标系与车体坐标系之间不存在旋转,即Rcv是单位矩阵,且此时相机坐标系的X轴垂直纸面向外,Y轴垂直地面向下,Z轴平行于地面向前。地面上的三维点P在相机成像平面上的点是p。根据上述信息可知,已知的量包括:y(p点Y方向的坐标)、f(相机焦距)、H(相机到地面的高度),那么点P在相机坐标系下的深度d可以用下面的公式计算得到:
步骤3a:根据每组道路图像中的匹配语义特征,对各组道路图像之间的匹配语义特征进行数据关联,得到各组道路图像之间属于同一道路标志的关联语义特征。
本步骤中具体可以包括以下实施方式。
实施方式一,当各组道路图像中匹配语义特征的第三位置之间的接近程度满足预设距离条件时,将各组道路图像中的匹配语义特征确定为属于同一道路标志的关联语义特征。在高精度轨迹下,即根据GPS数据确定每个道路图像对应的定位位姿时,可以采用本实施方式。
实施方式二,获取各组道路图像中匹配语义特征的第一属性信息,当各个第一属性信息之间的匹配程度满足预设相似条件时,将各组道路图像中的匹配语义特征确定为属于同一道路标志的关联语义特征。
例如,当匹配语义特征为交通牌的语义特征时,其第一属性信息可以包括交通牌的文字信息等。当匹配语义特征为车道线的语义特征时,其第一属性信息可以包括车道线的虚实属性、车道线与道路边缘之间的距离等。
其中,交通牌的文字信息、车道线的虚实属性、车道线与道路边缘之间的距离等,均可以在步骤S120中对道路图像进行特征检测时进行检测。
步骤4a:对各组道路图像中关联语义特征的第三位置进行融合,得到所述关联语义特征在世界坐标系中的第一位置。
例如,可以将各组道路图像中关联语义特征的第三位置得到平均值,确定为上述第一位置;也可以对上述各个第三位置作加权平均,将得到的加权平均值确定为第一位置。
综上,本实施例中,针对采集的大量道路图像,在进行语义特征的数据关联时,先在组内的帧图像之间匹配语义特征,然后组之间再进行语义特征的关联,能够更准确地确定关联语义特征。
在本发明的另一实施例中,基于图1所示实施例,步骤S120,对每个道路图像中的道路标志进行特征检测,得到每个道路图像中的语义特征的步骤,可以包括:
对每个道路图像中的道路标志进行特征检测,得到各个语义区域,从预先建立的各个语义模型中确定与各个语义区域对应的语义模型;将每个道路图像中的语义区域采用对应的语义模型表示,得到每个道路图像中的每个语义特征。
其中,各个语义模型包括:直线模型、角点模型和样条曲线模型。直线模型可以包括采用两个点表示的模型,例如,路灯杆可以采用两个点表示。角点模型可以包括采用平面表示的模型,例如,矩形交通牌可以采用四个角点表示。样条曲线可以包括采用曲线方程表示的模型,例如车道线可以采用曲线方程表示。
从预先建立的各个语义模型中确定与各个语义区域对应的语义模型时,可以根据语义区域对应的标志物类型,以及标志物类型与各个语义模型之间的对应关系,确定与各个语义区域对应的语义模型。其中,标志物类型可以包括交通牌、车道线和路灯杆等,并且交通牌与角点模型对应,车道线与样条曲线模型对应,路灯杆与直线模型对应。
综上,本实施例中,采用预先建立的更加简化的语义模型表示语义特征,能够减少语义特征的数据量,使得构建的地图数据量更加精简,适合于大范围应用该建图方法。
在本发明的另一实施例中,基于图1所示实施例,步骤S140,根据第一位置以及每个道路图像对应的定位位姿,确定关联语义特征与每个道路图像中对应的语义特征之间的重投影误差,并确定各个重投影误差之间的投影误差和值,根据投影误差和值,确定关联语义特征在世界坐标系中的第二位置的步骤,包括步骤1b~5b。
步骤1b:将第一位置作为关联语义特征在世界坐标系中的估计位置的初始值,将每个道路图像对应的定位位姿作为估计位姿的初始值。
本实施例中,上述定位位姿可以为世界坐标系中的定位位姿。
步骤2b:根据每个道路图像对应的估计位姿,确定每个道路图像对应的相机坐标系与世界坐标系之间的转换矩阵。
步骤3b:根据对应的转换矩阵和上述估计位置,将关联语义特征与每个道路图像中对应的语义特征映射至同一坐标系中,确定映射至同一坐标系中的关联语义特征和每个道路图像中对应的语义特征之间的重投影误差,并确定各个重投影误差之间的投影误差和值。
估计位置为世界坐标系中的位置,每个道路图像中的语义特征为图像坐标系中的位置,两者不在同一坐标系中。根据对应的转换矩阵,可以将两者转换至同一坐标系中,进而确定重投影误差。
步骤4b:当投影误差和值大于预设误差阈值时,对上述估计位姿和估计位置进行调整,返回执行步骤2b中根据每个道路图像对应的估计位姿,确定每个道路图像对应的相机坐标系与世界坐标系之间的转换矩阵的步骤,以及步骤2b之后的各个步骤,进入下一次迭代。
当投影误差和值大于预设误差阈值时,认为上述估计位置与真实值相差比较大,可以继续迭代,以便使得估计位置逐渐接近于真实值。
对上述估计位姿和估计位置进行调整时,具体可以根据预设算法,以及上述投影误差和值,确定针对上述估计位姿和估计位置的调整值。
步骤5b:当投影误差和值不大于预设误差阈值时,根据估计位置的当前值,确定关联语义特征在世界坐标系中的第二位置。
当投影误差和值不大于预设误差阈值时,认为上述估计位置与真实值相差非常小,此时可以根据估计位置的当前值确定第二位置。具体的,可以直接将估计位置的当前值确定为上述第二位置,也可以将对估计位置的当前值作预设修改后的值确定为第二位置。
综上,本实施例中,在根据第一位置和定位位姿,以及重投影误差,确定更准确的第二位置时,采用迭代的方式,根据重投影误差不断地修正估计位置,使得估计位置逐渐接近于真实值,提供了一种求解更准确的第二位置的实施方式。
在本发明的另一实施例中,基于上述实施例,步骤3b中根据对应的转换矩阵和所述估计位置,将所述关联语义特征与每个道路图像中对应的语义特征映射至同一坐标系中,确定映射至同一坐标系中的所述关联语义特征和每个道路图像中对应的语义特征之间的重投影误差的步骤,至少可以包括以下两种实施方式。
方式一,针对每个道路图像,根据与该道路图像对应的转换矩阵,以及对应的相机坐标系与图像坐标系之间的投影关系,将估计位置映射至该图像坐标系中,得到第一映射位置,计算第一映射位置与该道路图像中的对应语义特征的图像位置之间的重投影误差。
本实施方式中,将世界坐标系中的估计位置一一映射至各个图像坐标系中,计算得到的重投影误差为图像坐标系中的位置差。这种方式更简单易实施。
方式二,针对每个道路图像,根据与该道路图像对应的转换矩阵,以及对应的相机坐标系与图像坐标系之间的投影关系,将该道路图像中与所述关联语义特征对应的语义特征映射至所述世界坐标系中,得到该对应的语义特征的第二映射位置,计算所述第二映射位置与所述估计位置之间的重投影误差。
本实施方式中,将每个道路图像中的语义特征均映射至世界坐标系中,计算得到的重投影误差为世界坐标系中的位置差。
在本发明的另一实施例中,基于上述实施例,在步骤S150之后,即在将关联语义特征和第二位置添加至地图中之后,还可以包括:
确定关联语义特征在各组道路图像中的观测分布数据,当确定观测分布数据未达到预设阈值时,将关联语义特征和第二位置从地图中删除。
其中,观测分布数据包括:关联语义特征在各组道路图像中的出现次数,和/或,关联语义特征在不同组道路图像中的分布均匀程度。具体的,观测分布数据包括:关联语义特征在各组道路图像中的出现次数和值,和/或,关联语义特征在不同组道路图像中的分布均匀程度。当关联语义特征在各组道路图像中的出现次数和值越大,分布均匀程度越高,观测分布数据越大。
关联语义特征在不同组道路图像中的分布均匀程度,可以采用以下方式确定:针对车辆在不同车道行驶时采集的各组道路图像帧,确定各组道路图像帧中该关联语义特征的出现次数,根据各个出现次数,确定分布均匀程度。
在根据各个出现次数,确定分布均匀程度时,当各个出现次数之间的差值小于阈值时,即出现次数分布均衡时,确定高的分布均匀程度;当各个出现次数之间的差值不小于阈值时,即出现次数分布不均衡时,确定低的分布均匀程度。
例如,当车辆在不同车道上行驶时均能观测到同一道路标志,则说明该道路标志的观测分布数据越大;当车辆在不同车道上行驶时,有时能观测到该道路标志,有时则不能,则说明该道路标志的观测分布数据较小,可以从地图中删除该道路标志的信息。
综上,本实施例中,当关联语义特征的观测分布数据不够多时,会导致在计算投影误差和值时,所涉及的道路图像数量不够多,最终导致确定的关联语义特征的世界坐标系位置可信度不够高。本实施例中将地图中观测分布数据不够多的关联语义特征删除,能够提高地图信息的可信度。
在本发明的另一实施例中,基于图1所示实施例,上述同一位置区域为多个子区域中的任一位置区域,各个子区域为根据道路的分布属性对待建图区域划分后得到。本实施例中,当待建图区域非常大时,为了提高建图的效率,可以将待建图区域划分成各个子区域,每个子区域均彼此独立地并行建图,这样能够在较大程度上提高建图的效率,也能减少优化问题的复杂度。
道路的分布属性也可以理解为自然属性。具体的,在对待建图区域进行划分时,可以根据道路的走向和路口对待建图区域进行划分。参见图5,为某园区的道路分布图,可以根据道路的走向和路口将待建图区域划分成子区域1~子区域5共五个子区域。每个子区域大小和形状都可以是不固定的。
在将关联语义特征和所述第二位置添加至地图中之后,上述方法还包括以下步骤1c和2c。
步骤1c:当确定各个子区域中的语义特征和对应的世界坐标系位置均添加至地图中时,确定各个子区域之间的重叠区域中属于同一道路标志的目标语义特征。
本实施例中,采用图1所示实施例中添加每个语义特征到地图中的方式,对每个子区域进行建图操作。各个子区域中的语义特征和对应的世界坐标系位置均添加至地图中,可以理解为对每个子区域已完成建图操作。
确定各个子区域之间的重叠区域中属于同一道路标志的目标语义特征时,具体可以包括:
根据各个子区域的坐标范围确定各个子区域之间的重叠区域;当各个子区域的重叠区域中的语义特征的世界坐标系位置之间的接近程度满足预设距离条件时,将各个子区域的重叠区域中的语义特征确定为属于同一道路标志的目标语义特征;
或者,根据各个子区域的坐标范围确定各个子区域之间的重叠区域;获取各个子区域的重叠区域中的语义特征的第二属性信息,当各个第二属性信息之间的匹配程度满足预设相似条件时,将各个子区域的重叠区域中的语义特征确定为属于同一道路标志的目标语义特征。
步骤2c:根据重叠区域中目标语义特征的世界坐标系位置差异,对对应的子区域内的所有语义特征的世界坐标系位置进行调整,并更新至地图中,得到包含所述待建图区域的地图。
综上,本实施例中,将待建图区域划分成子区域,针对子区域分别建图,当子区域建图之后,根据子区域之间重叠区域中属于同一道路标志的目标语义特征之间的位置差异,对子区域内的所有语义特征的位置进行调整,实现对子区域的整体优化,能够提高地图信息的准确性。
下面再从上述各个实施例进行结合的角度对本发明实施例进行说明。
参见图6,为本发明实施例提供的基于图像组的建图方法的另一种流程示意图。其中,为了更好地利用从图3中得到的语义特征等参数和轨迹,可以对参数和轨迹进行预处理。预处理过程中涉及的主要参数包括:相机的内参K、相机坐标系和IMU坐标系之间的外参Tci、相机坐标系和车体坐标系之间的旋转矩阵Rcv,以及相机相对于地面的高度H。这些参数在相机设备安装时会通过某些手段标定得到,但是这些参数在相机设备使用过程中,会发生变化。所以在建图之前,还可以再一次对其进行标定。对于轨迹,可以做的预处理包括两个方面:质量和数量。由于场景难度不同,轨迹解算时输出的轨迹质量是不一样的。对于某些质量不好的轨迹,可以在建图之前将其过滤掉,避免给优化带来不好的影响。另外,流入建图过程的数据量是不确定的。在数据量饱和的情况下,可以自动过滤掉一些冗余的数据,避免给优化造成过大的压力。
在预处理之后,即可以对语义特征进行三维重建,确定语义特征在世界坐标系中的第三位置;之后进入数据关联阶段,即在各组道路图像的语义特征之间进行语义特征的关联,确定属于同一道路标志的语义特征;将待建图区域划分成子图,针对每个子图中的每个位置区域,对该位置区域中的关联语义特征与各个道路图像的语义特征之间的重投影误差进行非线性优化,确定关联语义特征更准确的世界坐标系位置,并添加至地图中;对地图中的语义特征进行筛选,去除可信度较低的语义特征,最终输出筛选后的地图信息。
图7为本发明实施例提供的基于图像组的建图装置的一种结构示意图。该装置实施例应用于电子设备。该装置实施例与图1所示方法实施例相对应。
该装置包括:
图像获取模块710,被配置为获取车辆在同一位置区域中多次行驶时相机设备采集的多组道路图像,以及每组道路图像中的每个道路图像对应的定位位姿;
特征检测模块720,被配置为对每个道路图像中的道路标志进行特征检测,得到每个道路图像中的语义特征;
关联确定模块730,被配置为根据每个道路图像中的语义特征,对各组道路图像之间进行数据关联,得到各组道路图像之间属于同一道路标志的关联语义特征,并确定关联语义特征在世界坐标系中的第一位置;其中,世界坐标系为地图所在坐标系;
位置确定模块740,被配置为根据第一位置以及每个道路图像对应的定位位姿,确定关联语义特征与每个道路图像中对应的语义特征之间的重投影误差,并确定各个重投影误差之间的投影误差和值,根据投影误差和值,确定关联语义特征在世界坐标系中的第二位置;
特征添加模块750,被配置为将关联语义特征和第二位置添加至地图中。
在本发明的另一实施例中,基于图1所示实施例,关联确定模块730具体被配置为:
针对每组道路图像,对该组道路图像中各个道路图像之间的语义特征进行匹配,得到该组道路图像中属于同一道路标志的匹配语义特征;
针对每组道路图像中的每个匹配语义特征,对该匹配语义特征进行三维重建和坐标系转换,得到该匹配语义特征在世界坐标系中的第三位置;
根据每组道路图像中的匹配语义特征,对各组道路图像之间的匹配语义特征进行数据关联,得到各组道路图像之间属于同一道路标志的关联语义特征;
对各组道路图像中关联语义特征的第三位置进行融合,得到关联语义特征在世界坐标系中的第一位置。
在本发明的另一实施例中,基于图1所示实施例,关联确定模块730,根据每组道路图像中匹配语义特征,对各组道路图像之间的匹配语义特征进行数据关联,得到各组道路图像之间属于同一道路标志的关联语义特征时,包括:
当各组道路图像中匹配语义特征的第三位置之间的接近程度满足预设距离条件时,将各组道路图像中的匹配语义特征确定为属于同一道路标志的关联语义特征;
或者,
获取各组道路图像中匹配语义特征的第一属性信息,当各个第一属性信息之间的匹配程度满足预设相似条件时,将各组道路图像中的匹配语义特征确定为属于同一道路标志的关联语义特征。
在本发明的另一实施例中,基于图1所示实施例,特征检测模块720具体被配置为:
对每个道路图像中的道路标志进行特征检测,得到各个语义区域;
从预先建立的各个语义模型中确定与各个语义区域对应的语义模型;
将每个道路图像中的语义区域采用对应的语义模型表示,得到每个道路图像中的每个语义特征;
其中,各个语义模型包括:直线模型、角点模型和样条曲线模型。
在本发明的另一实施例中,基于图1所示实施例,位置确定模块740具体被配置为:
将第一位置作为关联语义特征在世界坐标系中的估计位置的初始值,将每个道路图像对应的定位位姿作为估计位姿的初始值;
根据每个道路图像对应的估计位姿,确定每个道路图像对应的相机坐标系与世界坐标系之间的转换矩阵;
根据对应的转换矩阵和估计位置,将关联语义特征与每个道路图像中对应的语义特征映射至同一坐标系中,确定映射至同一坐标系中的关联语义特征和每个道路图像中对应的语义特征之间的重投影误差,并确定各个重投影误差之间的投影误差和值;
当投影误差和值大于预设误差阈值时,对估计位姿和估计位置进行调整,返回执行根据每个道路图像对应的估计位姿,确定每个道路图像对应的相机坐标系与世界坐标系之间的转换矩阵的操作;
当投影误差和值不大于预设误差阈值时,根据估计位置的当前值,确定关联语义特征在世界坐标系中的第二位置。
在本发明的另一实施例中,基于图1所示实施例,位置确定模块740,根据对应的转换矩阵和估计位置,将关联语义特征与每个道路图像中对应的语义特征映射至同一坐标系中,确定映射至同一坐标系中的关联语义特征和每个道路图像中对应的语义特征之间的重投影误差时,包括:
针对每个道路图像,根据与该道路图像对应的转换矩阵,以及对应的相机坐标系与图像坐标系之间的投影关系,将估计位置映射至该图像坐标系中,得到第一映射位置,计算第一映射位置与该道路图像中的对应语义特征的图像位置之间的重投影误差;
或者,
针对每个道路图像,根据与该道路图像对应的转换矩阵,以及对应的相机坐标系与图像坐标系之间的投影关系,将该道路图像中与关联语义特征对应的语义特征映射至世界坐标系中,得到该对应的语义特征的第二映射位置,计算第二映射位置与估计位置之间的重投影误差。
在本发明的另一实施例中,基于图1所示实施例,该装置还包括:数据删除模块(图中未示出);数据删除模块,被配置为:
在将关联语义特征和第二位置添加至地图中之后,确定关联语义特征在各组道路图像中的观测分布数据;其中,观测分布数据包括:关联语义特征在各组道路图像中的出现次数,和/或,关联语义特征在不同组道路图像中的分布均匀程度;
当确定观测分布数据未达到预设阈值时,将关联语义特征和第二位置从地图中删除。
在本发明的另一实施例中,基于图1所示实施例,同一位置区域为多个子区域中的任一位置区域,各个子区域为根据道路的分布属性对待建图区域划分后得到;该装置还包括:位置调整模块(图中未示出);位置调整模块,被配置为:
在将关联语义特征和第二位置添加至地图中之后,当确定各个子区域中的语义特征和对应的世界坐标系位置均添加至地图中时,确定各个子区域之间的重叠区域中属于同一道路标志的目标语义特征;
根据重叠区域中目标语义特征的世界坐标系位置差异,对对应的子区域内的所有语义特征的世界坐标系位置进行调整,并更新至地图中,得到包含待建图区域的地图。
在本发明的另一实施例中,基于图1所示实施例,位置调整模块,确定各个子区域之间的重叠区域中属于同一道路标志的目标语义特征时,包括:
根据各个子区域的坐标范围确定各个子区域之间的重叠区域;
当各个子区域的重叠区域中的语义特征的世界坐标系位置之间的接近程度满足预设距离条件时,将各个子区域的重叠区域中的语义特征确定为属于同一道路标志的目标语义特征;或者,获取各个子区域的重叠区域中的语义特征的第二属性信息,当各个第二属性信息之间的匹配程度满足预设相似条件时,将各个子区域的重叠区域中的语义特征确定为属于同一道路标志的目标语义特征。
上述装置实施例与方法实施例相对应,与该方法实施例具有同样的技术效果,具体说明参见方法实施例。装置实施例是基于方法实施例得到的,具体的说明可以参见方法实施例部分,此处不再赘述。
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域普通技术人员可以理解:实施例中的装置中的模块可以按照实施例描述分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。