本发明属于计算机视觉分析技术领域,具体涉及一种基于深度去噪自动编码器的粒子滤波跟踪方法。
背景技术:
视觉目标跟踪是计算机视觉和视觉分析的一个重要研究方向。典型的视觉分析需要对感兴趣的对象进行一致且稳定的跟踪。对于单目视觉目标跟踪,众多学者提出了值得借鉴的理论和算法。在实际应用中,由于复杂背景、目标遮挡、目标快速运动、光照变化等因素的影响,该问题仍然面临着巨大的挑战。
深度神经网络在目标检测和目标分类方面具有很强的学习能力。深度学习架构更适合学习分类特征而不是特定目标。此外,深层神经网络算法通常需要较长的迭代训练过程才能收敛,难以满足在线学习的实时要求。因此,很难将当前的深度学习网络体系结构扩展到目标跟踪领域。
技术实现要素:
为了解决目标跟踪过程中背景复杂、光线变化、目标遮挡等干扰问题,以及现有跟踪算法抗干扰能力较差的问题,本发明提供了一种基于深度去噪自动编码器的粒子滤波跟踪方法。本发明要解决的技术问题通过以下技术方案实现:
一种基于深度去噪自动编码器的粒子滤波跟踪方法,包括:步骤1:训练深度网络模型,通过无监督的逐层贪心训练每一层网络并在训练数据中加入噪声以得到更为稳健的特征表达,通过分类神经网络对这些特征进行有监督的学习,进一步优化网络的参数;
步骤2:采用视频第一帧手动标定目标位置,从序列中选取正负训练样本,初始化步骤1中深度网络模型;
步骤3:采用重要性抽样粒子集,然后通过训练好的网络模型向前传播每个粒子,并通过分类神经网络计算在线跟踪过程中每个粒子的置信度;
步骤4:根据步骤3中粒子置信度计算粒子的观测概率;
步骤5:根据步骤4中观察概率更新粒子的权重,以确定目标位置,为下一帧更新跟踪新样本,循环步骤3到步骤5的过程,直到视频播放完毕。
进一步的,所述步骤1中深度网络模型由自动降噪编码器叠加,并使用下一层的输出作为上层的输入;所述自动降噪编码器,包括编码器、解码器和隐式层三部分,所述解码器需要根据噪声特性预测原始未损坏的数据,最后输出最接近的原始输入,高斯噪声通常用作衰减矢量,其表达式为:
其中,x是没有噪声干扰的原始输入,
进一步的,所述步骤1中训练过程如下:假设针对未标记类别的训练样本集x∈rd,通过激活函数f将输入x映射到隐藏层以获得z∈rd
z∈fθ(x)=σ(wx+b)(1)
其中,θ={w,b},w是权重矩阵,b是编码层矢量,σ是非线性激活函数,解码器重新映射输入的编码表示以形成重构的y
y∈fθ′(h)=σ(w′h+b′)(2)
其中,θ′={w′,b′},w′是权重矩阵w的转置,σ是解码的激活函数;自动降噪编码器通过上述过程使y约等于x;
假设训练集{(x(1),y(1)),...,(x(m),y(m))}包含m个训练样本,x表示单个样本特征,y表示样本对应的输入,并且采用单个样本(x,y)来定义其成本函数;
其中hw,b(x)是对应于网络的样本x的输出值,因此m个样本训练集的成本函数是:
λ是减重系数,控制两部分的相对重要性;训练自动降噪编码器的过程是调整训练样本集中参数{θ,θ′}的最小重建误差j(w,b),j(w,b)是一个凸起函数,通常通过迭代方法优化。
进一步的,所述分类神经网络包括自动降噪编码器编码部分与k个稀疏约束连接的分类层组成。
进一步的,所述步骤1中分类神经网络学习方法如下:设z是自编码器隐藏层的激活函数。在前向传播阶段,激活函数z是:
z=wtx+b(6)
其中,x是输入向量;w是权重;b是偏置(bias)。
保持激活函数前k个最大值并将其余所有设置为零:
其中,(γ)c是z的补充,(γ)c=suppk(z)。稀疏z用于计算网络重建误差:
其中,x是训练样本集,w代表权重,b′代表偏置(bias)的转置,权重由激活函数输出的前k个最大值反向传播以重建误差迭代调整。
进一步的,所述步骤3中置信度的算法如下:设oi是对应于类ki的神经网络的输出,则输出值的期望是后验概率。
e{oi}=p(ki|x)(9)
其中,x是网络输入。通常,将最大输出的相应类别作为决策,因此可以从神经网络的后验概率获得置信度,并且将分类神经网络的最大输出作为置信度:
c(x)=e{maxoi}(10)
进一步的,所述步骤3中重要性抽样方法如下:
当新帧图像到达时,根据重要度分布q(st|st-1,y1:t)和运动模型,从t-1时刻的粒子集
进一步的,所述步骤4中观察概率计算方法如下:
每个粒子通过分类神经网络向前传播以获得其置信度
其中yt是指t时刻样本对应输入,
进一步的,所述步骤5中更新粒子的权重方法为:
其中,
其中
本发明的有益效果:
自动降噪编码器通过无监督的逐层贪心训练和参数优化多层网络结构获得高维复杂输入的分布式特征表示,对于不同的任务,只需要调整网络参数;本方法通过深度去噪的自动降噪编码器,能够有效地区分目标特征和背景;引入分类神经网络,提高了网络的分类能力,提高了跟踪算法的精度,最后,利用粒子滤波用于跟踪目标。
附图说明
图1是自动降噪编码器原理示意图。
图2是分类神经网络结构示意图。
图3是室内遮挡现象跟踪结果示意图。
图4是室外遮挡现象跟踪结果示意图。
图5是光照变化目标跟踪结果示意图。
图6是目标模糊目标跟踪结果示意图。
具体实施方式
下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。
一种基于深度去噪自动编码器的粒子滤波跟踪方法,包括以下步骤:
步骤1:训练深度网络模型,通过无监督的逐层贪心训练每一层网络并在训练数据中加入噪声以得到更为稳健的特征表达,通过分类神经网络对这些特征进行有监督的学习,进一步优化网络的参数;
步骤2:采用视频第一帧手动标定目标位置,从序列中选取正负训练样本,初始化步骤1中深度网络模型;
步骤3:采用重要性抽样粒子集,然后通过训练好的网络模型向前传播每个粒子,并通过分类神经网络计算在线跟踪过程中每个粒子的置信度;
步骤4:根据步骤3中粒子置信度计算粒子的观测概率;
步骤5:根据步骤4中观察概率更新粒子的权重,以确定目标位置,为下一帧更新跟踪新样本,循环步骤3到步骤5的过程,直到视频播放完毕。
如图1所示,步骤1中深度网络模型由自动降噪编码器叠加,深度自动编码器是一种典型的无监督学习网络,它是一个深度网络模型,由自编码器叠加,并使用下一层的输出作为上层的输入,自动编码器的本质是学习相同的功能,即网络的输入和重建后的输出相等,训练和参数优化过程是实现输出再现输入;自动降噪编码器,包括编码器、解码器和隐式层三部分;自动降噪编码器接受损坏数据作为输入,并通过训练预测原始未损坏数据作为输出。降噪自动编码器的目的是允许使用非常大的编码器,同时防止编码器和解码器之间无用的常数函数,基于统计理论,自动降噪编码器的核心思想是根据一定的规则干扰原始输入和噪声,使原始输入被破坏,受损数据被输入网络,得到隐含层的表示。解码器需要根据噪声特性预测原始未损坏的数据,最后输出最接近的原始输入,这正是去除干扰的效果,高斯噪声通常用作衰减矢量,其表达式为:
其中,x是没有噪声干扰的原始输入,
步骤1中训练过程如下:假设针对未标记类别的训练样本集x∈rd,通过激活函数f将输入x映射到隐藏层以获得z∈rd
z∈fθ(x)=σ(wx+b)(1)
其中,θ={w,b},w是权重矩阵,b是编码层矢量,σ是非线性激活函数,解码器重新映射输入的编码表示以形成重构的y
y∈fθ′(h)=σ(w′h+b′)(2)
其中,θ′={w′,b′},w′是权重矩阵w的转置,σ是解码的激活函数;自动降噪编码器通过上述过程使y约等于x;
假设训练集{(x(1),y(1),...,(x(m),y(m))}包含m个训练样本,x表示单个样本特征,y表示样本对应的输入,并且采用单个样本(x,y)来定义其成本函数;
其中hw,b(x)是对应于网络的样本x的输出值,因此m个样本训练集的成本函数是:
可以看出,等式的第一部分是成本函数的平均方差项。第二部分是权重衰减项,可以防止权重变化太大,从而防止过度拟合,λ是减重系数,控制两部分的相对重要性;训练自动降噪编码器的过程是调整训练样本集中参数{θ,θ′}的最小重建误差j(w,b),j(w,b)是一个凸起函数,通常通过迭代方法优化。
分类神经网络包括自动降噪编码器编码部分与k个稀疏约束连接的分类层组成。
构造分类神经网络的目的是计算在线跟踪过程中每个粒子的置信度。它由自动降噪编码器的编码部分与k个稀疏约束连接的分类层组成,分类神经网络结构的示意图如图2所示;引入k稀疏约束可以有效地学习目标的不变特性,提高分类神经网络的线性判别能力,在一定程度上解决过拟合问题。神经科学研究表明,大脑皮层中视觉信号的响应是稀疏的,因此在深层神经网络中引入稀疏限制可以使原始信号的表达更有意义,特别是对于分类任务,该思想已在主成分分析和稀疏编码中得到了验证,k稀疏约束保留了隐层的k最大激活函数,其余的都设为零,与其它稀疏约束相比,k稀疏约束能够保证输入数据的所有表示都是稀疏的。
步骤1中分类神经网络学习方法如下:设z是自编码器隐藏层的激活函数。在前向传播阶段,激活函数z是:
z=wtx+b(6)
其中,x是输入向量;w是权重;b是偏置(bias)。
保持激活函数前k个最大值并将其余所有设置为零:
其中,(γ)c是z的补充,(γ)c=suppk(z)。稀疏z用于计算网络重建误差:
其中,x是训练样本集,w代表权重,b′代表偏置(bias)的转置,权重由激活函数输出的前k个最大值反向传播以重建误差迭代调整。分类神经网络输出的置信水平是置信水平,其反映了其在特征向量空间中的某个点处的决策可信度。
步骤3中置信度的算法如下:设oi是对应于类ki的神经网络的输出,则输出值的期望是后验概率。
e{oi}=p(ki|x)(9)
其中,x是网络输入。通常,将最大输出的相应类别作为决策,因此可以从神经网络的后验概率获得置信度,并且将分类神经网络的最大输出作为置信度:
c(x)=e{maxoi}(10)
步骤3中重要性抽样方法如下:
当新帧图像到达时,根据重要度分布q(st|st-1,y1:t)和运动模型,从t-1时刻的粒子集
步骤4中观察概率计算方法如下:
每个粒子通过分类神经网络向前传播以获得其置信度
其中yt是指t时刻样本对应输入,
步骤5中更新粒子的权重方法为:
其中,
其中
实验运行环境:3.8ghz,四核amd处理器,8gb内存。本文采用了多种环境下的视频序列进行验证,包括光照变化、目标遮挡和目标快速运动。
图3和图4显示了目标的遮挡。遮挡现象是指由于周围环境的复杂性和周围其他物体的干扰,目标被部分遮挡的现象,跟踪器在整个跟踪过程中不会丢失目标;户外摄影经常产生强烈的光线变化。,当光线变化很大时,会影响目标跟踪的性能,从图5中可以看出,当目标进入隧道时,图像中存在巨大的光照变化,但是,从跟踪结果来看,本文算法已经准确地完成了跟踪任务。
目标模糊的问题出现在图6中,目标的模糊是由于移动过程中目标的速度过快或摄影不稳定造成的,图像中目标的图像不清晰,目标模糊,影响跟踪效果,本文中的跟踪算法准确地完成了跟踪,并且没有目标丢失。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。