一种面向路侧感知的标注数据预处理方法与流程

专利2022-05-09  1


本发明涉及图像处理
技术领域
,尤其涉及一种面向路侧感知的标注数据预处理方法。
背景技术
:在当前大部分的自动驾驶或者车路协同场景中,相机采集回来的数据常常经过h264压缩进行保存,并且这部分数据是没有去除畸变的。这部分采集回来的数据需要解压缩、去畸变处理后才能用来作为训练相关检测、分割模型的训练数据,所以需要进行标注数据预处理。标注数据预处理流程目前普遍采用如下两种方案来解决:(1)在无人车行使的过程中抽样保存用于本身检测模型的图像;(2)离线启动自动驾驶相关算法,播放所采集的数据,模拟无人车行驶过程中算法运行的情况,将其中用于检测模型的图像全部保存下来。上述两种方案使用场景有所不同,所带来的问题和不足也有所不同:方案(1)主要受到两点限制。首先在无人车形式的过程中保存所需要的数据需要占用无人车计算节点的cpu、内存、io的资源,会降低无人车处理自身任务的频率,可能会由于计算资源不够造成无人车接管现象;其次无人车的存储空间有限,一方面限制了可以保存最多的数量,另一方面会造成存储满了而引发自动驾驶系统异常退出。方案(2)虽然可以离线运行,但是方法过于复杂,只需要提取图像,却执行到了后面的检测算法和控制算法部分,浪费资源;而且将所有的程序都运行起来会造成处理的频率低。比如说原始数据是60hz,但是算法执行起来只有20hz,那么就造成处理得到的数据最多只有20hz,降低了原始数据的频率。技术实现要素:为解决现有技术存在的局限和缺陷,本发明提供一种面向路侧感知的标注数据预处理方法,包括:在路侧设置多个摄像机;获得所述摄像机的相机图像以及对应的时间戳;对所述相机图像进行解压缩;将预设摄像机的预设时间戳的相机图像设置为基准图像,所述基准图像对应的时间戳为基准时间戳,所述基准图像对应的摄像机为基准摄像机;判断是否存在时间戳对齐的相机图像,所述时间戳对齐的相机图像满足如下条件:所述基准时间戳与其它摄像机的相机图像的时间戳之间的时间戳差值最小,而且所述时间戳差值的最大值小于对应的预设阈值;若判断结果为存在所述时间戳对齐的相机图像,删除各个摄像机之中的落后相机图像,所述落后相机图像的时间戳落后于所述时间戳对齐的相机图像之中对应相机图像的时间戳;若判断结果为不存在所述时间戳对齐的相机图像,判断所述基准时间戳是否落后于所有其它摄像机的最新时间戳;若判断结果为所述基准时间戳落后于所有其它摄像机的最新时间戳,删除所述基准图像,同时将所述基准时间戳之后的时间戳设置为新的基准时间戳,将新的基准时间戳对应的相机图像设置为新的基准图像;或者若判断结果为不存在所述时间戳对齐的相机图像,判断是否存在某个摄像机的时间戳落后于所述基准时间戳;若判断结果为存在某个摄像机的时间戳落后于所述基准时间戳,删除该摄像机落后的时间戳对应的相机图像;使用镜像畸变公式对所述相机图像进行去畸变处理,表达式如下:其中k1,k2,k3为径向畸变系数为到图像中心的距离。对去畸变处理之后的相机图像使用jpeg格式进行压缩;保存压缩之后的图像。可选的,所述对所述相机图像进行解压缩的步骤包括:对不同的摄像机的相机图像进行串行解压缩处理,或者同时对所有的摄像机的相机图像进行并行解压缩处理。可选的,所述径向畸变系数k1、k2、k3通过张正友标定法进行标定。本发明具有下述有益效果:本发明提供一种面向路侧感知的标注数据预处理方法,获得所述摄像机的相机图像以及对应的时间戳,对所述相机图像进行解压缩,对所述相机图像进行时间戳对齐处理,对经过时间戳对齐处理之后的相机图像进行去畸变处理,对经过去畸变处理之后的相机图像进行压缩,对经过压缩之后的相机图像进行保存。本发明提供的面向路侧感知的标注数据预处理方法是一种离线处理的方法,不会占用无人车的任何资源,从而可以保障无人车运行过程中的安全。附图说明图1为本发明实施例一提供的路侧感知的部署方案示意图。图2为本发明实施例一提供的面向路侧感知的标注数据预处理方法的流程图。图3为本发明实施例一提供的时间戳对齐操作示意图。具体实施方式为使本领域的技术人员更好地理解本发明的技术方案,下面结合附图对本发明提供的面向路侧感知的标注数据预处理方法进行详细描述。实施例一图1为本发明实施例一提供的路侧感知的部署方案示意图。如图1所示,在路侧感知的部署方案中,往往同时部署了多个摄像机,比如在高速场景下。在一个区域中存在多个相机,这些相机之间存在重叠区域,在后期使用的时候,比如对多个相机的检测结果进行融合跟踪,需要保证用于跟踪融合的、来自各个相机图像是在同一时刻或者近似同一时刻成像得到的。然而在实际成像的过程中,各个相机没有办法保证在同一时刻成像,因此需要在后期进行时间戳对齐操作。本实施例提供的面向路侧感知的标注数据预处理方法是一种离线处理的方法,不会占用无人车的任何资源,从而可以保障无人车运行过程中的安全。本实施例提供一种面向路侧感知的标注数据预处理方法,包括:在路侧设置多个摄像机;获得所述摄像机的相机图像以及对应的时间戳;对所述相机图像进行解压缩;将预设摄像机的预设时间戳的相机图像设置为基准图像,所述基准图像对应的时间戳为基准时间戳,所述基准图像对应的摄像机为基准摄像机。判断是否存在时间戳对齐的相机图像,所述时间戳对齐的相机图像满足如下条件:所述基准时间戳与其它摄像机的相机图像的时间戳之间的时间戳差值最小,而且所述时间戳差值的最大值小于对应的预设阈值;若判断结果为存在所述时间戳对齐的相机图像,删除各个摄像机之中的落后相机图像,所述落后相机图像的时间戳落后于所述时间戳对齐的相机图像之中对应相机图像的时间戳。可选的,若判断结果为不存在所述时间戳对齐的相机图像,判断所述基准时间戳是否落后于所有其它摄像机的最新时间戳;若判断结果为所述基准时间戳落后于所有其它摄像机的最新时间戳,删除所述基准图像,同时将所述基准时间戳之后的时间戳设置为新的基准时间戳,将新的基准时间戳对应的相机图像设置为新的基准图像。可选的,若判断结果为不存在所述时间戳对齐的相机图像,判断是否存在某个摄像机的时间戳落后于所述基准时间戳;若判断结果为存在某个摄像机的时间戳落后于所述基准时间戳,删除该摄像机落后的时间戳对应的相机图像。本实施例提供的面向路侧感知的标注数据预处理方法是一种离线处理的方法,不会占用无人车的任何资源,从而可以保障无人车运行过程中的安全。本实施例使用镜像畸变公式对所述相机图像进行去畸变处理,表达式如下:其中k1,k2,k3为径向畸变系数为到图像中心的距离。对去畸变处理之后的相机图像使用jpeg格式进行压缩;保存压缩之后的图像。本实施例中,所述对所述相机图像进行解压缩的步骤包括:对不同的摄像机的相机图像进行串行解压缩处理,或者同时对所有的摄像机的相机图像进行并行解压缩处理。所述径向畸变系数k1、k2、k3通过张正友标定法进行标定。图2为本发明实施例一提供的面向路侧感知的标注数据预处理方法的流程图。如图2所示,本实施例提出了完整的标注数据预处理流程,首先对图像进行解压缩,在经过时间戳对齐操作之后再对图像进行去畸变,最后压缩为jpeg模型进行保存。需要注意的是,在上面的流程中,在解压缩的过程中可以对不同的摄像机进行串行处理,也可以同时对所有的摄像机进行并行处理。首先是解压缩部分,原始图像采用h264进行压缩,h264是目前视频流一种常用的压缩算法,直接采用对应的解压缩算法即可。图3为本发明实施例一提供的时间戳对齐操作示意图。如图3所示,在时间戳对齐的过程中,对于到达时间戳处理函数的每个摄像机的图像。同一个摄像机的图像肯定是按照成像时间的先后顺序获取得到的,不同摄像机的图像之间的时间戳存在多多少少的偏差。本实施例取t11时刻的摄像机1的图像作为基准,在摄像机2、摄像机3、摄像机4中找出与t11时刻的时间戳相差最小的那一帧图像,并且摄像机1与摄像机2、摄像机3、摄像机4对应帧时间戳差值的最大值小于对应的阈值。如果找到了满足上述条件的一组图像,则认为找到了一组时间戳对齐的数据,将他们进行后续的去畸变处理,同时将这些图片,以及各摄像机比他们时间戳更落后的帧删掉。如果没找到,则分两种情况进行处理,第一种情况:如果t11时刻落后于所有剩余所有相机最新的时间戳,将t11时刻的摄像机1的图像删掉,开始处理t12时刻的摄像机1的图像。第二种情况:如果存在某个摄像机的时间戳落后于t11时刻,则删掉该摄像机的落后那帧的图像。本实施例提供去畸变过程。在客观世界中,相机的成像往往不是理想的小孔成像模型,镜头的畸变会导致成像的畸变。在相机去畸变的过程中常常只考虑镜像畸变,其表达式如下:其中k1,k2,k3为径向畸变系数为到图像中心的距离。其中,k1、k2、k3可以通过张正友标定法进行标定,获取这三个值之后带入到上式即可得到去除畸变之后的图像。本实施例将去除畸变的图像进行jpeg压缩,jpeg也是目前常用的压缩工具,直接采用对应的解压缩算法即可,最后将处理完的图像保存即可。本实施例中,应用环境和使用不使用该方法造成的区别:主要用于需要多相机障碍物融合使用。多障碍物融合是指,将多个相机看到的通过一个区域中的障碍物进行融合,比如摄像机1看到一个辆车,通过程序计算,估计出它在世界坐标系下的(x1,y1)的位置,摄像机2也看到了这个车,通过程序计算,估计出它在世界坐标系下的(x2,y2)的位置。可以根据(x1,y1)和(x2,y2)利用卡尔曼滤波器进行位置融合,但前提必须保证两者在同一个时刻,即所谓的时间戳对齐。本实施例提供的标注数据在标注的过程中,如果在不同的摄像机下发现了同一辆车,则需要标注为同一个全局id,同时这个id要对应一个全局时间戳,只有当不同的摄像机之间的时间戳是对齐的,这种标注才有意义。否则摄像机1是当前的位置,摄像机2是一小时前的位置,全局时间戳是没有意义的。本实施例提供的技术方案具有巨大的经济收益。如果在无人车进行相关处理需要额外增加一块128gssd硬盘和4g内存以及intelxeonsilver4108cpu或者对标配置。目前无人车计算资源紧张,为保证自动驾驶正常进行,无法复用本身的计算及存储资源。本实施例的实验条件如下:cpu:intelxeonsilver41081.8ghz8核,memory:32gb,1t硬盘。目前cpu占用率在70%,内存占用率在50%。但是cpu在使用率超过70%后会造成模块之间相互争抢计算资源,进而造成计算节点频率降低,从15hz下降至5hz。本实施例提供的技术方案具有极快的运算速度,尤其是在gpu上进行处理,可以保证算法执行的速度远高于数据存储的频率,保证数据在于处理过程中不会丢帧。以下的实验均以1920*1080大小为例,如表1和表2所示:表1解压缩速度cpu单线程cpu2线程cpu4线程cpu8线程gpu49.8ms26.2ms15.7ms10.9ms2.03ms可以发现,使用多线程进行数据解压缩可以计算平均单帧的处理速度,但是当处理线程数与cpu核心数越来越接近的时候,平均处理速度变慢,主要由于同时支持其他后台运行的程序,计算资源紧张,造成边缘效益递减。gpu由于本身的并行体系架构,并行处理能力很强,速度很快。表2去畸变速度cpu单线程cpu2线程cpu4线程cpu8线程gpu40.2ms22.4ms13.7ms8.9ms1.1ms可以看出,整体实验结果与“解压缩速度”的实验结果类似,cpu并行会加速,随着线程数量的增加,处理速度会出现边缘效应递减的情况,gpu处理速度极快。本实施例提供的技术方案通过一键方法,提升了数据预处理的自动化程度。传统方法中,需要进行解压缩、时间戳对齐、去畸变、压缩为jpg四个手工直行步骤,现在统一为一个端到端步骤,降低手工处理步骤75%。连续处理10个文件,采用“分4步处理”和“一键式处理”两种方式,统计处理过程中处理一个文件所花费的手工执行时间。分4步处理:约6分10秒,主要时间花费在配置对应程序的执行环境和手动敲命令上;一键式处理:约30秒,一键式直行所有程序,并自动配置所有执行环境。本实施例提供一种面向路侧感知的标注数据预处理方法,获得所述摄像机的相机图像以及对应的时间戳,对所述相机图像进行解压缩,对所述相机图像进行时间戳对齐处理,对经过时间戳对齐处理之后的相机图像进行去畸变处理,对经过去畸变处理之后的相机图像进行压缩,对经过压缩之后的相机图像进行保存。本实施例提供的面向路侧感知的标注数据预处理方法是一种离线处理的方法,不会占用无人车的任何资源,从而可以保障无人车运行过程中的安全。可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。当前第1页12
转载请注明原文地址: https://doc.8miu.com/read-150015.html

最新回复(0)