CN109978919A - 一种基于单目相机的车辆定位方法及系统 - Google Patents
一种基于单目相机的车辆定位方法及系统 Download PDFInfo
- Publication number
- CN109978919A CN109978919A CN201910223326.3A CN201910223326A CN109978919A CN 109978919 A CN109978919 A CN 109978919A CN 201910223326 A CN201910223326 A CN 201910223326A CN 109978919 A CN109978919 A CN 109978919A
- Authority
- CN
- China
- Prior art keywords
- line
- frame image
- point
- current frame
- matching
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30248—Vehicle exterior or interior
- G06T2207/30252—Vehicle exterior; Vicinity of vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
一种基于单目相机的车辆定位方法及系统,该方法包括:利用车辆上的单目相机在车辆移动时实时采集图像,并提取图像中的特征点以及特征线,在图像帧跟踪过程中,针对任一第一当前帧图像,利用第一当前帧图像中的特征点和特征线进行融合优化来获得单目相机的第一优化相机位姿,进而根据该第一优化相机位姿确定车辆的第一位姿。可见,实施本发明实施例,对单目相机采集到的图像均提取图像中的特征点以及特征线,在图像跟踪的过程中基于特征点和特征线的融合优化获得单目相机的第一优化相机位姿,能够减小由于环境的纹理变化给车辆定位带来的影响,极大地提高了车辆定位系统的鲁棒性。
Description
技术领域
本发明涉及车辆定位技术领域,尤其涉及一种基于单目相机的车辆定位方法及系统。
背景技术
单目相机同步建图与定位被应用于车辆定位技术领域时,实现的是当车辆在未知环境中从一个未知位置开始移动时,在移动过程中根据位置估计和地图进行自身定位,进而实现车辆的自主定位。当前的单目相机同步建图与定位的技术方案中,均是基于特征点进行匹配跟踪。基于特征点的匹配跟踪可以确定出在车辆移动过程中相机的实时位姿,从而可以基于相机的实时位姿以及预先标定的相机外部参数确定出车辆位姿,进而实现车辆的定位。
该方法在纹理丰富的环境中,能够较好地进行建图和定位,但是,目前的特征点跟踪一般使用运动估计的方式,估计当前帧图像上特征点的搜索范围,从而在估计出的搜索范围中进行特征点匹配。因此,该方法容易发生运动估计错误而匹配不到,或匹配到错误的特征点而导致建图与定位不准确的现象。而在纹理较少甚至没有纹理的环境中,则无法从图像中提取特征点,或提取的特征点数量过少,进而无法完成建图与定位。综上,基于特征点进行匹配跟踪的单目相机同步建图与定位系统的鲁棒性较差。
发明内容
本发明实施例公开了一种基于单目相机的车辆定位方法及系统,能够提高车辆定位系统的鲁棒性。
本发明实施例第一方面公开一种基于单目相机的车辆定位方法,所述方法包括:
利用所述车辆上的单目相机采集所述车辆移动时的图像;
提取所述图像中的特征点以及特征线;
在图像帧跟踪过程中,针对任一第一当前帧图像,将所述第一当前帧图像中的特征点和特征线进行融合优化,获得所述单目相机的第一优化相机位姿;
根据所述第一优化相机位姿确定所述车辆的第一位姿;其中,所述车辆的第一位姿为所述车辆相对于世界坐标系的位姿,所述世界坐标系以所述单目相机采集到初始帧图像时所述单目相机的光心点位置为坐标原点。
作为一种可选的实施方式,在本发明实施例第一方面中,所述在图像帧跟踪过程中,针对任一第一当前帧图像,将所述第一当前帧图像中的特征点和特征线进行融合优化,获得所述单目相机的第一优化相机位姿,包括:
在图像帧跟踪过程中,针对任一第一当前帧图像,匹配所述第一当前帧图像中特征线对应的地图线;
根据所述第一当前帧图像中的特征线以及地图线之间的对应关系确定所述单目相机的第一相机位姿,所述第一相机位姿为采集到所述第一当前帧图像时所述单目相机相对于所述世界坐标系的位姿;
匹配所述第一当前帧图像中特征点对应的地图点;
非线性迭代优化所述第一相机位姿的取值,直至基于所述第一相机位姿的取值将所述第一当前帧图像中特征线对应的地图线以及所述第一当前帧图像中特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的特征线和特征点之间的第一反投影误差最小;
以所述第一反投影误差最小时所述第一相机位姿的取值为所述第一优化相机位姿。
作为一种可选的实施方式,在本发明实施例第一方面中,所述在图像帧跟踪过程中,针对任一第一当前帧图像,匹配所述第一当前帧图像中特征线对应的地图线之前,所述方法还包括:
针对初始化过程中的第二当前帧图像,将所述第二当前帧图像与所述初始帧图像进行特征点匹配,以获得所述第二当前帧图像与所述初始帧图像的特征点匹配关系,所述第二当前帧图像为在所述初始帧图像之后采集到的图像;
根据所述特征点匹配关系确定所述单目相机的第二相机位姿,所述第二相机位姿为采集到所述第二当前帧图像时所述单目相机相对于所述世界坐标系的位姿;
根据所述第二相机位姿获取所述特征点匹配关系对应的特征点在所述世界坐标系中的坐标,以构建与所述特征点对应的地图点,完成初始化;
当第一目标特征线出现的图像帧数大于或等于预设出现帧数阈值时,确定所述第一目标特征线的两端点在所述世界坐标系中的坐标,以构建与所述第一目标特征线对应的地图线。
作为一种可选的实施方式,在本发明实施例第一方面中,所述在图像帧跟踪过程中,针对任一第一当前帧图像,匹配所述第一当前帧图像中特征线对应的地图线,包括:
在图像帧跟踪过程中,针对任一第一当前帧图像,对所述第一当前帧图像中的特征线与所述第一当前帧图像的前一帧图像中的特征线进行匹配,以得到第一匹配特征线并确定与所述第一匹配特征线对应的地图线;
所述匹配所述第一当前帧图像中特征点对应的地图点,包括:
根据所述第一相机位姿将所述第一当前帧图像中的特征点与所述第一当前帧图像的前一帧图像中的特征点进行匹配,以得到第一匹配特征点并确定与所述第一匹配特征点对应的地图点;
所述非线性迭代优化所述第一相机位姿的取值,直至基于所述第一相机位姿的取值将所述第一当前帧图像中特征线对应的地图线以及所述第一当前帧图像中特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的特征线和特征点之间的第一反投影误差最小,包括:
非线性迭代优化所述第一相机位姿的取值,直至基于所述第一相机位姿的取值将所述第一匹配特征线对应的地图线以及所述第一匹配特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的所述第一匹配特征线和所述第一匹配特征点之间的第一反投影误差最小。
作为一种可选的实施方式,在本发明实施例第一方面中,所述根据所述第一当前帧图像中的特征线以及地图线之间的对应关系确定所述单目相机的第一相机位姿之前,所述方法还包括:
判断所述第一匹配特征线对应的地图线的数量是否大于预设地图线匹配值;
若所述第一匹配特征线对应的地图线的数量大于所述预设地图线匹配值,判断所述第一匹配特征线对应的地图线中存在的不平行关系数是否大于所述预设不平行关系数阈值;
若所述第一匹配特征线对应的地图线中存在的不平行关系数大于所述预设不平行关系数阈值,执行所述根据所述第一当前帧图像中的特征线以及地图线之间的对应关系确定所述单目相机的第一相机位姿的步骤。
作为一种可选的实施方式,在本发明实施例第一方面中,所述根据所述第一优化相机位姿确定所述车辆的第一位姿之前,所述方法还包括:
将所述第一当前帧图像的第一未匹配特征点进行地图点匹配,以获得所述第一未匹配特征点对应的地图点,所述第一未匹配特征点为所述第一当前帧图像中与所述第一当前帧图像的前一帧图像的地图点不匹配的特征点;
将所述第一当前帧图像的第一未匹配特征线进行地图线匹配,以获得所述第一未匹配特征线对应的地图线,所述第一未匹配特征线为所述第一当前帧图像中与所述第一当前帧图像的前一帧图像的地图线不匹配的特征线;
非线性迭代优化所述第一优化相机位姿的取值,直至基于所述第一优化相机位姿的取值将所述第一匹配特征线对应的地图线、所述第一匹配特征点对应的地图点、所述第一未匹配特征线对应的地图线以及所述第一未匹配特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的所述第一匹配特征线、所述第一匹配特征点、所述第一未匹配特征线和所述第一未匹配特征点之间的第二反投影误差最小;
以所述第二反投影误差最小时所述第一优化相机位姿的取值为所述单目相机的第二优化相机位姿;
所述根据所述第一优化相机位姿确定所述车辆的第一位姿,包括:
根据所述第二优化相机位姿确定所述车辆的第二位姿。
作为一种可选的实施方式,在本发明实施例第一方面中,所述根据所述第二优化相机位姿确定所述车辆的第二位姿之前,所述方法还包括:
统计所述第一当前帧图像中特征点对应的地图点的第一地图点数量和所述第一当前帧图像中特征线对应的地图线的第一地图线数量;
判断所述第一地图点数量是否小于第一预设地图点数量,并判断所述第一地图线数量是否小于第一预设地图线数量;
若所述第一地图点数量小于所述第一预设地图点数量,且所述第一地图线数量小于所述第一预设地图线数量,获取所述第一当前帧图像的特征线词袋;
根据所述特征线词袋将所述第一当前帧图像的特征线与所述第一当前帧图像的前一关键帧的特征线进行匹配,以得到第二匹配特征线并确定与所述第二匹配特征线对应的地图线,所述第二匹配特征线为所述第一当前帧图像中与所述第一当前帧图像的前一关键帧的地图线存在匹配关系的特征线;所述第一当前帧图像的前一关键帧为在所述第一当前帧图像之前的最接近所述第一当前帧图像的一个关键帧;
根据所述第二匹配特征线以及所述第二匹配特征线对应的地图线确定所述单目相机的第三相机位姿,所述第三相机位姿为采集到所述第一当前帧图像时所述单目相机相对于所述世界坐标系的位姿;
根据所述第三相机位姿将所述第一当前帧图像的特征点与所述第一当前帧图像的前一关键帧的特征点进行匹配,以得到第二匹配特征点并确定与所述第二匹配特征点对应的地图点;
非线性迭代优化所述第三相机位姿的取值,直至基于所述第三相机位姿的取值将所述第二匹配特征线对应的地图线以及所述第二匹配特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的所述第二匹配特征线和第二匹配特征点之间的第三反投影误差最小;
以所述第三反投影误差最小时所述第三相机位姿的取值为所述单目相机的第三优化相机位姿;
所述根据所述第二优化相机位姿确定所述车辆的第二位姿,包括:
根据所述第三优化相机位姿确定所述车辆的第三位姿。
作为一种可选的实施方式,在本发明实施例第一方面中,所述根据所述第二匹配特征线对应的地图线确定所述单目相机的第三相机位姿之前,所述方法还包括:
判断所述第二匹配特征线对应的地图线的数量是否大于所述预设地图线匹配值;
若所述第二匹配特征线对应的地图线的数量大于所述预设地图线匹配值,判断所述第二匹配特征线对应的地图线中存在的不平行关系数是否大于所述预设不平行关系数阈值;
若所述第二匹配特征线对应的地图线中存在的不平行关系数大于所述预设不平行关系数阈值,执行所述根据所述第二匹配特征线对应的地图线确定所述单目相机的第三相机位姿的步骤。
作为一种可选的实施方式,在本发明实施例第一方面中,所述根据所述第三优化相机位姿确定所述车辆的第三位姿之前,所述方法还包括:
将所述第一当前帧图像的第二未匹配特征点进行地图点匹配,以获得所述第二未匹配特征点对应的地图点,所述第二未匹配特征点为所述第一当前帧图像中与所述第一当前帧图像的前一关键帧中的地图点不匹配的特征点;
将所述第一当前帧图像的第二未匹配特征线进行地图线匹配,以获得所述第二未匹配特征线对应的地图线,所述第二未匹配特征线为所述第一当前帧图像中与所述第一当前帧图像的前一关键帧中的地图线不匹配的特征线;
非线性迭代优化所述第三优化相机位姿的取值,直至基于所述第三优化相机位姿的取值将所述第二匹配特征线对应的地图线、所述第二匹配特征点对应的地图点、所述第二未匹配特征线对应的地图线以及所述第二未匹配特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的所述第二匹配特征线、所述第二匹配特征点、所述第二未匹配特征线和所述第二未匹配特征点之间的第四反投影误差最小;
以所述第四反投影误差最小时所述第三优化相机位姿的取值为所述单目相机的第四优化相机位姿;
所述根据所述第三优化相机位姿确定所述车辆的第三位姿,包括:
根据所述第四优化相机位姿确定所述车辆的第四位姿。
作为一种可选的实施方式,在本发明实施例第一方面中,所述根据所述第四优化相机位姿确定所述车辆的第四位姿之后,所述方法还包括:
统计所述第一当前帧图像中特征点对应的地图点的第二地图点数量和所述第一当前帧图像对应的地图线的第二地图线数量;
判断所述第二地图点数量是否小于所述第一预设地图点数量,并判断所述第二地图线数量是否小于所述第一预设地图线数量;
若所述第二地图点数量不小于所述第一预设地图点数量,或所述第二地图线数量不小于所述第一预设地图线数量,遍历特征线匹配,以获得所述第一当前帧图像中的第二目标特征线,所述第二目标特征线为出现的图像帧数大于或等于所述预设出现帧数阈值且未匹配到地图线的特征线;
确定所述第二目标特征线的两端点在所述世界坐标系中的坐标,以构建与所述第二目标特征线对应的地图线。
作为一种可选的实施方式,在本发明实施例第一方面中,所述方法还包括:
若所述第一地图点数量不小于所述第一预设地图点数量,或所述第一地图线数量不小于所述第一预设地图线数量,遍历特征线匹配,以获得所述第一当前帧图像中未匹配到地图线的特征线对应的第三目标特征线;
若所述第三目标特征线出现的图像帧数大于或等于所述预设出现帧数阈值时,确定所述第三目标特征线的两端点在所述世界坐标系中的坐标,以构建与所述第三目标特征线对应的地图线;
统计所述第一当前帧图像中的特征线对应地图线的第三地图线数量;
判断所述第一地图点数量是否小于第二预设地图点数量,并判断所述第三地图线数量是否小于第三预设地图线数量;
若所述第一地图点数量小于所述第二预设地图点数量,且所述第三地图线数量小于第三预设地图线数量,将所述第一当前帧图像设置为所述关键帧。
作为一种可选的实施方式,在本发明实施例第一方面中,所述根据所述特征点匹配关系确定所述单目相机的第二相机位姿之前,所述方法还包括:
判断所述特征点匹配关系中的每两个对应匹配的特征点的平均距离是否大于或等于预设匹配特征点平均距离值;
若是,执行所述根据所述特征点匹配关系确定所单目相机的第二相机位姿的步骤;
若否,抛弃所述第二当前帧图像,以所述第二当前帧图像的后一帧图像为新的第二当前帧图像。
作为一种可选的实施方式,在本发明实施例第一方面中,所述方法还包括:
根据采集到各帧图像时的所述单目相机的相机位姿获取所述各帧图像对应的光心点位置;
将所述各帧图像中的特征点对应的地图点、将所述各帧图像中的特征线对应的地图线以及所述各帧图像对应的光心点位置绘制在所述世界坐标系中,以获得路线地图;
根据采集到所述各帧图像时的所述车辆的位姿获取所述各帧图像对应的车辆位置;
将所述车辆位置绘制在所述世界坐标系中,以获得所述车辆在所述路线地图中的运动轨迹。
本发明实施例第二方面公开一种车辆定位系统,所述系统包括:
采集单元,用于利用所述车辆上的单目相机采集所述车辆移动时的图像;
提取单元,用于提取所述图像中的特征点以及特征线;
融合单元,用于在图像帧跟踪过程中,针对任一第一当前帧图像,将所述第一当前帧图像中的特征点和特征线进行融合优化,获得所述单目相机的第一优化相机位姿;
第一确定单元,用于根据所述第一优化相机位姿确定所述车辆的第一位姿;其中,所述车辆的第一位姿为所述车辆相对于世界坐标系的位姿,所述世界坐标系以所述单目相机采集到初始帧图像时所述单目相机的光心点位置为坐标原点。
作为一种可选的实施方式,在本发明实施例第二方面中,所述融合单元包括:
匹配子单元,用于在图像帧跟踪过程中,针对任一第一当前帧图像,匹配所述第一当前帧图像中特征线对应的地图线;
确定子单元,用于根据所述第一当前帧图像中的特征线以及地图线之间的对应关系确定所述单目相机的第一相机位姿,所述第一相机位姿为采集到所述第一当前帧图像时所述单目相机相对于所述世界坐标系的位姿;
所述匹配子单元,还用于匹配所述第一当前帧图像中特征点对应的地图点;
优化子单元,用于非线性迭代优化所述第一相机位姿的取值,直至基于所述第一相机位姿的取值将所述第一当前帧图像中特征线对应的地图线以及所述第一当前帧图像中特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的特征线和特征点之间的第一反投影误差最小;
取值子单元,用于以所述第一反投影误差最小时所述第一相机位姿的取值为所述第一当前帧图像对应的第一优化相机位姿。
作为一种可选的实施方式,在本发明实施例第二方面中,所述系统还包括:
第一匹配单元,用于在所述匹配子单元在图像帧跟踪过程中,针对任一第一当前帧图像,匹配所述第一当前帧图像中特征线对应的地图线之前,针对初始化过程中的第二当前帧图像,将所述第二当前帧图像与所述初始帧图像进行特征点匹配,以获得所述第二当前帧图像与所述初始帧图像的特征点匹配关系,所述第二当前帧图像为在所述初始帧图像之后采集到的图像;
第二确定单元,用于根据所述特征点匹配关系确定所述单目相机的第二相机位姿,所述第二相机位姿为采集到所述第二当前帧图像时所述单目相机相对于所述世界坐标系的位姿;
构建单元,用于根据所述第二相机位姿获取所述特征点匹配关系对应的特征点在所述世界坐标系中的坐标,以构建与所述特征点对应的地图点,完成初始化;
所述构建单元,还用于当第一目标特征线出现的图像帧数大于或等于预设出现帧数阈值时,确定所述第一目标特征线的两端点在所述世界坐标系中的坐标,以构建与所述第一目标特征线对应的地图线。
作为一种可选的实施方式,在本发明实施例第二方面中,所述匹配子单元用于在图像帧跟踪过程中,针对任一第一当前帧图像,匹配所述第一当前帧图像中特征线对应的地图线的方式具体为:
匹配子单元,用于在图像帧跟踪过程中,针对任一第一当前帧图像,对所述第一当前帧图像中的特征线与所述第一当前帧图像的前一帧图像中的特征线进行匹配,以得到第一匹配特征线并确定与所述第一匹配特征线对应的地图线;
所述匹配子单元用于匹配所述第一当前帧图像中特征点对应的地图点的方式具体为:
匹配子单元,用于根据所述第一相机位姿将所述第一当前帧图像中的特征点与所述第一当前帧图像的前一帧图像中的特征点进行匹配,以得到第一匹配特征点并确定与所述第一匹配特征点对应的地图点;
所述优化子单元用于非线性迭代优化所述第一相机位姿的取值,直至基于所述第一相机位姿的取值将所述第一当前帧图像中特征线对应的地图线以及所述第一当前帧图像中特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的特征线和特征点之间的第一反投影误差最小的方式具体为:
优化子单元,用于非线性迭代优化所述第一相机位姿的取值,直至基于所述第一相机位姿的取值将所述第一匹配特征线对应的地图线以及所述第一匹配特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的所述第一匹配特征线和所述第一匹配特征点之间的第一反投影误差最小。
作为一种可选的实施方式,在本发明实施例第二方面中,所述系统还包括:
第一判断单元,用于在所述确定子单元根据所述第一当前帧图像中的特征线以及地图线之间的对应关系确定所述单目相机的第一相机位姿之前,判断所述第一匹配特征线对应的地图线的数量是否大于预设地图线匹配值;
第二判断单元,用于在所述第一判断单元判定所述第一匹配特征线对应的地图线的数量大于所述预设地图线匹配值时,判断所述第一匹配特征线对应的地图线中存在的不平行关系数是否大于所述预设不平行关系数阈值;
所述确定子单元,具体用于在所述第二判断单元判定所述第一匹配特征线对应的地图线中存在的不平行关系数大于所述预设不平行关系数阈值时,执行所述根据所述第一当前帧图像中的特征线以及地图线之间的对应关系确定所述单目相机的第一相机位姿的步骤。
作为一种可选的实施方式,在本发明实施例第二方面中,所述系统还包括:
第二匹配单元,用于在所述第一确定单元根据所述第一优化相机位姿确定所述车辆的第一位姿之前,将所述第一当前帧图像的第一未匹配特征点进行地图点匹配,以获得所述第一未匹配特征点对应的地图点,所述第一未匹配特征点为所述第一当前帧图像中与所述第一当前帧图像的前一帧图像的地图点不匹配的特征点;
所述第二匹配单元,还用于将所述第一当前帧图像的第一未匹配特征线进行地图线匹配,以获得所述第一未匹配特征线对应的地图线,所述第一未匹配特征线为所述第一当前帧图像中与所述第一当前帧图像的前一帧图像的地图线不匹配的特征线;
优化单元,用于非线性迭代优化所述第一优化相机位姿的取值,直至基于所述第一优化相机位姿的取值将所述第一匹配特征线对应的地图线、所述第一匹配特征点对应的地图点、所述第一未匹配特征线对应的地图线以及所述第一未匹配特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的所述第一匹配特征线、所述第一匹配特征点、所述第一未匹配特征线和所述第一未匹配特征点之间的第二反投影误差最小;
取值单元,用于以所述第二反投影误差最小时所述第一优化相机位姿的取值为所述第一当前帧图像对应的第二优化相机位姿;
所述第一确定单元用于根据所述第一优化相机位姿确定所述车辆的第一位姿的方式具体为:
第一确定单元,用于根据所述第二优化相机位姿确定所述车辆的第二位姿。
作为一种可选的实施方式,在本发明实施例第二方面中,所述系统还包括:
统计单元,用于在第一确定单元根据所述第二优化相机位姿确定所述车辆的第二位姿之前,统计所述第一当前帧图像中特征点对应的地图点的第一地图点数量和所述第一当前帧图像中特征线对应的地图线的第一地图线数量;
第三判断单元,用于判断所述第一地图点数量是否小于第一预设地图点数量,并判断所述第一地图线数量是否小于第一预设地图线数量;
获取单元,用于在所述第三判断单元判定所述第一地图点数量小于所述第一预设地图点数量,且所述第一地图线数量小于所述第一预设地图线数量时,获取所述第一当前帧图像的特征线词袋;
所述第一匹配单元,还用于根据所述特征线词袋将所述第一当前帧图像的特征线与所述第一当前帧图像的前一关键帧的特征线进行匹配,以得到第二匹配特征线并确定与所述第二匹配特征线对应的地图线,所述第二匹配特征线为所述第一当前帧图像中与所述第一当前帧图像的前一关键帧的地图线存在匹配关系的特征线;所述第一当前帧图像的前一关键帧为在所述第一当前帧图像之前的最接近所述第一当前帧图像的一个关键帧;
所述第二确定单元,还用于根据所述第二匹配特征线以及所述第二匹配特征线对应的地图线确定所述单目相机的第三相机位姿,所述第三相机位姿为采集到所述第一当前帧图像时所述单目相机相对于所述世界坐标系的位姿;
所述第一匹配单元,还用于根据所述第三相机位姿将所述第一当前帧图像的特征点与所述第一当前帧图像的前一关键帧的特征点进行匹配,以得到第二匹配特征点并确定与所述第二匹配特征点对应的地图点;
所述优化单元,用于非线性迭代优化所述第三相机位姿的取值,直至基于所述第三相机位姿的取值将所述第二匹配特征线对应的地图线以及所述第二匹配特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的所述第二匹配特征线和第二匹配特征点之间的第三反投影误差最小;
所述取值单元,还用于以所述第三反投影误差最小时所述第三相机位姿的取值为所述单目相机的第三优化相机位姿;
第一确定单元用于根据所述第二优化相机位姿确定所述车辆的第二位姿的方式具体为:
第一确定单元,用于根据所述第三优化相机位姿确定所述车辆的第三位姿。
作为一种可选的实施方式,在本发明实施例第二方面中,所述系统还包括:
所述第一判断单元,还用于在所述第二确定单元根据所述第二匹配特征线对应的地图线确定所述单目相机的第三相机位姿之前,判断所述第二匹配特征线对应的地图线的数量是否大于所述预设地图线匹配值;
所述第二判断单元,还用于在所述第一判断单元判定所述第二匹配特征线对应的地图线的数量大于所述预设地图线匹配值时,判断所述第二匹配特征线对应的地图线中存在的不平行关系数是否大于所述预设不平行关系数阈值;
所述第二确定单元,具体用于在所述第二判断单元判定所述第二匹配特征线对应的地图线中存在的不平行关系数大于所述预设不平行关系数阈值时,执行所述根据所述第二匹配特征线对应的地图线确定所述单目相机的第三相机位姿的步骤。
作为一种可选的实施方式,在本发明实施例第二方面中,所述系统还包括:
所述第二匹配单元,还用于在所述第一确定单元根据所述第三优化相机位姿确定所述车辆的第三位姿之前,将所述第一当前帧图像的第二未匹配特征点进行地图点匹配,以获得所述第二未匹配特征点对应的地图点,所述第二未匹配特征点为所述第一当前帧图像中与所述第一当前帧图像的前一关键帧中的地图点不匹配的特征点;
所述第二匹配单元,还用于将所述第一当前帧图像的第二未匹配特征线进行地图线匹配,以获得所述第二未匹配特征线对应的地图线,所述第二未匹配特征线为所述第一当前帧图像中与所述第一当前帧图像的前一关键帧中的地图线不匹配的特征线;
所述优化单元,还用于非线性迭代优化所述第三优化相机位姿的取值,直至基于所述第三优化相机位姿的取值将所述第二匹配特征线对应的地图线、所述第二匹配特征点对应的地图点、所述第二未匹配特征线对应的地图线以及所述第二未匹配特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的所述第二匹配特征线、所述第二匹配特征点、所述第二未匹配特征线和所述第二未匹配特征点之间的第四反投影误差最小;
所述取值单元,还用于以所述第四反投影误差最小时所述第三优化相机位姿的取值为所述单目相机的第四优化相机位姿;
所述第一确定单元用于根据所述第三优化相机位姿确定所述车辆的第三位姿的方式具体为:
第一确定单元,用于根据所述第四优化相机位姿确定所述车辆的第四位姿。
作为一种可选的实施方式,在本发明实施例第二方面中,所述系统还包括:
所述统计单元,用于在所述第一确定单元根据所述第四优化相机位姿确定所述车辆的第四位姿之后,统计所述第一当前帧图像中特征点对应的地图点的第二地图点数量和所述第一当前帧图像对应的地图线的第二地图线数量;
所述第三判断单元,还用于判断所述第二地图点数量是否小于所述第一预设地图点数量,并判断所述第二地图线数量是否小于所述第一预设地图线数量;
遍历单元,用于在所述第三判断单元判定所述第二地图点数量不小于所述第一预设地图点数量,或所述第二地图线数量不小于所述第一预设地图线数量时,遍历特征线匹配,以获得所述第一当前帧图像中的第二目标特征线,所述第二目标特征线为出现的图像帧数大于或等于所述预设出现帧数阈值且未匹配到地图线的特征线;
所述构建单元,还用于在所述第二目标特征线出现的图像帧数大于或等于所述预设出现帧数阈值时,确定所述第二目标特征线的两端点在所述世界坐标系中的坐标,以构建与所述第二目标特征线对应的地图线。
作为一种可选的实施方式,在本发明实施例第二方面中,所述系统还包括:
所述遍历单元,还用于在所述第一地图点数量不小于所述第一预设地图点数量,或所述第一地图线数量不小于所述第一预设地图线数量时,遍历特征线匹配,以获得所述第一当前帧图像中未匹配到地图线的特征线对应的第三目标特征线;
所述构建单元,还用于在所述第三目标特征线出现的图像帧数大于或等于所述预设出现帧数阈值时,确定所述第三目标特征线的两端点在所述世界坐标系中的坐标,以构建与所述第三目标特征线对应的地图线;
所述统计单元,还用于统计所述第一当前帧图像中的特征线对应地图线的第三地图线数量;
所述第三判断单元,还用于判断所述第一地图点数量是否小于第二预设地图点数量,并判断所述第三地图线数量是否小于第三预设地图线数量;
设置单元,用于在所述第五判断单元判定所述第一地图点数量小于所述第二预设地图点数量,且所述第三地图线数量小于第三预设地图线数量时,将所述第一当前帧图像设置为所述关键帧。
作为一种可选的实施方式,在本发明实施例第二方面中,所述系统还包括:
第四判断单元,用于在所述第二确定单元根据所述特征点匹配关系确定所述单目相机的第二相机位姿之前,判断所述特征点匹配关系中的每两个对应匹配的特征点的平均距离是否大于或等于预设匹配特征点平均距离值;
所述第二确定单元,具体用于在所述第六判断单元判定所述平均距离大于或等于所述预设匹配特征点平均距离值时,执行所述根据所述特征点匹配关系确定所单目相机的第二相机位姿的步骤;
抛弃单元,用于在所述第四判断单元判定所述平均距离小于所述预设匹配特征点平均距离值时,抛弃所述第二当前帧图像,以所述第二当前帧图像的后一帧图像为新的第二当前帧图像。
作为一种可选的实施方式,在本发明实施例第二方面中,所述系统还包括:
所述获取单元,还用于根据采集到各帧图像时的所述单目相机的相机位姿获取所述各帧图像对应的光心点位置;
绘制单元,用于将所述各帧图像中的特征点对应的地图点、将所述各帧图像中的特征线对应的地图线以及所述各帧图像对应的光心点位置绘制在所述世界坐标系中,以获得路线地图;
所述绘制单元,还用于将所述车辆位置绘制在所述世界坐标系中,以获得所述车辆在所述路线地图中的运动轨迹。
本发明实施例第三方面公开一种车载计算机,包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明实施例第一方面公开的一种基于单目相机的车辆定位方法。
本发明实施例第四方面公开一种计算机可读存储介质,其存储计算机程序,其中,所述计算机程序使得计算机执行本发明实施例第一方面公开的一种基于单目相机的车辆定位方法。
本发明实施例第五方面公开一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行第一方面的任意一种方法的部分或全部步骤。
本发明实施例第六方面公开一种应用发布平台,所述应用发布平台用于发布计算机程序产品,其中,当所述计算机程序产品在计算机上运行时,使得所述计算机执行第一方面的任意一种方法的部分或全部步骤。
与现有技术相比,本发明实施例具有以下有益效果:
本发明实施例利用车辆上的单目相机在车辆移动时实时采集图像,并提取图像中的特征点以及特征线,在图像帧跟踪过程中,针对任一第一当前帧图像,利用第一当前帧图像中的特征点和特征线进行融合优化来获得单目相机的第一优化相机位姿,进而根据该第一优化相机位姿确定车辆的第一位姿。可见,实施本发明实施例,对单目相机采集到的图像均提取图像中的特征点以及特征线,在图像跟踪的过程中基于特征点和特征线的融合优化获得单目相机的优化后的相机位姿,在纹理较少的环境中,仍能够获得准确率较高的相机位姿,进而能够获得准确率较高的车辆位姿,能够减小由于环境的纹理变化给车辆定位带来的影响,极大地提高了车辆定位系统的鲁棒性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种基于单目相机的车辆定位方法的流程示意图;
图2是本发明实施例公开的另一种基于单目相机的车辆定位方法的流程示意图;
图3是本发明实施例公开的一种车辆定位系统的结构示意图;
图4是本发明实施例公开的另一种车辆定位系统的结构示意图;
图5是本发明实施例公开的一种特征点和特征线融合优化的示意图;
图6是本发明实施例公开的一种地图线构建示意图;
图7是本发明实施例公开的一种车载计算机的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同的对象,而不是用于描述特定顺序。本发明实施例的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例公开了一种基于单目相机的车辆定位方法及系统,能够提高车辆定位系统的鲁棒性。以下进行结合附图进行详细描述。
实施例一
请参阅图1,图1是本发明实施例公开的一种基于单目相机的车辆定位方法的流程示意图。如图1所示,该车辆定位方法可以包括以下步骤。
101、车辆定位系统利用车辆上的单目相机采集车辆移动时的图像。
可以理解,本发明实施例中,上述单目相机是一种用于定位的传感器,能够以一定速率拍摄周围的环境,形成一个连续的视频流,单目相机本质上是将拍照时的场景,在相机的成像平面上留下一个投影,以二维的形式反映三维的世界。
102、车辆定位系统提取图像中的特征点以及特征线。
可以理解,特征点是图像最基本的特征,它是指那些灰度信号在二维方向上都有明显变化的点,特征点有较好的辨识性,不同物体上的点容易区分。提取图像中的特征点进而能够利用特征点进行图像的匹配或进行目标识别、跟踪。本发明实施例中,特征点可以是角点、圆点和/或交叉点等,本发明实施例不作限定。
本发明实施例中,特征线可以表现为暗色背景上的较亮的线条、亮色背景上的较暗的线条,和/或线状狭长区域等具有辨识性的线条,本发明实施例不作限定。
103、车辆定位系统在图像帧跟踪过程中,针对任一第一当前帧图像,将第一当前帧图像中的特征点和特征线进行融合优化,获得单目相机的第一优化相机位姿。
本发明实施例中,可以理解,上述第一当前帧图像指车辆定位系统开始图像帧跟踪之后单目相机采集到的最新一帧图像,在图像帧跟踪过程中,当单目相机采集到新的图像,就以该新的图像更新上述第一当前帧图像,并进行图像帧跟踪以确定车辆的位姿。
本发明实施例中,上述单目相机的第一优化相机位姿利用特征点和特征线进行融合计算获得的采集到第一当前帧图像时单目相机相对于世界坐标的位姿。
本发明实施例中,上述将第一当前帧图像中的特征点和特征线进行融合优化,可以指利用光束平差法将第一当前帧图像中的特征点和特征线进行融合优化,即迭代调整相机位姿,直至地图线投影与对应的特征线、地图点投影与对应的特征点之间的投影误差最小的过程。
作为一种可选的实施方式,步骤103可以包括:
车辆定位系统在图像帧跟踪过程中,针对任一第一当前帧图像,匹配第一当前帧图像中特征线对应的地图线;
可以理解,特征线对应的地图线指该特征线对应的三维空间中的直线段,特征线的两端点是该直线段的两点。
车辆定位系统根据第一当前帧图像中的特征线以及地图线之间的对应关系确定单目相机的第一相机位姿,该第一相机位姿为采集到第一当前帧图像时单目相机相对于世界坐标系的位姿;
可以理解,本发明实施中,每一个图像帧对应的相机位姿均包括旋转矩阵和平移向量。
车辆定位系统匹配第一当前帧图像中特征点对应的地图点;
可以理解,特征点对应的地图点指该特征点在世界坐标系中的坐标,是三维空间中的点。
车辆定位系统非线性迭代优化第一相机位姿的取值,直至基于第一相机位姿的取值将第一当前帧图像中特征线对应的地图线以及第一当前帧图像中特征点对应的地图点反投影至第一当前帧图像之后得到的投影线以及投影点与对应的特征线和特征点之间的第一反投影误差最小;
可以理解,采用非线性迭代优化方法,则上述第一反投影误差的值与第一相机位姿的取值(即初始值)有关,可以非线性迭代优化第一相机位姿的取值收敛到全局最小值,即可以非线性迭代优化第一相机位姿的取值使得第一反投影误差的值最小。
车辆定位系统以第一反投影误差最小时第一相机位姿的取值为第一优化相机位姿。
举例来说,采用的融合策略可以为:利用第一相机位姿将第一当前帧图像中匹配到的地图点以及地图线反投影至该第一当前帧图像上,将地图点反投影误差的平方和,与地图线两端点反投影后到图像上特征线对应的直线上的距离平方和相加,采用非线性迭代优化方法,求取全局极小值,从而最终获得定位结果最优值,融合的目标函数可以如式1,:
式1
式1中,Rcw、tcw分别为待求解的旋转矩阵、平移向量。(ui,vi)为第i个地图点反投影到第一当前帧图像上的坐标,(xi,yi)为该地图点在第一当前帧图像上对应的特征点坐标。aj、bj、cj为图像上第j条特征线的平面直线方程的系数,(u1j,v1j)、(u2j,v2j)为该特征线的两端点,aj'、bj'、cj'为图像上第j条特征线对应的地图线反投影到图像平面上直线方程的系数,N、M分别为当前图像的地图点、地图线的个数,α、β是函数两部分的权重。根据投影方程,ui、vi均为空间点反投影到第一当前帧图像上的坐标,设空间点坐标值为(x,y,z),则可以利用式2计算其投影到第一当前帧图像中的坐标(u,v):
式2
上述式2中,fx、fy、cx、cy均为已知的标定系数,通过单目相机标定获得。Rcw(0)、Rcw(1)、Rcw(2)、分别表示Rcw的第0、1、2行,tcw(0)、tcw(1)、tcw(2)分别表示tcw的第0、1、2元素,P为地图点坐标。
请参阅图5,图5是本发明实施例公开的一种特征点和特征线融合优化的示意图,其中,CamO是单目相机的光心点,P1点是地图点,p1’点是其在第一当前帧图像上对应的特征点位置,p1是其反投影到第一当前帧图像上的点,d1即为P1的反投影误差。L是地图线,P2、P3分别是L的两端点,p2、p3分别是L的两端点反投影到图像上的点,L’是L反投影到第一当前帧图像上的线段。l是其在第一当前帧图像上对应的特征线位置,p2’、p3’分别为l的两端点。d2、d3分别为线段l’到线段l两端点的距离,d2、d3所指的虚线垂直于直线l,且垂足点分别为p2’、p3’。若有N个地图点,M条地图线,其中,N、M均为非负整数,则优化的目标函数可以为式3:
式3
式3中,d1i,d2j,d3j均为旋转矩阵Rcw、平移向量tcw的函数,其中,d1i为第i个地图点的反投影误差,d2j、d3j分别为第j条地图线反投影到图像平面上的直线到对应的特征线两端点的距离,即第j条地图线的反投影误差,α、β是函数两部分的权重。通过非线性优化迭代求解,得到全局最小值,即求出旋转矩阵Rcw、平移向量tcw。设p1点坐标为(u,v),坐标值为旋转矩阵Rcw、平移向量tcw的函数,p1’点坐标为(x,y),则距离的平方可以为式4:
d12=(u-x)2+(v-y)2
式4
设直线l的方程为式5:
ax+by+c=0
式5
点p2’、p3’的坐标分别为(u2,v2)、(u3,v3),则投影线L’到直线l的距离平方和可以通过式6计算:
式6
可见实施本实施方式,能够根据第一当前帧图像中的特征线以及地图线之间的对应关系确定单目相机的第一相机位姿,无需考虑环境的纹理是否足够多,再利用该第一相机位姿将第一当前帧图像中的地图点以及地图线进行反投影,根据反投影后所反映出来的误差来优化第一相机位姿,进而能够获得准确率更高第一优化相机位姿,进而提高车辆定位系统的鲁棒性和准确性。
104、车辆定位系统根据第一优化相机位姿确定车辆的第一位姿。其中,车辆的第一位姿为车辆相对于世界坐标系的位姿,该世界坐标系以单目相机采集到初始帧图像时单目相机的光心点位置为坐标原点。
可以理解,本发明实施例中,初始帧图像指单目相机在车辆移动时采集到的第一帧图像。
可以理解,此时以上述车辆的第二位姿作为采集到第一当前帧图像时车辆的最终位姿。
可见,实施图1所描述的方法,在纹理较少的环境中,车辆定位系统仍能够获得单目相机的第一优化相机位姿,进而能够获得准确率较高的车辆位姿,能够减小由于环境的纹理变化给车辆定位带来的影响,极大地提高了车辆定位系统的鲁棒性。此外,还能够提高车辆定位系统的准确率。
实施例二
请参阅图2,图2是本发明实施例公开的另一种基于单目相机的车辆定位方法的流程示意图。如图2所示,该车辆定位方法可以包括以下步骤。
201、车辆定位系统利用车辆上的单目相机采集车辆移动时的图像。
202、车辆定位系统提取图像中的特征点以及特征线。
203、车辆定位系统在图像帧跟踪过程中,针对任一第一当前帧图像,对第一当前帧图像中的特征线与第一当前帧图像的前一帧图像中的特征线进行匹配,以得到第一匹配特征线并确定与该第一匹配特征线对应的地图线。
可以理解,上述第一匹配特征线为第一当前帧图像中与第一当前帧图像的前一帧图像中的特征线存在匹配关系,且能匹配到地图线的特征线。
作为一种可选的实施方式,在步骤203之前,还可以包括以下步骤:
车辆定位系统针对初始化过程中的第二当前帧图像,将第二当前帧图像与初始帧图像进行特征点匹配,以获得第二当前帧图像与初始帧图像的特征点匹配关系,第二当前帧图像为在初始帧图像之后采集到的图像;
可选的,上述将第二当前帧图像与初始帧图像进行特征点匹配之后,可以利用Ransac方法去掉特征点匹配过程中的误匹配,使得获得第二当前帧图像与初始帧图像的特征点匹配关系具有更高的准确率,进而提高车辆定位系统的准确性。
车辆定位系统根据特征点匹配关系确定单目相机的第二相机位姿,该第二相机位姿为采集到第二当前帧图像时单目相机相对于世界坐标系的位姿;
可选的,在上述车辆定位系统根据特征点匹配关系确定单目相机的第二相机位姿之前,还可以包括以下步骤:
车辆定位系统判断特征点匹配关系中的每两个对应匹配的特征点的平均距离是否大于或等于预设匹配特征点平均距离值;若是,车辆定位系统执行根据特征点匹配关系确定单目相机的第二相机位姿的步骤;若否,车辆定位系统抛弃第二当前帧图像,以第二当前帧图像的后一帧图像为新的第二当前帧图像。
本发明实施例中,可以理解,若两帧图像间特征点匹配关系中的每两个对应匹配的特征点的平均距离小于一定距离时,说明车辆未发生明显移动,此时抛弃第二当前帧,以第二当前帧图像的后一帧图像为新的第二当前帧图像,能够减少不必要的计算量,进而提高车辆定位系统的定位效率。
车辆定位系统根据第二相机位姿获取特征点匹配关系对应的特征点在世界坐标系中的坐标,以构建与特征点对应的地图点,完成初始化;
本发明实施例中,可以理解,在获得第二相机位姿之后,能够利用三角计算方法,计算第二当前帧图像中的特征点在世界坐标系中的三维坐标,进而构建特征点对应的地图点。
本发明实施例中,可以理解,车辆定位系统是无法通过单目相机拍摄的单张图像确定深度的,本发明实施例以初始帧图像的光心位姿为原点建立世界坐标系,可以不断结合前面采集到的图像进行分析计算以获得特征点对应地图点。初始化过程主要完成第二当前帧图像中特征点对应的地图点计算,以用于后续图像帧跟踪过程中对第一当前帧图像中的特征点进行地图点匹配。
当第一目标特征线出现的图像帧数大于或等于预设出现帧数阈值时,车辆定位系统确定第一目标特征线的两端点在世界坐标系中的坐标,以构建与第一目标特征线对应的地图线。
本发明实施例中,车辆定位系统确定第一目标特征线的两端点在世界坐标系中的坐标,以构建与第一目标特征线对应的地图线的方式可以参阅图6,图6是本发明实施例公开的一种地图线构建示意图,举例来说,第一目标特征线出现的图像帧数为3,其中,O1、O2、O3分别表示三帧图像的相机光心点,l1、l2、l3分别表示三帧图像中的特征线,其中p1、p2为l1的两端点,且l1、l2、l3存在相互匹配关系,直线L是最终构建的得到的与第一目标特征线对应的地图线,线上的各点(A,B,C,D,E,F)是直线距离各投影线的最近点,如B、E点,分别表示L和O1与p1、p2的连线的最近距离点。取所有这些点中距离最远的两点为直线段L的两端点,如图6中,取的端点为A和F。
本发明实施例中,车辆定位系统确定第一目标特征线的两端点在世界坐标系中的坐标的方法可以是最小二乘法,本发明实施例不作限定。
可见,实施本实施方式,车辆系统通过初始化过程获取了第二当前帧图像中特征点对应的地图点,并在一个特征线出现的帧数足够多时,计算该图像帧对应的地图线,为后续图像帧跟踪做好了准备工作;此外,能够减少不必要的计算量,进而提高车辆定位系统的定位效率。
204、车辆定位系统根据第一当前帧图像中的特征线以及地图线之间的对应关系确定单目相机的第一相机位姿,该第一相机位姿为采集到上述第一当前帧图像时单目相机相对于世界坐标系的位姿。
本发明实施例中,步骤204中,车辆定位系统确定单目相机的第一相机位姿具体是利用地图线反投影到第一当前帧图像后与对应的特征线间的反投影误差进行计算。
作为一种可选的实施方式,在步骤204之前,还可以包括以下步骤:
车辆定位系统判断第一匹配特征线对应的地图线的数量是否大于预设地图线匹配值;若是,车辆定位系统判断第一匹配特征线对应的地图线中存在的不平行关系数是否大于预设不平行关系数阈值;若是,转向204步骤。
可选的,当第一匹配特征线对应的地图线的数量不大于预设地图线匹配值,或第一匹配特征线对应的地图线中存在的不平行关系数不大于预设不平行关系数阈值时,使用运动估计的方式获取单目相机的第一相机位姿。两种方式互相结合,使得车辆定位系统具有较好的鲁棒性。
实施本实施方式,在步骤204之前,先判断第一匹配特征线对应的地图线的数量以及其中存在的不平行关系数是否均满足预设的要求,能够提高车辆定位系统的准确率;此外,结合运动估计的方式作为确定单目相机的第一相机位姿的替补方案,使得车辆定位系统具有较好的鲁棒性。
205、车辆定位系统根据第一相机位姿将第一当前帧图像中的特征点与第一当前帧图像的前一帧图像中的特征点进行匹配,以得到第一匹配特征点并确定与第一匹配特征点对应的地图点。
本发明实施例中,上述车辆定位系统根据第一相机位姿将第一当前帧图像中的特征点与第一当前帧图像的前一帧图像中的特征点进行匹配时,可以利用步骤204中的第一相机位姿限制匹配时的搜索范围,提高匹配的准确率以及效率。
可以理解,上述第一匹配特征点为第一当前帧图像中与第一当前帧图像的前一帧图像中的特征点存在匹配关系,且能匹配到地图点的特征点。
206、车辆定位系统非线性迭代优化第一相机位姿的取值,直至基于第一相机位姿的取值将第一匹配特征线对应的地图线以及第一匹配特征点对应的地图点反投影至第一当前帧图像之后得到的投影线以及投影点与对应的第一匹配特征线和第一匹配特征点之间的第一反投影误差最小。
207、车辆定位系统以第一反投影误差最小时第一相机位姿的取值为第一优化相机位姿。
208、车辆定位系统将第一当前帧图像的第一未匹配特征点进行地图点匹配,以获得第一未匹配特征点对应的地图点,第一未匹配特征点为第一当前帧图像中与第一当前帧图像的前一帧图像中的地图点不匹配的特征点。
209、车辆定位系统将第一当前帧图像的第一未匹配特征线进行地图线匹配,以获得第一未匹配特征线对应的地图线,第一未匹配特征线为所述第一当前帧图像中与第一当前帧图像的前一帧图像中的地图线不匹配的特征线。
210、车辆定位系统非线性迭代优化第一优化相机位姿的取值,直至基于第一优化相机位姿的取值将第一匹配特征线对应的地图线、第一匹配特征点对应的地图点、第一未匹配特征线对应的地图线以及第一未匹配特征点对应的地图点反投影至第一当前帧图像之后得到的投影线以及投影点与对应的第一匹配特征线、第一匹配特征点、第一未匹配特征线和第一未匹配特征点之间的第二反投影误差最小。
211、车辆定位系统以第二反投影误差最小时第一优化相机位姿的取值为第二优化相机位姿。
可以理解,第二优化相机位姿的获取过程可以参阅图4,以及可以参阅式1~式6。
212、车辆定位系统根据第二优化相机位姿确定车辆的第二位姿。
可以理解,此时以上述车辆的第二位姿作为采集到第一当前帧图像时车辆的最终位姿。
作为一种可选的实施方式,在步骤212之前,还可以包括以下步骤:
a、车辆定位系统统计第一当前帧图像中特征点对应的地图点的第一地图点数量和第一当前帧图像中特征线对应的地图线的第一地图线数量;
可选的,在步骤a之前,车辆定位系统可以去除特征点匹配地图点中的误匹配以及特征线匹配地图线中误匹配,进而提高统计结果的准确性。
b、车辆定位系统判断第一地图点数量是否小于第一预设地图点数量,并判断第一地图线数量是否小于第一预设地图线数量;
c、若第一地图点数量小于第一预设地图点数量,且第一地图线数量小于第一预设地图线数量,车辆定位系统获取第一当前帧图像的特征线词袋;
可选的,若第一地图点数量不小于第一预设地图点数量,或第一地图线数量不小于第一预设地图线数量,车辆定位系统遍历特征线匹配,以获得第一当前帧图像中未匹配到地图线的特征线对应的第三目标特征线;若第三目标特征线出现的图像帧数大于或等于预设出现帧数阈值时,车辆定位系统确定第三目标特征线的两端点在世界坐标系中的坐标,以构建与第三目标特征线对应的地图线;车辆定位系统统计第一当前帧图像中的特征线对应地图线的第三地图线数量;车辆定位系统判断第一地图点数量是否小于第二预设地图点数量,并判断第三地图线数量是否小于第三预设地图线数量;若第一地图点数量小于第二预设地图点数量,且第三地图线数量小于第三预设地图线数量,车辆定位系统将第一当前帧图像设置为关键帧。
本发明实施例中,可以理解,构建与第三目标特征线对应的地图线是为第一当前帧图像后的图像帧跟踪做好准备。
d、车辆定位系统根据特征线词袋将第一当前帧图像的特征线与第一当前帧图像的前一关键帧的特征线进行匹配,以得到第二匹配特征线并确定与第二匹配特征线对应的地图线,第二匹配特征线为第一当前帧图像中与第一当前帧图像的前一关键帧的地图线存在匹配关系的特征线;第一当前帧图像的前一关键帧为在第一当前帧图像之前的最接近第一当前帧图像的一个关键帧;
举例来说,上述第一当前帧图像为第10帧图像,而第7帧图像和第3帧图像均为关键帧,且第8帧图像和第9帧图像都不是关键帧,那么,第7帧图像就是在第一当前帧图像之前的最接近第一当前帧图像的一个关键帧,即上述第一当前帧图像的前一关键帧。
本发明实施例中,可以理解,上述关键帧指匹配上的地图点数量低于预设的地图点匹配数量阈值,且地图线数量低于预设的地图线匹配数量阈值的图像帧。
可选的,在步骤d之前,还可以包括以下步骤:
将初始帧图像设置为关键帧;以及当上述初始化过程中的特征点匹配关系中的每两个对应匹配的特征点的平均距离大于一定距离时,以及匹配的特征点数量大于预设特征点匹配数量阈值时,车辆定位系统根据特征点匹配关系确定采集到第二当前帧图像时单目相机相对于世界坐标系的位姿,计算第二当前帧图像中的地图点,并将第二当前帧图像设置为关键帧;否则,抛弃该第二当前帧图像,继续采集下一帧图像作为第二当前帧图像,重复上述针对第二当前帧图像的操作。设置关键帧,以使得在图像帧跟踪过程中,若是第二当前帧图像利用第二当前帧图像的前一帧图像跟踪失败时,能够利用关键帧进行跟踪,能够提高图像帧跟踪的成功率。
e、车辆定位系统根据第二匹配特征线以及第二匹配特征线对应的地图线确定单目相机的第三相机位姿,该第三相机位姿为采集到第一当前帧图像时单目相机相对于世界坐标系的位姿;
可选的,在步骤e之前,还可以包括以下步骤:
车辆定位系统判断第二匹配特征线对应的地图线的数量是否大于预设地图线匹配值;
若第二匹配特征线对应的地图线的数量大于预设地图线匹配值,车辆定位系统判断第二匹配特征线对应的地图线中存在的不平行关系数是否大于预设不平行关系数阈值;
若第二匹配特征线对应的地图线中存在的不平行关系数大于预设不平行关系数阈值,车辆定位系统执行上述步骤e。
进一步可选的,若第二匹配特征线对应的地图线的数量不大于预设地图线匹配值,或第二匹配特征线对应的地图线中存在的不平行关系数不大于预设不平行关系数阈值,车辆定位系统获取第一当前帧图像的特征点词袋,根据特征点词袋将第一当前帧图像的特征点与第一当前帧图像的前一关键帧的特征点进行匹配,以获得第二匹配特征点对应的地图点,并统计第一当前帧图像对应的第三地图点数量,若该第三地图点数量大于第三预设地图点数量,则转向步骤g,若该第三地图点数量不大于第三预设地图点数量,则利用关键帧跟踪第一当前帧失败。可见,在利用关键帧跟踪第一当前帧的过程中,能够利用特征点词袋获取第二匹配特征点对应的地图点,进而能够提高跟踪第一当前帧图像的成功率。
f、车辆定位系统根据第三相机位姿将第一当前帧图像的特征点与第一当前帧图像的前一关键帧的特征点进行匹配,以得到第二匹配特征点并确定与第二匹配特征点对应的地图点;
g、车辆定位系统非线性迭代优化第三相机位姿的取值,直至基于第三相机位姿的取值将第二匹配特征线对应的地图线以及第二匹配特征点对应的地图点反投影至第一当前帧图像之后得到的投影线以及投影点与对应的第二匹配特征线和第二匹配特征点之间的第三反投影误差最小;
h、车辆定位系统以第三反投影误差最小时第三相机位姿的取值为单目相机的第三优化相机位姿;
可以理解,第二优化相机位姿的获取过程可以参阅图4,以及可以参阅式1~式6。其中,第二匹配特征点是根据第二优化相机位姿将第一当前帧图像的前一关键帧的地图点反投影至该第一当前帧图像后,在预设搜索范围内进行匹配后获得的地图点。
i、步骤212可以包括:车辆定位系统根据第三优化相机位姿确定车辆的第三位姿。
可以理解,此时以上述车辆的第三位姿作为采集到所述第一当前帧图像时车辆的最终位姿。
可选的,在上述车辆定位系统根据第三优化相机位姿确定车辆的第三位姿之前,还可以包括以下步骤:
车辆定位系统将第一当前帧图像的第二未匹配特征点进行地图点匹配,以获得第二未匹配特征点对应的地图点,第二未匹配特征点为第一当前帧图像中与第一当前帧图像的前一关键帧中的特征点不匹配的特征点;
车辆定位系统将第一当前帧图像的第二未匹配特征线进行地图线匹配,以获得第二未匹配特征线对应的地图线,第二未匹配特征线为第一当前帧图像中与第一当前帧图像的前一关键帧中的地图线不匹配的特征线;
车辆定位系统非线性迭代优化第三优化相机位姿的取值,直至基于第三优化相机位姿的取值将第二匹配特征线对应的地图线、第二匹配特征点对应的地图点、第二未匹配特征线对应的地图线以及第二未匹配特征点对应的地图点反投影至第一当前帧图像之后得到的投影线以及投影点与对应的第二匹配特征线、所述第二匹配特征点、第二未匹配特征线和第二未匹配特征点之间的第四反投影误差最小;
车辆定位系统以第四反投影误差最小时第三优化相机位姿的取值为单目相机的第四优化相机位姿;
上述车辆定位系统根据第三优化相机位姿确定车辆的第三位姿,可以包括:
车辆定位系统根据第四优化相机位姿确定车辆的第四位姿。
可以理解,此时以上述车辆的第四位姿作为采集到第一当前帧图像时车辆的最终位姿。
可选的,在上述车辆定位系统根据第四优化相机位姿确定车辆的第四位姿之后,还可以包括以下步骤:
车辆定位系统统计第一当前帧图像中特征点对应的地图点的第二地图点数量和第一当前帧图像对应的地图线的第二地图线数量;
车辆定位系统判断第二地图点数量是否小于第一预设地图点数量,并判断第二地图线数量是否小于第一预设地图线数量;
若第二地图点数量不小于第一预设地图点数量,或第二地图线数量不小于第一预设地图线数量,车辆定位系统遍历特征线匹配,以获得第一当前帧图像中的第二目标特征线,第二目标特征线为出现的图像帧数大于或等于预设出现帧数阈值且未匹配到地图线的特征线;
车辆定位系统确定第二目标特征线的两端点在世界坐标系中的坐标,以构建与第二目标特征线对应的地图线。
本发明实施例中,可以理解,构建与第二目标特征线对应的地图线是为第一当前帧图像之后的图像帧跟踪做准备。
可见实施本实施方式,能够利用关键帧进行跟踪,能够提高图像帧跟踪的成功率;此外,还能够构建与第二目标特征线对应的地图线是为第一当前帧图像之后的图像帧跟踪做准备。
作为一种可选的实施方式,在步骤212之后,还可以包括以下步骤:
车辆定位系统根据采集到各帧图像时的单目相机的相机位姿获取各帧图像对应的光心点位置;车辆定位系统将各帧图像中的特征点对应的地图点、将各帧图像中的特征线对应的地图线以及各帧图像对应的光心点位置绘制在世界坐标系中,以获得路线地图;车辆定位系统根据采集到各帧图像时的车辆的位姿获取各帧图像对应的车辆位置;车辆定位系统将车辆位置绘制在世界坐标系中,以获得车辆在路线地图中的运动轨迹。
可见,实施本实施方式,将各帧图像中的地图点、地图线以及各帧图像对应的光心点位置绘制在世界坐标系中,地图线和地图点能够代表建筑、景观等标志物,形成车辆所经路线的地图,将车辆位置绘制在世界坐标系中,能够在路线地图中的体现车辆的运动轨迹,形象生动,能够提升用户体验。
可见,实施图2所描述的方法,在纹理较少的环境中,车辆定位系统仍能够获得单目相机的第一优化相机位姿,进而能够获得准确率较高的车辆位姿,能够减小由于环境的纹理变化给车辆定位带来的影响,极大地提高了车辆定位系统的鲁棒性。此外,还能够提高车辆定位系统的准确率。此外,能够减少不必要的计算量,进而提高车辆定位系统的定位效率。此外,还能够利用关键帧以及词袋匹配技术进行跟踪,能够提高图像帧跟踪的成功率。
实施例三
请参阅图3,图3是本发明实施例公开的一种车辆定位系统的结构示意图。如图3所示,该车辆定位系统可以包括:
采集单元301,用于利用车辆上的单目相机采集车辆移动时的图像;
提取单元302,用于提取图像中的特征点以及特征线;
融合单元303,用于在图像帧跟踪过程中,针对任一第一当前帧图像,将第一当前帧图像中的特征点和特征线进行融合优化,获得单目相机的第一优化相机位姿;
作为一种可选的实施方式,融合单元303还可以包括:
匹配子单元3031,用于在图像帧跟踪过程中,针对任一第一当前帧图像,匹配第一当前帧图像中特征线对应的地图线;
确定子单元3032,用于根据第一当前帧图像中的特征线以及地图线之间的对应关系确定单目相机的第一相机位姿,该第一相机位姿为采集到所述第一当前帧图像时所述单目相机相对于所述世界坐标系的位姿;
匹配子单元3031,还用于匹配第一当前帧图像中特征点对应的地图点;
优化子单元3033,用于非线性迭代优化第一相机位姿的取值,直至基于第一相机位姿的取值将第一当前帧图像中特征线对应的地图线以及第一当前帧图像中特征点对应的地图点反投影至第一当前帧图像之后得到的投影线以及投影点与对应的特征线和特征点之间的第一反投影误差最小;
取值子单元3034,用于以第一反投影误差最小时第一相机位姿的取值为第一当前帧图像对应的第一优化相机位姿。
可见实施本实施方式,车辆定位系统能够根据第一当前帧图像中的特征线以及地图线之间的对应关系确定单目相机的第一相机位姿,无需考虑环境的纹理是否足够多,再利用该第一相机位姿将第一当前帧图像中的地图点以及地图线进行反投影,根据反投影后所反映出来的误差来优化第一相机位姿,进而能够获得准确率更高第一优化相机位姿,进而提高的车辆定位系统的鲁棒性和准确性。
第一确定单元304,用于根据第一优化相机位姿确定车辆的第一位姿;其中,车辆的第一位姿为车辆相对于世界坐标系的位姿,世界坐标系以单目相机采集到初始帧图像时单目相机的光心点位置为坐标原点。
可见,实施图3所描述的车辆定位系统,在纹理较少的环境中,车辆定位系统仍能够获得单目相机的第一优化相机位姿,进而能够获得准确率较高的车辆位姿,能够减小由于环境的纹理变化给车辆定位带来的影响,极大地提高了车辆定位系统的鲁棒性。此外,还能够提高车辆定位系统的准确率。
实施例四
请参阅图4,图4是本发明实施例公开的另一种车辆定位系统的结构示意图。其中,图4所示的车辆定位系统是由图3所示的车辆定位系统进行优化得到的。与图3所示的车辆定位系统相比较,图4所示的车辆定位系统还可以包括:
第一匹配单元305,用于在匹配子单元3031,用于在图像帧跟踪过程中,针对任一第一当前帧图像,匹配第一当前帧图像中特征线对应的地图线之前,针对初始化过程中的第二当前帧图像,将第二当前帧图像与初始帧图像进行特征点匹配,以获得第二当前帧图像与初始帧图像的特征点匹配关系,第二当前帧图像为在初始帧图像之后采集到的图像;
可选的,第一匹配单元305在将第二当前帧图像与初始帧图像进行特征点匹配之后,还可以用于利用Ransac方法去掉特征点匹配过程中的误匹配,使得获得第二当前帧图像与初始帧图像的特征点匹配关系具有更高的准确率,进而提高车辆定位系统的准确性。
第二确定单元306,用于根据特征点匹配关系确定单目相机的第二相机位姿,该第二相机位姿为采集到第二当前帧图像时单目相机相对于世界坐标系的位姿;
构建单元307,用于根据第二相机位姿获取特征点匹配关系对应的特征点在世界坐标系中的坐标,以构建与特征点对应的地图点,完成初始化;
本发明实施例中,车辆系统通过初始化过程获取了第二当前帧图像中特征点对应的地图点,并在一个特征线出现的帧数足够多时,计算该图像帧对应的地图线,为后续图像帧跟踪做好了准备工作;此外,能够减少不必要的计算量,进而提高车辆定位系统的定位效率。
构建单元307,还用于当第一目标特征线出现的图像帧数大于或等于预设出现帧数阈值时,确定第一目标特征线的两端点在世界坐标系中的坐标,以构建与第一目标特征线对应的地图线。
可见,实施本实施方式,车辆系统通过初始化过程获取了第二当前帧图像中特征点对应的地图点,并在一个特征线出现的帧数足够多时,计算该图像帧对应的地图线,为后续图像帧跟踪做好了准备工作。
匹配子单元3031用于匹配第一当前帧图像中特征点对应的地图点的方式具体为:
匹配子单元3031,用于根据第一相机位姿将第一当前帧图像中的特征点与第一当前帧图像的前一帧图像中的特征点进行匹配,以得到第一匹配特征点并确定与第一匹配特征点对应的地图点;
优化子单元3033用于非线性迭代优化第一相机位姿的取值,直至基于第一相机位姿的取值将第一当前帧图像中特征线对应的地图线以及第一当前帧图像中特征点对应的地图点反投影至第一当前帧图像之后得到的投影线以及投影点与对应的特征线和特征点之间的第一反投影误差最小的方式具体为:
优化子单元3033,用于非线性迭代优化第一相机位姿的取值,直至基于第一相机位姿的取值将第一匹配特征线对应的地图线以及第一匹配特征点对应的地图点反投影至第一当前帧图像之后得到的投影线以及投影点与对应的第一匹配特征线和第一匹配特征点之间的第一反投影误差最小。
匹配子单元3031用于在图像帧跟踪过程中,针对任一第一当前帧图像,匹配第一当前帧图像中特征线对应的地图线的方式具体为:
匹配子单元3031,用于在图像帧跟踪过程中,针对任一第一当前帧图像,对第一当前帧图像中的特征线与第一当前帧图像的前一帧图像中的特征线进行匹配,以得到第一匹配特征线并确定与第一匹配特征线对应的地图线;
本发明实施例中,除图4所示的单元外,车辆定位系统还可以包括以下未图示的单元:
第一判断单元,用于在确定子单元3032根据第一当前帧图像中的特征线以及地图线之间的对应关系确定单目相机的第一相机位姿之前,判断第一匹配特征线对应的地图线的数量是否大于预设地图线匹配值;
第二判断单元,用于在第一判断单元判定第一匹配特征线对应的地图线的数量大于预设地图线匹配值时,判断第一匹配特征线对应的地图线中存在的不平行关系数是否大于预设不平行关系数阈值;
可选的,当第一判断单元判定第一匹配特征线对应的地图线的数量不大于预设地图线匹配值,或第二判断单元判定第一匹配特征线对应的地图线中存在的不平行关系数不大于预设不平行关系数阈值时,使用运动估计的方式获取单目相机的第一相机位姿。两种方式互相结合,使得车辆定位系统具有较好的鲁棒性。
确定子单元3032,具体用于在第二判断单元判定第一匹配特征线对应的地图线中存在的不平行关系数大于预设不平行关系数阈值时,执行根据第一当前帧图像中的特征线以及地图线之间的对应关系确定单目相机的第一相机位姿的步骤。
可以理解,先判断第一匹配特征线对应的地图线的数量以及其中存在的不平行关系数是否均满足预设的要求,能够提高车辆定位系统的准确率;此外,结合运动估计的方式作为确定单目相机的第一相机位姿的替补方案,使得车辆定位系统具有较好的鲁棒性。
第二匹配单元,用于在第一确定单元304根据第一优化相机位姿确定车辆的第一位姿之前,将第一当前帧图像的第一未匹配特征点进行地图点匹配,以获得第一未匹配特征点对应的地图点,第一未匹配特征点为第一当前帧图像中与第一当前帧图像的前一帧图像中的地图点不匹配的特征点;
第二匹配单元,还用于将第一当前帧图像的第一未匹配特征线进行地图线匹配,以获得第一未匹配特征线对应的地图线,所述第一未匹配特征线为所述第一当前帧图像中与所述第一当前第一未匹配特征线为第一当前帧图像中与第一当前帧图像的前一帧图像中的地图线不匹配的特征线帧图像的前一帧图像的地图线不匹配的特征线;
优化单元,用于非线性迭代优化第一优化相机位姿的取值,直至基于第一优化相机位姿的取值将第一匹配特征线对应的地图线、第一匹配特征点对应的地图点、第一未匹配特征线对应的地图线以及第一未匹配特征点对应的地图点反投影至第一当前帧图像之后得到的投影线以及投影点与对应的第一匹配特征线、第一匹配特征点、第一未匹配特征线和第一未匹配特征点之间的第二反投影误差最小;
取值单元,用于以第二反投影误差最小时第一优化相机位姿的取值为第一当前帧图像对应的第二优化相机位姿;
第一确定单元304用于根据第一优化相机位姿确定车辆的第一位姿的方式具体为:
第一确定单元304,用于根据第二优化相机位姿确定车辆的第二位姿。
作为一种可选的实施方式,车辆定位系统还可以包括以下单元:
统计单元,用于在第一确定单元304根据第二优化相机位姿确定车辆的第二位姿之前,统计第一当前帧图像中特征点对应的地图点的第一地图点数量和第一当前帧图像中特征线对应的地图线的第一地图线数量;
可选的,在统计单元统计第一当前帧图像中特征点对应的地图点的第一地图点数量和第一当前帧图像中特征线对应的地图线的第一地图线数量之前,统计单元还用于车辆定位系统可以去除特征点匹配地图点中的误匹配以及特征线匹配地图线中误匹配,进而提高统计结果的准确性。
第三判断单元,用于判断第一地图点数量是否小于第一预设地图点数量,并判断第一地图线数量是否小于第一预设地图线数量;
获取单元,用于在第三判断单元判定第一地图点数量小于第一预设地图点数量,且第一地图线数量小于第一预设地图线数量时,获取第一当前帧图像的特征线词袋;
第一匹配单元305,还用于根据特征线词袋将第一当前帧图像的特征线与第一当前帧图像的前一关键帧的特征线进行匹配,以得到第二匹配特征线并确定与第二匹配特征线对应的地图线,第二匹配特征线为第一当前帧图像中与第一当前帧图像的前一关键帧的地图线存在匹配关系的特征线;第一当前帧图像的前一关键帧为在第一当前帧图像之前的最接近第一当前帧图像的一个关键帧;
可选的,第一匹配单元305在用于根据特征线词袋将第一当前帧图像的特征线与第一当前帧图像的前一关键帧的特征线进行匹配之前,还用于将初始帧图像设置为关键帧;以及当上述特征点匹配关系中特征点匹配关系中的每两个对应匹配的特征点的平均距离大于一定距离时,以及匹配的特征点数量大于预设特征点匹配数量阈值时,将第二当前帧图像设置为关键帧;否则,抛弃该第二当前帧图像。设置关键帧,以使得在图像帧跟踪过程中,若是第二当前帧图像利用第二当前帧图像的前一帧图像跟踪失败时,能够利用关键帧进行跟踪,能够提高图像帧跟踪的成功率。
第二确定单元306,还用于根据第二匹配特征线对应的地图线确定单目相机的第三相机位姿,该第三相机位姿为采集到第一当前帧图像时单目相机相对于世界坐标系的位姿;
第一匹配单元305,还用于根据第三相机位姿将第一当前帧图像的特征点与第一当前帧图像的前一关键帧的特征点进行匹配,以得到第二匹配特征点并确定与第二匹配特征点对应的地图点;
优化单元,用于非线性迭代优化第三相机位姿的取值,直至基于第三相机位姿的取值将第二匹配特征线对应的地图线以及第二匹配特征点对应的地图点反投影至第一当前帧图像之后得到的投影线以及投影点与对应的第二匹配特征线和第二匹配特征点之间的第三反投影误差最小;
取值单元,还用于以第三反投影误差最小时第三相机位姿的取值为单目相机的第三优化相机位姿;
第一确定单元304用于根据第二优化相机位姿确定车辆的第二位姿的方式具体为:
第一确定单元304,用于根据第三优化相机位姿确定车辆的第三位姿。
可选的,上述车辆定位系统中:
第一判断单元,还用于在第二确定单元306根据第二匹配特征线对应的地图线确定单目相机的第三相机位姿之前,判断第二匹配特征线对应的地图线的数量是否大于预设地图线匹配值;
第二判断单元,还用于在第一判断单元判定第二匹配特征线对应的地图线的数量大于预设地图线匹配值时,判断第二匹配特征线对应的地图线中存在的不平行关系数是否大于预设不平行关系数阈值;
第二确定单元306,具体用于在第二判断单元判定第二匹配特征线对应的地图线中存在的不平行关系数大于预设不平行关系数阈值时,执行根据第二匹配特征线对应的地图线确定单目相机的第三相机位姿的步骤。
进一步可选的,若第一判断单元判定第二匹配特征线对应的地图线的数量不大于预设地图线匹配值,或第二判断单元判定第二匹配特征线对应的地图线中存在的不平行关系数不大于预设不平行关系数阈值,上述第一匹配单元305还用于获取第一当前帧图像的特征点词袋,根据特征点词袋将第一当前帧图像的特征点与第一当前帧图像的前一关键帧的特征点进行匹配,以获得第二匹配特征点对应的地图点,并统计第一当前帧图像对应的第三地图点数量,若该第三地图点数量大于第三预设地图点数量,则利用第二匹配特征点以及第二匹配特征点对应的地图点确定单目相机的第三相机位姿,若该第三地图点数量不大于第三预设地图点数量,则利用关键帧跟踪第一当前帧失败。可见,在利用关键帧跟踪第一当前帧的过程中,能够利用特征点词袋获取第二匹配特征点对应的地图点,进而能够提高跟踪第一当前帧图像的成功率。
可选的,上述车辆定位系统中:
第二匹配单元,还用于在第一确定单元304根据第三优化相机位姿确定车辆的第三位姿之前,将第一当前帧图像的第二未匹配特征点进行地图点匹配,以获得第二未匹配特征点对应的地图点,第二未匹配特征点为第一当前帧图像中与第一当前帧图像的前一关键帧中的特征点不匹配的特征点;
第二匹配单元,还用于将第一当前帧图像的第二未匹配特征线进行地图线匹配,以获得第二未匹配特征线对应的地图线,第二未匹配特征线为第一当前帧图像中与第一当前帧图像的前一关键帧中的地图线不匹配的特征线;
优化单元,还用于非线性迭代优化第三优化相机位姿的取值,直至基于第三优化相机位姿的取值将第二匹配特征线对应的地图线、第二匹配特征点对应的地图点、第二未匹配特征线对应的地图线以及第二未匹配特征点对应的地图点反投影至第一当前帧图像之后得到的投影线以及投影点与对应的第二匹配特征线、第二匹配特征点、第二未匹配特征线和第二未匹配特征点之间的第四反投影误差最小;
取值单元,还用于以第四反投影误差最小时第三优化相机位姿的取值为单目相机的第四优化相机位姿;
第一确定单元304根据第三优化相机位姿确定车辆的第三位姿的方式具体为:
第一确定单元,用于根据第四优化相机位姿确定车辆的第四位姿。
统计单元,还用于在第一确定单元304根据第四优化相机位姿确定车辆的第四位姿之后,统计第一当前帧图像中特征点对应的地图点的第二地图点数量和第一当前帧图像对应的地图线的第二地图线数量;
第三判断单元,还用于判断第二地图点数量是否小于第一预设地图点数量,并判断第二地图线数量是否小于第一预设地图线数量;
遍历单元,用于在第三判断单元判定第二地图点数量不小于第一预设地图点数量,或第二地图线数量不小于第一预设地图线数量时,遍历特征线匹配,以获得第一当前帧图像中的第二目标特征线,第二目标特征线为出现的图像帧数大于或等于预设出现帧数阈值且未匹配到地图线的特征线;
构建单元307,还用于在第二目标特征线出现的图像帧数大于或等于预设出现帧数阈值时,确定第二目标特征线的两端点在世界坐标系中的坐标,以构建与第二目标特征线对应的地图线。
作为一种可选的实施方式,上述车辆定位系统还可以包括:
遍历单元,还用于在第一地图点数量不小于第一预设地图点数量,或第一地图线数量不小于第一预设地图线数量时,遍历特征线匹配,以获得第一当前帧图像中未匹配到地图线的特征线对应的第三目标特征线;
构建单元307,还用于在第三目标特征线出现的图像帧数大于或等于预设出现帧数阈值时,确定第三目标特征线的两端点在世界坐标系中的坐标,以构建与第三目标特征线对应的地图线;
统计单元,还用于统计第一当前帧图像中的特征线对应地图线的第三地图线数量;
第三判断单元,还用于判断第一地图点数量是否小于第二预设地图点数量,并判断第三地图线数量是否小于第三预设地图线数量;
设置单元,用于在第五判断单元判定第一地图点数量小于第二预设地图点数量,且第三地图线数量小于第三预设地图线数量时,将第一当前帧图像设置为关键帧。
可见,实施本实施方式,在利用第一当前帧图像的前一帧图像跟踪失败时,车辆定位系统能够利用第一当前帧图像的前一关键帧进行跟踪,能够增大第一当前帧跟踪成功的几率。
作为一种可选的实施方式,除图4所示的单元外,上述车辆定位系统还可以包括:
第四判断单元,用于在第二确定单元306根据特征点匹配关系确定单目相机的第二相机位姿之前,判断特征点匹配关系中的每两个对应匹配的特征点的平均距离是否大于或等于预设匹配特征点平均距离值;
第二确定单元306,具体用于在第六判断单元判定平均距离大于或等于预设匹配特征点平均距离值时,执行根据特征点匹配关系确定单目相机的第二相机位姿的步骤;
抛弃单元,用于在第四判断单元判定平均距离小于预设匹配特征点平均距离值时,抛弃第二当前帧图像,以该第二当前帧图像的后一帧图像为新的第二当前帧图像。
可见,若两帧图像间特征点匹配关系中的每两个对应匹配的特征点的平均距离小于一定距离时,说明车辆未发生明显移动,此时抛弃第二当前帧,以第二当前帧图像的后一帧图像为新的第二当前帧图像,能够减少不必要的计算量,进而提高车辆定位系统的定位效率。
作为一种可选的实施方式,车辆定位系统还可以包括以下单元:
获取单元,还用于根据采集到各帧图像时的单目相机的相机位姿获取各帧图像对应的光心点位置;
绘制单元,用于将各帧图像中的特征点对应的地图点、将各帧图像中的特征线对应的地图线以及各帧图像对应的光心点位置绘制在世界坐标系中,以获得路线地图;
绘制单元,还用于将车辆位置绘制在世界坐标系中,以获得车辆在路线地图中的运动轨迹。
可见,实施图4所描述的车辆定位系统,在纹理较少的环境中,车辆定位系统仍能够获得单目相机的第一优化相机位姿,进而能够获得准确率较高的车辆位姿,能够减小由于环境的纹理变化给车辆定位带来的影响,极大地提高了车辆定位系统的鲁棒性。此外,还能够提高车辆定位系统的准确率。此外,能够减少不必要的计算量,进而提高车辆定位系统的定位效率。此外,还能够利用关键帧以及词袋匹配技术进行跟踪,能够提高图像帧跟踪的成功率。
实施例五
请参阅图7,图7是本发明实施例公开的一种车载计算机的结构示意图。如图7所示,该车载计算机可以包括:
存储有可执行程序代码的存储器701;
与存储器701耦合的处理器702;
其中,处理器702调用存储器701中存储的可执行程序代码,执行图1~图2任意一种基于单目相机的车辆定位方法。
本发明实施例公开一种计算机可读存储介质,其存储计算机程序,其中,该计算机程序使得计算机执行图1~图2任意一种基于单目相机的车辆定位方法。
本发明实施例还公开一种计算机程序产品,其中,当计算机程序产品在计算机上运行时,使得计算机执行如以上各方法实施例中的方法的部分或全部步骤。
本发明实施例还公开一种应用发布平台,该应用发布平台用于发布计算机程序产品,其中,当上述计算机程序产品在计算机上运行时,使得计算机执行如以上各方法实施例中的方法的部分或全部步骤。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
以上对本发明实施例公开的一种基于单目相机的车辆定位方法及系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (26)
1.一种基于单目相机的车辆定位方法,其特征在于,所述方法包括:
利用所述车辆上的单目相机采集所述车辆移动时的图像;
提取所述图像中的特征点以及特征线;
在图像帧跟踪过程中,针对任一第一当前帧图像,将所述第一当前帧图像中的特征点和特征线进行融合优化,获得所述单目相机的第一优化相机位姿;
根据所述第一优化相机位姿确定所述车辆的第一位姿;其中,所述车辆的第一位姿为所述车辆相对于世界坐标系的位姿,所述世界坐标系以所述单目相机采集到初始帧图像时所述单目相机的光心点位置为坐标原点。
2.根据权利要求1所述的车辆定位方法,其特征在于,所述在图像帧跟踪过程中,针对任一第一当前帧图像,将所述第一当前帧图像中的特征点和特征线进行融合优化,获得所述单目相机的第一优化相机位姿,包括:
在图像帧跟踪过程中,针对任一第一当前帧图像,匹配所述第一当前帧图像中特征线对应的地图线;
根据所述第一当前帧图像中的特征线以及地图线之间的对应关系确定所述单目相机的第一相机位姿,所述第一相机位姿为采集到所述第一当前帧图像时所述单目相机相对于所述世界坐标系的位姿;
匹配所述第一当前帧图像中特征点对应的地图点;
非线性迭代优化所述第一相机位姿的取值,直至基于所述第一相机位姿的取值将所述第一当前帧图像中特征线对应的地图线以及所述第一当前帧图像中特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的特征线和特征点之间的第一反投影误差最小;
以所述第一反投影误差最小时所述第一相机位姿的取值为所述第一优化相机位姿。
3.根据权利要求2所述的方法,特征在于,所述在图像帧跟踪过程中,针对任一第一当前帧图像,匹配所述第一当前帧图像中特征线对应的地图线之前,所述方法还包括:
针对初始化过程中的第二当前帧图像,将所述第二当前帧图像与所述初始帧图像进行特征点匹配,以获得所述第二当前帧图像与所述初始帧图像的特征点匹配关系,所述第二当前帧图像为在所述初始帧图像之后采集到的图像;
根据所述特征点匹配关系确定所述单目相机的第二相机位姿,所述第二相机位姿为采集到所述第二当前帧图像时所述单目相机相对于所述世界坐标系的位姿;
根据所述第二相机位姿获取所述特征点匹配关系对应的特征点在所述世界坐标系中的坐标,以构建与所述特征点对应的地图点,完成初始化;
当第一目标特征线出现的图像帧数大于或等于预设出现帧数阈值时,确定所述第一目标特征线的两端点在所述世界坐标系中的坐标,以构建与所述第一目标特征线对应的地图线。
4.根据权利要求2或3所述的车辆定位方法,其特征在于,所述在图像帧跟踪过程中,针对任一第一当前帧图像,匹配所述第一当前帧图像中特征线对应的地图线,包括:
在图像帧跟踪过程中,针对任一第一当前帧图像,对所述第一当前帧图像中的特征线与所述第一当前帧图像的前一帧图像中的特征线进行匹配,以得到第一匹配特征线并确定与所述第一匹配特征线对应的地图线;
所述匹配所述第一当前帧图像中特征点对应的地图点,包括:
根据所述第一相机位姿将所述第一当前帧图像中的特征点与所述第一当前帧图像的前一帧图像中的特征点进行匹配,以得到第一匹配特征点并确定与所述第一匹配特征点对应的地图点;
所述非线性迭代优化所述第一相机位姿的取值,直至基于所述第一相机位姿的取值将所述第一当前帧图像中特征线对应的地图线以及所述第一当前帧图像中特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的特征线和特征点之间的第一反投影误差最小,包括:
非线性迭代优化所述第一相机位姿的取值,直至基于所述第一相机位姿的取值将所述第一匹配特征线对应的地图线以及所述第一匹配特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的所述第一匹配特征线和所述第一匹配特征点之间的第一反投影误差最小。
5.根据权利要求4所述的车辆定位方法,其特征在于,所述根据所述第一当前帧图像中的特征线以及地图线之间的对应关系确定所述单目相机的第一相机位姿之前,所述方法还包括:
判断所述第一匹配特征线对应的地图线的数量是否大于预设地图线匹配值;
若所述第一匹配特征线对应的地图线的数量大于所述预设地图线匹配值,判断所述第一匹配特征线对应的地图线中存在的不平行关系数是否大于所述预设不平行关系数阈值;
若所述第一匹配特征线对应的地图线中存在的不平行关系数大于所述预设不平行关系数阈值,执行所述根据所述第一当前帧图像中的特征线以及地图线之间的对应关系确定所述单目相机的第一相机位姿的步骤。
6.根据权利要求4或5所述的车辆定位方法,其特征在于,所述根据所述第一优化相机位姿确定所述车辆的第一位姿之前,所述方法还包括:
将所述第一当前帧图像的第一未匹配特征点进行地图点匹配,以获得所述第一未匹配特征点对应的地图点,所述第一未匹配特征点为所述第一当前帧图像中与所述第一当前帧图像的前一帧图像的地图点不匹配的特征点;
将所述第一当前帧图像的第一未匹配特征线进行地图线匹配,以获得所述第一未匹配特征线对应的地图线,所述第一未匹配特征线为所述第一当前帧图像中与所述第一当前帧图像的前一帧图像的地图线不匹配的特征线;
非线性迭代优化所述第一优化相机位姿的取值,直至基于所述第一优化相机位姿的取值将所述第一匹配特征线对应的地图线、所述第一匹配特征点对应的地图点、所述第一未匹配特征线对应的地图线以及所述第一未匹配特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的所述第一匹配特征线、所述第一匹配特征点、所述第一未匹配特征线和所述第一未匹配特征点之间的第二反投影误差最小;
以所述第二反投影误差最小时所述第一优化相机位姿的取值为所述单目相机的第二优化相机位姿;
所述根据所述第一优化相机位姿确定所述车辆的第一位姿,包括:
根据所述第二优化相机位姿确定所述车辆的第二位姿。
7.根据权利要求6所述的车辆定位方法,其特征在于,所述根据所述第二优化相机位姿确定所述车辆的第二位姿之前,所述方法还包括:
统计所述第一当前帧图像中特征点对应的地图点的第一地图点数量和所述第一当前帧图像中特征线对应的地图线的第一地图线数量;
判断所述第一地图点数量是否小于第一预设地图点数量,并判断所述第一地图线数量是否小于第一预设地图线数量;
若所述第一地图点数量小于所述第一预设地图点数量,且所述第一地图线数量小于所述第一预设地图线数量,获取所述第一当前帧图像的特征线词袋;
根据所述特征线词袋将所述第一当前帧图像的特征线与所述第一当前帧图像的前一关键帧的特征线进行匹配,以得到第二匹配特征线并确定与所述第二匹配特征线对应的地图线,所述第二匹配特征线为所述第一当前帧图像中与所述第一当前帧图像的前一关键帧的地图线存在匹配关系的特征线;所述第一当前帧图像的前一关键帧为在所述第一当前帧图像之前的最接近所述第一当前帧图像的一个关键帧;
根据所述第二匹配特征线以及所述第二匹配特征线对应的地图线确定所述单目相机的第三相机位姿,所述第三相机位姿为采集到所述第一当前帧图像时所述单目相机相对于所述世界坐标系的位姿;
根据所述第三相机位姿将所述第一当前帧图像的特征点与所述第一当前帧图像的前一关键帧的特征点进行匹配,以得到第二匹配特征点并确定与所述第二匹配特征点对应的地图点;
非线性迭代优化所述第三相机位姿的取值,直至基于所述第三相机位姿的取值将所述第二匹配特征线对应的地图线以及所述第二匹配特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的所述第二匹配特征线和第二匹配特征点之间的第三反投影误差最小;
以所述第三反投影误差最小时所述第三相机位姿的取值为所述单目相机的第三优化相机位姿;
所述根据所述第二优化相机位姿确定所述车辆的第二位姿,包括:
根据所述第三优化相机位姿确定所述车辆的第三位姿。
8.根据权利要求7所述的车辆定位方法,其特征在于,所述根据所述第二匹配特征线对应的地图线确定所述单目相机的第三相机位姿之前,所述方法还包括:
判断所述第二匹配特征线对应的地图线的数量是否大于所述预设地图线匹配值;
若所述第二匹配特征线对应的地图线的数量大于所述预设地图线匹配值,判断所述第二匹配特征线对应的地图线中存在的不平行关系数是否大于所述预设不平行关系数阈值;
若所述第二匹配特征线对应的地图线中存在的不平行关系数大于所述预设不平行关系数阈值,执行所述根据所述第二匹配特征线对应的地图线确定所述单目相机的第三相机位姿的步骤。
9.根据权利要求7或8所述的车辆定位方法,其特征在于,所述根据所述第三优化相机位姿确定所述车辆的第三位姿之前,所述方法还包括:
将所述第一当前帧图像的第二未匹配特征点进行地图点匹配,以获得所述第二未匹配特征点对应的地图点,所述第二未匹配特征点为所述第一当前帧图像中与所述第一当前帧图像的前一关键帧中的地图点不匹配的特征点;
将所述第一当前帧图像的第二未匹配特征线进行地图线匹配,以获得所述第二未匹配特征线对应的地图线,所述第二未匹配特征线为所述第一当前帧图像中与所述第一当前帧图像的前一关键帧中的地图线不匹配的特征线;
非线性迭代优化所述第三优化相机位姿的取值,直至基于所述第三优化相机位姿的取值将所述第二匹配特征线对应的地图线、所述第二匹配特征点对应的地图点、所述第二未匹配特征线对应的地图线以及所述第二未匹配特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的所述第二匹配特征线、所述第二匹配特征点、所述第二未匹配特征线和所述第二未匹配特征点之间的第四反投影误差最小;
以所述第四反投影误差最小时所述第三优化相机位姿的取值为所述单目相机的第四优化相机位姿;
所述根据所述第三优化相机位姿确定所述车辆的第三位姿,包括:
根据所述第四优化相机位姿确定所述车辆的第四位姿。
10.根据权利要求9所述的车辆定位方法,其特征在于,所述根据所述第四优化相机位姿确定所述车辆的第四位姿之后,所述方法还包括:
统计所述第一当前帧图像中特征点对应的地图点的第二地图点数量和所述第一当前帧图像对应的地图线的第二地图线数量;
判断所述第二地图点数量是否小于所述第一预设地图点数量,并判断所述第二地图线数量是否小于所述第一预设地图线数量;
若所述第二地图点数量不小于所述第一预设地图点数量,或所述第二地图线数量不小于所述第一预设地图线数量,遍历特征线匹配,以获得所述第一当前帧图像中的第二目标特征线,所述第二目标特征线为出现的图像帧数大于或等于所述预设出现帧数阈值且未匹配到地图线的特征线;
确定所述第二目标特征线的两端点在所述世界坐标系中的坐标,以构建与所述第二目标特征线对应的地图线。
11.根据权利要求7所述的车辆定位方法,其特征在于,所述方法还包括:
若所述第一地图点数量不小于所述第一预设地图点数量,或所述第一地图线数量不小于所述第一预设地图线数量,遍历特征线匹配,以获得所述第一当前帧图像中未匹配到地图线的特征线对应的第三目标特征线;
若所述第三目标特征线出现的图像帧数大于或等于所述预设出现帧数阈值时,确定所述第三目标特征线的两端点在所述世界坐标系中的坐标,以构建与所述第三目标特征线对应的地图线;
统计所述第一当前帧图像中的特征线对应地图线的第三地图线数量;
判断所述第一地图点数量是否小于第二预设地图点数量,并判断所述第三地图线数量是否小于第三预设地图线数量;
若所述第一地图点数量小于所述第二预设地图点数量,且所述第三地图线数量小于第三预设地图线数量,将所述第一当前帧图像设置为所述关键帧。
12.根据权利要求3所述的车辆定位方法,其特征在于,所述根据所述特征点匹配关系确定所述单目相机的第二相机位姿之前,所述方法还包括:
判断所述特征点匹配关系中的每两个对应匹配的特征点的平均距离是否大于或等于预设匹配特征点平均距离值;
若是,执行所述根据所述特征点匹配关系确定所单目相机的第二相机位姿的步骤;
若否,抛弃所述第二当前帧图像,以所述第二当前帧图像的后一帧图像为新的第二当前帧图像。
13.根据权利要求1~12任一项所述的车辆定位方法,其特征在于,所述方法还包括:
根据采集到各帧图像时的所述单目相机的相机位姿获取所述各帧图像对应的光心点位置;
将所述各帧图像中的特征点对应的地图点、将所述各帧图像中的特征线对应的地图线以及所述各帧图像对应的光心点位置绘制在所述世界坐标系中,以获得路线地图;
根据采集到所述各帧图像时的所述车辆的位姿获取所述各帧图像对应的车辆位置;
将所述车辆位置绘制在所述世界坐标系中,以获得所述车辆在所述路线地图中的运动轨迹。
14.一种车辆定位系统,其特征在于,所述系统包括:
采集单元,用于利用所述车辆上的单目相机采集所述车辆移动时的图像;
提取单元,用于提取所述图像中的特征点以及特征线;
融合单元,用于在图像帧跟踪过程中,针对任一第一当前帧图像,将所述第一当前帧图像中的特征点和特征线进行融合优化,获得所述单目相机的第一优化相机位姿;
第一确定单元,用于根据所述第一优化相机位姿确定所述车辆的第一位姿;其中,所述车辆的第一位姿为所述车辆相对于世界坐标系的位姿,所述世界坐标系以所述单目相机采集到初始帧图像时所述单目相机的光心点位置为坐标原点。
15.根据权利要求14所述的系统,其特征在于,所述融合单元包括:
匹配子单元,用于在图像帧跟踪过程中,针对任一第一当前帧图像,匹配所述第一当前帧图像中特征线对应的地图线;
确定子单元,用于根据所述第一当前帧图像中的特征线以及地图线之间的对应关系确定所述单目相机的第一相机位姿,所述第一相机位姿为采集到所述第一当前帧图像时所述单目相机相对于所述世界坐标系的位姿;
所述匹配子单元,还用于匹配所述第一当前帧图像中特征点对应的地图点;
优化子单元,用于非线性迭代优化所述第一相机位姿的取值,直至基于所述第一相机位姿的取值将所述第一当前帧图像中特征线对应的地图线以及所述第一当前帧图像中特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的特征线和特征点之间的第一反投影误差最小;
取值子单元,用于以所述第一反投影误差最小时所述第一相机位姿的取值为所述第一当前帧图像对应的第一优化相机位姿。
16.根据权利要求15所述的系统,特征在于,所述系统还包括:
第一匹配单元,用于在所述匹配子单元在图像帧跟踪过程中,针对任一第一当前帧图像,匹配所述第一当前帧图像中特征线对应的地图线之前,针对初始化过程中的第二当前帧图像,将所述第二当前帧图像与所述初始帧图像进行特征点匹配,以获得所述第二当前帧图像与所述初始帧图像的特征点匹配关系,所述第二当前帧图像为在所述初始帧图像之后采集到的图像;
第二确定单元,用于根据所述特征点匹配关系确定所述单目相机的第二相机位姿,所述第二相机位姿为采集到所述第二当前帧图像时所述单目相机相对于所述世界坐标系的位姿;
构建单元,用于根据所述第二相机位姿获取所述特征点匹配关系对应的特征点在所述世界坐标系中的坐标,以构建与所述特征点对应的地图点,完成初始化;
所述构建单元,还用于当第一目标特征线出现的图像帧数大于或等于预设出现帧数阈值时,确定所述第一目标特征线的两端点在所述世界坐标系中的坐标,以构建与所述第一目标特征线对应的地图线。
17.根据权利要求15或16所述的系统,其特征在于,所述匹配子单元用于在图像帧跟踪过程中,针对任一第一当前帧图像,匹配所述第一当前帧图像中特征线对应的地图线的方式具体为:
匹配子单元,用于在图像帧跟踪过程中,针对任一第一当前帧图像,对所述第一当前帧图像中的特征线与所述第一当前帧图像的前一帧图像中的特征线进行匹配,以得到第一匹配特征线并确定与所述第一匹配特征线对应的地图线;
所述匹配子单元用于匹配所述第一当前帧图像中特征点对应的地图点的方式具体为:
匹配子单元,用于根据所述第一相机位姿将所述第一当前帧图像中的特征点与所述第一当前帧图像的前一帧图像中的特征点进行匹配,以得到第一匹配特征点并确定与所述第一匹配特征点对应的地图点;
所述优化子单元用于非线性迭代优化所述第一相机位姿的取值,直至基于所述第一相机位姿的取值将所述第一当前帧图像中特征线对应的地图线以及所述第一当前帧图像中特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的特征线和特征点之间的第一反投影误差最小的方式具体为:
优化子单元,用于非线性迭代优化所述第一相机位姿的取值,直至基于所述第一相机位姿的取值将所述第一匹配特征线对应的地图线以及所述第一匹配特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的所述第一匹配特征线和所述第一匹配特征点之间的第一反投影误差最小。
18.根据权利要求17所述的系统,其特征在于,所述系统还包括:
第一判断单元,用于在所述确定子单元根据所述第一当前帧图像中的特征线以及地图线之间的对应关系确定所述单目相机的第一相机位姿之前,判断所述第一匹配特征线对应的地图线的数量是否大于预设地图线匹配值;
第二判断单元,用于在所述第一判断单元判定所述第一匹配特征线对应的地图线的数量大于所述预设地图线匹配值时,判断所述第一匹配特征线对应的地图线中存在的不平行关系数是否大于所述预设不平行关系数阈值;
所述确定子单元,具体用于在所述第二判断单元判定所述第一匹配特征线对应的地图线中存在的不平行关系数大于所述预设不平行关系数阈值时,执行所述根据所述第一当前帧图像中的特征线以及地图线之间的对应关系确定所述单目相机的第一相机位姿的步骤。
19.根据权利要求17或18所述的系统,其特征在于,所述系统还包括:
第二匹配单元,用于在所述第一确定单元根据所述第一优化相机位姿确定所述车辆的第一位姿之前,将所述第一当前帧图像的第一未匹配特征点进行地图点匹配,以获得所述第一未匹配特征点对应的地图点,所述第一未匹配特征点为所述第一当前帧图像中与所述第一当前帧图像的前一帧图像的地图点不匹配的特征点;
所述第二匹配单元,还用于将所述第一当前帧图像的第一未匹配特征线进行地图线匹配,以获得所述第一未匹配特征线对应的地图线,所述第一未匹配特征线为所述第一当前帧图像中与所述第一当前帧图像的前一帧图像的地图线不匹配的特征线;
优化单元,用于非线性迭代优化所述第一优化相机位姿的取值,直至基于所述第一优化相机位姿的取值将所述第一匹配特征线对应的地图线、所述第一匹配特征点对应的地图点、所述第一未匹配特征线对应的地图线以及所述第一未匹配特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的所述第一匹配特征线、所述第一匹配特征点、所述第一未匹配特征线和所述第一未匹配特征点之间的第二反投影误差最小;
取值单元,用于以所述第二反投影误差最小时所述第一优化相机位姿的取值为所述第一当前帧图像对应的第二优化相机位姿;
所述第一确定单元用于根据所述第一优化相机位姿确定所述车辆的第一位姿的方式具体为:
第一确定单元,用于根据所述第二优化相机位姿确定所述车辆的第二位姿。
20.根据权利要求19所述的系统,其特征在于,所述系统还包括:
统计单元,用于在第一确定单元根据所述第二优化相机位姿确定所述车辆的第二位姿之前,统计所述第一当前帧图像中特征点对应的地图点的第一地图点数量和所述第一当前帧图像中特征线对应的地图线的第一地图线数量;
第三判断单元,用于判断所述第一地图点数量是否小于第一预设地图点数量,并判断所述第一地图线数量是否小于第一预设地图线数量;
获取单元,用于在所述第三判断单元判定所述第一地图点数量小于所述第一预设地图点数量,且所述第一地图线数量小于所述第一预设地图线数量时,获取所述第一当前帧图像的特征线词袋;
所述第一匹配单元,还用于根据所述特征线词袋将所述第一当前帧图像的特征线与所述第一当前帧图像的前一关键帧的特征线进行匹配,以得到第二匹配特征线并确定与所述第二匹配特征线对应的地图线,所述第二匹配特征线为所述第一当前帧图像中与所述第一当前帧图像的前一关键帧的地图线存在匹配关系的特征线;所述第一当前帧图像的前一关键帧为在所述第一当前帧图像之前的最接近所述第一当前帧图像的一个关键帧;
所述第二确定单元,还用于根据所述第二匹配特征线以及所述第二匹配特征线对应的地图线确定所述单目相机的第三相机位姿,所述第三相机位姿为采集到所述第一当前帧图像时所述单目相机相对于所述世界坐标系的位姿;
所述第一匹配单元,还用于根据所述第三相机位姿将所述第一当前帧图像的特征点与所述第一当前帧图像的前一关键帧的特征点进行匹配,以得到第二匹配特征点并确定与所述第二匹配特征点对应的地图点;
所述优化单元,用于非线性迭代优化所述第三相机位姿的取值,直至基于所述第三相机位姿的取值将所述第二匹配特征线对应的地图线以及所述第二匹配特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的所述第二匹配特征线和第二匹配特征点之间的第三反投影误差最小;
所述取值单元,还用于以所述第三反投影误差最小时所述第三相机位姿的取值为所述单目相机的第三优化相机位姿;
第一确定单元用于根据所述第二优化相机位姿确定所述车辆的第二位姿的方式具体为:
第一确定单元,用于根据所述第三优化相机位姿确定所述车辆的第三位姿。
21.根据权利要求20所述的系统,其特征在于,所述系统还包括:
所述第一判断单元,还用于在所述第二确定单元根据所述第二匹配特征线对应的地图线确定所述单目相机的第三相机位姿之前,判断所述第二匹配特征线对应的地图线的数量是否大于所述预设地图线匹配值;
所述第二判断单元,还用于在所述第一判断单元判定所述第二匹配特征线对应的地图线的数量大于所述预设地图线匹配值时,判断所述第二匹配特征线对应的地图线中存在的不平行关系数是否大于所述预设不平行关系数阈值;
所述第二确定单元,具体用于在所述第二判断单元判定所述第二匹配特征线对应的地图线中存在的不平行关系数大于所述预设不平行关系数阈值时,执行所述根据所述第二匹配特征线对应的地图线确定所述单目相机的第三相机位姿的步骤。
22.根据权利要求20或21所述的系统,其特征在于,所述系统还包括:
所述第二匹配单元,还用于在所述第一确定单元根据所述第三优化相机位姿确定所述车辆的第三位姿之前,将所述第一当前帧图像的第二未匹配特征点进行地图点匹配,以获得所述第二未匹配特征点对应的地图点,所述第二未匹配特征点为所述第一当前帧图像中与所述第一当前帧图像的前一关键帧中的地图点不匹配的特征点;
所述第二匹配单元,还用于将所述第一当前帧图像的第二未匹配特征线进行地图线匹配,以获得所述第二未匹配特征线对应的地图线,所述第二未匹配特征线为所述第一当前帧图像中与所述第一当前帧图像的前一关键帧中的地图线不匹配的特征线;
所述优化单元,还用于非线性迭代优化所述第三优化相机位姿的取值,直至基于所述第三优化相机位姿的取值将所述第二匹配特征线对应的地图线、所述第二匹配特征点对应的地图点、所述第二未匹配特征线对应的地图线以及所述第二未匹配特征点对应的地图点反投影至所述第一当前帧图像之后得到的投影线以及投影点与对应的所述第二匹配特征线、所述第二匹配特征点、所述第二未匹配特征线和所述第二未匹配特征点之间的第四反投影误差最小;
所述取值单元,还用于以所述第四反投影误差最小时所述第三优化相机位姿的取值为所述单目相机的第四优化相机位姿;
所述第一确定单元用于根据所述第三优化相机位姿确定所述车辆的第三位姿的方式具体为:
第一确定单元,用于根据所述第四优化相机位姿确定所述车辆的第四位姿。
23.根据权利要求22所述的系统,其特征在于,所述系统还包括:
所述统计单元,还用于在所述第一确定单元根据所述第四优化相机位姿确定所述车辆的第四位姿之后,统计所述第一当前帧图像中特征点对应的地图点的第二地图点数量和所述第一当前帧图像对应的地图线的第二地图线数量;
所述第三判断单元,还用于判断所述第二地图点数量是否小于所述第一预设地图点数量,并判断所述第二地图线数量是否小于所述第一预设地图线数量;
遍历单元,用于在所述第三判断单元判定所述第二地图点数量不小于所述第一预设地图点数量,或所述第二地图线数量不小于所述第一预设地图线数量时,遍历特征线匹配,以获得所述第一当前帧图像中的第二目标特征线,所述第二目标特征线为出现的图像帧数大于或等于所述预设出现帧数阈值且未匹配到地图线的特征线;
所述构建单元,还用于在所述第二目标特征线出现的图像帧数大于或等于所述预设出现帧数阈值时,确定所述第二目标特征线的两端点在所述世界坐标系中的坐标,以构建与所述第二目标特征线对应的地图线。
24.根据权利要求20所述的系统,其特征在于,所述系统还包括:
所述遍历单元,还用于在所述第一地图点数量不小于所述第一预设地图点数量,或所述第一地图线数量不小于所述第一预设地图线数量时,遍历特征线匹配,以获得所述第一当前帧图像中未匹配到地图线的特征线对应的第三目标特征线;
所述构建单元,还用于在所述第三目标特征线出现的图像帧数大于或等于所述预设出现帧数阈值时,确定所述第三目标特征线的两端点在所述世界坐标系中的坐标,以构建与所述第三目标特征线对应的地图线;
所述统计单元,还用于统计所述第一当前帧图像中的特征线对应地图线的第三地图线数量;
所述第三判断单元,还用于判断所述第一地图点数量是否小于第二预设地图点数量,并判断所述第三地图线数量是否小于第三预设地图线数量;
设置单元,用于在所述第五判断单元判定所述第一地图点数量小于所述第二预设地图点数量,且所述第三地图线数量小于第三预设地图线数量时,将所述第一当前帧图像设置为所述关键帧。
25.根据权利要求16所述的系统,其特征在于,所述系统还包括:
第四判断单元,用于在所述第二确定单元根据所述特征点匹配关系确定所述单目相机的第二相机位姿之前,判断所述特征点匹配关系中的每两个对应匹配的特征点的平均距离是否大于或等于预设匹配特征点平均距离值;
所述第二确定单元,具体用于在所述第六判断单元判定所述平均距离大于或等于所述预设匹配特征点平均距离值时,执行所述根据所述特征点匹配关系确定所单目相机的第二相机位姿的步骤;
抛弃单元,用于在所述第四判断单元判定所述平均距离小于所述预设匹配特征点平均距离值时,抛弃所述第二当前帧图像,以所述第二当前帧图像的后一帧图像为新的第二当前帧图像。
26.根据权利要求14~25任一项所述的系统,其特征在于,所述系统还包括:
所述获取单元,还用于根据采集到各帧图像时的所述单目相机的相机位姿获取所述各帧图像对应的光心点位置;
绘制单元,用于将所述各帧图像中的特征点对应的地图点、将所述各帧图像中的特征线对应的地图线以及所述各帧图像对应的光心点位置绘制在所述世界坐标系中,以获得路线地图;
所述绘制单元,还用于将所述车辆位置绘制在所述世界坐标系中,以获得所述车辆在所述路线地图中的运动轨迹。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910223326.3A CN109978919B (zh) | 2019-03-22 | 2019-03-22 | 一种基于单目相机的车辆定位方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910223326.3A CN109978919B (zh) | 2019-03-22 | 2019-03-22 | 一种基于单目相机的车辆定位方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109978919A true CN109978919A (zh) | 2019-07-05 |
CN109978919B CN109978919B (zh) | 2021-06-04 |
Family
ID=67080155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910223326.3A Active CN109978919B (zh) | 2019-03-22 | 2019-03-22 | 一种基于单目相机的车辆定位方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109978919B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110765952A (zh) * | 2019-10-24 | 2020-02-07 | 上海眼控科技股份有限公司 | 车辆违法视频的处理方法、装置及计算机设备 |
CN111652072A (zh) * | 2020-05-08 | 2020-09-11 | 北京嘀嘀无限科技发展有限公司 | 轨迹获取方法、轨迹获取装置、存储介质和电子设备 |
CN112862865A (zh) * | 2021-03-05 | 2021-05-28 | 鹏城实验室 | 水下机器人的检测识别方法、装置和计算机存储介质 |
CN113112542A (zh) * | 2021-03-25 | 2021-07-13 | 北京达佳互联信息技术有限公司 | 一种视觉定位方法、装置、电子设备及存储介质 |
CN113592865A (zh) * | 2021-09-29 | 2021-11-02 | 湖北亿咖通科技有限公司 | 三维地图的质检方法、设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1684105A (zh) * | 2004-04-13 | 2005-10-19 | 清华大学 | 大规模三维场景多视点激光扫描数据自动配准方法 |
CN104864851A (zh) * | 2015-06-01 | 2015-08-26 | 中国科学院光电技术研究所 | 一种基于矩形周长和面积加权约束的单目视觉位姿测量方法 |
CN106447766A (zh) * | 2016-09-28 | 2017-02-22 | 成都通甲优博科技有限责任公司 | 一种基于移动设备单目相机的场景重建方法及装置 |
CN106558080A (zh) * | 2016-11-14 | 2017-04-05 | 天津津航技术物理研究所 | 一种单目相机外参在线标定系统及方法 |
CN107063189A (zh) * | 2017-01-19 | 2017-08-18 | 上海勤融信息科技有限公司 | 基于视觉的定位系统及方法 |
CN107392964A (zh) * | 2017-07-07 | 2017-11-24 | 武汉大学 | 基于室内特征点和结构线结合的室内slam方法 |
CN107871327A (zh) * | 2017-10-23 | 2018-04-03 | 武汉大学 | 基于特征点线的单目相机位姿估计和优化方法及系统 |
CN108682027A (zh) * | 2018-05-11 | 2018-10-19 | 北京华捷艾米科技有限公司 | 基于点、线特征融合的vSLAM实现方法及系统 |
CN109166149A (zh) * | 2018-08-13 | 2019-01-08 | 武汉大学 | 一种融合双目相机与imu的定位与三维线框结构重建方法与系统 |
-
2019
- 2019-03-22 CN CN201910223326.3A patent/CN109978919B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1684105A (zh) * | 2004-04-13 | 2005-10-19 | 清华大学 | 大规模三维场景多视点激光扫描数据自动配准方法 |
CN104864851A (zh) * | 2015-06-01 | 2015-08-26 | 中国科学院光电技术研究所 | 一种基于矩形周长和面积加权约束的单目视觉位姿测量方法 |
CN106447766A (zh) * | 2016-09-28 | 2017-02-22 | 成都通甲优博科技有限责任公司 | 一种基于移动设备单目相机的场景重建方法及装置 |
CN106558080A (zh) * | 2016-11-14 | 2017-04-05 | 天津津航技术物理研究所 | 一种单目相机外参在线标定系统及方法 |
CN107063189A (zh) * | 2017-01-19 | 2017-08-18 | 上海勤融信息科技有限公司 | 基于视觉的定位系统及方法 |
CN107392964A (zh) * | 2017-07-07 | 2017-11-24 | 武汉大学 | 基于室内特征点和结构线结合的室内slam方法 |
CN107871327A (zh) * | 2017-10-23 | 2018-04-03 | 武汉大学 | 基于特征点线的单目相机位姿估计和优化方法及系统 |
CN108682027A (zh) * | 2018-05-11 | 2018-10-19 | 北京华捷艾米科技有限公司 | 基于点、线特征融合的vSLAM实现方法及系统 |
CN109166149A (zh) * | 2018-08-13 | 2019-01-08 | 武汉大学 | 一种融合双目相机与imu的定位与三维线框结构重建方法与系统 |
Non-Patent Citations (1)
Title |
---|
李海丰 等: "PLP-SLAM:基于点、线、面特征融合的视觉SLAM方法", 《机器人》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110765952A (zh) * | 2019-10-24 | 2020-02-07 | 上海眼控科技股份有限公司 | 车辆违法视频的处理方法、装置及计算机设备 |
CN111652072A (zh) * | 2020-05-08 | 2020-09-11 | 北京嘀嘀无限科技发展有限公司 | 轨迹获取方法、轨迹获取装置、存储介质和电子设备 |
CN112862865A (zh) * | 2021-03-05 | 2021-05-28 | 鹏城实验室 | 水下机器人的检测识别方法、装置和计算机存储介质 |
CN113112542A (zh) * | 2021-03-25 | 2021-07-13 | 北京达佳互联信息技术有限公司 | 一种视觉定位方法、装置、电子设备及存储介质 |
CN113592865A (zh) * | 2021-09-29 | 2021-11-02 | 湖北亿咖通科技有限公司 | 三维地图的质检方法、设备及存储介质 |
CN113592865B (zh) * | 2021-09-29 | 2022-01-25 | 湖北亿咖通科技有限公司 | 三维地图的质检方法、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109978919B (zh) | 2021-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109978919A (zh) | 一种基于单目相机的车辆定位方法及系统 | |
Cvišić et al. | Stereo odometry based on careful feature selection and tracking | |
Reitmayr et al. | Going out: robust model-based tracking for outdoor augmented reality | |
CN109166149A (zh) | 一种融合双目相机与imu的定位与三维线框结构重建方法与系统 | |
CN109974693A (zh) | 无人机定位方法、装置、计算机设备及存储介质 | |
CN106548519A (zh) | 基于orb‑slam和深度相机的真实感的增强现实方法 | |
JP5487298B2 (ja) | 3次元画像生成 | |
Zhao et al. | A vehicle-borne urban 3-D acquisition system using single-row laser range scanners | |
CN102750711B (zh) | 一种基于图像分割和运动估计的双目视频深度图求取方法 | |
CN109887032A (zh) | 一种基于单目视觉slam的车辆定位方法及系统 | |
CN114018236B (zh) | 一种基于自适应因子图的激光视觉强耦合slam方法 | |
CN109558879A (zh) | 一种基于点线特征的视觉slam方法和装置 | |
CN112184757B (zh) | 运动轨迹的确定方法及装置、存储介质、电子装置 | |
CN109682373A (zh) | 一种无人平台的感知系统 | |
CN103994765B (zh) | 一种惯性传感器的定位方法 | |
CN106127739A (zh) | 一种结合单目视觉的rgb‑d slam方法 | |
CN110726406A (zh) | 一种改进的非线性优化单目惯导slam的方法 | |
CN103729860B (zh) | 一种图像目标跟踪的方法和装置 | |
CN115388902B (zh) | 室内定位方法和系统、ar室内定位导航方法和系统 | |
CN107167826A (zh) | 一种自动驾驶中基于可变网格的图像特征检测的车辆纵向定位系统及方法 | |
CN110097584A (zh) | 结合目标检测和语义分割的图像配准方法 | |
CN106295512A (zh) | 基于标识的多纠正线室内视觉数据库构建方法以及室内定位方法 | |
CN107527366A (zh) | 一种面向深度相机的相机跟踪方法 | |
CN116258744A (zh) | 基于可见光、红外和激光雷达数据融合的目标跟踪方法 | |
CN104166995B (zh) | 一种基于马步测度的Harris‑SIFT双目视觉定位方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |