一种自动泊车方法
技术领域
本发明涉及车辆控制技术领域,特别是涉及一种自动泊车方法。
背景技术
随着车辆朝智能化驾驶的方向发展,越来越多的主动安全技术被应用到车辆上,例如自动泊车技术,自动驾驶技术等,新技术的应用,不仅提高了车辆行驶的安全性,还提高了汽车的驾驶感。
目前,市场上关于汽车的自动驾驶方案一般是利用传感器技术,车辆智能化识别出可利用的车位,再规划出到达可利用的车位的行驶路径,依照行驶路径泊入对应车位。这种方案的不足之处在于,车辆里程计往往存在累计误差,导致车辆最终泊入的车位可能不准确。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的自动泊车方法。
根据本发明的一个方面,提供了一种自动泊车方法,该方法包括:
获取停车场地内第一检测位置到目标车位的第一泊车路径,并在所述泊车路径上确定泊入车位前的第二检测位置;其中,所述第一检测位置为检测到空车位的位置,所述目标车位为在所述第一检测位置检测到的空车位;
控制待泊车辆沿所述第一泊车路径行驶至所述第二检测位置,在所述第二检测位置检测待泊入车位,判断所述待泊入车位是否为所述目标车位;
若是,控制所述待泊车辆行驶至所述待泊入车位的第一泊入位置;
在所述第一泊入位置,获取所述待泊入车位的边界特征,根据所述待泊入车位的边界特征确定所述待泊入车位的目标停车点,并根据所述目标停车点确定泊车终点;
控制所述待泊车辆行驶至所述泊车终点。
可选地,所述目标车位通过如下方式检测获得:
在所述第一检测位置处采集所述停车场地的第一图像,检测所述第一图像中的平行直线段;
若所述第一图像中具有平行直线段,计算所述平行直线段的长度和所述平行直线段间的距离;
根据所述平行直线段的长度以及所述平行直线段间的距离确定所述目标车位。
可选地,所述判断所述待泊入车位是否为所述目标车位的步骤包括:
建立世界坐标系;
获取所述目标车位在所述世界坐标系中的第一位置;
获取所述待泊车辆沿所述第一泊车路径行驶至所述第二检测位置的里程信息,根据所述里程信息计算所述待泊入车位在所述世界坐标系中的第二位置;
计算所述第一位置和所述第二位置的偏差,判断所述偏差是否在预设范围内;
若所述偏差在所述预设范围内,则确定所述待泊入车位为所述目标车位。
可选地,在所述第一位置和第二位置的偏差不在所述预设范围内的情况下,则计算所述第二检测位置到所述目标车位的第二泊车路径;
控制所述待泊车辆沿所述第二泊车路径泊车。
可选地,根据所述目标停车点确定泊车终点包括:
计算所述目标停车点与所述第一泊车路径的终点的偏差;
若所述目标停车点与所述第一泊车路径的终点的偏差在预设偏差范围内,则将所述目标停车点和所述第一泊车路径的终点进行融合得到泊车终点。
可选地根据所述目标停车点确定泊车终点包括:
计算所述目标停车点与所述第一泊车路径的终点的偏差;
若所述目标停车点与所述第一泊车路径的终点的偏差在预设偏差范围外,则将所述目标停车点作为泊车终点。
可选地,所述在所述第一泊入位置,获取所述待泊入车位的边界特征,根据所述待泊入车位的边界特征确定所述待泊入车位的目标停车点的步骤包括:
在所述第一泊入位置采集第二图像;
获取所述第二图像中所述待泊入车位的车位边界信息,所述车位边界信息包括车位侧边信息;及
判断所述车位边界信息是否包括轮档信息;
若所述车位边界信息包括轮档信息,根据所述车位侧边信息和所述轮档信息计算所述目标停车点。
可选地,所述车位边界信息还包括车位底边信息;
在所述车位边界信息不包括所述轮档信息的情况下,根据所述车位侧边信息和所述车位底边信息计算所述目标停车点。
根据本发明的另一个方面,还提供了一种电子设备,其包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述任意一项所述的方法。
根据本发明的又一个方面,还提供了一种计算机可读存储介质,其中,所述存储介质中存储有至少一条指令、至少一段程序、代读码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行如上述任意一项所述的方法。
在本发明提供的方案中,在第一检测位置获取到目标车位的第一泊车路径,并在第一泊车路径上确定泊入车位前的第二位置后,在待泊车辆沿泊车路径行驶至第二检测位置时,判断当前泊入车位是否为目标车位,若是,则控制待泊车辆行驶至待泊入车位的第一泊入位置,从而可以避免待泊车辆泊入的车位不准确。在第一泊入位置,获取目标车位的边界特征并根据目标车位的边界特征确定目标停车点,根据目标停车点确定泊车终点,控制待泊车辆行驶至泊车终点,从而可以提高车辆停靠位置的精准度。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
附图说明
后文将参照附图以示例性而非限制性的方式详细描述本发明的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解,这些附图未必是按比例绘制的。附图中:
图1示出了根据本发明一个实施例的自动泊车方法的流程示意图;
图2示出了根据本发明一个实施例的自动泊车方法中的车位示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
需要说明的是,在不冲突的前提下本发明实施例及可选实施例中的技术特征可以相互结合。
图1示出了根据本发明一个实施例的自动泊车方法的流程示意图。如图1所示,该方法可以至少包括如下步骤:
S102:获取停车场地内第一检测位置到目标车位的第一泊车路径,并在泊车路径上确定泊入车位前的第二检测位置;其中,第一检测位置为检测到空车位的位置,目标车位为在第一检测位置检测到的空车位。
S104:控制待泊车辆沿第一泊车路径行驶至第二检测位置,在第二检测位置检测待泊入车位,判断待泊入车位是否为目标车位。
S106:若是,控制待泊车辆行驶至待泊入车位的第一泊入位置。
S108:在第一泊入位置,获取待泊入车位的边界特征,根据待泊入车位的边界特征确定待泊入车位的目标停车点,并根据目标停车点确定泊车终点。
S110:控制待泊车辆行驶至泊车终点。
在本发明提供的方案中,寻找空车位阶段,在第一检测位置检测到空车位,将空车位作为目标车位,由此可以根据路径规划算法规划出从第一检测位置到目标车位的第一泊车路径。
在本发明提供的方案中,在确定第一泊车路径后,在第一泊车路径上确定泊入车位前的第二检测位置,第二检测位置用于在泊入车位前再次检测即将泊入的车位即待泊入车位。待泊车辆沿第一泊车路径行驶至第二检测位置后,检测待泊入车位,判断待泊入车位是否是在第一检测位置检测得到的目标车位。若是,则控制待泊车辆行驶至待泊入车位的第一泊入位置,从而可以避免待泊车辆在泊车过程中因为里程计误差等原因导致泊入的车位不准确。
在本发明提供的方案中,在待泊车辆行驶至第一泊入位置后,第一泊入位置用于在泊入车位后再次检测当前泊入的车位。在第一泊入位置获取目标车位的边界特征并根据目标车位的边界特征确定目标停车点,进而根据目标停车点确定泊车终点,控制待泊车辆行驶至泊车终点。从而可以提高车辆停靠位置的精准度。
在本发明一些实施例中,上文步骤S102中提到的目标车位可以通过如下方式检测获得:在第一检测位置处采集停车场地的第一图像,检测第一图像中的平行直线段。若第一图像中具有平行直线段,则计算平行直线段的长度和平行直线段间的距离,根据平行直线段的长度以及平行直线段间的距离确定目标车位。
其中,根据平行直线段的长度以及平行直线段间的距离确定目标车位可以包括:判断平行直线段的长度是否在预设长度范围内以及平行直线段间的距离是否在预设宽度范围内。若平行直线段的长度在预设长度范围内且平行直线段间的距离在预设宽度范围内,则确定平行直线段为一空车位的车位线,空车位为即为目标车位。
具体地,待泊车辆的车身两侧和后侧可以设置有摄像头,参见图2,在第一检测位置A处,可以开启待泊车辆车身两侧的摄像头,通过摄像头对停车场进行图像采集从而得到一图像,可以通过外参内参变换的方式将采集到的图像转换至俯视校正图作为第一图像,进而检测第一图像中的空车位。其中,内参外参变换的方式为本领域较为成熟的技术,本发明在此不再详细描述。
为了检测第一图像中的空车位,可以先对第一图像进行高亮区域和特定颜色分量提取,之后进行二值化以获取第一图像中的待确定车位线区域。
具体地,车位线的亮度较高,车位线两侧区域一般较暗,因此,可以基于车位线亮度,计算第一图像的亮度梯度,得到亮度明显高于周边的像素点作为第一待确定车位线区域。另外,车位线的颜色不同于周围环境的颜色,可以基于车位线颜色,提取第一图像中的特定颜色分量作为第二待确定车位线区域,或者基于车位线颜色,采用聚类算法对第一图像颜色分量直方图进行聚类,分割出第二待确定车位线区域。对提取出的第一待确定车位线区域和第二待确定区域进行融合即可得到待确定车位线区域。具体的,对第一待确定车位线区域和第二待确定区域融合后得到的区域按照亮度和颜色进行打分,分值越高的区域越代表待确定车位线区域,这样确定出的待确定车位线区域更加准确。
在获取待确定车位线区域后,可以采用直线提取算法检测第一图像中的直线段,若任意两条直线段的斜率误差在预设斜率误差范围内,则确定为平行直线段。之后检测平行直线段的长度,若平行直线段的长度在预设长度范围内,即车位线长度的允许误差内,则继续检测平行直线段间的距离。若平行直线段间的距离在预设的宽度范围内,即车位宽度的允许误差范围内,例如2-2.7m范围内,则确定平行直线段为一空车位的车位线,该空车位即为目标车位。目标车位可以是垂直、水平、斜车位等。
在本发明一些实施例中,步骤S104提到的在第二检测位置检测待泊入车位,判断当前泊入车位是否为目标车位,具体可以包括:建立世界坐标,获取目标车位在世界坐标系中的第一位置,获取待泊车辆沿第一泊车路径行驶至第二检测位置的里程信息,根据里程信息计算待泊入车位在世界坐标系中的第二位置。计算第一位置和第二位置的偏差,判断偏差是否在预设范围内。若偏差在预设范围内,则确定待泊入车位为目标车位。
其中,世界坐标系可以在泊车启动时建立,目标车位、第一位置、第二位置均可以用世界坐标系中的坐标点表示其位置,在一车辆中,相机坐标系、车辆坐标系均可转换至世界坐标系。
具体地,参见图2,在获取到目标车位在世界坐标系中的第一位置,在第二检测位置B处获取当前待泊入车位在世界坐标系中的第二位置后,可以计算第一位置和第二位置的偏差。
在本发明一些实施例中,可以将目标车位的中心点作为第一位置,将待泊入车位的中心点作为第二位置,计算目标车位的中心点和待泊入车位的中心点的偏差获得第一位置和第二位置的偏差,一般目标车位为矩形或平行四边形,目标车位的中心点为矩形或平行四边形的中点。
在本发明另一些实施例中,也可以将目标车位的四个角点作为第一位置、将待泊入车位的四个角点作为第二位置,计算目标车位的四个角点和待泊入车位对应的四个角点间的偏差,作为第一位置和第二位置的偏差。一般车位有4个角点,因此可以得到4个偏差,根据这4个偏差计算第一位置和第二位置的偏差,例如计算4个偏差的和,或者计算4个偏差的均值作为第一位置和第二位置的偏差。其中,计算角点偏差相对于计算中心点偏差,准确度更高,为优选方案。
第一位置和第二位置的偏差若在预设范围内,例如0-0.5m,则确定待泊入车位为目标车位,接下来在步骤S106中,控制待泊车辆沿第一泊车路径行驶至待泊入车位的第一泊入位置。
在本发明一些实施例中,在第一位置和第二位置的偏差在预设范围内的情况下,还可以根据实际需要对目标车位的角点和待泊入车位的角点进行融合。例如,在世界坐标系中,目标车位的一个角点的坐标为(x1,y1),待泊入车位对应角点的坐标为(x2,y2),则加权融合后的坐标为((a*x1+b*x2)/(a+b),(a*y1+b*y2)/(a+b))。其中,a、b为权重值,a、b可以根据对第一位置和第二位置的重要程度来设置,重要程度越大,对应的权重值越大,融合后的结果更接近这一方。对角点进行融合,即对目标车位修正,泊车路径同样得到修正,这样可以提高待泊车辆泊车位置的准确度。
在本发明一些实施例中,在第一位置和第二位置的偏差不在预设范围内的情况下,则说明待泊入车位不是在第一检测位置检测到的空车位,则可以计算第二检测位置到目标车位的第二泊车路径,之后控制待泊车辆沿第二泊车路径泊车至目标车位。
具体地,若后续在第二检测位置处检测得到的待泊入车位还是与目标车位的信息不匹配,则继续规划从当前位置到目标车位的泊车路径。
在本发明的一些实施例中,上文步骤S108中提到在第一泊入位置,获取待泊入车位的边界特征,根据待泊入车位的边界特征确定待泊入车位的目标停车点,并根据目标停车点确定泊车终点具体包括:在第一泊入位置,采集第二图像,获取第二图像中待泊入车位的车位边界信息,车位边界信息包括车位侧边信息。判断车位边界信息是否包括轮档信息。若车位边界信息包括轮档信息,根据车位侧边信息和轮档信息计算目标停车点。
具体地,根据目标停车点确定泊车终点可以包括:计算目标停车点与第一泊车路径的终点的偏差,若目标停车点与第一泊车路径的终点的偏差在预设偏差范围内,则将目标停车点和第一泊车路径的终点进行融合得到泊车终点,使待泊车辆行驶至泊车终点。泊车终点可以是将目标停车点和第一泊车路径的终点按照各自的权重计算加权融合得到的坐标点。而若目标停车点与第一泊车路径的终点的偏差在预设偏差范围外,则可以将目标停车点作为泊车终点,使待泊车辆行驶至泊车终点。
具体地,参见图2,在待泊车辆行驶至第一泊入位置C时,可以通过车身两侧的摄像头采集车身两侧车位线图像,通过后视摄像头采集两侧车位置和轮档或底边图像,之后可以对采集到的图像进行环视拼接进而得到第二图像。其中,使用两侧摄像头参与两侧车位线图像的采集,可以使融合得到的第二图像中车位线的位置更清楚,效果更好。由于第一泊入位置C在待泊入车位内,因此,第二图像中的车位边界信息相比于第一图像中的更为准确。
在获得第二图像后,可以将第二图像转换为畸变矫正图,通过视觉机器学习的算法检测车位边界信息是否包括轮档信息。若存在轮档信息,则可以根据第二图像计算轮档位置和车位侧边位置,根据车位侧边位置和轮档位置确定目标停车点。其中,目标停车点可以分别与车位侧边距离相等并位于轮档前方预设距离处,使待泊车辆行驶至目标停车点即停止后,后轮不会碰到轮档,待泊车辆位于车位正中位置且与车位侧边平行。之后若计算目标停车点与第一泊车路径的终点的偏差在预设偏差范围内,则将目标停车点和第一泊车路径的终点进行融合得到泊车终点,并使待泊车辆以泊车终点为准进行泊车,泊车后车辆位于车位正中位置且与车位侧边平行。而若目标停车点与第一泊车路径的终点的偏差在预设偏差范围外,则可以将目标停车点作为泊车终点,使待泊车辆行驶至泊车终点,从而使得泊车位置更准确。
另外,在本发明一些实施例中,车位边界信息还包括车位底边信息,在车位边界信息不包括轮档信息的情况下,根据车位侧边信息和车位底边信息计算目标停车点。
其中,在不包括轮档的情况下,则按照底边位置和车位侧边位置计算目标停车点,进而利用该目标停车点确定泊车终点,具体利用该目标停车点确定泊车终点的过程参照上文所述。从而在不包括轮档的情况下,保证待泊车辆停靠在车位正中位置且与车位侧边平行。
本发明提供了一种自动泊车方法,在本发明提供的方案中,在第一检测位置获取到目标车位的第一泊车路径,并在第一泊车路径上确定泊入车位前的第二检测位置后,在待泊车辆沿泊车路径行驶至第二检测位置时,判断当前泊入车位是否为目标车位,若是,则控制待泊车辆沿行驶至待泊入车位的第一泊入位置。从而可以避免待泊车辆在泊车过程中因为里程计误差等原因导致泊入的车位不准确。在待泊车辆行驶至待泊入车位的第一泊入位置后,在第一泊入位置获取待泊入车位的边界特征,根据待泊入车位的边界特征确定待泊入车位的目标停车点,并根据目标停车点确定泊车终点,控制待泊车辆行驶至泊车终点,从而可以提高车辆停靠位置的精准度。
根据本发明的另一个方面,还提供了一种电子设备,其包括处理器和存储器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述任意实施例所述的方法。
根据本发明的又一个方面,还提供了一种计算机可读存储介质,其中,所述存储介质中存储有至少一条指令、至少一段程序、代读码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行如上述任意实施例所述的方法。
所属领域的技术人员可以清楚地了解到,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,为简洁起见,在此不另赘述。
另外,在本发明各个实施例中的各功能单元可以物理上相互独立,也可以两个或两个以上功能单元集成在一起,还可以全部功能单元都集成在一个处理单元中。上述集成的功能单元既可以采用硬件的形式实现,也可以采用软件或者固件的形式实现。
本领域普通技术人员可以理解:集成的功能单元如果以软件的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,其包括若干指令,用以使得一台计算设备(例如个人计算机,服务器,或者网络设备等)在运行所述指令时执行本发明各实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM)、随机存取存储器(RAM),磁碟或者光盘等各种可以存储程序代码的介质。
或者,实现前述方法实施例的全部或部分步骤可以通过程序指令相关的硬件(诸如个人计算机,服务器,或者网络设备等的计算设备)来完成,所述程序指令可以存储于一计算机可读取存储介质中,当所述程序指令被计算设备的处理器执行时,所述计算设备执行本发明各实施例所述方法的全部或部分步骤。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:在本发明的精神和原则之内,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案脱离本发明的保护范围。