一种基于单目车载摄像头的周车测距方法和装置
技术领域
本发明涉及车载视觉定位技术领域,特别涉及一种基于单目车载摄像头的周车测距方法和装置。
背景技术
基于车载视觉定位周边车辆的方案有很多,其中,在无人驾驶中,多采用双目摄像头或者单目摄像头与毫米波/激光雷达融合的方式定位周边车辆。
使用双目摄像头或者单目摄像头与毫米波/激光雷达融合的方式定位周边车辆,可以较好的获取目标的深度信息,但是也增加了传感器和雷达测距应用的成本,另外使用双目摄像头时需要计算双目摄像头的两路图像,耗费双倍的计算资源,且双目摄像头的标定精度也会影响定位结果。
发明内容
有鉴于此,本发明的目的在于提供一种基于单目车载摄像头的周车测距方法和装置,能够以较低的成本定位周边车辆,并且保证定位结果准确性。
为了达到上述目的,本发明提供了如下技术方案:
一种基于单目车载摄像头的周车测距方法,包括:
对所述单目车载摄像头采集的周边图像进行车辆检测;
当在周边图像中检测到车辆时,确定该车辆的类别以及该车辆在周边图像中的位置信息;
根据该车辆的类别和该车辆在周边图像中的位置信息,确定该车辆与所述单目车载摄像头的距离。
一种基于单目车载摄像头的周车测距装置,包括:
检测单元,用于对所述单目车载摄像头采集的周边图像进行车辆检测;
确定单元,用于当检测单元在周边图像中检测到车辆时,确定该车辆的类别以及该车辆在周边图像中的位置信息;
测距单元,用于根据该车辆的类别和该车辆在周边图像中的位置信息,确定该车辆与所述单目车载摄像头的距离。
一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通过总线相连的存储器;所述存储器存储有可被所述至少一个处理器执行的一个或多个计算机程序;所述至少一个处理器执行所述一个或多个计算机程序时实现上述基于单目车载摄像头的周车测距方法步骤。
一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个计算机程序,所述一个或多个计算机程序被处理器执行时实现上述基于单目车载摄像头的周车测距方法。
由上面的技术方案可知,本发明中,对单目车载摄像头采集的周边图像进行车辆检测,当检测到车辆时,确定该车辆的类别以及该车辆在周边图像中的位置信息,并据此确定该车辆与单目车载摄像头的距离,该距离即为检测到的车辆与当前车辆的距离。应用本发明的方法,只需要使用单目车载摄像头就可以定位周边车辆,不需要传感器和雷达测距,因此成本较低,另外,本申请中的距离测算与摄像头的标定精度无关,因此不会因标定精度影响定位结果,可以保证定位结果的准确性。
附图说明
图1是本发明实施例基于单目车载摄像头的周车测距方法流程图;
图2是本发明实施例单目车载摄像头的距离测算关系示意图;
图3是本发明实施例基于单目车载摄像头的周车测距装置结构示意图;
图4是本发明实施例电子设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图并据实施例,对本发明的技术方案进行详细说明。
参见图1,图1是本发明实施例基于单目车载摄像头的周车测距方法流程图,如图1所示,该方法包括主要包括以下步骤:
步骤101、对单目车载摄像头采集的周边图像进行车辆检测。
本发明中,在车辆上部署单目摄像头,也即单目车载摄像头。使用单目车载摄像头对周边进行拍摄,对拍摄得到的周边图像进行车辆检测,如果该周边图像中没有车辆出现,则继续对单目车载摄像头拍摄的下一帧周边图像进行车辆检测,如果周边图像中有车辆出现,则可以检测出周边图像中的所有车辆。对周边图像的车辆检测,采用现有图像分析方法即可。
步骤102、当在周边图像中检测到车辆时,确定该车辆在周边图像中的位置信息以及该车辆的类别。
车辆有多种类别,每个车辆都有确定的分类。当在周边图像中检测到车辆时,需要对该车辆进行分析,确定车辆类别和在周边图像中的位置信息,以用于后续的距离测算。
本发明实施例中,预先生成用于检测车辆类别的检测模型。当在周边图像中检测到车辆时,确定该车辆在周边图像中的包围框(bounding box),将该包围框区域作为该车辆图像,使用该检测模型对该车辆图像进行检测,确定该车辆类别。确定该车辆在周边图像中的包围框的方法可以采用现有图像处理方法确定。
需要说明的是,车辆的bounding box为一矩形区域,可以用该矩形区域在以周边图像的左上角为原点的二维坐标系中的左上角坐标和右下角坐标限定bounding box的位置信息。本发明中,将车辆在周边图像中的bounding box的位置信息作为该车辆在周边图像中的位置信息。
这里,以周边图像的左上角为原点的二维坐标系(U,V)如图2所示,为以周边图像的水平方向U和垂直方向V作为二维图像的坐标轴,车辆的bounding box的左上角坐标为(u1,v1),右下角坐标为(u2,v2),另外,周边图像的中心点坐标为(u0,v0)。其中,周边图像的中心点坐标为(u0,v0)是确定的,另外,该车辆在周边图像中的包围框确定之后,其左上角坐标(u1,v1)和右下角坐标(u2,v2)均已确定,因此,三个坐标点(u0,v0)、(u1,v1)、(u2,v2)均作为已知数据参与后续提到的公式一至公式六的计算。
另外,图2中还有以单目车载摄像头为原点的三维坐标系(X,Y,Z),此三维坐标系(X,Y,Z)中的三个维度与上述二维坐标系(U,V)的2个维度是不同的,后续会进行说明。
为了生成上述用于检测车辆类别的检测模型,需要针对每种类型的车辆,收集标注有该车辆类别的多个车辆图像。收集大量标注有车辆类别的大量车辆图像之后,可以对收集的所有类型的车辆图像进行深度学习,从而生成可用于检测车辆类别的检测模型。
步骤103、根据该车辆在周边图像中的位置信息和该车辆的类别,确定该车辆与所述单目车载摄像头的距离。
在实际应用中,每种类别的车辆,其高度是行业标准或国家标准限定的,确定了车辆的类别之后,就可以根据车辆的类别确定车辆的高度。
确定了车辆的高度之后,可以根据该车辆的高度和该车辆在周边图像中的位置信息,确定该车辆在以所述单目车载摄像头为原点的三维坐标系中的中心位置信息,进而根据该车辆在在以所述单目车载摄像头为原点的三维空间坐标系中的中心位置信息确定该车辆与所述单目车载摄像头的距离。
这里,以所述单目车载摄像头为原点的三维坐标系(X,Y,Z)如图2所示,该三维坐标系中的坐标(xi、yi,zi)与以单目车载摄像头拍摄的周边图像的左上角为原点的二维坐标系中的坐标(ui,vi)具有以下关系公式:
上述关系公式中,f是单目车载摄像头拍摄周边图像时的焦距;dx是周边图像中x轴方向上的相邻像素之间的距离在所述单目车载摄像头的成像器件中对应的物理尺寸,使用公式
计算得到,其中fx是所述单目车载摄像头在x轴方向上的像素焦距;dy是周边图像中y轴方向上的相邻像素之间的距离在所述单目车载摄像头的成像器件中对应的物理尺寸,使用公式
计算得到,其中fy是所述单目车载摄像头在y轴方向上的像素焦距。
根据上述关系公式,可以推算出该车辆在周边图像中的包围框的左上角坐标(u1,v1)在以所述单目车载摄像头为原点的三维坐标系中对应的三维坐标(x1、y1,z1)的相关计算公式,以及该车辆在周边图像中的包围框的右上角坐标(u2,v2)在以所述单目车载摄像头为原点的三维坐标系中对应的三维坐标(x2、y2,z2)的相关计算公式。
其中,
该车辆在周边图像中的包围框的左上角坐标(u1,v1)在以所述单目车载摄像头为原点的三维坐标系中对应的三维坐标(x1、y1,z1)的相关计算公式如下:
这里的H是该车辆的高度。
该车辆在周边图像中的包围框的右上角坐标(u2,v2)在以所述单目车载摄像头为原点的三维坐标系中对应的三维坐标(x2、y2,z2)的相关计算公式如下:
基于以上公式,根据该车辆的高度和该车辆在周边图像中的位置信息,确定该车辆在以所述单目车载摄像头为原点的三维坐标系中的中心位置信息的方法具体如下:
将周边图像的中心点在以周边图像中的左上角为原点的二维坐标系中的坐标记为(u0,v0);
使用以下上述公式一、二、三计算该车辆在周边图像中的的包围框的左上角坐标(u1,v1)在以所述单目车载摄像头为原点的三维坐标系中对应的三维坐标(x1、y1,z1):
使用上述公式四、五、六计算该车辆在周边图像中的包围框的右上角坐标(u2,v2)在以所述单目车载摄像头为原点的三维坐标系中对应的三维坐标(x2、y2,z2);
最后,再使用以下三个公式计算该车辆在以所述单目车载摄像头为原点的三维坐标系中的中心位置坐标(x,y,z):
以上对本发明实施例目车载摄像头的周车测距方法进行了详细说明,本发明还提供了一种目车载摄像头的周车测距装置,以下结合图3进行详细说明。
参见图3,图3是本发明实施例基于单目车载摄像头的周车测距装置的结构示意图,如图3所示,该装置包括:
检测单元301,用于对所述单目车载摄像头采集的周边图像进行车辆检测;
确定单元302,用于当检测单元301在周边图像中检测到车辆时,确定该车辆的类别以及该车辆在周边图像中的位置信息;
测距单元303,用于根据该车辆的类别和该车辆在周边图像中的位置信息,确定该车辆与所述单目车载摄像头的距离。
图3所示装置还包括生成单元304;
所述生成单元304,用于预先生成用于检测车辆类别的检测模型;
所述确定单元302,确定该车辆的类别时,用于:将该车辆在周边图像中的包围框区域作为该车辆图像,使用所述检测模型对该车辆图像进行检测,确定该车辆的类别。
图3所示装置还包括收集单元305;
所述收集单元305,用于预先针对每种类别的车辆,收集标注了车辆类别的多个车辆图像;
所述生成单元304,用于使用深度学习算法对收集单元收集的所有车辆图像进行训练,得到用于检测车辆类别的检测模型。
图3所示装置还包括配置单元306;
所述配置单元306,用于预先设定车辆类别和车辆高度的对应关系;
所述测距单元,根据该车辆的类别和该车辆在周边图像中的位置信息,确定该车辆与所述单目车载摄像头的距离,包括:
根据该车辆的类别和所述对应关系,确定该车辆的高度;
根据该车辆的高度和该车辆在周边图像中的位置信息,确定该车辆在以所述单目车载摄像头为原点的三维坐标系中的中心位置信息;
根据该车辆在在以所述单目车载摄像头为原点的三维空间坐标系中的中心位置信息确定该车辆与所述单目车载摄像头的距离。
图3所示装置中,
车辆在周边图像中的位置信息包括该车辆图像所覆盖的矩形区域在周边图像中的左上角坐标和右下角坐标;
所述测距单元303,根据该车辆的高度和该车辆在周边图像中的位置信息,确定该车辆在以所述单目车载摄像头为原点的三维坐标系中的中心位置信息,包括:
将周边图像的中心点在以周边图像中的左上角为原点的二维坐标系中的坐标记为(u0,v0);
使用以下三个公式计算所述左上角坐标(u1,v1)在以所述单目车载摄像头为原点的三维坐标系中对应的三维坐标(x1、y1,z1):
使用以下三个公式计算所述右上角坐标(u2,v2)在以所述单目车载摄像头为原点的三维坐标系中对应的三维坐标(x2、y2,z2):
使用以下三个公式计算该车辆在以所述单目车载摄像头为原点的三维坐标系中的中心位置坐标(x,y,z):
其中,H是该车辆的高度;f是单目车载摄像头拍摄周边图像时的焦距;dx是周边图像中x轴方向上的相邻像素之间的距离在所述单目车载摄像头的成像器件中对应的物理尺寸,使用公式
计算得到,其中fx是所述单目车载摄像头在x轴方向上的像素焦距;dy是周边图像中y轴方向上的相邻像素之间的距离在所述单目车载摄像头的成像器件中对应的物理尺寸,使用公式
计算得到,其中fy是所述单目车载摄像头在y轴方向上的像素焦距。
本发明实施例还提供了一种电子设备400,包括:至少一个处理器401,以及与所述至少一个处理器401通过总线相连的存储器402;所述存储器402存储有可被所述至少一个处理器401执行的一个或多个计算机程序;所述至少一个处理器401执行所述一个或多个计算机程序时实现如图1所示的方法步骤。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个计算机程序,所述一个或多个计算机程序被处理器执行时实现如图1所示的方法。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。