一种基于事件相机消除背景噪声的方法及系统与流程

    专利2022-07-08  199


    本发明属于事件相机脉冲数据处理技术领域,特别涉及一种基于事件相机消除背景噪声的方法及系统。



    背景技术:

    目前相机已经在道路级车辆违法行为抓拍、家庭老人/幼儿看护、人脸识别、高速/空抛物等领域得到广泛应用。但是当前基于曝光的视觉相机仍然存在以下若干实际问题:高延迟性、低动态范围、运动模糊现象等。

    这些问题的存在导致将视觉相机应用于道路级车辆违法行为抓拍、高速/空抛物、无人自动驾驶等高速领域存在难以逾越的技术鸿沟。因此一种仿生的动态视觉传感器(dvs,dynamicvisionsensor,以下用“事件相机”来代替)应运而生。事件相机的核心部件是动态视觉传感器,外加镜头和电源接口等外设组成。事件相机仅接收光强的变化异步输出脉冲事件(异步指不需要共同的时钟,只要有光强变化就产生脉冲,传统视觉相机需要共同曝光时间成帧,是同步帧),因此当场景静止不动时无脉冲事件产生,只有当环境发生变化时才输出脉冲事件。事件相机具有高实时响应、高动态范围、低功耗、无运动模糊现象等优点。

    正是由于这些区别于传统视觉相机的优点,使得事件相机非常适用于捕获和分析目标高速运动的场景,如自动驾驶、高速/空抛物检测。

    然而,应用于自动驾驶和高速/空抛物等行为分析时,恶劣环境的干扰是不得不重点考虑的问题(如雨雪天气)。事件相机输出的是离散脉冲串,受雨雪天气的影响,除捕获正常运动目标的脉冲数据之外,还会生成大量的脉冲干扰数据,若不去除这些干扰项会对后续的行为分析和决策造成负面影响。而基于事件相机输出的离散脉冲串进行背景噪声消除,是一个极具挑战性的问题。



    技术实现要素:

    本申请的目的是提供一种基于事件相机消除背景噪声的方法及系统,旨在保证运动目标事件流信息完整性的基础上,提高消除背景噪声的效果。

    为了实现上述目的,本申请技术方案如下:

    一种基于事件相机消除背景噪声的方法,所述基于事件相机消除背景噪声的方法,包括:

    基于事件相机采集仅含运动目标的事件流数据,作为目标事件流数据;

    基于事件相机采集仅含背景噪声的事件流数据,作为噪声事件流数据;

    按照事件流数据中的时间分布,将所述噪声事件流数据插值到所述目标事件流数据中,得到合成事件流数据;

    将所述目标事件流数据、噪声事件流数据、合成事件流数据分别编码表征为目标网格图像、噪声网格图像、合成网格图像;

    构建端到端的cnn神经网络,所述cnn神经网络的输入为合成网格图像,所述cnn神经网络的输出定义为预测的噪声网格图像;

    利用所述目标网格图像、噪声网格图像、合成网格图像训练所述cnn神经网络,直至得到最佳的网络参数;

    获取待处理的事件流数据编码表征为待处理网格图像,所述待处理的事件流数据为基于事件相机采集包含运动目标和背景噪声的事件流数据;

    将所述待处理网格图像输入至运行最佳网络参数的cnn神经网络中,得到预测的噪声网格图像;

    利用所述预测的噪声网格图像消除所述待处理网格图像中的背景噪声,得到消除背景噪声后的网格图像。

    作为优选,所述按照事件流数据中的时间分布,将所述噪声事件流数据插值到所述目标事件流数据中,得到合成事件流数据,包括:

    所述事件流数据的形式为[n*4]矩阵,其中n为离散脉冲的数量,4表示离散脉冲的维度,其中4维离散脉冲为离散的(x,y,p,t)数据,x,y表示脉冲事件的发生位置,对应图像中像素点坐标,p表示脉冲事件的极性(光强变强时输出正极性1,光强变暗时输出负极性-1),t表示脉冲事件发生的时间;

    将所述目标事件流数据中的4维离散脉冲按照时间先后顺序进行排序;

    对于所述噪声事件流数据中的每一4维离散脉冲,按照4维离散脉冲中的时间t的大小,将噪声事件流数据中的每一4维离散脉冲插入排序后的目标事件流数据中。

    作为优选,所述将目标事件流数据、噪声事件流数据、合成事件流数据分别编码表征为目标网格图像、噪声网格图像、合成网格图像,包括:

    所述网格图像为三通道网格图像,则将事件流数据编码表征为网格图像包括:

    构建三通道网格图像的第一通道:选取设定时间δt内,像素位置(x,y)处累积发生的脉冲事件的次数表征为网格图像输入的第一通道,张量表示为c[0]=[batch,width,height,1];

    构建三通道网格图像的第二通道:在设定时间δt内,像素位置(x,y)处发生脉冲事件的最近时间,最近时间归一化后表征为网格图像输入的第二通道,张量表示为c[1]=[batch,width,height,1];

    构建三通道网格图像的第三通道:采用0-1极性编码作为网格图像输入的第三通道,在设定时间δt内,若像素位置(x,y)处有脉冲时间发生,则赋予正极性值为1,否则赋为0,张量表示为c[2]=[batch,width,height,1];

    合并三个通道得到三通道网格图像的张量表示为[batch,width,height,channel],其中channel表示通道数,且channel=3。

    作为优选,所述端到端的cnn神经网络,包括卷积层、激活层和批规范化层。

    作为优选,所述利用所述目标网格图像、噪声网格图像、合成网格图像训练所述cnn神经网络,直至得到最佳的网络参数,包括:

    以一张合成网格图像以及与该合成网格图像相关的目标网格图像、噪声网格图像构成一组训练样本;

    构建损失函数为:

    其中,loss(γ)为损失函数,γ为网络参数,cnet表示合成网格图像,f(cnet,γ)表示在当前网络参数γ下cnn神经网络输出的预测的噪声网格图像,(cnet-f(cnet,γ))表示合成网格图像去除预测的噪声网格图像后的网格图像,anet表示目标网格图像,n表示训练样本的数量。

    本申请还提供一种基于事件相机消除背景噪声的系统,所述基于事件相机消除背景噪声的系统,包括:

    数据获取模块,用于基于事件相机采集仅含运动目标的事件流数据,作为目标事件流数据;基于事件相机采集仅含背景噪声的事件流数据,作为噪声事件流数据;

    数据合成模块,用于按照事件流数据中的时间分布,将所述噪声事件流数据插值到所述目标事件流数据中,得到合成事件流数据;

    编码表征模块,用于将所述目标事件流数据、噪声事件流数据、合成事件流数据分别编码表征为目标网格图像、噪声网格图像、合成网格图像;

    网络构建模块,用于构建端到端的cnn神经网络,所述cnn神经网络的输入为合成网格图像,所述cnn神经网络的输出定义为预测的噪声网格图像;

    网络训练模块,用于利用所述目标网格图像、噪声网格图像、合成网格图像训练所述cnn神经网络,直至得到最佳的网络参数;

    背景消除模块,用于获取待处理的事件流数据编码表征为待处理网格图像,所述待处理的事件流数据为基于事件相机采集包含运动目标和背景噪声的事件流数据;将所述待处理网格图像输入至运行最佳网络参数的cnn神经网络中,得到预测的噪声网格图像;利用所述预测的噪声网格图像消除所述待处理网格图像中的背景噪声,得到消除背景噪声后的网格图像。

    作为优选,所述按照事件流数据中的时间分布,将所述噪声事件流数据插值到所述目标事件流数据中,得到合成事件流数据,执行如下操作:

    所述事件流数据的形式为[n*4]矩阵,其中n为离散脉冲的数量,4表示离散脉冲的维度,其中4维离散脉冲为离散的(x,y,p,t)数据,x,y表示脉冲事件的发生位置,对应图像中像素点坐标,p表示脉冲事件的极性(光强变强时输出正极性1,光强变暗时输出负极性-1),t表示脉冲事件发生的时间;

    将所述目标事件流数据中的4维离散脉冲按照时间先后顺序进行排序;

    对于所述噪声事件流数据中的每一4维离散脉冲,按照4维离散脉冲中的时间t的大小,将噪声事件流数据中的每一4维离散脉冲插入排序后的目标事件流数据中。

    作为优选,所述将目标事件流数据、噪声事件流数据、合成事件流数据分别编码表征为目标网格图像、噪声网格图像、合成网格图像,执行如下操作:

    所述网格图像为三通道网格图像,则将事件流数据编码表征为网格图像包括:

    构建三通道网格图像的第一通道:选取设定时间δt内,像素位置(x,y)处累积发生的脉冲事件的次数表征为网格图像输入的第一通道,张量表示为c[0]=[batch,width,height,1];

    构建三通道网格图像的第二通道:在设定时间δt内,像素位置(x,y)处发生脉冲事件的最近时间,最近时间归一化后表征为网格图像输入的第二通道,张量表示为c[1]=[batch,width,height,1];

    构建三通道网格图像的第三通道:采用0-1极性编码作为网格图像输入的第三通道,在设定时间δt内,若像素位置(x,y)处有脉冲时间发生,则赋予正极性值为1,否则赋为0,张量表示为c[2]=[batch,width,height,1];

    合并三个通道得到三通道网格图像的张量表示为[batch,width,height,channel],其中channel表示通道数,且channel=3。

    作为优选,所述端到端的cnn神经网络,包括卷积层、激活层和批规范化层。

    作为优选,所述利用所述目标网格图像、噪声网格图像、合成网格图像训练所述cnn神经网络,直至得到最佳的网络参数,执行如下操作:

    以一张合成网格图像以及与该合成网格图像相关的目标网格图像、噪声网格图像构成一组训练样本;

    构建损失函数为:

    其中,loss(γ)为损失函数,γ为网络参数,cnet表示合成网格图像,f(cnet,γ)表示在当前网络参数γ下cnn神经网络输出的预测的噪声网格图像,(cnet-f(cnet,γ))表示合成网格图像去除预测的噪声网格图像后的网格图像,anet表示目标网格图像,n表示训练样本的数量。

    本申请提出的基于事件相机消除背景噪声的方法及系统,采集仅含运动目标的事件流数据和仅含背景噪声的事件流数据进行合并处理,克服实际情况下样本采集困难的问题;将事件相机输出的异步脉冲事件流通过编码表征成网格图像,与深度学习方法相结合,一方面利用深度学习强大的特征学习表达能力,另一方面充分利用了事件流数据的高时间分辨率和时序特性;利用神经网络输出背景噪声的分布,而并非直接输出去除背景噪声后的网格图像,利用此自监督方式,可以巧妙的利用现有数据制造标签样本数据,解决有监督学习对标签样本的采集困难问题。

    附图说明

    图1为本申请的基于事件相机消除背景噪声的方法的流程图;

    图2为本申请提供的一种端对端的cnn神经网络的结构示意图;

    图3为本申请实施例1中基于事件相机消除背景噪声的方法的流程图;

    图4为本申请实施例1中原始事件序列的示意图;

    图5a为本申请实施例1中仅含运动目标的网格图像;

    图5b为本申请实施例1中仅含背景噪声的网格图像;

    图5c为本申请实施例1中合成的网格图像;

    图5d为本申请实施例1中针对图5c采用本申请基于事件相机消除背景噪声的方法处理后的网格图像。

    具体实施方式

    为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅用以解释本申请,并不用于限定本申请。

    本申请提供的基于事件相机消除背景噪声的方法,能够高效消除事件相机输出的事件流数据中的背景噪声干扰,可应用于道路级车辆违法行为抓拍、高速/空抛物、无人自动驾驶等高速领域。

    由于事件相机针对运动物体进行捕捉,因此本文中提及的背景噪声可以是雨、雪、飞禽等干扰物。

    在一个实施例中,如图1所示,提供了基于事件相机消除背景噪声的方法,包括以下步骤:

    步骤s1、基于事件相机采集仅含运动目标的事件流数据,作为目标事件流数据。

    在事件相机采集过程中需要保持事件相机处于静止状态,以保证采集的事件流数据为针对运动目标采集的数据,由于事件相机输出的为离散的脉冲数据,因此事件流数据的形式可看作[n*4]矩阵,其中n为离散脉冲的数量,4表示离散脉冲的维度,其中4维离散脉冲为离散的(x,y,p,t)数据,x,y表示脉冲事件的发生位置,对应图像中像素点坐标,p表示脉冲事件的极性(光强变强时输出正极性1,光强变暗时输出负极性-1),t表示脉冲事件发生的时间。

    步骤s2、基于事件相机采集仅含背景噪声的事件流数据,作为噪声事件流数据。

    由于实际应用事件相机中,运动目标与背景噪声同时出现的概率较低,但是神经网络的训练需要一定量的样本数据,因此本实施例分别采集仅含运动目标的事件流数据以及仅含背景噪声的事件流数据,克服实际情况下样本采集困难的问题。同理,在采集过程中需要保持事件相机为静止状态。

    步骤s3、按照事件流数据中的时间分布,将噪声事件流数据插值到目标事件流数据中(即时间序列插值法),得到合成事件流数据。

    由于运动物体在不同时间下具有不同的位置,因此本实施例优选根据时间(t)分布对事件流数据进行合并,将某一监测时间内的噪声事件流数据和目标事件流数据进行合并。

    考虑到采集噪声事件流数据和目标事件流数据不一定同时进行,因此本实施例中在进行事件流数据的合并时,取不包含年月日的24小时制的时间进行按照时间分布的合并。并且可将24小时制的时间转化为秒为单位的数字,以便于直观比对时间先后。

    在一个实施例中,提供一种合并方式如下:

    将所述目标事件流数据中的4维离散脉冲按照时间先后顺序进行排序。

    对于所述噪声事件流数据中的每一4维离散脉冲,按照4维离散脉冲中的时间t的大小,将噪声事件流数据中的每一4维离散脉冲插入排序后的目标事件流数据中。

    由于排序实质上也是一个循环比较的过程,因此本实施例采用先排序后插值的方式,整体处理速度相对较快,当然也不仅限于该方式进行事件流数据的合并。在其他实施例中,还可以是先合并目标事件流数据和噪声事件流数据,然后按照时间先后顺序进行合并后事件流数据的排序;或者先对目标事件流数据和噪声事件流数据进行时间先后的排序后进行合并。

    步骤s4、将所述目标事件流数据、噪声事件流数据、合成事件流数据分别编码表征为目标网格图像、噪声网格图像、合成网格图像。

    由于事件相机中所有事件都是异步生成的离散脉冲,基于离散脉冲无法进行神经网络的训练,因此需要将离散脉冲表征成网格图像形式。而目前现有技术中没有较好的处理离散脉冲数据的方法,本申请为了保留事件流数据高时间分辨率和时序特性的前提下,提供一种编码表征的方法如下:

    将事件流数据表征为三通道网格图像,则需要根据事件流数据构建对应的三通道,得到每个像素位置的三通道数据后,将三通道数据映射至rgb三通道中,完成网格图像的构建。

    具体包括:构建三通道网格图像的第一通道:理论上时间δt内同一位置发生脉冲的次数越多,属于运动目标的可能性越大。基于此,选取设定时间δt内,像素位置(x,y)处累积发生的脉冲事件的次数表征为网格图像输入的第一通道,张量表示为c[0]=[batch,width,height,1]。

    构建三通道网格图像的第二通道:在网格图像中加入时间戳信息是具有挑战性的任务,而将非空间的时间信息编码到网格数据中是十分有用的。因此本实施例在设定时间δt内,像素位置(x,y)处发生脉冲事件的最近时间,最近时间归一化后表征为网格图像输入的第二通道,张量表示为c[1]=[batch,width,height,1]。虽然本质上丢弃了所有时间信息,但最近时间仍足以表征事件流中目标的移动。这里对最近时间的归一化基于预设时间δt内的最大时间和最小时间实现。

    构建三通道网格图像的第三通道:采用0-1极性编码作为网格图像输入的第三通道,在设定时间δt内,若像素位置(x,y)处有脉冲时间发生,则赋予正极性值为1,否则赋为0,张量表示为c[2]=[batch,width,height,1]。

    完成对每一像素位置的三通道构建后,按照rgb三通道的表示即可得到编码表征后的网格图像,最终得到的三通道网格图像的张量表示可为[batch,width,height,channel],其中channel表示通道数,且channel=3。

    为了得到对应的目标网格图像、噪声网格图像和合成网格图像,目标事件流数据、噪声事件流数据、合成事件流数据在进行编码表征时均取相同的时间段δt进行表征,得到的目标网格图像、噪声网格图像和合成网格图像具有关联性,每一段δt内的事件流数据编码表征得到一张对应的网格图像。

    步骤s5、构建端到端的cnn神经网络,所述cnn神经网络的输入为合成网格图像,所述cnn神经网络的输出定义为预测的噪声网格图像。

    本申请将异步事件流表征成网格图像形式后,与深度学习方法相结合,一方面利用深度学习强大的特征学习表达能力,另一方面充分利用了事件流数据的高时间分辨率和时序特性。

    本申请使用的端到端的cnn神经网络可以是现有公开的任意神经网络结构,由于cnn神经网络为基础网络结构,因此这里就不再一一详述。

    在另一实施例中,考虑到背景噪声的复杂性,如图2所示,提供一种端到端的cnn神经网络,包括卷积层、激活层和批规范化层。全程采用3*3大小卷积核,stride和padding都为(1,1)保证输入尺寸和输出一致;并且网络层数深度d对应的感受野大小为(2*d 1,2*d 1),为权衡网络性能和有效利用上下文信息,应设置合适的网络深度。

    本实施例采用的cnn神经网络的整体的网络结构优选为21层的卷积层累计,除了第一层和最后一层之外,中间每一层为conv2d、batchnormal、relu的叠加,总共是19层。首层为conv2d和relu,最后一层只有conv2d。conv2d全部采用kearnel_size=(3,3),stride=(1,1),padding=1的形式,使用这种形式的优点之一是在每一层conv2d之后,输出的特征图与输入保持相同的尺寸(1280,800)。值得注意的是网络的输出并非逐层forward之后最后一层的输出,而是将输入与最后一层输出的差进行输出。同时,这种差值结构也体现在损失函数中,也即损失函数为:含雨时间表征图像-去雨干净网格图像-真实无雨的表征图像差值平方,采用adam优化器,学习率设置为0.001。

    也就是说本实施例采用的cnn神经网络从输入侧至输出侧包括21层卷积层(conv2d),并且第1层卷积层的输出侧叠加有激活层(relu激活层),第2~20层卷积层的输出侧叠加有批规范化层(batchnormal)和激活层,并且cnn神经网络的输入与第21层卷积层的输出的差值作为cnn神经网络的输出。本实施例的cnn神经网络结构能有效利用上下文信息,感受野大小适宜,最终输出的预测结果准确度高。

    步骤s6、利用所述目标网格图像、噪声网格图像、合成网格图像训练所述cnn神经网络,直至得到最佳的网络参数。

    将步骤s5中编码表征后得到的具有关联性的每一目标网格图像、噪声网格图像和合成网格图像构建为一组网格图像对,以一组网格图像对作为一组训练样本。

    例如(anet,bnet,cnet),其中(anet,bnet,cnet)表示一组网格图像对,anet表示目标网格图像,bnet表示噪声网格图像,cnet表示合成网格图像。

    构建的网格图像对作为训练网络所需的样本和标签,以自监督方式解决有监督学习对标定样本的依赖,相对于传统神经网络判别方法直接学习拟合f(cnet)≈anet来预测干净的网格图像而言,本申请通过网络学习拟合f(cnet)≈bnet来预测得到噪声网格图像,最终预测消除背景噪声后的干净网格图像可进一步通过cnet-f(cnet)得到。

    对照残差网络,预测恒等映射是困难的,即预测f(x)=x容易造成性能下降,且容易产生过拟合。对于神经网络来说,预测f(x)=0则相对容易的多,可通过梯度下降算法进行迭代优化实现,因此,本实施例构建学习噪声图像cnet-f(cnet)比直接学习f(cnet)来的有效。

    网络优化目标为减少预测消除背景噪声后的干净网格图像cnet-f(cnet)与真实干净的网格图像anet之间的均方误差,利用此自监督方式,可以巧妙的利用现有数据制造标签样本数据,解决有监督学习对标签样本的采集困难问题。

    因此本实施例构建损失函数为:

    其中,loss(γ)为损失函数,γ为网络参数(即为cnn神经网络需要训练的网络参数),cnet表示合成网格图像,f(cnet,γ)表示在当前网络参数γ下cnn神经网络输出的预测的噪声网格图像,(cnet-f(cnet,γ))表示合成网格图像去除预测的噪声网格图像后的网格图像,anet表示目标网格图像,n表示训练样本的数量。

    通过误差反向传播梯度优化算法学习并更新可训练的网络参数γ,迭代减少网络输出与真实目标网格图像之间的差距,最终目标是实现当前网络输出f(cnet)能高度拟合当前网格图像中的噪声分布。

    基于步骤s1~s6构建并训练得到了最佳的识别网络,以下步骤s7~s9即为基于最佳的识别网络进行预测消除背景噪声应用的过程。并且基于样本进行网络训练为神经网络技术领域较为常规的技术,本实施例不对采用具体的训练方法进行限制。

    步骤s7、获取待处理的事件流数据编码表征为待处理网格图像,所述待处理的事件流数据为基于事件相机采集包含运动目标和背景噪声的事件流数据。

    需要说明的是,待处理的事件流数据可以是基于事件相机实时采集的事件流数据,该事件流数据中未规定仅可出现运动目标,也未规定仅可出现背景噪声,即该事件流数据采集的是自然状态下包含运动目标和背景噪声的事件流数据。但是由于自然状态下运动目标和背景噪声不一定实时存在,因此最终采集的待处理事件流数据中可能仅包括运行目标,可能仅包含背景噪声,也可能同时包含运动目标和背景噪声,或者可可能同时不包含运动目标和背景噪声。

    当然待处理的事件流数据也可以是经过筛选后的包含运动目标和背景噪声的需要消除背景噪声的事件流数据。本申请的神经网络主要针对输入图像预测背景噪声的分布,对于输入图像获取方式或者输入图像的内容不做严格限制。

    待处理的事件流数据编码表征为待处理网格图像的过程与步骤s4中编码表征的过程相同,这里就不进行赘述。容易理解的是,在满足编码表征需要的最小时间段(例如20ms)的前提下,这里的待处理事件流数据的时间长短不做限制,若待处理事件流数据的时间长度过长,也可以将待处理事件流数据编码表征为多张待处理网格图像,后续针对每一待处理网格图像进行处理。

    步骤s8、将所述待处理网格图像输入至运行最佳网络参数的cnn神经网络中,得到预测的噪声网格图像。

    步骤s9、利用所述预测的噪声网格图像消除所述待处理网格图像中的背景噪声,得到消除背景噪声后的网格图像。

    这里利用预测的噪声网格图像消除待处理网格图像中的背景噪声,可以是对应像素位置之间的像素差值,也可以是利用背景差分法求解得到,消除图像中的噪声的方法为图像处理领域较为成熟的技术,这里就不进行具体限制。

    本实施例采集仅含运动目标的事件流数据和仅含背景噪声的事件流数据进行合并处理,克服实际情况下样本采集困难的问题;将事件相机输出的异步脉冲事件流通过编码表征成网格图像,与深度学习方法相结合,一方面利用深度学习强大的特征学习表达能力,另一方面充分利用了事件流数据的高时间分辨率和时序特性;利用神经网络输出背景噪声的分布,而并非直接输出去除背景噪声后的网格图像,利用此自监督方式,可以巧妙的利用现有数据制造标签样本数据,解决有监督学习对标签样本的采集困难问题。有效实现了事件相机的消除背景噪声,为后续自动驾驶、高速/空抛物行为检测去除了障碍。

    实施例1

    为了更好地理解和实施,下面以雨天场景作为实施实例,结合附图详细说明本申请。

    一种基于事件相机消除背景噪声的方法,参照附图3,为本发明实施例中消除雨滴背景噪声的逻辑架构图,该方法具体包括如下步骤:

    步骤1、独立脉冲事件序列合成:构建训练数据集,基于静止状态下的事件相机,分别采集不同雨天环境下(分为大雨、中雨和小雨天气,根据天气预报为准)的雨天事件流数据(即为含雨时间序列b),和非雨天环境下的正常目标运动时(如道路上行驶的车辆、走路的行人)的无雨事件流数据(即无雨事件序列a),采用时间序列插值法合成包含雨天事件和非雨天的合成事件流数据(即合成事件序列c)。由于事件相机只捕获运动目标,通过此种合成方法得到的事件流数据,与真实雨天下拍摄获取事件流数据之间的差异性非常小,大大减轻了有标定训练标注的采集难题,也与普通视觉的成像相比,更加真实;

    步骤2、脉冲事件编码表征:如图4所示,原始的脉冲事件序列形式为[n*4]矩阵,为4维离散脉冲串,分别按照事件的脉冲计数、最近发生时间和脉冲极性将异步事件流编码表征成网格图像形式,以更好的与当前主流深度学习框架相结合,编码表征得到对应的无雨网格图像anet、含雨网格图像bnet、合成网格图像cnet,由于网络主要基于无雨网格图像和合成网格图像进行训练,因此此处省略了含雨网格图像的合成。

    步骤3、消除雨滴背景噪声网络模型定义与训练。首先建立网络模型,设计一个端到端可训练的cnn网络结构。定义网络输入与输出、以及损失函数。目标使得损失函数最小化,通过反向传播的梯度下降优化算法,更新调整网络权值,当收敛到设定阈值时完成模型训练。此时利用训练好的模型对真实雨天环境下的事件流数据,学习到当前真实输入下的雨滴分布模式(predict雨模式),最终得到消除雨滴背景噪声后的干净网络图像。

    其中,步骤1中独立脉冲事件序列合成包含以下2个子步骤:

    步骤1.1、事件相机静止状态下,选择3个真实路口,分别采集雨天不包含运动目标的雨天事件样本20组,和非雨天正常运动目标的事件样本40组。平均每组数据时长20s;

    步骤1.2、采用的时间序列插值法首先将时间进行归一化到[0,1],按照时间排序,将雨天拍摄的含雨事件序列bevent插入到无雨事件序列aevent中,得到合成事件序列cevent=bevent aevent。其中bevent事件会水平翻转,以增加样本多样性,事件序列即事件流数据。

    其中,步骤2中脉冲事件编码表征包含以下3个子步骤:

    步骤2.1、构建三通道的网格图像的第一通道:选取设定时间δt内,对应像素位置(x,y)处累积发生的脉冲事件的次数表征为后续网络输入的第一通道。一般地,δt内属于运动目标(包括密集雨滴)的事件发生频率较高。经过统计,比如取δt=20ms时间窗口,同一位置上属于雨滴或其他运动目标的脉冲计数一般为3~7次,而固定机械噪声或随机噪声最多发生1次;

    步骤2.2、构建三通道的网格图像的第二通道:取δt内,对应像素位置(x,y)处发生脉冲事件的最近时间(归一化后)表征为后续网络输入的第二通道。虽然本质上丢弃了所有时间信息,但最近时间仍足以表征事件流中目标的移动;

    步骤2.3、构建三通道的网格图像的第三通道:采用0-1极性编码作为网络输入的第三通道。由于celex5事件相机在内戳模式下没有负极性信息,只有正极性信息,当设定时间δt内对应像素位置(x,y)处有事件发生,则赋予正极性值为1,否则赋为0。

    如图5(a-c)所示,为编码表征后的网格图像示例图,描述了将异步离散事件序列编码表征成连续的网格图像输入。三通道构成张量表示为:[batch,width,height,channel],为后续与卷积神经网络结合提供可能。

    其中,步骤3中消除雨滴背景噪声网络模型定义与训练包含以下3个子步骤:

    步骤3.1、通过前述编码表征,将非雨天正常运动目标的无雨事件序列aevent表征成三通道网格图像anet,相应的,雨天拍摄的含雨事件序列bevent表征成网格图像bnet,合成雨天和非雨天的合成事件序列cevent表征成网格图像cnet。用公式描述之间的关系:cnet=anet bnet,三者构成网格图像对(anet,bnet,cnet)作为训练网络所需的样本和标签,这里bnet以自监督方式解决有监督学习对标定样本的依赖。本发明一共表征成有效数据6500张图像对,其中5000张作为训练集用于模型训练,1000张作为验证集用于模型验证,500张作为测试集用于模型测试。

    步骤3.2、构建的端到端可训练的cnn网络结构,由卷积层 激活层 批规范化层构成,全程采用3*3大小卷积核,stride和padding都为(1,1)保证输入尺寸和输出一致;由于不同大小雨滴呈现出的效果完全不同,小雨对应的雨条较短,大雨对应的雨条更长。本实施例网络中,深度d对应的感受野大小为(2*d 1,2*d 1),本实例中设定网络深度为20,从而网络输出层中每个像素值可映射得到41*41的感受野大小,既能保证较高执行效率,又足以利用上下文的有效信息来获得不同天气下的雨滴分布模式;

    步骤3.3、网络输入为含雨天的网格图像cnet,网络输出定义为f(cnet)表示学习到的雨滴分布模式,相对于传统判别方法直接学习拟合f(cnet)≈anet来预测干净的网格图像,本专利通过网络学习拟合f(cnet)≈bnet来预测得到雨滴网格图像,最终消除雨滴背景噪声后的干净网格图像可进一步通过cnet-f(cnet)得到;

    步骤3.4、网络优化目标为减少预测消除雨滴背景噪声后的干净网格图像输出cnet-f(cnet)与真实干净的网格图像anet(非雨)之间的均方误差,因此损失函数定义为:

    通过误差反向传播梯度优化算法学习并更新可训练参数矩阵γ,逐步减少网络输出与真实残差图像之间的差距,最终目标是实现网络输出f(cnet)能高度拟合雨天模式,本发明中附图5d示意了附图5c减去cnn神经网络针对附图5c输出预测噪声网格图像后得到的消除背景噪声后干净的网格图像,对比附图5a与5d,可以看出本申请对背景噪声的消除效果好,且能够保留事件流数据的信息的完整性。

    在另一个实施例中,还公开了一种基于事件相机消除背景噪声的系统,所述基于事件相机消除背景噪声的系统,包括:

    数据获取模块,用于基于事件相机采集仅含运动目标的事件流数据,作为目标事件流数据;基于事件相机采集仅含背景噪声的事件流数据,作为噪声事件流数据;

    数据合成模块,用于按照事件流数据中的时间分布,将所述噪声事件流数据插值到所述目标事件流数据中,得到合成事件流数据;

    编码表征模块,用于将所述目标事件流数据、噪声事件流数据、合成事件流数据分别编码表征为目标网格图像、噪声网格图像、合成网格图像;

    网络构建模块,用于构建端到端的cnn神经网络,所述cnn神经网络的输入为合成网格图像,所述cnn神经网络的输出定义为预测的噪声网格图像;

    网络训练模块,用于利用所述目标网格图像、噪声网格图像、合成网格图像训练所述cnn神经网络,直至得到最佳的网络参数;

    背景消除模块,用于获取待处理的事件流数据编码表征为待处理网格图像,所述待处理的事件流数据为基于事件相机采集包含运动目标和背景噪声的事件流数据;将所述待处理网格图像输入至运行最佳网络参数的cnn神经网络中,得到预测的噪声网格图像;利用所述预测的噪声网格图像消除所述待处理网格图像中的背景噪声,得到消除背景噪声后的网格图像。

    关于基于事件相机消除背景噪声的系统的具体限定可以参见上文中对于基于事件相机消除背景噪声的方法的限定,在此不再赘述。

    且上述基于事件相机消除背景噪声的系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

    一种实施方式中,所述按照事件流数据中的时间分布,将所述噪声事件流数据插值到所述目标事件流数据中,得到合成事件流数据,执行如下操作:

    所述事件流数据的形式为[n*4]矩阵,其中4维离散脉冲为离散的(x,y,p,t)数据,x,y表示脉冲事件的发生位置,对应图像中像素点坐标,p表示脉冲事件的极性(光强变强时输出正极性1,光强变暗时输出负极性-1),t表示脉冲事件发生的时间;

    将所述目标事件流数据中的4维离散脉冲按照时间先后顺序进行排序;

    对于所述噪声事件流数据中的每一4维离散脉冲,按照4维离散脉冲中的时间t的大小,将噪声事件流数据中的每一4维离散脉冲插入排序后的目标事件流数据中。

    在另一个实施例中,所述将目标事件流数据、噪声事件流数据、合成事件流数据分别编码表征为目标网格图像、噪声网格图像、合成网格图像,执行如下操作:

    所述网格图像为三通道网格图像,则将事件流数据编码表征为网格图像包括:

    构建三通道网格图像的第一通道:选取设定时间δt内,像素位置(x,y)处累积发生的脉冲事件的次数表征为网格图像输入的第一通道,张量表示为c[0]=[batch,width,height,1];

    构建三通道网格图像的第二通道:在设定时间δt内,像素位置(x,y)处发生脉冲事件的最近时间,最近时间归一化后表征为网格图像输入的第二通道,张量表示为c[1]=[batch,width,height,1];

    构建三通道网格图像的第三通道:采用0-1极性编码作为网格图像输入的第三通道,在设定时间δt内,若像素位置(x,y)处有脉冲时间发生,则赋予正极性值为1,否则赋为0,张量表示为c[2]=[batch,width,height,1];

    合并三个通道得到三通道网格图像的张量表示为[batch,width,height,channel],其中channel表示通道数,且channel=3。

    在另一个实施例中,所述端到端的cnn神经网络,包括卷积层、激活层和批规范化层。

    在另一个实施例中,所述利用所述目标网格图像、噪声网格图像、合成网格图像训练所述cnn神经网络,直至得到最佳的网络参数,执行如下操作:

    以一张合成网格图像以及与该合成网格图像相关的目标网格图像、噪声网格图像构成一组训练样本;

    构建损失函数为:

    其中,loss(γ)为损失函数,γ为网络参数,cnet表示合成网格图像,f(cnet,γ)表示在当前网络参数γ下cnn神经网络输出的预测的噪声网格图像,(cnet-f(cnet,γ))表示合成网格图像去除预测的噪声网格图像后的网格图像,anet表示目标网格图像,n表示训练样本的数量。

    应该理解的是,虽然流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

    以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。


    技术特征:

    1.一种基于事件相机消除背景噪声的方法,其特征在于,所述基于事件相机消除背景噪声的方法,包括:

    基于事件相机采集仅含运动目标的事件流数据,作为目标事件流数据;

    基于事件相机采集仅含背景噪声的事件流数据,作为噪声事件流数据;

    按照事件流数据中的时间分布,将所述噪声事件流数据插值到所述目标事件流数据中,得到合成事件流数据;

    将所述目标事件流数据、噪声事件流数据、合成事件流数据分别编码表征为目标网格图像、噪声网格图像、合成网格图像;

    构建端到端的cnn神经网络,所述cnn神经网络的输入为合成网格图像,所述cnn神经网络的输出定义为预测的噪声网格图像;

    利用所述目标网格图像、噪声网格图像、合成网格图像训练所述cnn神经网络,直至得到最佳的网络参数;

    获取待处理的事件流数据编码表征为待处理网格图像,所述待处理的事件流数据为基于事件相机采集包含运动目标和背景噪声的事件流数据;

    将所述待处理网格图像输入至运行最佳网络参数的cnn神经网络中,得到预测的噪声网格图像;

    利用所述预测的噪声网格图像消除所述待处理网格图像中的背景噪声,得到消除背景噪声后的网格图像。

    2.如权利要求1所述的基于事件相机消除背景噪声的方法,其特征在于,所述按照事件流数据中的时间分布,将所述噪声事件流数据插值到所述目标事件流数据中,得到合成事件流数据,包括:

    所述事件流数据的形式为[n*4]矩阵,其中n为离散脉冲的数量,4表示离散脉冲的维度,其中4维离散脉冲为离散的(x,y,p,t)数据,x,y表示脉冲事件的发生位置,对应图像中像素点坐标,p表示脉冲事件的极性(光强变强时输出正极性1,光强变暗时输出负极性-1),t表示脉冲事件发生的时间;

    将所述目标事件流数据中的4维离散脉冲按照时间先后顺序进行排序;

    对于所述噪声事件流数据中的每一4维离散脉冲,按照4维离散脉冲中的时间t的大小,将噪声事件流数据中的每一4维离散脉冲插入排序后的目标事件流数据中。

    3.如权利要求1所述的基于事件相机消除背景噪声的方法,其特征在于,所述将目标事件流数据、噪声事件流数据、合成事件流数据分别编码表征为目标网格图像、噪声网格图像、合成网格图像,包括:

    所述网格图像为三通道网格图像,则将事件流数据编码表征为网格图像包括:

    构建三通道网格图像的第一通道:选取设定时间δt内,像素位置(x,y)处累积发生的脉冲事件的次数表征为网格图像输入的第一通道,张量表示为c[0]=[batch,width,height,1];

    构建三通道网格图像的第二通道:在设定时间δt内,像素位置(x,y)处发生脉冲事件的最近时间,最近时间归一化后表征为网格图像输入的第二通道,张量表示为c[1]=[batch,width,height,1];

    构建三通道网格图像的第三通道:采用0-1极性编码作为网格图像输入的第三通道,在设定时间δt内,若像素位置(x,y)处有脉冲时间发生,则赋予正极性值为1,否则赋为0,张量表示为c[2]=[batch,width,height,1];

    合并三个通道得到三通道网格图像的张量表示为[batch,width,height,channel],其中channel表示通道数,且channel=3。

    4.如权利要求1所述的基于事件相机消除背景噪声的方法,其特征在于,所述端到端的cnn神经网络,包括卷积层、激活层和批规范化层。

    5.如权利要求1所述的基于事件相机消除背景噪声的方法,其特征在于,所述利用所述目标网格图像、噪声网格图像、合成网格图像训练所述cnn神经网络,直至得到最佳的网络参数,包括:

    以一张合成网格图像以及与该合成网格图像相关的目标网格图像、噪声网格图像构成一组训练样本;

    构建损失函数为:

    其中,loss(γ)为损失函数,γ为网络参数,cnet表示合成网格图像,f(cnet,γ)表示在当前网络参数γ下cnn神经网络输出的预测的噪声网格图像,(cnet-f(cnet,γ))表示合成网格图像去除预测的噪声网格图像后的网格图像,anet表示目标网格图像,n表示训练样本的数量。

    6.一种基于事件相机消除背景噪声的系统,其特征在于,所述基于事件相机消除背景噪声的系统,包括:

    数据获取模块,用于基于事件相机采集仅含运动目标的事件流数据,作为目标事件流数据;基于事件相机采集仅含背景噪声的事件流数据,作为噪声事件流数据;

    数据合成模块,用于按照事件流数据中的时间分布,将所述噪声事件流数据插值到所述目标事件流数据中,得到合成事件流数据;

    编码表征模块,用于将所述目标事件流数据、噪声事件流数据、合成事件流数据分别编码表征为目标网格图像、噪声网格图像、合成网格图像;

    网络构建模块,用于构建端到端的cnn神经网络,所述cnn神经网络的输入为合成网格图像,所述cnn神经网络的输出定义为预测的噪声网格图像;

    网络训练模块,用于利用所述目标网格图像、噪声网格图像、合成网格图像训练所述cnn神经网络,直至得到最佳的网络参数;

    背景消除模块,用于获取待处理的事件流数据编码表征为待处理网格图像,所述待处理的事件流数据为基于事件相机采集包含运动目标和背景噪声的事件流数据;将所述待处理网格图像输入至运行最佳网络参数的cnn神经网络中,得到预测的噪声网格图像;利用所述预测的噪声网格图像消除所述待处理网格图像中的背景噪声,得到消除背景噪声后的网格图像。

    7.如权利要求6所述的基于事件相机消除背景噪声的系统,其特征在于,所述按照事件流数据中的时间分布,将所述噪声事件流数据插值到所述目标事件流数据中,得到合成事件流数据,执行如下操作:

    所述事件流数据的形式为[n*4]矩阵,其中n为离散脉冲的数量,4表示离散脉冲的维度,其中4维离散脉冲为离散的(x,y,p,t)数据,x,y表示脉冲事件的发生位置,对应图像中像素点坐标,p表示脉冲事件的极性(光强变强时输出正极性1,光强变暗时输出负极性-1),t表示脉冲事件发生的时间;

    将所述目标事件流数据中的4维离散脉冲按照时间先后顺序进行排序;

    对于所述噪声事件流数据中的每一4维离散脉冲,按照4维离散脉冲中的时间t的大小,将噪声事件流数据中的每一4维离散脉冲插入排序后的目标事件流数据中。

    8.如权利要求6所述的基于事件相机消除背景噪声的系统,其特征在于,所述将目标事件流数据、噪声事件流数据、合成事件流数据分别编码表征为目标网格图像、噪声网格图像、合成网格图像,执行如下操作:

    所述网格图像为三通道网格图像,则将事件流数据编码表征为网格图像包括:

    构建三通道网格图像的第一通道:选取设定时间δt内,像素位置(x,y)处累积发生的脉冲事件的次数表征为网格图像输入的第一通道,张量表示为c[0]=[batch,width,height,1];

    构建三通道网格图像的第二通道:在设定时间δt内,像素位置(x,y)处发生脉冲事件的最近时间,最近时间归一化后表征为网格图像输入的第二通道,张量表示为c[1]=[batch,width,height,1];

    构建三通道网格图像的第三通道:采用0-1极性编码作为网格图像输入的第三通道,在设定时间δt内,若像素位置(x,y)处有脉冲时间发生,则赋予正极性值为1,否则赋为0,张量表示为c[2]=[batch,width,height,1];

    合并三个通道得到三通道网格图像的张量表示为[batch,width,height,channel],其中channel表示通道数,且channel=3。

    9.如权利要求6所述的基于事件相机消除背景噪声的系统,其特征在于,所述端到端的cnn神经网络,包括卷积层、激活层和批规范化层。

    10.如权利要求6所述的基于事件相机消除背景噪声的系统,其特征在于,所述利用所述目标网格图像、噪声网格图像、合成网格图像训练所述cnn神经网络,直至得到最佳的网络参数,执行如下操作:

    以一张合成网格图像以及与该合成网格图像相关的目标网格图像、噪声网格图像构成一组训练样本;

    构建损失函数为:

    其中,loss(γ)为损失函数,γ为网络参数,cnet表示合成网格图像,f(cnet,γ)表示在当前网络参数γ下cnn神经网络输出的预测的噪声网格图像,(cnet-f(cnet,γ))表示合成网格图像去除预测的噪声网格图像后的网格图像,anet表示目标网格图像,n表示训练样本的数量。

    技术总结
    本发明公开了一种基于事件相机消除背景噪声的方法及系统,采集仅含运动目标的事件流数据和仅含背景噪声的事件流数据进行合并处理,克服实际情况下样本采集困难的问题;将事件相机输出的异步脉冲事件流通过编码表征成网格图像,与深度学习方法相结合,一方面利用深度学习强大的特征学习表达能力,另一方面充分利用了事件流数据的高时间分辨率和时序特性;利用神经网络输出背景噪声的分布,而并非直接输出去除背景噪声后的网格图像,利用此自监督方式,可以巧妙的利用现有数据制造标签样本数据,解决有监督学习对标签样本的采集困难问题。

    技术研发人员:刘庆杰;徐庶;马金艳;戚后林
    受保护的技术使用者:中电海康集团有限公司
    技术研发日:2020.11.11
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-19869.html

    最新回复(0)