CN115841514A - 一种自动泊车方法、装置及设备 - Google Patents
一种自动泊车方法、装置及设备 Download PDFInfo
- Publication number
- CN115841514A CN115841514A CN202111111107.XA CN202111111107A CN115841514A CN 115841514 A CN115841514 A CN 115841514A CN 202111111107 A CN202111111107 A CN 202111111107A CN 115841514 A CN115841514 A CN 115841514A
- Authority
- CN
- China
- Prior art keywords
- environment image
- pose information
- information
- pose
- target
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 76
- 230000000007 visual effect Effects 0.000 claims abstract description 145
- 230000004927 fusion Effects 0.000 claims abstract description 105
- 230000008859 change Effects 0.000 claims description 100
- 239000011159 matrix material Substances 0.000 claims description 95
- 230000007613 environmental effect Effects 0.000 claims description 24
- 238000001514 detection method Methods 0.000 claims description 17
- 238000013519 translation Methods 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 claims description 16
- 230000008569 process Effects 0.000 description 10
- 238000005457 optimization Methods 0.000 description 6
- 238000000605 extraction Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000009499 grossing Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
Images
Landscapes
- Image Analysis (AREA)
Abstract
本申请实施例公开了一种自动泊车方法、装置及设备,通过获取本车的视觉位姿信息和里程位姿信息,得到融合位姿信息;其中,视觉位姿信息是根据本车的环境图像确定的,里程位姿信息是由轮式里程计生成的,基于视觉的信息和里程计的信息,能够得到更为准确的自车的融合位姿信息。再获取目标车位的车位位置信息,根据得到的较为准确的融合位姿信息和车位位置信息,生成泊车路径。基于较为准确的融合位姿信息生成的泊车路径,能够优化泊车路径,较为准确地实现自动泊车。
Description
技术领域
本申请涉及车辆控制技术领域,具体涉及一种自动泊车方法、装置及设备。
背景技术
车辆在停放时,需要停放入特定的停车空间。为了便于驾驶员顺利将车辆行驶入停车空间,部分车辆上配备了自动泊车的功能。驾驶员可以通过启动车辆的自动泊车的功能,使得车辆自动检测停车空间,规划路径,自动行驶进入停车空间。
车辆在自动泊车时,需要明确车辆自身所在的位置,以便准确规划泊车路径。目前,车辆确定的定位不够准确,容易使得基于车辆位置规划的泊车路径不够准确,导致自动泊车出现问题。
发明内容
有鉴于此,本申请实施例提供一种自动泊车方法、装置及设备,能够较为准确地确定车辆的位置。
基于此,本申请实施例提供的技术方案如下:
第一方面,本申请提供一种自动泊车方法,所述方法包括:
获取本车的视觉位姿信息,所述视觉位姿信息是根据所述本车的环境图像确定的;
获取所述本车的里程位姿信息,所述里程位姿信息由轮式里程计生成;
根据所述视觉位姿信息和所述里程位姿信息,得到融合位姿信息;
获取目标车位的车位位置信息;
根据所述融合位姿信息和所述车位位置信息,生成泊车路径;
控制所述本车按照所述泊车路径行驶。
在一种可能的实现方式中,所述根据所述视觉位姿信息和所述里程位姿信息,得到融合位姿信息,包括:
根据所述视觉位姿信息,计算当前时刻的目标环境图像和历史时刻的历史环境图像之间的视觉位姿变化;
根据所述里程位姿信息,计算所述当前时刻的目标里程位姿和所述历史时刻的历史里程位姿之间的里程位姿变化;
根据所述视觉位姿变化和所述里程位姿变化确定融合参数;
利用所述融合参数、所述视觉位姿变化和所述里程位姿变化,得到融合位姿信息。
在一种可能的实现方式中,所述根据所述视觉位姿变化和所述里程位姿变化确定融合参数,包括:
当所述视觉位姿变化与所述里程位姿变化的差距大于第一差距阈值时,获取所述目标环境图像的内点集合数量;
当所述内点集合数量大于数量阈值,将第一参数作为融合参数;
当所述内点集合数量小于或者等于数量阈值,将第二参数作为融合参数;
当所述视觉位姿变化与所述里程位姿变化的差距小于所述第一差距阈值时,将第三参数作为融合参数。
在一种可能的实现方式中,所述获取本车的视觉位姿信息,包括:
采集当前时刻所述本车周围的预设区域内的图像信息,生成目标环境图像;
提取目标环境图像中的特征点;
将所述目标环境图像中的特征点与历史环境图像中的特征点进行匹配,将匹配成功的目标环境图像中的特征点作为匹配点;所述历史环境图像为在历史时刻采集生成的环境图像,所述历史时刻为在所述当前时刻之前的时刻;
基于所述匹配点计算所述当前时刻对应的相对位姿,得到本车的视觉位姿信息。
在一种可能的实现方式中,所述获取本车的视觉位姿信息,包括:
采集当前时刻所述本车周围的预设区域内的图像信息,生成目标环境图像;
确定所述目标环境图像与滑动窗口中最后一帧的历史环境图像的视差;所述滑动窗口包括环境图像,所述滑动窗口中的环境图像是根据采集时刻的先后顺序排序的;所述历史环境图像为在历史时刻采集生成的环境图像,所述历史时刻为在所述当前时刻之前的时刻;
当所述视差大于第一视差阈值时,将所述目标环境图像加入所述滑动窗口;
提取目标环境图像中的特征点;将所述目标环境图像中的特征点与历史环境图像中的特征点进行匹配,将匹配成功的目标环境图像中的特征点作为匹配点;
基于所述匹配点计算所述当前时刻对应的相对位姿,得到本车的视觉位姿信息;
当所述滑动窗口中的环境图像的帧数大于帧数阈值时,删除所述滑动窗口中的一帧历史环境图像;
当所述视差小于或者等于第一视差阈值时,删除所述目标环境图像,返回执行所述采集当前时刻所述本车周围的预设区域内的图像信息,生成目标环境图像以及后续步骤。
在一种可能的实现方式中,所述当所述滑动窗口中的环境图像的帧数大于帧数阈值时,删除所述滑动窗口中的一帧历史环境图像,包括:
当所述滑动窗口中的环境图像的帧数大于帧数阈值,且所述目标环境图像为关键帧时,删除所述滑动窗口中的第一帧的历史环境图像;所述关键帧为匹配点数量小于匹配点数量阈值并且与所述滑动窗口中的最后一帧历史环境图像的视差大于第二视差阈值的环境图像;
当所述滑动窗口中的环境图像的帧数大于帧数阈值,且所述目标环境图像不为关键帧时,删除所述滑动窗口中相邻平均视差最小的历史环境图像。
在一种可能的实现方式中,所述基于所述匹配点计算所述当前时刻对应的相对位姿,得到本车的视觉位姿信息,包括:
将所述目标环境图像和第一历史环境图像的匹配点划分为至少一个第一点集,每个所述第一点集中包括第一目标数量的匹配点;
计算每个所述点集的第一本质矩阵,根据所述第一本质矩阵确定第一旋转矩阵;
将所述目标环境图像和第二历史环境图像的匹配点划分为至少一个第二点集,每个所述第二点集中包括第二目标数量的匹配点;
计算每个所述第二点集的第二本质矩阵,根据所述第二本质矩阵确定第二旋转矩阵;
根据所述第一旋转矩阵和所述第二旋转矩阵,得到第三旋转矩阵;
利用所述第三旋转矩阵迭代计算平移向量,并在每次迭代计算前将不满足预设条件的特征点去除;
将所述平移向量和所述第三旋转矩阵作为本车的视觉位姿信息。
在一种可能的实现方式中,所述方法还包括:
将所述目标环境图像中的特征点与确定世界坐标的特征点匹配;
根据匹配成功的世界坐标的特征点调整所述当前时刻对应的视觉位姿信息。
在一种可能的实现方式中,所述方法还包括:
确定历史环境图像中采集时间距离所述当前时刻最近的回环图像;所述回环图像是与其他历史环境图像构成回环的环境图像;
当所述目标环境图像与所述回环图像之间的图像间隔大于回环间隔阈值时,基于所述目标环境图像进行回环检测;
当回环检测成功,并且回环的大小大于回环大小阈值时,则利用所述回环图像对应的视觉位姿信息调整所述目标环境图像对应的视觉位姿信息。
在一种可能的实现方式中,所述根据所述融合位姿信息和所述车位位置信息,生成泊车路径,包括:
根据所述融合位姿信息确定泊车路径的起始点;
根据所述车位位置信息确定所述泊车路径的终点;
根据所述泊车路径的起始点和所述泊车路径的终点,采用圆弧和直线形成所述泊车路径;所述圆弧和所述直线之间采用贝塞尔曲线或者回旋曲线法实现曲率平滑。
在一种可能的实现方式中,所述控制所述本车按照所述泊车路径行驶,包括:
当所述本车行驶至泊车路径中的关键点时,获取目标车位的边框线信息;
根据所述目标车位的边框线信息,以及当前所述本车的融合位姿信息,更新所述泊车路径中从所述关键点到所述目标车位的路径;
控制所述本车按照更新后的泊车路径行驶。
第二方面,本申请提供一种自动泊车装置,所述装置包括:
第一获取单元,用于获取本车的视觉位姿信息,所述视觉位姿信息是根据所述本车的环境图像确定的;
第二获取单元,用于获取所述本车的里程位姿信息,所述里程位姿信息由轮式里程计生成;
融合单元,用于根据所述视觉位姿信息和所述里程位姿信息,得到融合位姿信息;
第三获取单元,用于获取目标车位的车位位置信息;
生成单元,用于根据所述融合位姿信息和所述车位位置信息,生成泊车路径;
控制单元,用于控制所述本车按照所述泊车路径行驶。
在一种可能的实现方式中,所述融合单元,包括:
第一计算子单元,用于根据所述视觉位姿信息,计算当前时刻的目标环境图像和历史时刻的历史环境图像之间的视觉位姿变化;
第二计算子单元,用于根据所述里程位姿信息,计算所述当前时刻的目标里程位姿和所述历史时刻的历史里程位姿之间的里程位姿变化;
确定子单元,用于根据所述视觉位姿变化和所述里程位姿变化确定融合参数;
融合子单元,用于利用所述融合参数、所述视觉位姿变化和所述里程位姿变化,得到融合位姿信息。
在一种可能的实现方式中,所述确定子单元,具体用于当所述视觉位姿变化与所述里程位姿变化的差距大于第一差距阈值时,获取所述目标环境图像的内点集合数量;
当所述内点集合数量大于数量阈值,将第一参数作为融合参数;
当所述内点集合数量小于或者等于数量阈值,将第二参数作为融合参数;
当所述视觉位姿变化与所述里程位姿变化的差距小于所述第一差距阈值时,将第三参数作为融合参数。
在一种可能的实现方式中,所述第一获取单元,包括:
第一采集子单元,用于采集当前时刻所述本车周围的预设区域内的图像信息,生成目标环境图像;
第一提取子单元,用于提取目标环境图像中的特征点;
匹配子单元,用于将所述目标环境图像中的特征点与历史环境图像中的特征点进行匹配,将匹配成功的目标环境图像中的特征点作为匹配点;所述历史环境图像为在历史时刻采集生成的环境图像,所述历史时刻为在所述当前时刻之前的时刻;
生成子单元,用于基于所述匹配点计算所述当前时刻对应的相对位姿,得到本车的视觉位姿信息。
在一种可能的实现方式中,所述第一获取单元,包括:
第二采集子单元,用于采集当前时刻所述本车周围的预设区域内的图像信息,生成目标环境图像;
视差计算子单元,用于确定所述目标环境图像与滑动窗口中最后一帧的历史环境图像的视差;所述滑动窗口包括环境图像,所述滑动窗口中的环境图像是根据采集时刻的先后顺序排序的;所述历史环境图像为在历史时刻采集生成的环境图像,所述历史时刻为在所述当前时刻之前的时刻;
添加子单元,用于当所述视差大于第一视差阈值时,将所述目标环境图像加入所述滑动窗口;
第二提取子单元,用于提取目标环境图像中的特征点;将所述目标环境图像中的特征点与历史环境图像中的特征点进行匹配,将匹配成功的目标环境图像中的特征点作为匹配点;
生成子单元,用于基于所述匹配点计算所述当前时刻对应的相对位姿,得到本车的视觉位姿信息;
第一删除子单元,用于当所述滑动窗口中的环境图像的帧数大于帧数阈值时,删除所述滑动窗口中的一帧历史环境图像;
第二删除子单元,用于当所述视差小于或者等于第一视差阈值时,删除所述目标环境图像,返回执行所述采集当前时刻所述本车周围的预设区域内的图像信息,生成目标环境图像以及后续步骤。
在一种可能的实现方式中,所述第一删除子单元,具体用于当所述滑动窗口中的环境图像的帧数大于帧数阈值,且所述目标环境图像为关键帧时,删除所述滑动窗口中的第一帧的历史环境图像;所述关键帧为匹配点数量小于匹配点数量阈值并且与所述滑动窗口中的最后一帧历史环境图像的视差大于第二视差阈值的环境图像;
当所述滑动窗口中的环境图像的帧数大于帧数阈值,且所述目标环境图像不为关键帧时,删除所述滑动窗口中相邻平均视差最小的历史环境图像。
在一种可能的实现方式中,所述生成子单元,具体用于将所述目标环境图像和第一历史环境图像的匹配点划分为至少一个第一点集,每个所述第一点集中包括第一目标数量的匹配点;
计算每个所述点集的第一本质矩阵,根据所述第一本质矩阵确定第一旋转矩阵;
将所述目标环境图像和第二历史环境图像的匹配点划分为至少一个第二点集,每个所述第二点集中包括第二目标数量的匹配点;
计算每个所述第二点集的第二本质矩阵,根据所述第二本质矩阵确定第二旋转矩阵;
根据所述第一旋转矩阵和所述第二旋转矩阵,得到第三旋转矩阵;
利用所述第三旋转矩阵迭代计算平移向量,并在每次迭代计算前将不满足预设条件的特征点去除;
将所述平移向量和所述第三旋转矩阵作为本车的视觉位姿信息。
在一种可能的实现方式中,所述装置还包括:
匹配单元,用于将所述目标环境图像中的特征点与确定世界坐标的特征点匹配;
根据匹配成功的世界坐标的特征点调整所述当前时刻对应的视觉位姿信息。
在一种可能的实现方式中,所述装置还包括:
回环检测单元,用于确定历史环境图像中采集时间距离所述当前时刻最近的回环图像;所述回环图像是与其他历史环境图像构成回环的环境图像;
当所述目标环境图像与所述回环图像之间的图像间隔大于回环间隔阈值时,基于所述目标环境图像进行回环检测;
当回环检测成功,并且回环的大小大于回环大小阈值时,则利用所述回环图像对应的视觉位姿信息调整所述目标环境图像对应的视觉位姿信息。
在一种可能的实现方式中,所述生成单元,具体用于根据所述融合位姿信息确定泊车路径的起始点;
根据所述车位位置信息确定所述泊车路径的终点;
根据所述泊车路径的起始点和所述泊车路径的终点,采用圆弧和直线形成所述泊车路径;所述圆弧和所述直线之间采用贝塞尔曲线或者回旋曲线法实现曲率平滑。
在一种可能的实现方式中,所述控制单元,具体用于当所述本车行驶至泊车路径中的关键点时,获取目标车位的边框线信息;
根据所述目标车位的边框线信息,以及当前所述本车的融合位姿信息,更新所述泊车路径中从所述关键点到所述目标车位的路径;
控制所述本车按照更新后的泊车路径行驶。
第三方面,本申请提供一种自动泊车设备,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行上述任一项实施例所述的自动泊车方法。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行上述任一项实施例所述的自动泊车方法。
由此可见,本申请实施例具有如下有益效果:
本申请实施例提供的一种自动泊车方法、装置及设备,通过获取本车的视觉位姿信息和里程位姿信息,得到融合位姿信息;其中,视觉位姿信息是根据本车的环境图像确定的,里程位姿信息是由轮式里程计生成的,基于视觉的信息和里程计的信息,能够得到更为准确的自车的融合位姿信息。再获取目标车位的车位位置信息,根据得到的较为准确的融合位姿信息和车位位置信息,生成泊车路径。基于较为准确的融合位姿信息生成的泊车路径,能够优化泊车路径,较为准确地实现自动泊车。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种自动泊车方法的场景示意图;
图2为本申请实施例提供的一种自动泊车方法的流程图;
图3为本申请实施例提供的一种确定融合参数的流程图;
图4为本申请实施例提供的一种自动泊车装置的结构示意图。
具体实施方式
为了便于理解和解释本申请实施例提供的技术方案,下面将先对本申请的背景技术进行说明。
在对传统的自动泊车方法进行研究后发现,目前的自动泊车方法中,一种方法是采用单目同步定位与建图技术进行定位。单目同步定位与建图技术生成的定位信息缺少尺度信息,一般依靠轮速计的信息进行修正。但是轮速计生成的信息存在不可靠性,并且容易具有累计误差,严重影响尺度信息的精度,导致自动泊车过程中定位出现较大误差。另一种方法是利用视觉里程计生成定位信息。此类方法容易受到场景的限制,在不合适的场景下,定位信息不太可靠。此外,还有一种方法是利用视觉定位信息验证车辆的航位信息。此类方法虽然能提高定位的精度,但是容易丢失位姿信息,影响自动泊车过程中的精度。
基于此,本申请实施例提供一种自动泊车方法、装置及设备,通过获取本车的视觉位姿信息和里程位姿信息,得到融合位姿信息;其中,视觉位姿信息是根据本车的环境图像确定的,里程位姿信息是由轮式里程计生成的,基于视觉的信息和里程计的信息,能够得到更为准确的自车的融合位姿信息。再获取目标车位的车位位置信息,根据得到的较为准确的融合位姿信息和车位位置信息,生成泊车路径。基于较为准确的融合位姿信息生成的泊车路径,能够优化泊车路径,较为准确地实现自动泊车。
为了便于理解本申请实施例提供的技术方案,下面结合附图对本申请实施例提供的一种自动泊车方法的应用场景进行说明。参见图1所示,该图为本申请实施例提供的一种自动泊车方法的场景示意图。
车辆101中可以配备有环视摄像头102和双目相机103。在启动自动泊车之后,双目相机103获取本车101的视觉位姿信息,通过本车101的轮式里程计104获取本车101的里程位姿信息,再将视觉位姿信息和里程位姿信息进行融合,得到融合位姿信息。基于环视摄像头102获取目标车位的车位位置信息。基于融合位姿信息和车位位置信息,生成泊车路径。控制本车101按照泊车路径行驶。
为了便于理解本申请实施例提供的技术方案,下面结合附图对本申请实施例提供的一种自动泊车方法进行说明。
参见图2所示,该图为本申请实施例提供的一种自动泊车方法的流程图,该方法包括步骤S201-S206。
S201:获取本车的视觉位姿信息,所述视觉位姿信息是根据所述本车的环境图像确定的。
本车是启动自动泊车的车辆。本申请实施例不限定触发自动泊车的方式,例如,可以由驾驶员触发本车中的自动泊车的启动开关。本车在启动自动泊车之后,可以获取本车的视觉位姿信息。
视觉位姿信息是指基于本车的环境图像生成的位置信息和姿态信息。本车的环境图像是获取的车辆周边环境的图像。
其中,环境图像可以是由双目相机获取得到的,对应的,环境图像可以包括车辆左前方和右前方的图像,分别对应左目视角方向和右目视角方向。采用双目相机能够得到基于双目视觉的环境图像,避免了单目视觉的尺度不确定性。
在一种可能的实现方式中,本申请实施例提供两种获取本车的视觉位姿信息的具体实现方式,请参见下文。
S202:获取所述本车的里程位姿信息,所述里程位姿信息由轮式里程计生成。
里程位姿信息是指基于本车的轮式里程计生成的位置信息和姿态信息。在一种可能的实现方式中,轮式里程计可以根据航迹推演算法得到车辆的当前的里程位姿信息。
S203:根据所述视觉位姿信息和所述里程位姿信息,得到融合位姿信息。
视觉位姿信息是从视觉的角度获取的位姿信息。里程位姿信息是从里程的角度获取的位姿信息。将获取的视觉位姿信息和里程位姿信息进行融合,得到融合位姿信息。融合位姿信息是基于视觉和里程两个角度确定的位姿信息。
在一种可能的实现方式中,本申请实施例提供一种根据所述视觉位姿信息和所述里程位姿信息,得到融合位姿信息的具体实现方式,请参见下文。
S204:获取目标车位的车位位置信息。
目标车位是车辆所要行驶进入的车位。目标车位的车位位置信息是目标车位所在的位置信息。其中,车位位置信息可以是目标车位的车位边框线的具体位置信息,以及目标车位周边的车辆停放信息等。
在一种可能的实现方式中,目标车位的车位位置信息可以由本车携带的环视摄像头生成。本车携带的环视摄像头在启动自动泊车时,检测目标车位,生成对应的车位位置信息。
S205:根据所述融合位姿信息和所述车位位置信息,生成泊车路径。
融合位姿信息包括本车的位置和姿态信息,对应于泊车路径的起点。车位位置信息包括目标车位的位置信息,对应于泊车路径的终点。基于融合位姿信息和车位位置信息,生成泊车路径。泊车路径是本车进行自动泊车时所参考行驶的路径。
在一种可能的实现方式中,本申请实施例提供一种根据所述融合位姿信息和所述车位位置信息,生成泊车路径的具体实现方式,请参见下文。
S206:控制所述本车按照所述泊车路径行驶。
在确定泊车路径后,控制本车按照泊车路径行驶。本车按照泊车路径行驶,可以进行自动泊车。
在一种可能的实现方式中,本申请实施例提供一种控制所述本车按照所述泊车路径行驶的具体实现方式,请参见下文
基于上述S201-S206可知,在本申请实施例中,通过获取本车的视觉位姿信息和里程位姿信息,得到融合位姿信息;其中,视觉位姿信息是根据本车的环境图像确定的,里程位姿信息是由轮式里程计生成的,基于视觉的信息和里程计的信息,能够得到更为准确的自车的融合位姿信息。再获取目标车位的车位位置信息,根据得到的较为准确的融合位姿信息和车位位置信息,生成泊车路径。基于较为准确的融合位姿信息生成的泊车路径,能够优化泊车路径,较为准确地实现自动泊车。
在一种可能的实现方式中,本车的视觉位姿信息可以根据环境图像中的特征点确定。本申请实施例提供一种获取本车的视觉位姿信息的具体实施方式,具体包括以下四个步骤:
A1:采集当前时刻所述本车周围的预设区域内的图像信息,生成目标环境图像。
利用本车携带的相机或者摄像头,采集当前时刻的本车周围的预设区域内的图像信息。预设区域可以是以车辆为中心一定范围内的区域。预设区域可以是根据相机或者摄像头的采集范围确定的,也可以根据车辆行驶的安全距离确定的。
在一种可能的实现方式中,为了提高泊车路径的准确程度,可以实时采集图像。在另一种可能的实现方式中,也可以间隔一定时间采集图像,例如间隔0.5秒。
将当前时刻采集得到的环境图像确定为目标环境图像。
A2:提取目标环境图像中的特征点。
目标环境图像中的特征点是图像中较为显著的点。特征点可以采用特征点提取算法进行检测。在一种可能的实现方式中,特征点可以是ORB(Oriented FAST and RotatedBRIEF,带方向信息的FAST关键点和旋转BRIEF描述子)特征点。
A3:将所述目标环境图像中的特征点与历史环境图像中的特征点进行匹配,将匹配成功的目标环境图像中的特征点作为匹配点;所述历史环境图像为在历史时刻采集生成的环境图像,所述历史时刻为在所述当前时刻之前的时刻。
历史环境图像为在历史时刻采集生成的环境图像。历史时刻为采集得到目标环境图像的当前时刻之前的时刻。
将目标环境图像中的特征点与历史环境图像中的特征点进行匹配,并将匹配成功的特征点作为匹配点。在一种可能的实现方式中,特征点具有对应的描述子,可以基于特征点对应的描述子确定特征点是否匹配。
A4:基于所述匹配点计算所述当前时刻对应的相对位姿,得到本车的视觉位姿信息。
基于匹配点计算当前时刻所对应的本车的相对位姿。
在一种可能的实现方式中,本申请实施例提供一种基于所述匹配点计算所述当前时刻对应的相对位姿,得到本车的视觉位姿信息的具体实施方式,具体请参见下文。
在本申请实施例中,通过确定匹配点计算当前时刻本车所对应的视觉位姿信息,能够得到较为准确的本车的视觉位姿信息。
在一些可能的情况下,环境图像的数量较多,计算本车的视觉位姿信息的计算量较大。为了节约计算资源,本申请实施例提供另一种获取本车的视觉位姿信息的具体实现方式,包括以下8个步骤:
B1:采集当前时刻所述本车周围的预设区域内的图像信息,生成目标环境图像。
B1与上述A1类似,具体请参见上文,在此不再赘述。
B2:确定所述目标环境图像与滑动窗口中最后一帧的历史环境图像的视差;所述滑动窗口包括环境图像,所述滑动窗口中的环境图像是根据采集时刻的先后顺序排序的;所述历史环境图像为在历史时刻采集生成的环境图像,所述历史时刻为在所述当前时刻之前的时刻。
滑动窗口中的环境图像是按照环境图像的采集时刻的先后顺序排序的。例如,采集时刻在先的环境图像排序较小,采集时刻在后的环境图像排序较大。
在获取当前时刻的环境图像,也就是目标环境图像之后,确定是否要将目标环境图像放入滑动窗口。
计算目标环境图像与滑动窗口中最后一帧的历史环境图像的视差。视差是指两个图像之间的差距。通过计算目标环境图像与滑动窗口中最后一帧的历史环境图像的视差,可以对最后一帧的历史环境图像于目标环境图像之间的变化情况进行衡量。
B3:当所述视差大于第一视差阈值时,将所述目标环境图像加入所述滑动窗口。
当视差大于第一视差阈值时,目标环境图像与最后一帧的历史环境图像相差较大,说明车辆移动的距离稍大,可以基于目标环境图像计算对应的视觉位姿信息。将目标环境图像加入滑动窗口中。
B4:提取目标环境图像中的特征点。
B5:将所述目标环境图像中的特征点与历史环境图像中的特征点进行匹配,将匹配成功的目标环境图像中的特征点作为匹配点。
B6:基于所述匹配点计算所述当前时刻对应的相对位姿,得到本车的视觉位姿信息。
B4-B6与上述A2-A4类似,具体请参见上文描述,在此不再赘述。
在一种可能的实现方式中,本申请实施例还提供一种基于所述匹配点计算所述当前时刻对应的相对位姿,得到本车的视觉位姿信息的具体实施方式,具体请参见下文。
B7:当所述滑动窗口中的环境图像的帧数大于帧数阈值时,删除所述滑动窗口中的一帧历史环境图像。
滑动窗口包括帧数阈值的环境图像。滑动窗口中包括的环境图像的帧数阈值可以根据计算能力设定。当添加目标环境图像后的滑动窗口中环境图像的帧数大于帧数阈值时,需要从滑动窗口中删除一帧历史环境图像来维护滑动窗口中包括的环境图像的数量。
在一种可能的实现方式中,可以删除滑动窗口中的第一帧历史环境图像,在另一种可能的实现方式中,还可以根据相邻环境图像之间的视差确定删除的历史环境图像。本申请实施例提供一种当所述滑动窗口中的环境图像的帧数大于帧数阈值时,删除所述滑动窗口中的一帧历史环境图像的具体实施方式,请参见下文。
在自动泊车开始运行时,滑动窗口中的环境图像的帧数小于或者等于帧数阈值,可以将获取的环境图像加入滑动窗口中。直到环境图像的帧数大于帧数阈值时进行环境图像的删除。
B8:当所述视差小于或者等于第一视差阈值时,删除所述目标环境图像,返回执行所述采集当前时刻所述本车周围的预设区域内的图像信息,生成目标环境图像以及后续步骤。
当视差小于第一视差阈值时,目标环境图像与最后一帧的历史环境图像相差较小,说明车辆可能静止或者移动距离较小。对于此类情况,可以不计算当前时刻对应的本车的视觉位姿信息,减少重复计算。可以将该目标环境图像删除,返回B1。
基于上述内容可知,通过设置滑动窗口可以维护自动泊车过程中的计算量,可以在保留有效的环境图像的同时避免重复计算,减少计算量。
在一种可能的实现方式中,本申请实施例提供一种当所述滑动窗口中的环境图像的帧数大于帧数阈值时,删除所述滑动窗口中的一帧历史环境图像的具体实施方式,包括以下两个步骤:
C1:当所述滑动窗口中的环境图像的帧数大于帧数阈值,且所述目标环境图像为关键帧时,删除所述滑动窗口中的第一帧的历史环境图像;所述关键帧为匹配点数量小于匹配点数量阈值并且与所述滑动窗口中的最后一帧环境图像的视差大于第二视差阈值的环境图像。
当滑动窗口中的环境图像的帧数大于帧数阈值时,可以先确定目标环境图像是否为关键帧。关键帧是匹配点数量小于匹配点数量阈值,并且与滑动窗口中的最后一帧历史环境图像的视差大于第二视差阈值的环境图像。
如果目标环境图像为关键帧,则增加关键帧后滑动窗口中环境图像的与前一帧历史环境图像的视差较大,滑动窗口中环境图像的相邻平均视差较为平均。则可以将滑动窗口中采集时刻距离当前时刻最长的历史环境图像,也就是第一帧历史环境图像删除。
C2:当所述滑动窗口中的环境图像的帧数大于帧数阈值,且所述目标环境图像不为关键帧时,删除所述滑动窗口中相邻平均视差最小的环境图像。
当滑动窗口中的环境图像的帧数大于帧数阈值,并且目标环境图像不为关键帧时,则增加关键帧后滑动窗口中环境图像的视差较为不稳定。计算滑动窗口中各个环境图像的相邻平均视差。环境图像的相邻平均视差为该环境图像与前后帧的环境图像的视差的平均值。相邻平均视差最小的环境图像会影响到滑动窗口中环境图像整体的视差,将相邻平均视差最小的环境图像从滑动窗口中删除。
在本申请实施例中,通过确定目标环境图像是否为关键帧,进而确定所要删除的环境图像,能够使得滑动窗口中环境图像的相邻平均视差较为稳定,提高视觉位姿信息的有效程度。
在一种可能的实现方式中,本申请实施例提供一种基于所述匹配点计算所述当前时刻对应的相对位姿,得到本车的视觉位姿信息的具体实施方式,包括以下六个步骤:
D1:将所述目标环境图像和第一历史环境图像的匹配点划分为至少一个第一点集,每个所述第一点集中包括第一目标数量的匹配点。
目标环境图像与第一历史环境图像可能具有多个匹配点。将匹配点进行划分,得到至少一个第一点集。每个第一点集中具有第一目标数量的匹配点。其中,第一历史环境图像可以是目标环境图像的上一帧历史环境图像。
在一种可能的实现方式中,可以采用单目5点法和RANSAC(Random SampleConsensus,随机抽样一致)算法,从所有的匹配点中随机选取若干个5对点,将每个5对点组成一个第一点集。
D2:计算每个所述第一点集的第一本质矩阵,根据所述第一本质矩阵确定第一旋转矩阵。
计算每个第一点集的第一本质矩阵。本质矩阵是在三维坐标系下,用来连接两个对应点的矩阵关系。基于第一点集的第一本质矩阵,计算第一旋转矩阵。
具体的,可以先基于第一点集的第一本质矩阵判断该第一点集中匹配点中的内点的数量。其中,内点是不处于形状边缘的,误差小于误差阈值的匹配点。内点为非动态点。将内点数量最多的第一点集的第一本质矩阵作为最终解,求解得到第一旋转矩阵。第一旋转矩阵是目标环境图像对应的当前时刻与第一历史环境图像对应的采集时刻之间的旋转矩阵。
D3:将所述目标环境图像和第二历史环境图像的匹配点划分为至少一个第二点集,每个所述第二点集中包括第二目标数量的匹配点。
第二历史环境图像是与第一历史环境图像不同的环境图像。第二历史环境图像可以为采集时刻在第一历史环境图像的采集时刻之前的环境图像。例如,第二历史环境图像可以为目标环境图像的上两帧历史环境图像。
具体的,在一种可能的实现方式中,可以采用单目5点法和RANSAC算法,从所有的匹配点中随机选取若干个5对点,将每个5对点组成一个点集。
D4:计算每个所述第二点集的第二本质矩阵,根据所述第二本质矩阵确定第二旋转矩阵。
计算每个第二点集的第二本质矩阵。本质矩阵是在三维坐标系下,用来连接两个对应点的矩阵关系。基于第二点集的第二本质矩阵,计算第二旋转矩阵。
具体的,可以先基于第二点集的第二本质矩阵判断该第二点集中匹配点中的内点的数量。其中,内点是不处于形状边缘的,误差小于误差阈值的匹配点。将内点数量最多的点集的第二本质矩阵作为最终解,求解得到第二旋转矩阵。第二旋转矩阵是目标环境图像对应的当前时刻与第二历史环境图像对应的采集时刻之间的旋转矩阵。
D5:根据所述第一旋转矩阵和所述第二旋转矩阵,得到第三旋转矩阵。
利用第一旋转矩阵和第二旋转矩阵,能够得到第三旋转矩阵。第三旋转矩阵是某个历史的采集时刻到当前时刻之间的旋转矩阵。
在一种可能的实现方式中,可以先利用第二旋转矩阵计算目标环境图像所对应的旋转矩阵。
假设目标环境图像所对应的当前时刻为t,第一历史环境图像的采集时刻为t-1,第二历史环境图像的采集时刻为t-2。
计算方式可以参见公式(1)所示:
D6:利用所述第三旋转矩阵迭代计算平移向量,并在每次迭代计算前将不满足预设条件的特征点去除。
在得到第三旋转矩阵之后,利用第三旋转矩阵求解平移向量。
在一种可能的实现方式中,可以利用第三旋转矩阵构建最小二乘问题求解相机位姿,进而求解得到平移向量。
在求解的过程中,可以进行迭代计算,采用非线性优化的方法求解平移向量。在一种可能的实现方式中,迭代计算的初始值可以是目标环境图像的上一帧历史环境图像的位姿值,通过迭代计算寻找下降方向使得目标函数最优。
求解平移向量的公式可以由公式(3)所示:
其中,是t-1时刻采集得到的第一历史环境图像和t时刻采集的目标环境图像的匹配点,π表示相机针孔模型的投影函数,K是相机内参数矩阵,f是焦距,zi是相机坐标系下特征点的深度。i表示特征点索引,是匹配点对的总数,T是指平移向量。m是指迭代次数,是指t时刻第m-1次迭代求得的内点的集合。
在迭代计算的过程中,还可以删除不符合预设条件的匹配点。
具体的,预设条件可以为与归一化重投影误差相关的条件。例如,对匹配点的判断方式可以参见公式(4)所示。
D7:将所述平移向量和所述第三旋转矩阵作为本车的视觉位姿信息。
得到的平移向量和第三旋转矩阵可以反映本车的位姿变化情况。将平移向量和第三旋转矩阵作为本车的视觉位姿信息。
基于上述内容可知,本申请实施例中,利用归一化重投影误差作为特征点的剔除条件,可以保证用于运动估计的特征点的质量。
进一步的,在得到本车的视觉位姿信息之后,还可以进行位姿优化。在一种可能的实现方式中,除上述步骤以外,所述方法还包括:
将所述目标环境图像中的特征点与确定世界坐标的特征点匹配;
根据匹配成功的世界坐标的特征点调整所述当前时刻对应的视觉位姿信息。
部分特征点具有确定的世界坐标。根据确定世界坐标的特征点进行位姿优化。在位姿优化的过程中,可以采用图优化算法。
在一种可能的实现方式中,可以先将目标环境图像中的特征点与确定世界坐标的特征点进行匹配,确定目标环境图像中的特征点和确定世界坐标的特征点之间的匹配关系。再根据确定世界坐标的特征点与目标环境图像的特征点的匹配关系调整当前时刻所对应的视觉位姿信息,实现对视觉位姿信息的优化。
基于上述内容可知,通过利用确定世界坐标的特征点优化视觉位姿信息,能够提高视觉位姿信息的准确程度。
在一些场景下,本车在移动过程中会出现往复的情况。例如,车辆从A位置移动到了B位置,又从B位置移动回A位置。在车辆移动的过程中,采集得到的环境图像中会存在重复的A位置的环境图像,进而构成回环。
针对上述场景,本申请实施例提供一种自动泊车方法,除上述步骤以外,所述方法还包括以下三个步骤:
E1:确定历史环境图像中采集时间距离所述当前时刻最近的回环图像;所述回环图像是与其他历史环境图像构成回环的环境图像。
回环图像为在历史环境图像中与其他历史环境图像构成回环的环境图像。回环图像可以根据环境图像之间的相似度确定。
例如,有20帧历史环境图像,其中第18帧历史环境图像与第9帧历史环境图像构成回环,第19帧和第20帧历史环境图像均未与其他历史环境图像构成回环,则将第18帧历史环境图像作为回环图像。
E2:当所述目标环境图像与所述回环图像之间的图像间隔大于回环间隔阈值时,基于所述目标环境图像进行回环检测。
在确定目标环境图像的回环图像之后,获取目标环境图像与回环图像之间的图像间隔。图像间隔可以反映可能出现的回环的环境图像之间的距离。
以上述为例,目标环境图像为第21帧环境图像,则图像间隔为2帧。
对图像间隔与回环间隔阈值之间的大小关系进行确定。回环间隔阈值可以是预先设定的开始检测回环的图像间隔。在当图像间隔大于回环间隔阈值时,可以进行回环检测,确定是否与目标环境图像构成回环。
E3:当回环检测成功,并且回环的大小大于回环大小阈值时,则利用所述回环图像对应的视觉位姿信息调整所述目标环境图像对应的视觉位姿信息。
如果回环检测成功,则可以确定回环的大小。回环的大小可以为构成回环的环境图像的帧数。
仍以上述为例,若目标环境图像与第14帧环境图像构成回环,则可以确定回环的大小为6帧。
回环大小阈值为预先设置的确定有效的回环的最低回环大小。当回环的大小大于回环大小阈值时,则可以确定回环有效。可以利用回环图像对应的视觉位姿信息调整目标环境图像对应的视觉位姿信息,实现对目标环境图像对应的视觉位姿信息的调整。
在本申请实施例中,通过回环检测,并且利用回环间隔阈值和回环大小阈值调整更为准确地确定有效的回环,进而提升视觉位姿信息的准确程度。
在一种可能的实现方式中,本申请实施例提供一种根据所述视觉位姿信息和所述里程位姿信息,得到融合位姿信息的具体实施方式,具体包括以下4个步骤:
F1:根据所述视觉位姿信息,计算当前时刻的目标环境图像和历史时刻的历史环境图像之间的视觉位姿变化。
基于得到的目标环境图像对应的视觉位姿信息,计算视觉位姿变化。视觉位姿变化为利用当前时刻的目标环境图像和历史时刻的历史环境图像计算得到的。
视觉位姿变化包括位姿坐标系的变化以及角度θ的变化。
F2:根据所述里程位姿信息,计算所述当前时刻的目标里程位姿和所述历史时刻的历史里程位姿之间的里程位姿变化。
类似的,根据获取的里程位姿信息,计算里程位姿变化。里程位姿变化为利用当前时刻的目标里程位姿和历史时刻的历史里程位姿之间的里程位姿变化。
里程位姿变化包括位姿坐标系的变化以及角度θ的变化。
F3:根据所述视觉位姿变化和所述里程位姿变化确定融合参数。
基于计算得到的视觉位姿变化和里程位姿变化,确定对应的融合参数。融合参数是用于融合视觉位姿变化和里程位姿变化。
在一种可能的实现方式中,本申请实施例提供一种根据所述视觉位姿变化和所述里程位姿变化确定融合参数的具体实施方式,请参见下文。
F4:利用所述融合参数、所述视觉位姿变化和所述里程位姿变化,得到融合位姿信息。
基于确定的融合参数,视觉位姿变化和里程位姿变化,计算得到融合位姿信息。
在一种可能的实现方式中,融合位姿信息可以为a。对应的,融合位姿信息可以由公式(5)表示。
基于上述内容可知,通过基于里程位姿变化和视觉位姿变化确定融合参数,实现采用松耦合的方式将里程位姿变化和视觉位姿变化进行融合,得到更为准确的融合位姿信息。
进一步的,本申请实施例提供一种根据所述视觉位姿变化和所述里程位姿变化确定融合参数的具体实现方式,具体包括以下四个步骤。
G1:当所述视觉位姿变化与所述里程位姿变化的差距大于第一差距阈值时,获取所述目标环境图像的内点集合数量。
视觉位姿变化和里程位姿变化均是表示历史时刻到当前时刻的位姿变化。当视觉位姿变化和里程位姿变化的差距较大,大于第一差距阈值时,需要进一步根据环境图像的跟踪质量确定融合参数。环境图像的跟踪质量可以根据目标环境图像的内点集合数量衡量。
在一种可能的实现方式中,可以通过计算位姿变化量来衡量视觉位姿变化和里程位姿变化的差距。
其中,o_threshold为里程位姿变化阈值。
参见图3所示,该图为本申请实施例提供的一种确定融合参数的流程图。
G2:当所述内点集合数量大于数量阈值,将第一参数作为融合参数。
数量阈值为预先确定衡量内点集合数量的阈值。当内点集合数量大于数量阈值时,对应的将第一参数作为融合参数。
在一种可能的实现方式中,第一参数可以为0.5。
G3:当所述内点集合数量小于或者等于数量阈值,将第二参数作为融合参数。
在一种可能的实现方式中,第二参数可以由公式(7)表示:
其中,f_cnt为内点集合数量,f_cnt_threshold为特征点阈值。
其中,f(f_cnt)可以由公式(8)表示:
G4:当所述视觉位姿变化与所述里程位姿变化的差距小于第一差距阈值时,将第三参数作为融合参数。
当视觉位姿变化和里程位姿变化的差距较小,小于第一差距阈值时,将第三参数作为融合参数。
在一种可能的实现方式中,第三参数可以由公式(9)表示:
其中,F(f_cnt)可以由公式(10)表示:
其中,f_cnt为内点集合数量,f_cnt_threshold为特征点阈值。
在本申请实施例中,根据视觉和里程两种方式的位姿变化差异以及图像跟踪质量,可以确定对应的融合参数,进而得到更为准确的融合位姿信息。
此外,本申请实施例还提供一种根据所述融合位姿信息和所述车位位置信息,生成泊车路径的具体实施方式,包括以下三个步骤:
H1:根据所述融合位姿信息确定泊车路径的起始点。
融合位姿信息用于确定本车当前的位姿。基于融合位姿信息,能够确定泊车路径的起始点。
H2:根据所述车位位置信息确定所述泊车路径的终点。
车位位置信息用于确定车位的位置。基于车位位置信息,能够确定泊车路径的终点。
H3:根据所述泊车路径的起始点和所述泊车路径的终点,采用圆弧和直线形成所述泊车路径;所述圆弧和所述直线之间采用贝塞尔曲线或者回旋曲线法实现曲率平滑。
在确定泊车路径的起始点和终点后,可以规划从泊车路径的起始点和终点的路径。具体可以采用圆弧和直线组合的方式构成泊车路径。其中,圆弧的半径设置为最小转弯半径,使得泊车路径为最短泊车路径。
在直线与圆弧的交接处,可以增加一段四阶贝塞尔曲线以实现曲率平滑,或者增加一段回旋曲线以实现曲率平滑。
在本申请实施例中,采用圆弧和直线的组合方式规划泊车路径。利用四阶贝塞尔曲线和回旋曲线可以提高圆弧和直线之间的曲率平滑程度,可以在不影响整体路径的情况下满足曲率平滑的需求。
在当本车接近车位时,可以获取更为准确的车位的信息,基于较为准确的车位信息,可以对未完成的泊车路径进行重规划。
基于此,本申请实施例提供一种控制所述本车按照所述第一泊车路径行驶的具体实施方式,具体包括以下四个步骤:
I1:控制所述本车按照所述泊车路径行驶。
泊车路径为规划的由本车的位置到目标车位的行驶路径。控制本车按照泊车路径行驶,能够使得本车移动至目标车位。
I2:当所述本车行驶至泊车路径中的关键点时,获取目标车位的边框线信息。
泊车路径中具有关键点。关键点可以是预先在泊车路径中设置的距离目标车位较近的点。在一种可能的实现方式中,关键点可以是泊车路径中本车能够获取目标车位的边框线信息的位置。
I3:根据所述目标车位的边框线信息,以及当前所述本车的融合位姿信息,更新所述泊车路径中从所述关键点到所述目标车位的路径。
目标车位的边框线信息可以是目标车位的边框线的位置。在一种可能的实现方式中,本车在尾灯处还设置有两路TOF(Time-of-Flight,飞行时间)相机。TOF相机可以用于采集本车后方的图像,提取目标车位的边框线信息。TOF相机能够得到目标车位的点云信息,并且对光照的敏感度低,能够在车辆距离目标车位较近时输出高精度的车位的坐标。
对应的,关键点可以根据泊车路径和TOF相机的检测范围设置。
基于获取的目标车位的边框线信息,和本车的融合位姿信息,可以重新规划本车位置到目标车位的泊车路径。对应的,更新泊车路径中从关键点到目标车位的路径。
具体的,可以根据融合位姿信息确定本车位姿,根据目标车位的边框线信息确定目标车位的中轴线。并计算本车位姿距离目标车位的中轴线的横向距离,以及计算本车的车头朝向。将计算得到的横向距离与距离阈值进行比较,将本车的车头朝向与朝向阈值进行比较。其中,距离阈值和朝向阈值可以是预先设置的车辆停在目标车位的中心位置的阈值。如果横向距离小于距离阈值,并且车头朝向小于朝向阈值,则可以采用一阶贝塞尔曲线规划本车到目标车位的中轴线的泊车路径。如果横向距离大于或者等于距离阈值,或者车头朝向大于或者等于朝向阈值,则可以采用高阶贝塞尔曲线规划本车到目标车位的中轴线的泊车路径。
I4:控制所述本车按照更新后的泊车路径行驶。
基于更新后的泊车路径中关键点到目标车位的路径,控制本车继续行驶。在一种可能的实现方式中,在检测到本车位于预设的终点位置时,可以结束自动泊车。
基于上述内容可知,通过重新规划泊车路径,可以使得车辆在泊车时以更为准确的方式行驶入车位。
基于上述方法实施例提供的一种自动泊车方法,本申请实施例还提供了一种自动泊车装置,下面将结合附图对该自动泊车装置进行说明。
参见图4,该图为本申请实施例提供的一种自动泊车装置的结构示意图。如图4所示,该自动泊车装置包括:
第一获取单元401,用于获取本车的视觉位姿信息,所述视觉位姿信息是根据所述本车的环境图像确定的;
第二获取单元402,用于获取所述本车的里程位姿信息,所述里程位姿信息由轮式里程计生成;
融合单元403,用于根据所述视觉位姿信息和所述里程位姿信息,得到融合位姿信息;
第三获取单元404,用于获取目标车位的车位位置信息;
生成单元405,用于根据所述融合位姿信息和所述车位位置信息,生成泊车路径;
控制单元406,用于控制所述本车按照所述泊车路径行驶。
在一种可能的实现方式中,所述融合单元403,包括:
第一计算子单元,用于根据所述视觉位姿信息,计算当前时刻的目标环境图像和历史时刻的历史环境图像之间的视觉位姿变化;
第二计算子单元,用于根据所述里程位姿信息,计算所述当前时刻的目标里程位姿和所述历史时刻的历史里程位姿之间的里程位姿变化;
确定子单元,用于根据所述视觉位姿变化和所述里程位姿变化确定融合参数;
融合子单元,用于利用所述融合参数、所述视觉位姿变化和所述里程位姿变化,得到融合位姿信息。
在一种可能的实现方式中,所述确定子单元,具体用于当所述视觉位姿变化与所述里程位姿变化的差距大于第一差距阈值时,获取所述目标环境图像的内点集合数量;
当所述内点集合数量大于数量阈值,将第一参数作为融合参数;
当所述内点集合数量小于或者等于数量阈值,将第二参数作为融合参数;
当所述视觉位姿变化与所述里程位姿变化的差距小于所述第一差距阈值时,将第三参数作为融合参数。
在一种可能的实现方式中,所述第一获取单元401,包括:
第一采集子单元,用于采集当前时刻所述本车周围的预设区域内的图像信息,生成目标环境图像;
第一提取子单元,用于提取目标环境图像中的特征点;
匹配子单元,用于将所述目标环境图像中的特征点与历史环境图像中的特征点进行匹配,将匹配成功的目标环境图像中的特征点作为匹配点;所述历史环境图像为在历史时刻采集生成的环境图像,所述历史时刻为在所述当前时刻之前的时刻;
生成子单元,用于基于所述匹配点计算所述当前时刻对应的相对位姿,得到本车的视觉位姿信息。
在一种可能的实现方式中,所述第一获取单元401,包括:
第二采集子单元,用于采集当前时刻所述本车周围的预设区域内的图像信息,生成目标环境图像;
视差计算子单元,用于确定所述目标环境图像与滑动窗口中最后一帧的历史环境图像的视差;所述滑动窗口包括环境图像,所述滑动窗口中的环境图像是根据采集时刻的先后顺序排序的;所述历史环境图像为在历史时刻采集生成的环境图像,所述历史时刻为在所述当前时刻之前的时刻;
添加子单元,用于当所述视差大于第一视差阈值时,将所述目标环境图像加入所述滑动窗口;
第二提取子单元,用于提取目标环境图像中的特征点;将所述目标环境图像中的特征点与历史环境图像中的特征点进行匹配,将匹配成功的目标环境图像中的特征点作为匹配点;
生成子单元,用于基于所述匹配点计算所述当前时刻对应的相对位姿,得到本车的视觉位姿信息;
第一删除子单元,用于当所述滑动窗口中的环境图像的帧数大于帧数阈值时,删除所述滑动窗口中的一帧历史环境图像;
第二删除子单元,用于当所述视差小于或者等于第一视差阈值时,删除所述目标环境图像,返回执行所述采集当前时刻所述本车周围的预设区域内的图像信息,生成目标环境图像以及后续步骤。
在一种可能的实现方式中,所述第一删除子单元,具体用于当所述滑动窗口中的环境图像的帧数大于帧数阈值,且所述目标环境图像为关键帧时,删除所述滑动窗口中的第一帧的历史环境图像;所述关键帧为匹配点数量大小于匹配点数量阈值并且与所述滑动窗口中的最后一帧历史环境图像的视差大于第二视差阈值的环境图像;
当所述滑动窗口中的环境图像的帧数大于帧数阈值,且所述目标环境图像不为关键帧时,删除所述滑动窗口中相邻平均视差最小的历史环境图像。
在一种可能的实现方式中,所述生成子单元,具体用于将所述目标环境图像和第一历史环境图像的匹配点划分为至少一个第一点集,每个所述第一点集中包括第一目标数量的匹配点;
计算每个所述点集的第一本质矩阵,根据所述第一本质矩阵确定第一旋转矩阵;
将所述目标环境图像和第二历史环境图像的匹配点划分为至少一个第二点集,每个所述第二点集中包括第二目标数量的匹配点;
计算每个所述第二点集的第二本质矩阵,根据所述第二本质矩阵确定第二旋转矩阵;
根据所述第一旋转矩阵和所述第二旋转矩阵,得到第三旋转矩阵;
利用所述第三旋转矩阵迭代计算平移向量,并在每次迭代计算前将不满足预设条件的特征点去除;
将所述平移向量和所述第三旋转矩阵作为本车的视觉位姿信息。
在一种可能的实现方式中,所述装置还包括:
匹配单元,用于将所述目标环境图像中的特征点与确定世界坐标的特征点匹配;
根据匹配成功的世界坐标的特征点调整所述当前时刻对应的视觉位姿信息。
在一种可能的实现方式中,所述装置还包括:
回环检测单元,用于确定历史环境图像中采集时间距离所述当前时刻最近的回环图像;所述回环图像是与其他历史环境图像构成回环的环境图像;
当所述目标环境图像与所述回环图像之间的图像间隔大于回环间隔阈值时,基于所述目标环境图像进行回环检测;
当回环检测成功,并且回环的大小大于回环大小阈值时,则利用所述回环图像对应的视觉位姿信息调整所述目标环境图像对应的视觉位姿信息。
在一种可能的实现方式中,所述生成单元405,具体用于根据所述融合位姿信息确定泊车路径的起始点;
根据所述车位位置信息确定所述泊车路径的终点;
根据所述泊车路径的起始点和所述泊车路径的终点,采用圆弧和直线形成所述泊车路径;所述圆弧和所述直线之间采用贝塞尔曲线或者回旋曲线法实现曲率平滑。
在一种可能的实现方式中,所述控制单元406,具体用于当所述本车行驶至泊车路径中的关键点时,获取目标车位的边框线信息;
根据所述目标车位的边框线信息,以及当前所述本车的融合位姿信息,更新所述泊车路径中从所述关键点到所述目标车位的路径;
控制所述本车按照更新后的泊车路径行驶。
基于上述方法实施例提供的一种自动泊车方法,本申请实施例还提供了一种自动泊车设备,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行上述任一项实施例所述的自动泊车方法。
基于上述方法实施例提供的一种硬盘故障的检测方法,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行上述任一项实施例所述的自动泊车方法。
需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统或装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (14)
1.一种自动泊车方法,其特征在于,所述方法包括:
获取本车的视觉位姿信息,所述视觉位姿信息是根据所述本车的环境图像确定的;
获取所述本车的里程位姿信息,所述里程位姿信息由轮式里程计生成;
根据所述视觉位姿信息和所述里程位姿信息,得到融合位姿信息;
获取目标车位的车位位置信息;
根据所述融合位姿信息和所述车位位置信息,生成泊车路径;
控制所述本车按照所述泊车路径行驶。
2.根据权利要求1所述的方法,其特征在于,所述根据所述视觉位姿信息和所述里程位姿信息,得到融合位姿信息,包括:
根据所述视觉位姿信息,计算当前时刻的目标环境图像和历史时刻的历史环境图像之间的视觉位姿变化;
根据所述里程位姿信息,计算所述当前时刻的目标里程位姿和所述历史时刻的历史里程位姿之间的里程位姿变化;
根据所述视觉位姿变化和所述里程位姿变化确定融合参数;
利用所述融合参数、所述视觉位姿变化和所述里程位姿变化,得到融合位姿信息。
3.根据权利要求2所述的方法,其特征在于,所述根据所述视觉位姿变化和所述里程位姿变化确定融合参数,包括:
当所述视觉位姿变化与所述里程位姿变化的差距大于第一差距阈值时,获取所述目标环境图像的内点集合数量;
当所述内点集合数量大于数量阈值,将第一参数作为融合参数;
当所述内点集合数量小于或者等于数量阈值,将第二参数作为融合参数;
当所述视觉位姿变化与所述里程位姿变化的差距小于所述第一差距阈值时,将第三参数作为融合参数。
4.根据权利要求1所述的方法,其特征在于,所述获取本车的视觉位姿信息,包括:
采集当前时刻所述本车周围的预设区域内的图像信息,生成目标环境图像;
提取目标环境图像中的特征点;
将所述目标环境图像中的特征点与历史环境图像中的特征点进行匹配,将匹配成功的目标环境图像中的特征点作为匹配点;所述历史环境图像为在历史时刻采集生成的环境图像,所述历史时刻为在所述当前时刻之前的时刻;
基于所述匹配点计算所述当前时刻对应的相对位姿,得到本车的视觉位姿信息。
5.根据权利要求1所述的方法,其特征在于,所述获取本车的视觉位姿信息,包括:
采集当前时刻所述本车周围的预设区域内的图像信息,生成目标环境图像;
确定所述目标环境图像与滑动窗口中最后一帧的历史环境图像的视差;所述滑动窗口包括环境图像,所述滑动窗口中的环境图像是根据采集时刻的先后顺序排序的;所述历史环境图像为在历史时刻采集生成的环境图像,所述历史时刻为在所述当前时刻之前的时刻;
当所述视差大于第一视差阈值时,将所述目标环境图像加入所述滑动窗口;
提取目标环境图像中的特征点;将所述目标环境图像中的特征点与历史环境图像中的特征点进行匹配,将匹配成功的目标环境图像中的特征点作为匹配点;
基于所述匹配点计算所述当前时刻对应的相对位姿,得到本车的视觉位姿信息;
当所述滑动窗口中的环境图像的帧数大于帧数阈值时,删除所述滑动窗口中的一帧历史环境图像;
当所述视差小于或者等于第一视差阈值时,删除所述目标环境图像,返回执行所述采集当前时刻所述本车周围的预设区域内的图像信息,生成目标环境图像以及后续步骤。
6.根据权利要求5所述的方法,其特征在于,所述当所述滑动窗口中的环境图像的帧数大于帧数阈值时,删除所述滑动窗口中的一帧历史环境图像,包括:
当所述滑动窗口中的环境图像的帧数大于帧数阈值,且所述目标环境图像为关键帧时,删除所述滑动窗口中的第一帧的历史环境图像;所述关键帧为匹配点数量小于匹配点数量阈值并且与所述滑动窗口中的最后一帧历史环境图像的视差大于第二视差阈值的环境图像;
当所述滑动窗口中的环境图像的帧数大于帧数阈值,且所述目标环境图像不为关键帧时,删除所述滑动窗口中相邻平均视差最小的历史环境图像。
7.根据权利要求4或5所述的方法,其特征在于,所述基于所述匹配点计算所述当前时刻对应的相对位姿,得到本车的视觉位姿信息,包括:
将所述目标环境图像和第一历史环境图像的匹配点划分为至少一个第一点集,每个所述第一点集中包括第一目标数量的匹配点;
计算每个所述点集的第一本质矩阵,根据所述第一本质矩阵确定第一旋转矩阵;
将所述目标环境图像和第二历史环境图像的匹配点划分为至少一个第二点集,每个所述第二点集中包括第二目标数量的匹配点;
计算每个所述第二点集的第二本质矩阵,根据所述第二本质矩阵确定第二旋转矩阵;
根据所述第一旋转矩阵和所述第二旋转矩阵,得到第三旋转矩阵;
利用所述第三旋转矩阵迭代计算平移向量,并在每次迭代计算前将不满足预设条件的特征点去除;
将所述平移向量和所述第三旋转矩阵作为本车的视觉位姿信息。
8.根据权利要求4或5所述的方法,其特征在于,所述方法还包括:
将所述目标环境图像中的特征点与确定世界坐标的特征点匹配;
根据匹配成功的世界坐标的特征点调整所述当前时刻对应的视觉位姿信息。
9.根据权利要求4或5所述的方法,其特征在于,所述方法还包括:
确定历史环境图像中采集时间距离所述当前时刻最近的回环图像;所述回环图像是与其他历史环境图像构成回环的环境图像;
当所述目标环境图像与所述回环图像之间的图像间隔大于回环间隔阈值时,基于所述目标环境图像进行回环检测;
当回环检测成功,并且回环的大小大于回环大小阈值时,则利用所述回环图像对应的视觉位姿信息调整所述目标环境图像对应的视觉位姿信息。
10.根据权利要求1所述的方法,其特征在于,所述根据所述融合位姿信息和所述车位位置信息,生成泊车路径,包括:
根据所述融合位姿信息确定泊车路径的起始点;
根据所述车位位置信息确定所述泊车路径的终点;
根据所述泊车路径的起始点和所述泊车路径的终点,采用圆弧和直线形成所述泊车路径;所述圆弧和所述直线之间采用贝塞尔曲线或者回旋曲线法实现曲率平滑。
11.根据权利要求1所述的方法,其特征在于,所述控制所述本车按照所述泊车路径行驶,包括:
当所述本车行驶至泊车路径中的关键点时,获取目标车位的边框线信息;
根据所述目标车位的边框线信息,以及当前所述本车的融合位姿信息,更新所述泊车路径中从所述关键点到所述目标车位的路径;
控制所述本车按照更新后的泊车路径行驶。
12.一种自动泊车装置,其特征在于,所述装置包括:
第一获取单元,用于获取本车的视觉位姿信息,所述视觉位姿信息是根据所述本车的环境图像确定的;
第二获取单元,用于获取所述本车的里程位姿信息,所述里程位姿信息根据由轮式里程计生成;
融合单元,用于根据所述视觉位姿信息和所述里程位姿信息,得到融合位姿信息;
第三获取单元,用于获取目标车位的车位位置信息;
生成单元,用于根据所述融合位姿信息和所述车位位置信息,生成泊车路径;
控制单元,用于控制所述本车按照所述泊车路径行驶。
13.一种自动泊车设备,其特征在于,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行权利要求1-11任一项所述的自动泊车方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行权利要求1-11任一项所述的自动泊车方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111111107.XA CN115841514A (zh) | 2021-09-18 | 2021-09-18 | 一种自动泊车方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111111107.XA CN115841514A (zh) | 2021-09-18 | 2021-09-18 | 一种自动泊车方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115841514A true CN115841514A (zh) | 2023-03-24 |
Family
ID=85574490
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111111107.XA Pending CN115841514A (zh) | 2021-09-18 | 2021-09-18 | 一种自动泊车方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115841514A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116408808A (zh) * | 2023-06-09 | 2023-07-11 | 未来机器人(深圳)有限公司 | 机器人取货检测方法及装置、机器人 |
-
2021
- 2021-09-18 CN CN202111111107.XA patent/CN115841514A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116408808A (zh) * | 2023-06-09 | 2023-07-11 | 未来机器人(深圳)有限公司 | 机器人取货检测方法及装置、机器人 |
CN116408808B (zh) * | 2023-06-09 | 2023-08-01 | 未来机器人(深圳)有限公司 | 机器人取货检测方法及装置、机器人 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109887053B (zh) | 一种slam地图拼接方法及系统 | |
CN110335316B (zh) | 基于深度信息的位姿确定方法、装置、介质与电子设备 | |
CN111126269B (zh) | 三维目标检测方法、装置以及存储介质 | |
CN109631896B (zh) | 一种基于车辆视觉和运动信息的停车场自主泊车定位方法 | |
CN112419494B (zh) | 用于自动驾驶的障碍物检测、标记方法、设备及存储介质 | |
WO2020237996A1 (zh) | 一种车辆位姿的修正方法和装置 | |
CN108955718B (zh) | 一种视觉里程计及其定位方法、机器人以及存储介质 | |
CN104833370B (zh) | 用于映射、定位和位姿校正的系统和方法 | |
CN107167826B (zh) | 一种自动驾驶中基于可变网格的图像特征检测的车辆纵向定位系统及方法 | |
CN111274847B (zh) | 一种定位方法 | |
CN109074085A (zh) | 一种自主定位和地图建立方法、装置和机器人 | |
CN108481327B (zh) | 一种增强视觉的定位装置、定位方法及机器人 | |
CN109978919B (zh) | 一种基于单目相机的车辆定位方法及系统 | |
CN114450691A (zh) | 稳健定位 | |
CN112639765B (zh) | 车道线识别异常事件确定方法、车道线识别装置及系统 | |
US20220176989A1 (en) | High precision position estimation method through road shape classification-based map matching and autonomous vehicle thereof | |
CN112313536A (zh) | 物体状态获取方法、可移动平台及存储介质 | |
CN116295412A (zh) | 一种基于深度相机的室内移动机器人稠密建图与自主导航一体化方法 | |
CN113137968B (zh) | 基于多传感器融合的重定位方法、重定位装置和电子设备 | |
CN112991550A (zh) | 基于伪点云的障碍物位置检测方法、装置和电子设备 | |
CN115841514A (zh) | 一种自动泊车方法、装置及设备 | |
CN112733971B (zh) | 扫描设备的位姿确定方法、装置、设备及存储介质 | |
CN117036447A (zh) | 基于多传感器融合的室内场景稠密三维重建方法及装置 | |
CN115388880A (zh) | 一种低成本记忆泊车建图与定位方法、装置及电子设备 | |
CN115236672A (zh) | 障碍物信息生成方法、装置、设备及计算机可读存储介质 |
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 |