本发明涉及无人车控制领域,具体地说,涉及无人驾驶车辆对位方法、系统、设备及存储介质。
背景技术
伴随着经济的发展和航运需求的提高,传统码头越来越多地面临着巨大的人力缺口以及作业效率不高等问题。而无人驾驶技术的兴起有望利用自动化的方案帮助港口解决这一痛点,进一步提高码头运营的效率。传统码头通过桥吊、龙门吊等设备完成集装箱的调运,而通过集卡进行集装箱的转移。所以当对港口进行自动化改造的时候,不可避免地会遇到集卡与调运设备之间交互的问题。目前桥吊、龙门吊等设备通过机械抓手实现集装箱的抓取,而机械抓手本身只能实现一个自由度的操作,所以需要集卡精确地对准位置,使得抓手能够顺利穿过集装箱上的锁孔,实现抓取。传统的人力对位的方式需要集卡司机仿佛调整实现对位,时间消耗长,影响作业效率。
因此,本发明提供了一种无人驾驶车辆对位方法、系统、设备及存储介质。
技术实现要素:
针对现有技术中的问题,本发明的目的在于提供无人驾驶车辆对位方法、系统、设备及存储介质,能够通过自动化的方式精确行驶到目标坐标,并且在自动化港口实现集卡与桥吊、龙门吊的高精度对位,从而节约时间,提高整体运行效率。
本发明的实施例提供一种无人驾驶车辆对位方法,包括以下步骤:
s101、采用无人驾驶车辆的固定式摄像头拍摄拍摄行车方向前方地面上一个边长为lcm正方形二维码图案的图像;根据图像建立坐标系,坐标系原点为矩形的所述图像的一角,因透视形变为梯形的正方形二维码图案的四角的坐标分别为(x1,y1)、(x2,y2)、(x3,y3)和(x4,y4);
设第一矩阵
s102、在行车线路上设置多个正方形二维码图案,并建立每个二维码图案与该二维码图案的定位坐标信息的映射关系表;
s103、使用无人驾驶车辆的摄像头拍摄行驶方向的当前图像,采集所述当前图像中的二维码图案,将所述图像中的二维码图案拉伸形变为正方形二维码图案;
s104、判断当前图像中的二维码图案是否命中所述映射关系表中的一个,若是,则执行步骤s105,若否,则返回步骤s103;
s105、根据当前图像建立坐标系,当前图像中因透视形变为梯形的正方形二维码图案的四角的坐标分别为(x5,y5)、(x6,y6)、(x7,y7)和(x8,y8);
设当前矩阵
s106、根据步骤s105中得到的所述无人驾驶车辆与当前图像中二维码图案的距离,以及所述当前图像中正方形二维码图案的定位坐标信息获得所述无人驾驶车辆的当前坐标;
s107、判断所述无人驾驶车辆是否到达目标坐标,若是,则执行步骤s109,若否,则执行步骤s108;
s108、对比所述无人驾驶车辆的当前坐标和目标坐标进行油门或刹车;以及
s109、结束。
优选地,所述步骤s108中包括
s1081、采集所述无人驾驶车辆的当前车速vt;
s1082、计算目标加速度
s1083、利用差分法计算车辆当前实际的加速度,其中vt为当前车辆的速度,vt-1为上一个时刻车辆的速度,两次采样数据之间的时间间隔为δt:
s1084、计算当前目标加速度an和实际加速度ar之间的差;
s1085、计算当前所需的油门和刹车值:
优选地,所述步骤s1085中,kp=0.6,ki=0.1,kd=0.3。
优选地,所述步骤s101中,设所述图像的每一个像素对应1cm,所述正方形二维码图案的四角在俯视状态下的坐标分别为(-0.5l,l)、(0.5l,l)、(0.5l,2l)和(-0.5l,2l);
则建立对应俯视状态的第二矩阵
优选地,所述步骤s105,通过与变换矩阵m乘积,将所述当前矩阵c转换为俯视状态下的俯视矩阵d。
优选地,步骤s101中矩形的所述图像的坐标系原点是所述图像的左下角,自原点向右为x轴的延展方向,自原点向上为y轴的延展方向;
所述步骤105中的坐标系的原点是所述当前图像的左下角,自原点向右为x轴的延展方向,自原点向上为y轴的延展方向。
优选地,步骤s101中所有所述正方形二维码图案都的尺寸相同。
优选地,交换所述步骤s101和步骤s102的顺序。
优选地,所述摄像头的分辨率为1024*768。
本发明的实施例还提供一种无人驾驶车辆对位系统,用于实现上述的无人驾驶车辆对位方法,所述无人驾驶车辆对位系统包括:
变换矩阵获得模块,采用无人驾驶车辆的固定式摄像头拍摄拍摄行车方向前方地面上一个边长为lcm正方形二维码图案的图像;根据图像建立坐标系,坐标系原点为矩形的所述图像的一角,因透视形变为梯形的正方形二维码图案的四角的坐标分别为(x1,y1)、(x2,y2)、(x3,y3)和(x4,y4);
设第一矩阵
映射关系建立模块,在行车线路上设置多个正方形二维码图案,并建立每个二维码图案与该二维码图案的定位坐标信息的映射关系表;
图像拉伸形变使模块,用无人驾驶车辆的摄像头拍摄行驶方向的当前图像,采集所述当前图像中的二维码图案,将所述图像中的二维码图案拉伸形变为正方形二维码图案;
第一判断模块,判断当前图像中的二维码图案是否命中所述映射关系表中的一个,若是,则执行距离获得模块,若否,则返回图像拉伸形变使模块;
距离获得模块,根据当前图像建立坐标系,当前图像中因透视形变为梯形的正方形二维码图案的四角的坐标分别为(x5,y5)、(x6,y6)、(x7,y7)和(x8,y8);
设当前矩阵
坐标定位模块,根据距离获得模块中得到的所述无人驾驶车辆与当前图像中二维码图案的距离,以及所述当前图像中正方形二维码图案的定位坐标信息获得所述无人驾驶车辆的当前坐标;
第一判断模块,判断所述无人驾驶车辆是否到达目标坐标,若否,则执行驾驶输出模块;
驾驶输出模块,对比所述无人驾驶车辆的当前坐标和目标坐标进行油门或刹车。
本发明的实施例还提供一种无人驾驶车辆对位设备,包括:
处理器;
存储器,其中存储有所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行上述无人驾驶车辆对位方法的步骤。
本发明的实施例还提供一种计算机可读存储介质,用于存储程序,所述程序被执行时实现上述无人驾驶车辆对位方法的步骤。
本发明的目的在于提供无人驾驶车辆对位方法、系统、设备及存储介质,能够通过自动化的方式精确行驶到目标坐标,并且在自动化港口实现集卡与桥吊、龙门吊的高精度对位,从而节约时间,提高整体运行效率。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显。
图1是本发明的无人驾驶车辆对位方法的流程图;
图2至7是本发明的无人驾驶车辆对位方法实施过程的示意图;
图8是本发明的无人驾驶车辆对位系统的模块示意图;
图9是本发明的无人驾驶车辆对位设备的结构示意图;以及
图10是本发明一实施例的计算机可读存储介质的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的实施方式。相反,提供这些实施方式使得本发明将全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的结构,因而将省略对它们的重复描述。
图1是本发明的无人驾驶车辆对位方法的流程图。如图1所示,本发明的实施例提供一种无人驾驶车辆对位方法,包括以下步骤:
s101、采用无人驾驶车辆的固定式摄像头拍摄拍摄行车方向前方地面上一个边长为lcm正方形二维码图案的图像。本实施例中,摄像头的分辨率为1024*768,但不以此为限。根据图像建立坐标系,坐标系原点为矩形的图像的一角,矩形的图像的坐标系原点是图像的左下角,自原点向右为x轴的延展方向,自原点向上为y轴的延展方向。因透视形变为梯形的正方形二维码图案的四角的坐标分别为(x1,y1)、(x2,y2)、(x3,y3)和(x4,y4);
设第一矩阵
设图像的每一个像素对应1cm,正方形二维码图案的四角在俯视状态下的坐标分别为(-0.5l,l)、(0.5l,l)、(0.5l,2l)和(-0.5l,2l);
则建立对应俯视状态的第二矩阵
根据第一矩阵a和第二矩阵b获得变换矩阵m,m=(ata)-1atb。
s102、在行车线路上设置多个正方形二维码图案,所有正方形二维码图案都的尺寸相同。并建立每个二维码图案与该二维码图案的定位坐标信息的映射关系表。在一个优选方案中,交换步骤s101和步骤s102的顺序,但不以此为限。
s103、使用无人驾驶车辆的摄像头拍摄行驶方向的当前图像,采集当前图像中的二维码图案,将图像中的二维码图案拉伸形变为正方形二维码图案。
s104、判断当前图像中的二维码图案是否命中映射关系表中的一个,若是,则执行步骤s105,若否,则返回步骤s103。
s105、根据当前图像建立坐标系,坐标系的原点是当前图像的左下角,自原点向右为x轴的延展方向,自原点向上为y轴的延展方向。当前图像中因透视形变为梯形的正方形二维码图案的四角的坐标分别为(x5,y5)、(x6,y6)、(x7,y7)和(x8,y8);
设当前矩阵
获得俯视矩阵
s106、根据步骤s105中得到的无人驾驶车辆与当前图像中二维码图案的距离,以及当前图像中正方形二维码图案的定位坐标信息获得无人驾驶车辆的当前坐标。
s107、判断无人驾驶车辆是否到达目标坐标,若是,则执行步骤s109,若否,则执行步骤s108。
s108、对比无人驾驶车辆的当前坐标和目标坐标进行油门或刹车。本实施例中,步骤s108中包括以下步骤:
s1081、采集无人驾驶车辆的当前车速vt。
s1082、计算目标加速度
s1083、利用差分法计算车辆当前实际的加速度,其中vt为当前车辆的速度,vt-1为上一个时刻车辆的速度,两次采样数据之间的时间间隔为δt:
s1084、计算当前目标加速度an和实际加速度ar之间的差。
s1085、计算当前所需的油门和刹车值:
s109、结束。
本发明的目的在于提供无人驾驶车辆对位方法能够通过自动化的方式精确行驶到目标坐标,并且在自动化港口实现集卡与桥吊、龙门吊的高精度对位,从而节约时间,提高整体运行效率。
图2至7是本发明的无人驾驶车辆对位方法实施过程的示意图。通过图2至图7来具体介绍本发明的实施过程。
如图2所示,在行车线路上设置边长为200cm正方形二维码图案2,所有正方形二维码图案2都的尺寸相同。并建立每个二维码图案与该二维码图案的定位坐标信息的映射关系表。本发明中的无人驾驶车辆1的前部设有固定式摄像头11,为了保证图像变形的准确定,优选的摄像头11是不可转动地,并且固定焦距的,智能拍摄无人驾驶车辆1前方的预设范围的图像。
如图3所示,正方形二维码图案2,与摄像头11间距200cm。虽然二维码图案实际上是正方形的,但是在摄像头11的拍摄的图像中会发生变形,图像中的二维码图案2变为梯形,靠近所述摄像头11变为梯形的一条长边,远离所述摄像头11变为梯形的一条短边,两侧的两条边分别倾斜形成梯形的两条斜边。
如图4所示,摄像头11的分辨率为1024*768,根据图像建立坐标系,将分辨率为1024*768的图像31的左下角设为原点,自原点向右为x轴的延展方向,自原点向上为y轴的延展方向。设图像的每一个像素对应1cm,测得因透视形变为梯形的正方形二维码图案32的四角的坐标(x1,y1)、(x2,y2)、(x3,y3)和(x4,y4)分别为(446,240),(982,235),(857,511)和(610,513)。
设第一矩阵
如图5所示,图像33中的正方形二维码图案34的四角在俯视状态下的坐标分别为(-100,200)、(100,200)、(100,400)和(-100,400),正方形二维码图案的边长为200个像素,正方形二维码图案2的边长为200cm,那么正方形二维码图案34的中心点到原点o的距离200个像素,就等于无人驾驶车辆1与当前图像中二维码图案的距离200cm的数值。
则建立对应俯视状态的第二矩阵
根据第一矩阵a和第二矩阵b获得变换矩阵m,
求得的变换矩阵m可以用于将图像31中的因透视形变为梯形的正方形二维码图案32拉伸变形到图像33中的正方形二维码图案34
如图6所示,无人驾驶车辆行驶于设有正方形二维码图案2的行车线路。使用无人驾驶车辆1的摄像头11拍摄行驶方向的当前图像,采集当前图像41中的二维码图案42,将图像41中的二维码图案42拉伸形变为正方形二维码图案44。
判断当前图像41中的二维码图案44是否命中映射关系表中的一个,若是,则根据当前图像建立坐标系,坐标系的原点是当前图像的左下角,自原点向右为x轴的延展方向,自原点向上为y轴的延展方向。当前图像中因透视形变为梯形的正方形二维码图案2的四角的坐标分别为(x5,y5)、(x6,y6)、(x7,y7)和(x8,y8);
设当前矩阵
获得俯视矩阵
如图7所示,从而可以得到图像41中的二维码图案44的坐标分别为(x9,y9)、(x10,y10)、(x11,y11)和(x12,y12)。则二维码图案44的中心的坐标为
根据距离scm,以及当前图像中正方形二维码图案2的定位坐标信息获得无人驾驶车辆1的当前坐标。例如:无人驾驶车辆1行驶在行车线路上,行车线路的正方形二维码图案2的定位坐标信息(p,q),所以,此时,无人驾驶车辆1就位于与定位坐标(p,q)距离scm的行车线路上。
有了准确的定位信息后,就能对车辆进行精确控制。判断无人驾驶车辆1是否到达目标坐标,若是,对比无人驾驶车辆1的当前坐标和目标坐标进行油门或刹车,可以包括以下步骤:
采集无人驾驶车辆1的当前车速vt;计算目标加速度
在一个优选方案中,在经过以上的流程以后,自动集卡能够行驶到对位点的附近,但是仍然存在一定的误差,存在一定概率无法满足对位的高精度要求,这是由于车辆本身行驶机构的误差造成的。此时,集卡自动开启精细对位模式,在这种模式下,集卡能够自动判断需要继续前进还是进行倒车操作。此时,控制器会给出一个恒定的油门值g,使车轮从静止状态变为滚动状态,当集卡的速度超过一个很小的门限值vl的时候,控制器会给出一个恒定的刹车值b,使集卡迅速停下。原理是通过集卡从静止状态变为运动状态的短暂瞬间,实现车辆的低速控制,通过这种方式,能够完成最后的高精度控制。恒定油门值和恒定刹车值可通过实际测试获得。反复这个过程,直到集卡能够停止在规定的距离范围内。本发明能够提供无人驾驶车辆1对位方法能够通过自动化的方式精确行驶到目标坐标,并且在自动化港口实现集卡与桥吊、龙门吊的高精度对位,从而节约时间,提高整体运行效率。
图8是本发明的无人驾驶车辆对位系统的模块示意图。如图8所示,本发明的实施例还提供一种无人驾驶车辆对位系统,用于实现上述的无人驾驶车辆对位方法,无人驾驶车辆对位系统9包括:
变换矩阵获得模块91,采用无人驾驶车辆的固定式摄像头拍摄拍摄行车方向前方地面上一个边长为lcm正方形二维码图案的图像;根据图像建立坐标系,坐标系原点为矩形的图像的一角,因透视形变为梯形的正方形二维码图案的四角的坐标分别为(x1,y1)、(x2,y2)、(x3,y3)和(x4,y4)。
设第一矩阵
映射关系建立模块92,在行车线路上设置多个正方形二维码图案,并建立每个二维码图案与该二维码图案的定位坐标信息的映射关系表。
图像拉伸形变使模块93,用无人驾驶车辆的摄像头拍摄行驶方向的当前图像,采集当前图像中的二维码图案,将图像中的二维码图案拉伸形变为正方形二维码图案。
第一判断模块94,判断当前图像中的二维码图案是否命中映射关系表中的一个,若是,则执行距离获得模块,若否,则返回图像拉伸形变使模块。
距离获得模块95,根据当前图像建立坐标系,当前图像中因透视形变为梯形的正方形二维码图案的四角的坐标分别为(x5,y5)、(x6,y6)、(x7,y7)和(x8,y8)。
设当前矩阵
坐标定位模块96,根据距离获得模块中得到的无人驾驶车辆与当前图像中二维码图案的距离,以及当前图像中正方形二维码图案的定位坐标信息获得无人驾驶车辆的当前坐标。
第一判断模块97,判断无人驾驶车辆是否到达目标坐标,若否,则执行驾驶输出模块。
驾驶输出模块98,对比无人驾驶车辆的当前坐标和目标坐标进行油门或刹车。
本发明的无人驾驶车辆对位系统能够通过自动化的方式精确行驶到目标坐标,并且在自动化港口实现集卡与桥吊、龙门吊的高精度对位,从而节约时间,提高整体运行效率。
本发明实施例还提供一种无人驾驶车辆对位设备,包括处理器。存储器,其中存储有处理器的可执行指令。其中,处理器配置为经由执行可执行指令来执行的无人驾驶车辆对位方法的步骤。
如上,本发明的无人驾驶车辆对位设备能够通过自动化的方式精确行驶到目标坐标,并且在自动化港口实现集卡与桥吊、龙门吊的高精度对位,从而节约时间,提高整体运行效率。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“平台”。
图9是本发明的无人驾驶车辆对位设备的结构示意图。下面参照图9来描述根据本发明的这种实施方式的电子设备600。图9显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图9所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同平台组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
其中,存储单元存储有程序代码,程序代码可以被处理单元610执行,使得处理单元610执行本说明书上述电子处方流转处理方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,处理单元610可以执行如图1中所示的步骤。
存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(rom)6203。
存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储平台等。
本发明实施例还提供一种计算机可读存储介质,用于存储程序,程序被执行时实现的无人驾驶车辆对位方法的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述电子处方流转处理方法部分中描述的根据本发明各种示例性实施方式的步骤。
如上所示,该实施例的计算机可读存储介质的程序在执行时,能够通过自动化的方式精确行驶到目标坐标,并且在自动化港口实现集卡与桥吊、龙门吊的高精度对位,从而节约时间,提高整体运行效率。
图10是本发明的计算机可读存储介质的结构示意图。参考图10所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
综上,本发明的无人驾驶车辆对位方法、系统、设备及存储介质,能够通过自动化的方式精确行驶到目标坐标,并且在自动化港口实现集卡与桥吊、龙门吊的高精度对位,从而节约时间,提高整体运行效率。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。