‘壹’ 目标跟踪检测算法(一)——传统方法
姓名:刘帆;学号:20021210609;学院:电子工程学院
https://blog.csdn.net/qq_34919792/article/details/89893214
【嵌牛导读】目标跟踪算法研究难点与挑战在于实际复杂的应用环境 、背景相似干扰、光照条件的变化、遮挡等外界因素以及目标姿态变化,外观变形,尺度变化、平面外旋转、平面内旋转、出视野、快速运动和运动模糊等。而且当目标跟踪算法投入实际应用时,不可避免的一个问题——实时性问题也是非常的重要。正是有了这些问题,才使得算法研究充满着难点和挑战。
【嵌牛鼻子】目标跟踪算法,传统算法
【嵌牛提问】利用目标跟踪检测算法要达到何目的?第一阶段的单目标追踪算法包括什么?具体步骤有哪些?它们有何特点?
【嵌牛正文】
第一阶段
目标跟踪分为两个部分,一个是对指定目标寻找可以跟踪的特征,常用的有颜色,轮廓,特征点,轨迹等,另一个是对目标特征进行跟踪。
1、静态背景
1)背景差: 对背景的光照变化、噪声干扰以及周期性运动等进行建模。通过当前帧减去背景图来捕获运动物体的过程。
2)帧差: 由于场景中的目标在运动,目标的影像在不同图像帧中的位置不同。该类算法对时间上连续的两帧或三帧图像进行差分运算,不同帧对应的像素点相减,判断灰度差的绝对值,当绝对值超过一定阈值时,即可判断为运动目标,从而实现目标的检测功能。
与二帧差分法不同的是,三帧差分法(交并运算)去除了重影现象,可以检测出较为完整的物体。帧间差分法的原理简单,计算量小,能够快速检测出场景中的运动目标。但帧间差分法检测的目标不完整,内部含有“空洞”,这是因为运动目标在相邻帧之间的位置变化缓慢,目标内部在不同帧图像中相重叠的部分很难检测出来。帧间差分法通常不单独用在目标检测中,往往与其它的检测算法结合使用。
3)Codebook
算法为图像中每一个像素点建立一个码本,每个码本可以包括多个码元(对应阈值范围),在学习阶段,对当前像素点进行匹配,如果该像素值在某个码元的学习阈值内,也就是说与之前出现过的某种历史情况偏离不大,则认为该像素点符合背景特征,需要更新对应点的学习阈值和检测阈值。
如果新来的像素值与每个码元都不匹配,则可能是由于动态背景导致,这种情况下,我们需要为其建立一个新的码元。每个像素点通过对应多个码元,来适应复杂的动态背景。
在应用时,每隔一段时间选择K帧通过更新算法建立CodeBook背景模型,并且删除超过一段时间未使用的码元。
4)GMM
混合高斯模型(Gaussian of Micture Models,GMM)是较常用的背景去除方法之一(其他的还有均值法、中值法、滑动平均滤波等)。
首先我们需要了解单核高斯滤波的算法步骤:
混合高斯建模GMM(Gaussian Mixture Model)作为单核高斯背景建模的扩展,是目前使用最广泛的一种方法,GMM将背景模型描述为多个分布,每个像素的R、G、B三个通道像素值的变化分别由一个混合高斯模型分布来刻画,符合其中一个分布模型的像素即为背景像素。作为最常用的一种背景建模方法,GMM有很多改进版本,比如利用纹理复杂度来更新差分阈值,通过像素变化的剧烈程度来动态调整学习率等。
5)ViBe(2011)
ViBe算法主要特点是随机背景更新策略,这和GMM有很大不同。其步骤和GMM类似。具体的思想就是为每个像素点存储了一个样本集,样本集中采样值就是该像素点过去的像素值和其邻居点的像素值,然后将每一个新的像素值和样本集进行比较来判断是否属于背景点。
其中pt(x)为新帧的像素值,R为设定值,p1、p2、p3….为样本集中的像素值,以pt(x)为圆心R为半径的圆被认为成一个集,当样本集与此集的交集大于设定的阈值#min时,可认为此为背景像素点(交集越大,表示新像素点与样本集越相关)。我们可以通过改变#min的值与R的值来改变模型的灵敏度。
Step1:初始化单帧图像中每个像素点的背景模型。假设每一个像素和其邻域像素的像素值在空域上有相似的分布。基于这种假设,每一个像素模型都可以用其邻域中的像素来表示。为了保证背景模型符合统计学规律,邻域的范围要足够大。当输入第一帧图像时,即t=0时,像素的背景模型。其中,NG(x,y)表示空域上相邻的像素值,f(xi,yi)表示当前点的像素值。在N次的初始化的过程中,NG(x,y)中的像素点(xi,yi)被选中的可能次数为L=1,2,3,…,N。
Step2:对后续的图像序列进行前景目标分割操作。当t=k时,像素点(x,y)的背景模型为BKm(x,y),像素值为fk(x,y)。按照下面判断该像素值是否为前景。这里上标r是随机选的;T是预先设置好的阈值。当fk(x,y)满足符合背景#N次时,我们认为像素点fk(x,y)为背景,否则为前景。
Step3:ViBe算法的更新在时间和空间上都具有随机性。每一个背景点有1/ φ的概率去更新自己的模型样本值,同时也有1/ φ的概率去更新它的邻居点的模型样本值。更新邻居的样本值利用了像素值的空间传播特性,背景模型逐渐向外扩散,这也有利于Ghost区域的更快的识别。同时当前景点计数达到临界值时将其变为背景,并有1/ φ的概率去更新自己的模型样本值(为了减少缓慢移动物体的影响和摄像机的抖动)。
可以有如下总结,ViBe中的每一个像素点在更新的时候都有一个时间和空间上随机影响的范围,这个范围很小,大概3x3的样子,这个是考虑到摄像头抖动时会有坐标的轻微来回变化,这样虽然由于ViBe的判别方式仍认为是背景点,但是也会对后面的判别产生影响,为了保证空间的连续性,随机更新减少了这个影响。而在样本值保留在样本集中的概率随着时间的增大而变小,这就保证了像素模型在时间上面的延续特性。
6)光流
光流是由物体或相机的运动引起的图像对象在两个连续帧之间的视在运动模式。它是2D矢量场,其中每个矢量是一个位移矢量,显示点从第一帧到第二帧的移动。
光流实际上是一种特征点跟踪方法,其计算的为向量,基于三点假设:
1、场景中目标的像素在帧间运动时亮度(像素值或其衍生值)不发生变化;2、帧间位移不能太大;3、同一表面上的邻近点都在做相同的运动;
光流跟踪过程:1)对一个连续视频帧序列进行处理;2)对每一帧进行前景目标检测;3)对某一帧出现的前景目标,找出具有代表性的特征点(Harris角点);4)对于前后帧做像素值比较,寻找上一帧在当前帧中的最佳位置,从而得到前景目标在当前帧中的位置信息;5)重复上述步骤,即可实现目标跟踪
2、运动场(分为相机固定,但是视角变化和相机是运动的)
1)运动建模(如视觉里程计运动模型、速度运动模型等)
运动学是对进行刚性位移的相机进行构型,一般通过6个变量来描述,3个直角坐标,3个欧拉角(横滚、俯仰、偏航)。
Ⅰ、对相机的运动建模
由于这个不是我们本次所要讨论的重点,但是在《概率机器人》一书中提出了很多很好的方法,相机的运动需要对图像内的像素做位移矩阵和旋转矩阵的坐标换算。除了对相机建立传统的速度运动模型外,也可以用视觉里程计等通关过置信度的更新来得到概率最大位置。
Ⅱ、对于跟踪目标的运动建模
该方法需要提前通过先验知识知道所跟踪的目标对象是什么,比如车辆、行人、人脸等。通过对要跟踪的目标进行建模,然后再利用该模型来进行实际的跟踪。该方法必须提前知道要跟踪的目标对象是什么,然后再去跟踪指定的目标,这是它的局限性,因而其推广性相对比较差。(比如已知跟踪的物体是羽毛球,那很容易通过前几帧的取点,来建立整个羽毛球运动的抛物线模型)
2)核心搜索算法(常见的预测算法有Kalman(卡尔曼)滤波、扩展卡尔曼滤波、粒子滤波)
Ⅰ、Kalman 滤波
Kalman滤波器是通过前一状态预测当前状态,并使用当前观测状态进行校正,从而保证输出状态平稳变化,可有效抵抗观测误差。因此在运动目标跟踪中也被广泛使用。
在视频处理的运动目标跟踪里,每个目标的状态可表示为(x,y,w,h),x和y表示目标位置,w和h表示目标宽高。一般地认为目标的宽高是不变的,而其运动速度是匀速,那么目标的状态向量就应该扩展为(x,y,w,h,dx,dy),其中dx和dy是目标当前时刻的速度。通过kalman滤波器来估计每个时刻目标状态的大致过程为:
对视频进行运动目标检测,通过简单匹配方法来给出目标的第一个和第二个状态,从第三个状态开始,就先使用kalman滤波器预测出当前状态,再用当前帧图像的检测结果作为观测值输入给kalman滤波器,得到的校正结果就被认为是目标在当前帧的真实状态。(其中,Zt为测量值,为预测值,ut为控制量,Kt为增益。)
Ⅱ、扩展卡尔曼滤波(EKF)和无迹卡尔曼滤波(UKF)
由于卡尔曼滤波的假设为线性问题,无法直接用在非线性问题上,EKF和UKF解决了这个问题(这个线性问题体现在用测量量来计算预测量的过程中)。EKF是通过构建线性函数g(x),与非线性函数相切,并对每一时刻所求得的g(x)做KF,如下图所示。
UKF与EKF去求解雅可比矩阵拟合线性方程的方法不同,通过对那个先验分布中的采集点,来线性化随机变量的非线性函数。与EKF所用的方法不同,UKF产生的高斯分布和实际高斯分布更加接近,其引起的近似误差也更小。
Ⅲ、粒子滤波
1、初始状态:基于粒子滤波的目标追踪方法是一种生成式跟踪方法,所以要有一个初始化的阶段。对于第一帧图像,人工标定出待检测的目标,对该目标区域提出特征;
2、搜索阶段:现在已经知道了目标的特征,然后就在目标的周围撒点(particle), 如:a)均匀的撒点;b)按高斯分布撒点,就是近的地方撒得多,远的地方撒的少。论文里使用的是后一种方法。每一个粒子都计算所在区域内的颜色直方图,如初始化提取特征一样,然后对所有的相似度进行归一化。文中相似性使用的是巴氏距离;
3、重采样:根据粒子权重对粒子进行筛选,筛选过程中,既要大量保留权重大的粒子,又要有一小部分权重小的粒子;
4、状态转移:将重采样后的粒子带入状态转移方程得到新的预测粒子;
5、测量及更新:对目标点特征化,并计算各个粒子和目标间的巴氏距离,更新粒子的权重;
6、决策阶段:每个粒子都获得一个和目标的相似度,相似度越高,目标在该范围出现的可能性越高,将保留的所有粒子通过相似度加权后的结果作为目标可能的位置。
3)Meanshift算法
MeanShift算法属于核密度估计法,它不需要任何先验知识而完全依靠特征空间中样本点的计算其密度函数值。对于一组采样数据,直方图法通常把数据的值域分成若干相等的区间,数据按区间分成若干组,每组数据的个数与总参数个数的比率就是每个单元的概率值;核密度估计法的原理相似于直方图法,只是多了一个用于平滑数据的核函数。采用核函数估计法,在采样充分的情况下,能够渐进地收敛于任意的密度函数,即可以对服从任何分布的数据进行密度估计。
Meanshift算法步骤
1、通过对初始点(或者上一帧的目标点)为圆心,绘制一个半径为R的圆心,寻找特征和该点相似的点所构成的向量;
2、所有向量相加,可以获得一个向量叠加,这个向量指向特征点多的方向;
3、取步骤二的向量终点为初始点重复步骤一、二,直到得到的向量小于一定的阈值,也就是说明当前位置是特征点密度最密集的地方,停止迭代,认为该点为当前帧的目标点;
4)Camshift算法
Camshift算法是MeanShift算法的改进,称为连续自适应的MeanShift算法。Camshift 是由Meanshift 推导而来 Meanshift主要是用在单张影像上,但是独立一张影像分析对追踪而言并无意义,Camshift 就是利用MeanShift的方法,对影像串行进行分析。
1、首先在影像串行中选择目标区域。
2、计算此区域的颜色直方图(特征提取)。
3、用MeanShift算法来收敛欲追踪的区域。
4、通过目标点的位置和向量信息计算新的窗口大小,并标示之。
5、以此为参数重复步骤三、四。
Camshift 关键就在于当目标的大小发生改变的时候,此算法可以自适应调整目标区域继续跟踪。
3、小结
第一阶段的单目标追踪算法基本上都是传统方法,计算量小,在嵌入式等设备中落地较多,opencv中也预留了大量的接口。通过上面的两节的介绍,我们不难发现,目标检测算法的步骤分为两部分,一部分是对指定目标寻找可以跟踪的特征,常用的有颜色,轮廓,特征点,轨迹等,另一部分是对目标特征进行跟踪,如上文所提及的方法。所以目标检测方法的发展,也可总结为两个方面,一个是如何去获得更加具有区分性的可跟踪的稳定特征,另一个是如何建立帧与帧之间的数据关联,保证跟踪目标是正确的。
随着以概率为基础的卡尔曼滤波、粒子滤波或是以Meanshift为代表向量叠加方法在目标检测的运用,使得目标检测不再需要假设自身的一个状态为静止的,而是可以是运动的,更加符合复杂场景中的目标跟踪。
‘贰’ 多假设追踪方法mht是什么算法
MHT算法是多假设多目标跟踪算法,这种方法简单来说就是把所有出现的目标都进行跟踪假设,连续跟踪几帧之后,有些假设就站不住脚了,被“剪枝”掉。留下来的就是真实的目标跟踪。显然,这种方法理想情况下表现不错,但是当目标数量很大时,计算量将呈指数倍上升。
与之对应的是另一种算法,联合概率数据关联算法(JPDA),这种传统跟踪算法的基本思想是对每个检测目标赋予与跟踪路径之间的关联概率,关联概率高的将检测结果和跟踪路径相匹配。 这种算法在噪声高的环境下比较实用。但是也有速度瓶颈。
‘叁’ 教师为了检测教学目标的达成有哪些评价方式
教学目标达成的检测方法包括:提问、作业、测验、考试和与学生平时的交谈等。
第一,通过提问检测。美国教育家卡尔汉认为:“提问是教师促进学生思维,评价教学效果以及推动学生实现预期目标的基本控制手段”。所以提问被教师广泛采用成为最直接的控制手段。对于中学生,首先要克服学生发言的心理障碍。由于年龄的增长,面对新的集体,陌生的同学,开始表现为不愿出头露面,上课怕提问更不肯举手。这是集体压力和从众行为在学生心理作用的结果,怕答不上来被人笑话,为了求得心理平安,不愿过多地发表自己的观点和看法。这对学生学习新知识和教师教学目标的达成检测造成一定的困难。当然有一部分学生还保留着初中学习时的良好习惯。此时,教师应充分重视这方面的学生心理变化,一方面,要积极创设一个民主的课堂教学环境,对善于表达内心看法和积极发言的同学多给以一些语言和形体上的赞许,满足学生成功后得到认可的要求,也为大部分学生树立表率。其次,教师应重视提问形式,提问要把握时机,有层次、适度。形式上个人回答和集体回答、个人板演和集体练习相结合。对较简单的识记类知识点,一般采用特指或泛指方式由个体回答,对应用性知识可采用一人主答,多人补充,以求全面恰当的答案。对于某些拓展性知识,虽然难度较大,但对学生创造能力的培养,开阔学生思路具有积极意义,因此可先组织讨论,在讨论过程中教师可适当加以诱导和暗示,使学生少走弯路。
教与学的双边活动过程中,既发挥教师的主导作用,又发挥学生的主体作用,通过提问教师及时得到信息反馈,检验了课时教学目标的达成程度,以便及时补救。
第二,课内外作业和测验的检测。课堂提问虽说能直接、真实反应学生掌握情况。但毕竟面较窄,不能反应全体学生的整体情况。所以平时作业和测验能补救提问的不足,作业和测验的优点就是面广、清楚。既反应每个人的学习情况,又能反应学生整体的掌握情况。所以教师既要重视课堂提问,又要重视作业情况的反馈。
在批改作业和试卷时,应作好清晰的记载。我在这方面主要记二个数据:一是每小题的错误率,主要统计每班做错人数和典型错误类型。在复习和讲评时做到有的放矢,把时间化在错误率较高和典型错误上,既节省时间又照顾到大多数,不至于使大部分学生陪少数人重复一些简单的知识,提高了效率。从而提高学生学习的积极性。二是记录错误较高的学生名单。对错误较多(学习困难)的学生,主要采用面对面辅导为主,这样才能顾及少数学习困难学生的利益,又能培养师生感情,使他们有信心学好生物。
总之,提问、作业、测验都能检测教学目标的达成程度,教师通过检测来调节教学进程。教师在教学过程中,不仅要重视课堂教学的整个过程,包括目标的确立,目标的实施;更要重视目标的达成测试。只有这样才能踏踏实实地提高教学质量,提高学生的整体素质。
‘肆’ 多目标决策方法的主要的方法
(1)化多为少法:将多目标问题化成只有一个或二个目标的问题,然后用简单的决策方法求解,最常用的是线性加权和法。
(2)分层序列法:将所有目标按其重要性程度依次排序,先求出第一个最重要的目标的最优解,然后在保证前一目标最优解的前提下依次求下一目标的最优解,一直求到最后一个目标为止。
(3)直接求非劣解法:先求出一组非劣解,然后按事先确定好的评价标准从中找出一个满意的解。
(4)目标规划法:对于每一个目标都事先给定一个期望值,然后在满足系统一定约束条件下,找出与目标期望值最近的解。
(5)多属性效用法:各个目标均用表示效用程度大小的效用函数表示,通过效用函数构成多目标的综合效用函数,以此来评价各个可行方案的优劣。
(6)层次分析法:把目标体系结构予以展开,求得目标与决策方案的计量关系。
(7)重排序法:把原来的不好比较的非劣解通过其他办法使其排出优劣次序来。
(8)多目标群决策和多目标模糊决策等。 多目标决策一般包括多目标决策和多属性决策,是一门应用非常广泛的学科。目前,无论在理论上、方法上和应用方面都取得了迅速的发展。书中以方法和实例相结合,既介绍目前常用的多目标决策方法,又包含模糊多目标优化、多属性群体决策求解方法。
本书总结了编者多年来教学与科学的成果,既可作为高等学校有关专业高年级学生和研究生教材,也可为运筹学、管理学、计算机科学、系统科学、信息科学与工程等各行各业,进行生产经营、生产计划、生产作业管理的高级管理人员和系统分析人员,应用计算机辅助决策提供参考。 前言
第1章线性规划
1.1基本概念
1.1.1线性规划问题举题
1.1.2二维线性规划的几何图解
1.1.3线性规划的标准形式
1.2单纯形法求解
1.3单纯形表
1.4人工变量与两阶段法
第2章非线性规划
2.1非线性规划问题举例
2.2基础知识
2.2.1梯度
2.2.2凸集
2.2.3凸函数
2.3无约束问题的最优解
2.4有等式约束问题的最优解
2.5有不等式约束问题的最优解
2.6无约束问题的近似解法
2.6.1梯度法
2.6.2牛顿法
2.7有约束问题的近似解法
2.7.1罚函数法(外点法)
2.7.2障碍函数法(内点法)
第3章整数规划
3.1整数规划问题举例
3.2分支定界方法
3.3分支定界法求解步骤
第4章决策的基本理论
4.1决策分析基础
4.1.1随机情况下决策问题的基本特点
4.1.2不确定情况的决策规划
4.1.3风险决策的决策——期望货币价值规则(EMV)
4.2主观概率
4.2.1主观概率的基本概念
4.2.2主观设定先验分布的方法
4.2.3利用过去数据设定先验分布
4.3价值和价值函数
4.3.1结局集上的选好结构
4.3.2确定型问题的价值函数
4.4效用函数
4.4.1货币结局的效用
4.4.2价值和效用函数的估值
4.4.3效用函数的型式
4.4.4多属性价值函数
4.4.5多属性效用函数
第5章多目标最优化基本概念
5.1多目标最优化问题举例
5.2多目标优化问题的非劣解
5.2.1劣解与非劣解
5.2.2在决策空间的非劣解
5.3锥的概念
5.4非劣解的几何意义
5.5弱非劣解的几何意义
5.6多目标优化问题的求解方法
第6章求解非劣的方法
6.1用加权法求非劣解集
6.1.1P(ω)问题的数值解法
6.1.2非劣解集估计法(NISE法)
6.2用Ρ(ε)约束法求非劣解集
6.2.1Ρ(ε)问题的数值解法
6.2.2Ρ(ε)问题的分析法求解
第7章有总体选好信息的求解方法
7.1选好函数与选好最优解
7.2字典序法
7.3理想点法
7.4目的规划法
……
第8章基于局部选好信息的交互式方法
第9章多属性问题求解方法
第10章模糊多目标化问题
第11章多属性群体决策方法
参考文献