一种基于图像处理的移动目标检测与轨迹预测方法与流程

文档序号:18633379发布日期:2019-09-11 21:55阅读:452来源:国知局
一种基于图像处理的移动目标检测与轨迹预测方法与流程

本发明属于计算机技术中的图像处理领域,尤其涉及一种基于图像处理的移动目标检测与轨迹预测方法。



背景技术:

近年来,随着计算机视觉领域的不断发展,有关视频、图像处理方面的研究正不断深入发展和应用。就视频图像而言,通过获取一定时间序列下目标的移动数据,经过图像处理后充分挖掘其内部特征,利用相关方法可以对移动目标进行跟踪定位以及预测未来可能的运动轨迹,这相对于单一图像中的静态目标更能发现有意义、有价值的信息,而且应用范围更广。

在对视频图像中的移动目标进行下一时刻的位置预测时,首先需要对目标进行图像处理以及目标检测、特征提取工作。目前已有的公认的目标检测方法有背景差分法、帧差法、光流法、高斯混合模型,但是上述方法在检测目标时往往会受到噪声的污染,对于提取出较为完整、清晰的目标存在着一些难度,影响了前景检测率。然后在对目标进行轨迹预测时,目前已有的kalman滤波算法、贝叶斯滤波算法虽然可以较好地进行预测,但是往往会受到不当的随机噪声点对系统的影响,从而影响预测效率和准确程度,导致预测的下一时刻的某些位置过于偏离真实位置。



技术实现要素:

发明目的:针对以上问题,本发明提出一种基于图像处理的移动目标检测与轨迹预测方法,利用粒子群优化算法对kalman滤波算法中的噪声进行改进,并将kalman预测位置坐标以及目标特征提取的量化值作为elman神经网络的输入参数,对应的真实位置坐标作为输出值,利用粒子群优化算法对elman神经网络的参数进行改进,最后通过网络训练获得移动目标的预测位置。

技术方案:为实现本发明的目的,本发明所采用的技术方案是:一种基于图像处理的移动目标检测与轨迹预测方法,包括如下步骤:

s1:获取由固定摄像机拍摄的包含移动目标的视频图像数据集,进行移动目标检测与轨迹预测;

s2:在目标检测提取阶段对输入的视频图像数据集进行预处理,利用目标检测方法获取图像目标特征及其量化值,以对移动目标进行准确检测和定位;

s3:在kalman优化阶段,利用粒子群优化算法对kalman滤波算法中的噪声点进行改进,并将优化后的噪声点作为新的噪声点,将视频图像数据集中移动目标的位置数据作为kalman滤波算法的输入参数,运行优化后的kalman滤波算法,得到算法输出的预测位置坐标;

s4:在elman优化阶段,利用粒子群优化算法对elman神经网络中的权值、阈值进行改进,并将优化后的权值、阈值作为网络新的权值、阈值,将步骤s2得到的量化值融合步骤s3得到的kalman预测位置坐标作为elman神经网络的输入参数,对应的真实位置坐标作为网络的输出值,训练神经网络,得到优化后的elman神经网络;

s5:将移动目标最新的图像数据经过步骤s2所述量化处理,得到目标特征及其量化值;将图像数据中移动目标的位置数据作为步骤s3所述优化后的kalman滤波算法的输入参数,运行该算法,得到算法输出的预测位置坐标;将所述量化值融合kalman预测位置坐标作为优化后的elman神经网络输入参数,运行该神经网络,得到网络输出的预测位置坐标;

s6:根据步骤s5预测的位置坐标在一段时间内的集合构成了预测的轨迹,即实现了移动目标的轨迹预测。

进一步,步骤s2所述目标检测提取阶段,对输入的视频图像数据集进行预处理,利用目标检测方法获取图像目标特征及其量化值,以对移动目标进行准确检测和定位,方法如下:

s2.1:通过对移动目标进行检测和特征提取,从而定位到移动目标;所述目标检测分为主体检测部分和细节检测部分;

所述主体检测部分是对移动目标采用高斯混合模型这一前景提取方法,建立高斯混合模型,通过输入目标图像与背景图像,进行运算和分割,从而初步检测到移动目标,获得前景图像;并通过中值滤波和高斯滤波结合的滤波降噪操作消除前景图像中的脉冲噪声和高斯噪声;

所述细节检测部分是根据主体检测得到的前景图像进行图像处理,包括边缘检测、滤波降噪、形态学处理和目标区域标记;所述边缘检测,是指采用二阶canny算子进行图像检测;所述滤波降噪,是指采用中值滤波和高斯滤波结合降噪的方法消除脉冲噪声和高斯噪声;所述形态学处理操作,是指采用膨胀和腐蚀相结合的方法填充在图像处理过程中可能产生的空洞;所述目标区域标记,是指采用连通区域标记法进行检测标记,即在细节检测最终得到的前景图像中,通过判断前景图像中的各个像素点以及与该像素点自身相邻像素点的连通程度,获取包围该目标区域的最小矩形,并最终定位到移动目标,获取到目标特征信息;

进一步,所述细节检测方法如下:首先利用canny算子检测背景边缘和当前帧f的图像边缘,产生的二值边缘图像分别记为af和bf;然后添加空白图像cf,大小与af和bf均相同,若af中的像素坐标(j,d)对应于bf中有:af(j,d)=bf(j,d),那么cf(j,d)=0;否则cf(j,d)=1,以此计算所有像素点,直到最后产生完整的、更新的二值图像cf;其次将前景图像ff与更新后的二值图像cf中的每一个像素进行加法运算,得到新图像df;再将前景图像ff与图像df中的每一个像素进行加法运算,得到新前景图像gf;最后对新前景图像gf进行滤波降噪和形态学处理,得到最终前景图像hf;对最终前景图像hf进行目标区域标记,获取包围该目标区域的最小矩形,定位到该移动目标,获取到当前帧图像中的目标特征信息;

s2.2:根据步骤s2.1提取出的移动目标特征进行量化处理,即目标特征量化,所述量化的目标特征包括目标的几何特征和运动特征;

所述几何特征用于描述目标的图像特性,包含围成区域的最小矩形面积、区域图像中实际的像素个数、凸区域图像中的像素个数;

所述运动特征用于描述目标的位置及运动状况,包含质心坐标、最小矩形的位置信息、移动目标的平均速度、平均加速度、位移。

进一步,步骤s2.1中,在确定输入高斯混合模型的背景图像时,取连续n帧的背景图像进行平均化处理,并将平均化处理后的背景图像作为输入高斯混合模型的背景图像,平均化处理公式如下:

式中,bn表示第n帧的背景图像。

进一步,步骤s2.2所述量化处理如下:

所述几何特征用于描述目标的图像特性,包含区域图像不同表示方法的集合,表示为:

g={s1,s2,s3|rs∈s1}(2)

其中,s1表示围成区域的最小矩形面积;s2表示区域图像中实际的像素个数;s3表示凸区域图像中的像素个数;rs表示最小矩形的大小信息,包括最小矩形的长ls和宽ws;

所述运动特征用于描述目标的位置及运动状况,包含位置坐标与运动变量的集合,表示为:

其中,c表示质心坐标;rp表示最小矩形的位置信息;分别表示移动目标在水平和竖直方向上的平均速度;分别表示移动目标在水平和竖直方向上的平均加速度;xx和xy分别表示水平和竖直位移;x表示总位移。

进一步,步骤s3所述kalman优化阶段,得到kalman滤波算法输出的预测位置坐标,方法如下:

s3.1:对kalman滤波算法中的初始噪声点进行编码;设kalman滤波算法的输入参数,即视频图像数据集中的目标位置数据有m个,则产生m个初始噪声点,并得到大小为1行m列的矩阵,作为粒子群优化算法的初始粒子值;

s3.2:运行kalman滤波算法,得到第m-1个目标数据的预测位置坐标并与目标数据的真实位置坐标进行误差计算,计算结果作为kalman优化阶段粒子群优化算法的粒子适应度fit1,表示为:

s3.3:运行粒子群优化算法,根据步骤s3.2得到的粒子适应度,计算得到粒子的个体最佳位置以及全局最佳位置,并判断是否达到在粒子群优化算法中设置的最大迭代次数,如果达到,则输出最优解,进入步骤s3.4;否则,更新粒子的位置及其速度,并将更新后的粒子作为kalman滤波算法的新的噪声点,重复步骤s3.2至s3.3;

s3.4:将kalman优化阶段粒子群优化算法的最优解对应的粒子进行解码,并作为kalman滤波算法的最终噪声点;将视频图像数据集中移动目标的位置数据作为kalman滤波算法的输入参数,运行优化后的kalman滤波算法,得到算法输出的预测位置坐标。

进一步,步骤s3.3中,更新粒子的速度与位置的公式如下:

s1=c1*r1*(best1-x(i-1))(5)

s2=c2*r2*(best2-x(i-1))(6)

v(i)=w*v(i-1)+s1+s2(7)

x(i)=x(i-1)+v(i)(8)

其中,s1和s2分别表示自身增益和全局增益,c1和c2分别表示个体学习因子和全局学习因子,r1和r2表示在0~1之间的随机数,best1和best2分别表示当前粒子的个体最佳位置和全局最佳位置,v(i)和x(i)分别表示更新后粒子的速度和位置,v(i-1)和x(i-1)分别表示更新前粒子的速度和位置,w表示权重。

进一步,步骤s4所述得到优化后的elman神经网络,方法如下:

s4.1:对elman神经网络中的输入层、隐含层、联系单元层以及输出层之间关连的初始权值及阈值进行编码;设elman神经网络的输入层有a个节点,隐含层有b个节点,输出层有c个节点,则网络权值共有(a*b+b*c)个,阈值共有(b+c)个,得到大小为1行(a*b+b*c+b+c)列的矩阵,作为粒子群优化算法的初始粒子值;

s4.2:设视频图像数据集有f张图像,选取视频图像数据集中时刻较前的p张图像作为训练样本,视频图像数据集的剩余f-p张图像作为测试样本;将训练样本经过步骤s2所述量化处理,得到目标特征及其量化值;同时将训练样本输入步骤s3所述优化后的kalman滤波算法,得到kalman算法输出的预测位置坐标;将获取的目标特征的量化值和kalman预测位置坐标进行参数组合,将组合参数作为elman神经网络的训练输入参数,对应的真实位置坐标作为训练输出值,对elman神经网络进行训练;

s4.3:elman神经网络训练完成后,将测试样本经过步骤s2所述量化处理,得到目标特征及其量化值;同时将测试样本输入步骤s3所述优化后的kalman滤波算法,得到kalman算法输出的预测位置坐标;将获取的目标特征的量化值和kalman预测位置坐标进行参数组合,将组合参数作为训练后的elman神经网络的输入参数,得到神经网络输出值,将测试样本中移动目标的真实位置坐标与神经网络输出值进行比较,判断网络训练是否达到预期,如果未达到预期,返回步骤s4.2继续训练;否则,输出测试样本中第f-p-1张图像的移动目标的神经网络预测位置坐标,进入步骤s4.4;

s4.4:将步骤s4.3输出的目标预测位置坐标与目标的真实位置坐标进行误差计算,计算结果作为elman优化阶段粒子群优化算法的粒子适应度fit2,表示为:

s4.5:运行粒子群优化算法,根据步骤s4.4得到的粒子适应度,计算得到粒子的个体最佳位置以及全局最佳位置,并判断是否达到在粒子群优化算法中设置的最大迭代次数,如果达到,则输出最优解,进入步骤s4.6;否则,更新粒子的位置及其速度,并将更新后的粒子作为elman神经网络新的权值及阈值,重复步骤s4.2至s4.5;

s4.6:将elman优化阶段粒子群优化算法的最优解对应的粒子进行解码,并作为最终的elman神经网络的权值及阈值,得到优化后的elman神经网络。

有益效果:与现有技术相比,本发明的技术方案具有以下有益的技术效果:在目标检测方面,本方法提高了前景检测率,极大地减少了噪声带来的影响,很大程度保留了目标的轮廓和原形。在轨迹预测方面,本方法的预测误差较小,预测轨迹更贴近真实轨迹,网络训练能力较强,具有很好的预测效果。

附图说明

图1是本发明方法的流程图;

图2是3种不同方法的前景检测率对比图;

图3是粒子群优化算法粒子适应度变化图;

图4是6种不同方法的累积预测误差值对比图。

具体实施方式

下面结合附图和实施例对本发明的技术方案作进一步的说明。

本发明所述的一种基于图像处理的移动目标检测与轨迹预测方法,如图1所示,包含以下步骤:

s1:获取由固定摄像机拍摄的包含移动目标的视频图像数据集,进行移动目标检测与轨迹预测;

s2:在目标检测提取阶段对输入的视频图像数据集进行预处理,利用目标检测方法获取图像目标特征及其量化值,以对移动目标进行准确检测和定位;

s3:在kalman优化阶段,利用粒子群优化算法对kalman滤波算法中的噪声点进行改进,并将优化后的噪声点作为新的噪声点,将视频图像数据集中移动目标的位置数据作为kalman滤波算法的输入参数,运行优化后的kalman滤波算法,得到算法输出的预测位置坐标;

s4:在elman优化阶段,利用粒子群优化算法对elman神经网络中的权值、阈值进行改进,并将优化后的权值、阈值作为网络新的权值、阈值,将步骤s2得到的量化值融合步骤s3得到的kalman预测位置坐标作为elman神经网络的输入参数,对应的真实位置坐标作为网络的输出值,训练神经网络,得到优化后的elman神经网络;

s5:将移动目标最新的图像数据经过步骤s2所述量化处理,得到目标特征及其量化值;将图像数据中移动目标的位置数据作为步骤s3所述优化后的kalman滤波算法的输入参数,运行该算法,得到算法输出的预测位置坐标;将所述量化值融合kalman预测位置坐标作为优化后的elman神经网络输入参数,运行该神经网络,得到网络输出的预测位置坐标;

s6:根据步骤s5预测的位置坐标在一段时间内的集合构成了预测的轨迹,即实现了移动目标的轨迹预测。

步骤s2所述目标检测提取阶段,对输入的视频图像数据集进行预处理,利用目标检测方法获取图像目标特征及其量化值,以对移动目标进行准确检测和定位,方法如下:

s2.1:通过对移动目标进行检测和特征提取,从而定位到移动目标;所述目标检测分为主体检测部分和细节检测部分;

所述主体检测部分是对移动目标采用高斯混合模型这一前景提取方法,建立高斯混合模型,通过输入目标图像与背景图像,进行运算和分割,从而初步检测到移动目标,获得前景图像;并通过中值滤波和高斯滤波结合的滤波降噪操作消除前景图像中的脉冲噪声和高斯噪声;背景差分法、gmm方法以及本发明方法的前景检测率对比如图2所示;由图示可得,与背景差分法、gmm方法相比,本发明方法的前景检测率更具有优势;

所述细节检测部分是根据主体检测得到的前景图像进行图像处理,包括边缘检测、滤波降噪、形态学处理和目标区域标记;所述边缘检测,是指采用二阶canny算子进行图像检测;所述滤波降噪,是指采用中值滤波和高斯滤波结合降噪的方法消除脉冲噪声和高斯噪声;所述形态学处理操作,是指采用膨胀和腐蚀相结合的方法填充在图像处理过程中可能产生的空洞;所述目标区域标记,是指采用连通区域标记法进行检测标记,即在细节检测最终得到的前景图像中,通过判断前景图像中的各个像素点以及与该像素点自身相邻像素点的连通程度,获取包围该目标区域的最小矩形,并最终定位到移动目标,获取到目标特征信息;

所述细节检测方法如下:首先利用canny算子检测背景边缘和当前帧f的图像边缘,产生的二值边缘图像分别记为af和bf;然后添加空白图像cf,大小与af和bf均相同,若af中的像素坐标(j,d)对应于bf中有:af(j,d)=bf(j,d),那么cf(j,d)=0;否则cf(j,d)=1,以此计算所有像素点,直到最后产生完整的、更新的二值图像cf;其次将前景图像ff与更新后的二值图像cf中的每一个像素进行加法运算,得到新图像df;再将前景图像ff与图像df中的每一个像素进行加法运算,得到新前景图像gf;最后对新前景图像gf进行滤波降噪和形态学处理,得到最终前景图像hf;对最终前景图像hf进行目标区域标记,获取包围该目标区域的最小矩形,定位到该移动目标,获取到当前帧图像中的目标特征信息;

s2.2:根据步骤s2.1提取出的移动目标特征进行量化处理,即目标特征量化,所述量化的目标特征包括目标的几何特征和运动特征;

所述几何特征用于描述目标的图像特性,包含围成区域的最小矩形面积、区域图像中实际的像素个数、凸区域图像中的像素个数;

所述运动特征用于描述目标的位置及运动状况,包含质心坐标、最小矩形的位置信息、移动目标的平均速度、平均加速度、位移。

步骤s2.1中,在确定输入高斯混合模型的背景图像时,取连续n帧的背景图像进行平均化处理,并将平均化处理后的背景图像作为输入高斯混合模型的背景图像,平均化处理公式如下:

式中,bn表示第n帧的背景图像。

步骤s2.2所述量化处理如下:

所述几何特征用于描述目标的图像特性,包含区域图像不同表示方法的集合,表示为:

g={s1,s2,s3|rs∈s1}(2)

其中,s1表示围成区域的最小矩形面积;s2表示区域图像中实际的像素个数;s3表示凸区域图像中的像素个数;rs表示最小矩形的大小信息,包括最小矩形的长ls和宽ws;

所述运动特征用于描述目标的位置及运动状况,包含位置坐标与运动变量的集合,表示为:

其中,c表示质心坐标;rp表示最小矩形的位置信息;分别表示移动目标在水平和竖直方向上的平均速度;分别表示移动目标在水平和竖直方向上的平均加速度;xx和xy分别表示水平和竖直位移;x表示总位移。

步骤s3所述kalman优化阶段,得到kalman滤波算法输出的预测位置坐标,方法如下:

s3.1:对kalman滤波算法中的初始噪声点进行编码;设kalman滤波算法的输入参数,即视频图像数据集中的目标位置数据有m个,则产生m个初始噪声点,并得到大小为1行m列的矩阵,作为粒子群优化算法的初始粒子值;

s3.2:运行kalman滤波算法,得到第m-1个目标数据的预测位置坐标并与目标数据的真实位置坐标进行误差计算,计算结果作为kalman优化阶段粒子群优化算法的粒子适应度fit1,表示为:

s3.3:运行粒子群优化算法,根据步骤s3.2得到的粒子适应度,计算得到粒子的个体最佳位置以及全局最佳位置,并判断是否达到在粒子群优化算法中设置的最大迭代次数,如果达到,则输出最优解,进入步骤s3.4;否则,更新粒子的位置及其速度,并将更新后的粒子作为kalman滤波算法的新的噪声点,重复步骤s3.2至s3.3;粒子群优化算法粒子适应度变化如图3所示,由图示可得,随着迭代次数的递增,粒子适应度趋于稳定;

s3.4:将kalman优化阶段粒子群优化算法的最优解对应的粒子进行解码,并作为kalman滤波算法的最终噪声点;将视频图像数据集中移动目标的位置数据作为kalman滤波算法的输入参数,运行优化后的kalman滤波算法,得到算法输出的预测位置坐标。

步骤s3.3中,更新粒子的速度与位置的公式如下:

s1=c1*r1*(best1-x(i-1))(5)

s2=c2*r2*(best2-x(i-1))(6)

v(i)=w*v(i-1)+s1+s2(7)

x(i)=x(i-1)+v(i)(8)

其中,s1和s2分别表示自身增益和全局增益,c1和c2分别表示个体学习因子和全局学习因子,r1和r2表示在0~1之间的随机数,best1和best2分别表示当前粒子的个体最佳位置和全局最佳位置,v(i)和x(i)分别表示更新后粒子的速度和位置,v(i-1)和x(i-1)分别表示更新前粒子的速度和位置,w表示权重。

步骤s4所述得到优化后的elman神经网络,方法如下:

s4.1:对elman神经网络中的输入层、隐含层、联系单元层以及输出层之间关连的初始权值及阈值进行编码;设elman神经网络的输入层有a个节点,隐含层有b个节点,输出层有c个节点,则网络权值共有(a*b+b*c)个,阈值共有(b+c)个,得到大小为1行(a*b+b*c+b+c)列的矩阵,作为粒子群优化算法的初始粒子值;

s4.2:设视频图像数据集有f张图像,选取视频图像数据集中时刻较前的p张图像作为训练样本,视频图像数据集的剩余f-p张图像作为测试样本;将训练样本经过步骤s2所述量化处理,得到目标特征及其量化值;同时将训练样本输入步骤s3所述优化后的kalman滤波算法,得到kalman算法输出的预测位置坐标;将获取的目标特征的量化值和kalman预测位置坐标进行参数组合,将组合参数作为elman神经网络的训练输入参数,对应的真实位置坐标作为训练输出值,对elman神经网络进行训练;

s4.3:elman神经网络训练完成后,将测试样本经过步骤s2所述量化处理,得到目标特征及其量化值;同时将测试样本输入步骤s3所述优化后的kalman滤波算法,得到kalman算法输出的预测位置坐标;将获取的目标特征的量化值和kalman预测位置坐标进行参数组合,将组合参数作为训练后的elman神经网络的输入参数,得到神经网络输出值,将测试样本中移动目标的真实位置坐标与神经网络输出值进行比较,判断网络训练是否达到预期,如果未达到预期,返回步骤s4.2继续训练;否则,输出测试样本中第f-p-1张图像的移动目标的神经网络预测位置坐标,进入步骤s4.4;

s4.4:将步骤s4.3输出的目标预测位置坐标与目标的真实位置坐标进行误差计算,计算结果作为elman优化阶段粒子群优化算法的粒子适应度fit2,表示为:

s4.5:运行粒子群优化算法,根据步骤s4.4得到的粒子适应度,计算得到粒子的个体最佳位置以及全局最佳位置,并判断是否达到在粒子群优化算法中设置的最大迭代次数,如果达到,则输出最优解,进入步骤s4.6;否则,更新粒子的位置及其速度,并将更新后的粒子作为elman神经网络新的权值及阈值,重复步骤s4.2至s4.5;

s4.6:将elman优化阶段粒子群优化算法的最优解对应的粒子进行解码,并作为最终的elman神经网络的权值及阈值,得到优化后的elman神经网络。

kalman算法、kalman优化算法、elman算法以及本发明方法中的粒子群优化算法分别选取5粒子、10粒子、20粒子时的累积预测误差值对比如图4所示。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1