图像跟踪与识别-TLD学习笔记,TLD跟踪算法详解



半自主单目标跟踪
人工跟踪:每一帧都需要人互动输入
主动跟踪:需要目标的先验信息初始化
半主动跟踪:第一帧需要人互动输入去初始化跟踪程序


1 Tracking:
在这个方法中,没有目标的先验信息,需要外部的初始化。在本文的方法中,初始化是通过在第一帧进行人为的干预。
首先,在第t帧的边界框中构造一个等距的点集,在左边的图像中显示。接下来,使用Lucas和Kanade的方法对每一个点的光流进行估计。这个方法,对于位于拐角的点并且同一区域没有跟踪点是最合适的。
通过使用Lucas-Kanade方法的信息之外,还引用了两个不同的误差指标,正则化交叉相关,和前向后向误差,去过滤掉错误的跟踪点。
如果所有的点的FBerror的均值如果大于阈值,就会认为跟踪产生了漂移整个递归的跟踪会被全部停止。
最后,剔除掉错误的跟踪点和不好的点,剩下的点被用于估计下一阵目标框的位置,通过使用一个位移和尺度的模型。
1.1 光流法的估计:
Lucas and Kanade 提出光流法, 基于以下 三个假设
1,光照不变(亮度)

d是位移向量
2,小动作幅度(temporal persistence)于是有以下近似公式:
所以位移向量能这样近似估计:
3.空间协同性,在一个像素的附近小窗口内,所有像素协同运动,通过这个假设,d可以通过最小化(2.4):
2.4闭式解:

1.2 误差测量:
三个指标
1。G矩阵的两个的特征值:在两个方向上都有梯度时,只有当这两个特征值足够大时这个G矩阵才是确实可靠地可逆的。
2。前向后向误差, p是原图的点, LK(p)是进行一次光流计算,p两飘是点经过前向和后向的光流传导后的点, 如果向前向后之后这个点的距离与原点差距很小(欧式距离)那么认为这个点适合作为光流法进行计算位移矢量计算。
3。空间协同性: 第三个误差基于图块附近(P)以及跟踪结果的附近(P一飘)的相似程度。 另外,两个图块p1和p2的相似程度是用正则化交叉相关(NCC)来衡量的:
u1,u2,theta1,theta2是均值和标准差。ncc越大越相似。
1.3 平移模型:
medFB:所有前后向误差的均值, medNCC:所有近似性(NCC)的平均值。
几个规则: 只使用小于medFB并且大于medNCC的点去进行FB计算。
如果medFB大于thetaFB阈值,那么终止跟踪,认为跟踪失败。
算法流程
2 Detection:
当递归跟踪器自身无法维持目标模型进而无法从失败中恢复,目标检测就会让我们能够重新初始化。
使用滑窗的方法进行全局搜索。
一个分辨率640x480的图片,可以生成50000到200000个窗口,每个宽口都会单独进行目标检测。每一个次级窗口都会进行串联式的四个阶段的筛选,串联机制就是为了剔除掉不相关的次级窗口。
第一阶段: 背景差分,剔除掉属于背景的次级宽口,把搜索区域限制在前景范围(需要一个背景的模型,如果没有这步会跳过)。
第二阶段:方差抑制,剔除掉方差小于阈值的窗口。
第三阶段:随机撅,一个集成分类器
第四阶段:相似性检测模板匹配,基于正则化相关系数。
2.1 滑窗方法:
首先呢,一个输入图像的次级窗口有很多个,量级巨大,并且其数量级的增长呈n的4次方增长(nxn尺寸)。
为了限制次级窗口的数量,建立这样一个亚空间:R
两个相邻的次级窗口在边长上的增量dx and dy,=1/10初始窗口边长。
然后尺度因子:s = 1.2a,a ∈ {−10. . .10}
w,h是初始框的边长,n,m是图像的宽高
例如:对于w=80,h=60,一个VGA图像中的次级窗口的数量是:146190个。
每个亚窗口独立测试(多线程)。
2.2 前景检测:
背景去除可以加速程序,分为4步:
1。Ibg and I的绝对距离,Ibg是背景图。
2。Ibinary:阈值设置为16,大于100是前景置1,小于16是背景置0,生成一个二进制图像Ibinary。
3,标签算法:在二进制图像中,为1的称为白像素,要把白像素连接成为组件,进而找到前景所在的组件,然后用一个最小的框把前景组件框起来。连接白像素点为组件的过程使用了标签算法。
4。最小前景边框:在找到所有可能是前景的组件之后,还需要剔除掉比较小的组件,找到最主要的组件,然后用一个最小的框把前景组件框起来。
2.3 方差滤波器:
在这个部分,我们提出了一个机制:
使用积分图去计算一个亚窗口的方差,如果一个图块的方差低于阈值theta2min,这个图块就会被去除。
这个机制能快速地去除背景元素。但是不能区分不同的目标。
计算反差步骤:
一个图像块B被看成一个一维的向量。并且,第i个像素用xi符号去表示。对于图像来说,方差的公式是:
n是图块像素总数,u是:
3.4式子的一个替代公式是:
如果直接使用3.6式子进行方差计算,对于n个像素的图块,需要进行n次记忆查询,并且对于有重合的两个图块来说,计算还会重复。所以提出一个新方法,把原图I转换成积分图I'。这样只需要进行8次记忆查询。
积分图I':
积分图的性质:可以被分解为四部分:

那么对于某个图块(ABCD)中像素的总和,它可以使用积分图来计算:
式子中的B是图块框B.(x y w h)
用一维积分图的方法3.9(3.10)可以用来计算3.6式子中的u=I'(B)/n.
然后3.6中还有一部分∑xi²同样也可以使用类似的方法,二维积分图。
最终可以使用3.13式子,利用一维和二维积分图快速计算图块B方差。
ABCD内像素的总和的计算步骤:从左上原点加到D,减去原点到B减去原点到C,加上原点到A.
通过积分图进行四次查询就可以完成计算。
2.4 集成分类器:
随机厥:
单个撅的步骤:
随机撅步骤举例,在算法跟踪初始化的时候,在随机生成S个( 使用特征的个数)像素对位置(di,1 and di,2),初始化之后这些像素对位置就不再变化了(相当于一个随机生成的二进制特征提取)人,如上面例子所示:
对于 单个撅来说:
1。初始化,随机选定4个( S=4,使用特征的个数)像素对位置,(di,1 and di,2).
2。亮度对比,对比每个像素对位置对应的像素的亮度.如果I(di,1)大于I(di,2),者置1,否则置0
3。例子中是1101,翻译为十进制为F=13(特征值),S是特征的个数( S=4),这会决定特征值F的最大值 2S −1.。
4。检索概率,特征值F是用来检索概率 P(y = 1 | F) ,y=1表示事件:当前亚窗口中含有正样本。具体的概率计算方法会在第4部分讲解。
5。随机撅正样本概率分数:
PFk是P-约束在当前特征提取中应用的次数,NFk是N-约束应用的次数。 概率分数具体的计算将在Learning中详细讲解。
单个撅的算法流程:

维数灾难:
如果只使用单个撅,不得不使用大量的特征(大的S),但是与此同时训练样本的需求量同时也会增加,这个问题叫做维数灾难,具体解决方法被Amit and Geman 发现了,通过使用多个撅,最后把结果进行平均,这样就同样能获得满意的结果。
对于TLD来说,使用了 3个撅 ,最后平均值(Ppos置信值)的计算公式:
流程示例:
2.5 模板匹配:
这一部分的模板匹配更加严格,是像素级别的,把输入亚窗口图像resize到15X15,然后对比两个图像块 P1 and P2, 使用NCC(正则化相关系数):
μ1,μ2,s1 and s2 是P1 and P2.的平均值和标准差 ,这个距离测量也叫做Pearson相关系数。
从几何角度来翻译,这个系数代表了两个正则化向量的夹角余弦。NCC会生成-1到1的值,越接近1这两个图像块就越相似。 对于ncc值处于0-1之间的值,我们定义了一个距离公式:
正样本模板P+ 和负样本模板 P−都会保存。模板在线学习。
对于未知标签的输入图块P:
与正样本的距离:
与负样本的距离:
置信度P+:
知道输入样本点距离正样本的距离 d+以及与负样本的距离d-之后,引入一个 置信分数p+(代表是正样本的概率大小,越大越可能是正样本):


正样本负样本例子
置信分数P+与d+和d-的关系。
2.6 非最大值抑制 :
问题提出 :
绿框是目标的检测,还款阿甘是其他同样拥有高置信度的重叠的亚窗口。
Blaschk指出,只考虑产生最大置信度分数的那个亚窗口是有问题的,因为其可能不是最佳结果,其会导致其他局部最大值结果被忽视掉。所有引入非最大值抑制策略就很合适,可以用来识别有关的局部最大值。
重叠度计算:

算法策略:
使用阶层式分群演算法( hierarchical clustering algorithm ):
1。计算所有置信的边界框之间的两两重叠度。
2。从一个边界框开始,搜寻最近的边界便借款, 如果这个距离小于给定的 中止阈值,我们就把这个框放进同样的集群中,而且,如果其中一个边框已经在集群中了,我们就会合并这些集群。 如果重叠率高于中止阈值(?????为什么是重叠度高) ,我们就把他们放进不同的集群中。
3。然后进行到下一个边界框,我们使用0.5作为 中止阈值。
detection汇总:
各个部分计算量需求:
detection递进算法 :
3 Learning:
由于tracking和detection是平行同步运行的,而Learning就是去结合这两个方法的输出变成一个唯一的结果。
首先,除了背景模型和方差滤波器的阈值不是自适应的(需要提前给出,无法自适应改变)。 集成分类器和模板匹配都是在线训练的。
在Learning中,我们实施了两个P/N-Learning 约束, 第一个约束是在最终结果附近的所有图块都要检测器识别为正样本。而其他图块必须被检测器识别为负样本(即不存在正样本误识别,负样本正识别的错误发生)。
3.1 融合和有效性:
融合递归tracker 结果Rt和置信度detection结果Dt为一个最终结果Bt的算法:

p+Dt detection置信值,p+Rt tracking置信值。
line4,5:当检测器的置信值比跟踪器的高时,然后就会把检测器的响应作为最后结果,这个过程称为 重-初始化过程,line7,否则就把置信度较高的跟踪器结果作为最终结果。对于其他特殊情况,最终结果为空,因为此时目标可能不可见。
valid(Bt) 是表示最终结果Bt的正确性(表征着对最终结果的高度置信)。只有valid(Bt)是true,接下来的学习更新步骤才会进行。
最终结果是否有效(valid(Bt) ),有几个条件:
1,跟踪器没有被检测器 重-初始化 。line4
2,跟踪器的置信值高于上阈值 theta+ 。line8
3,或者在 前一帧的结果是有效的情况下(valid(Bt−1)=1)跟踪器的阈值高于下阈值theta-。line10
上阈值 theta+表示结果属于正样本集合。
下阈值 theta-(=0.5)表示结果属于负样本集合。
3.2 P/N-Learning :
一个半监督学习,既有标记的样本也有未标记的样本。
在p/nlearning中,这里有两种约束:
P-约束:识别哪些被错误分为负样本的样本(实际应该是正),并把其放入正样本集合中,(纠正漏检)。P约束要求所有与最终结果高度重合(>60%)的图块必须被分类为正样本。
N-约束:识别哪些被错误分为正样本的样本(实际应该是负),并把其放入负样本集合中,(纠正误检)。N约束要求所有与有效的最终结果不重合(<20%)的必须被分类为负样本 。
PN约束
Xu:未标记样本,Xl:标记过的样本,Xc:分类错误的例子,Xt:用于训练分类器样本。R:滑窗亚窗口空间。
流程:
1。xu经过分类器,给定标签Yu-》Xu。
2。P/N约束根据准则,识别分类错误的Xc,并给定标签Yc-》Xc。
3。Xl与Xc一起作为训练集,进入训练模块。
4。训练结果用于更新分类器。
P/N算法流程:

A:置信度高,学习在进行,但是没有更新正样本库,B:正样本库更新,C:置信度地狱下阈值,结果无效,学习不进行 D:虽然D在上下阈值之间,但是前一帧结果无效,故不满足结果Bt有效的条件3,所有结果无效,不学习无更新。
P(y = 1 | Fk):
随机撅中正样本概率分数P(y = 1 | Fk)的计算方法:
PFk是P-约束在当前特征提取中应用的次数,NFk是N-约束应用的次数。
3.3 算法主循环:
3.4 其他人总结Learning:
(1)初始化
1 在扫描网格中选择距离初始目标框最近的10个方框,在每个方框的内部进行20次几何变换(±1%偏移和尺度变化,±10%平面内旋转), 则10个box产生200个仿射变换的方框,作为集成分类器的正样本Px;
2 目标框外的其他图像块都是负样本,将其中方差大于阈值的图像块都加入集成分类器的负样本Nx;
3 初始化后验概率。
(2)P-约束
P-expert根据在线模型评估跟踪器结果的可靠性。如果当前位置可靠,则生成一组正样本去更新目标模型和集合分类器。生成正样本的方法与初始化时类似,但是只生成100个正样本。
(3)N-约束
N-expert 生成负训练样本。如果跟踪器结果可靠,那么距离目标位置较远(重叠度 < 0.2)的方框将被标注为负样本。

半自主单目标跟踪
人工跟踪:每一帧都需要人互动输入
主动跟踪:需要目标的先验信息初始化
半主动跟踪:第一帧需要人互动输入去初始化跟踪程序


1 Tracking:
在这个方法中,没有目标的先验信息,需要外部的初始化。在本文的方法中,初始化是通过在第一帧进行人为的干预。
首先,在第t帧的边界框中构造一个等距的点集,在左边的图像中显示。接下来,使用Lucas和Kanade的方法对每一个点的光流进行估计。这个方法,对于位于拐角的点并且同一区域没有跟踪点是最合适的。
通过使用Lucas-Kanade方法的信息之外,还引用了两个不同的误差指标,正则化交叉相关,和前向后向误差,去过滤掉错误的跟踪点。
如果所有的点的FBerror的均值如果大于阈值,就会认为跟踪产生了漂移整个递归的跟踪会被全部停止。
最后,剔除掉错误的跟踪点和不好的点,剩下的点被用于估计下一阵目标框的位置,通过使用一个位移和尺度的模型。
1.1 光流法的估计:
Lucas and Kanade 提出光流法, 基于以下 三个假设
1,光照不变(亮度)

d是位移向量
2,小动作幅度(temporal persistence)于是有以下近似公式:
所以位移向量能这样近似估计:
3.空间协同性,在一个像素的附近小窗口内,所有像素协同运动,通过这个假设,d可以通过最小化(2.4):
2.4闭式解:

1.2 误差测量:
三个指标
1。G矩阵的两个的特征值:在两个方向上都有梯度时,只有当这两个特征值足够大时这个G矩阵才是确实可靠地可逆的。
2。前向后向误差, p是原图的点, LK(p)是进行一次光流计算,p两飘是点经过前向和后向的光流传导后的点, 如果向前向后之后这个点的距离与原点差距很小(欧式距离)那么认为这个点适合作为光流法进行计算位移矢量计算。
3。空间协同性: 第三个误差基于图块附近(P)以及跟踪结果的附近(P一飘)的相似程度。 另外,两个图块p1和p2的相似程度是用正则化交叉相关(NCC)来衡量的:
u1,u2,theta1,theta2是均值和标准差。ncc越大越相似。
1.3 平移模型:
medFB:所有前后向误差的均值, medNCC:所有近似性(NCC)的平均值。
几个规则: 只使用小于medFB并且大于medNCC的点去进行FB计算。
如果medFB大于thetaFB阈值,那么终止跟踪,认为跟踪失败。
算法流程
2 Detection:
当递归跟踪器自身无法维持目标模型进而无法从失败中恢复,目标检测就会让我们能够重新初始化。
使用滑窗的方法进行全局搜索。
一个分辨率640x480的图片,可以生成50000到200000个窗口,每个宽口都会单独进行目标检测。每一个次级窗口都会进行串联式的四个阶段的筛选,串联机制就是为了剔除掉不相关的次级窗口。
第一阶段: 背景差分,剔除掉属于背景的次级宽口,把搜索区域限制在前景范围(需要一个背景的模型,如果没有这步会跳过)。
第二阶段:方差抑制,剔除掉方差小于阈值的窗口。
第三阶段:随机撅,一个集成分类器
第四阶段:相似性检测模板匹配,基于正则化相关系数。
2.1 滑窗方法:
首先呢,一个输入图像的次级窗口有很多个,量级巨大,并且其数量级的增长呈n的4次方增长(nxn尺寸)。
为了限制次级窗口的数量,建立这样一个亚空间:R
两个相邻的次级窗口在边长上的增量dx and dy,=1/10初始窗口边长。
然后尺度因子:s = 1.2a,a ∈ {−10. . .10}
w,h是初始框的边长,n,m是图像的宽高
例如:对于w=80,h=60,一个VGA图像中的次级窗口的数量是:146190个。
每个亚窗口独立测试(多线程)。
2.2 前景检测:
背景去除可以加速程序,分为4步:
1。Ibg and I的绝对距离,Ibg是背景图。
2。Ibinary:阈值设置为16,大于100是前景置1,小于16是背景置0,生成一个二进制图像Ibinary。
3,标签算法:在二进制图像中,为1的称为白像素,要把白像素连接成为组件,进而找到前景所在的组件,然后用一个最小的框把前景组件框起来。连接白像素点为组件的过程使用了标签算法。
4。最小前景边框:在找到所有可能是前景的组件之后,还需要剔除掉比较小的组件,找到最主要的组件,然后用一个最小的框把前景组件框起来。
2.3 方差滤波器:
在这个部分,我们提出了一个机制:
使用积分图去计算一个亚窗口的方差,如果一个图块的方差低于阈值theta2min,这个图块就会被去除。
这个机制能快速地去除背景元素。但是不能区分不同的目标。
计算反差步骤:
一个图像块B被看成一个一维的向量。并且,第i个像素用xi符号去表示。对于图像来说,方差的公式是:
n是图块像素总数,u是:
3.4式子的一个替代公式是:
如果直接使用3.6式子进行方差计算,对于n个像素的图块,需要进行n次记忆查询,并且对于有重合的两个图块来说,计算还会重复。所以提出一个新方法,把原图I转换成积分图I'。这样只需要进行8次记忆查询。
积分图I':
积分图的性质:可以被分解为四部分:

那么对于某个图块(ABCD)中像素的总和,它可以使用积分图来计算:
式子中的B是图块框B.(x y w h)
用一维积分图的方法3.9(3.10)可以用来计算3.6式子中的u=I'(B)/n.
然后3.6中还有一部分∑xi²同样也可以使用类似的方法,二维积分图。
最终可以使用3.13式子,利用一维和二维积分图快速计算图块B方差。
ABCD内像素的总和的计算步骤:从左上原点加到D,减去原点到B减去原点到C,加上原点到A.
通过积分图进行四次查询就可以完成计算。
2.4 集成分类器:
随机厥:
单个撅的步骤:
随机撅步骤举例,在算法跟踪初始化的时候,在随机生成S个( 使用特征的个数)像素对位置(di,1 and di,2),初始化之后这些像素对位置就不再变化了(相当于一个随机生成的二进制特征提取)人,如上面例子所示:
对于 单个撅来说:
1。初始化,随机选定4个( S=4,使用特征的个数)像素对位置,(di,1 and di,2).
2。亮度对比,对比每个像素对位置对应的像素的亮度.如果I(di,1)大于I(di,2),者置1,否则置0
3。例子中是1101,翻译为十进制为F=13(特征值),S是特征的个数( S=4),这会决定特征值F的最大值 2S −1.。
4。检索概率,特征值F是用来检索概率 P(y = 1 | F) ,y=1表示事件:当前亚窗口中含有正样本。具体的概率计算方法会在第4部分讲解。
5。随机撅正样本概率分数:
PFk是P-约束在当前特征提取中应用的次数,NFk是N-约束应用的次数。 概率分数具体的计算将在Learning中详细讲解。
单个撅的算法流程:

维数灾难:
如果只使用单个撅,不得不使用大量的特征(大的S),但是与此同时训练样本的需求量同时也会增加,这个问题叫做维数灾难,具体解决方法被Amit and Geman 发现了,通过使用多个撅,最后把结果进行平均,这样就同样能获得满意的结果。
对于TLD来说,使用了 3个撅 ,最后平均值(Ppos置信值)的计算公式:
流程示例:
2.5 模板匹配:
这一部分的模板匹配更加严格,是像素级别的,把输入亚窗口图像resize到15X15,然后对比两个图像块 P1 and P2, 使用NCC(正则化相关系数):
μ1,μ2,s1 and s2 是P1 and P2.的平均值和标准差 ,这个距离测量也叫做Pearson相关系数。
从几何角度来翻译,这个系数代表了两个正则化向量的夹角余弦。NCC会生成-1到1的值,越接近1这两个图像块就越相似。 对于ncc值处于0-1之间的值,我们定义了一个距离公式:
正样本模板P+ 和负样本模板 P−都会保存。模板在线学习。
对于未知标签的输入图块P:
与正样本的距离:
与负样本的距离:
置信度P+:
知道输入样本点距离正样本的距离 d+以及与负样本的距离d-之后,引入一个 置信分数p+(代表是正样本的概率大小,越大越可能是正样本):


正样本负样本例子
置信分数P+与d+和d-的关系。
2.6 非最大值抑制 :
问题提出 :
绿框是目标的检测,还款阿甘是其他同样拥有高置信度的重叠的亚窗口。
Blaschk指出,只考虑产生最大置信度分数的那个亚窗口是有问题的,因为其可能不是最佳结果,其会导致其他局部最大值结果被忽视掉。所有引入非最大值抑制策略就很合适,可以用来识别有关的局部最大值。
重叠度计算:

算法策略:
使用阶层式分群演算法( hierarchical clustering algorithm ):
1。计算所有置信的边界框之间的两两重叠度。
2。从一个边界框开始,搜寻最近的边界便借款, 如果这个距离小于给定的 中止阈值,我们就把这个框放进同样的集群中,而且,如果其中一个边框已经在集群中了,我们就会合并这些集群。 如果重叠率高于中止阈值(?????为什么是重叠度高) ,我们就把他们放进不同的集群中。
3。然后进行到下一个边界框,我们使用0.5作为 中止阈值。
detection汇总:
各个部分计算量需求:
detection递进算法 :
3 Learning:
由于tracking和detection是平行同步运行的,而Learning就是去结合这两个方法的输出变成一个唯一的结果。
首先,除了背景模型和方差滤波器的阈值不是自适应的(需要提前给出,无法自适应改变)。 集成分类器和模板匹配都是在线训练的。
在Learning中,我们实施了两个P/N-Learning 约束, 第一个约束是在最终结果附近的所有图块都要检测器识别为正样本。而其他图块必须被检测器识别为负样本(即不存在正样本误识别,负样本正识别的错误发生)。
3.1 融合和有效性:
融合递归tracker 结果Rt和置信度detection结果Dt为一个最终结果Bt的算法:

p+Dt detection置信值,p+Rt tracking置信值。
line4,5:当检测器的置信值比跟踪器的高时,然后就会把检测器的响应作为最后结果,这个过程称为 重-初始化过程,line7,否则就把置信度较高的跟踪器结果作为最终结果。对于其他特殊情况,最终结果为空,因为此时目标可能不可见。
valid(Bt) 是表示最终结果Bt的正确性(表征着对最终结果的高度置信)。只有valid(Bt)是true,接下来的学习更新步骤才会进行。
最终结果是否有效(valid(Bt) ),有几个条件:
1,跟踪器没有被检测器 重-初始化 。line4
2,跟踪器的置信值高于上阈值 theta+ 。line8
3,或者在 前一帧的结果是有效的情况下(valid(Bt−1)=1)跟踪器的阈值高于下阈值theta-。line10
上阈值 theta+表示结果属于正样本集合。
下阈值 theta-(=0.5)表示结果属于负样本集合。
3.2 P/N-Learning :
一个半监督学习,既有标记的样本也有未标记的样本。
在p/nlearning中,这里有两种约束:
P-约束:识别哪些被错误分为负样本的样本(实际应该是正),并把其放入正样本集合中,(纠正漏检)。P约束要求所有与最终结果高度重合(>60%)的图块必须被分类为正样本。
N-约束:识别哪些被错误分为正样本的样本(实际应该是负),并把其放入负样本集合中,(纠正误检)。N约束要求所有与有效的最终结果不重合(<20%)的必须被分类为负样本 。
PN约束
Xu:未标记样本,Xl:标记过的样本,Xc:分类错误的例子,Xt:用于训练分类器样本。R:滑窗亚窗口空间。
流程:
1。xu经过分类器,给定标签Yu-》Xu。
2。P/N约束根据准则,识别分类错误的Xc,并给定标签Yc-》Xc。
3。Xl与Xc一起作为训练集,进入训练模块。
4。训练结果用于更新分类器。
P/N算法流程:

A:置信度高,学习在进行,但是没有更新正样本库,B:正样本库更新,C:置信度地狱下阈值,结果无效,学习不进行 D:虽然D在上下阈值之间,但是前一帧结果无效,故不满足结果Bt有效的条件3,所有结果无效,不学习无更新。
P(y = 1 | Fk):
随机撅中正样本概率分数P(y = 1 | Fk)的计算方法:
PFk是P-约束在当前特征提取中应用的次数,NFk是N-约束应用的次数。
3.3 算法主循环:
3.4 其他人总结Learning:
(1)初始化
1 在扫描网格中选择距离初始目标框最近的10个方框,在每个方框的内部进行20次几何变换(±1%偏移和尺度变化,±10%平面内旋转), 则10个box产生200个仿射变换的方框,作为集成分类器的正样本Px;
2 目标框外的其他图像块都是负样本,将其中方差大于阈值的图像块都加入集成分类器的负样本Nx;
3 初始化后验概率。
(2)P-约束
P-expert根据在线模型评估跟踪器结果的可靠性。如果当前位置可靠,则生成一组正样本去更新目标模型和集合分类器。生成正样本的方法与初始化时类似,但是只生成100个正样本。
(3)N-约束
N-expert 生成负训练样本。如果跟踪器结果可靠,那么距离目标位置较远(重叠度 < 0.2)的方框将被标注为负样本。

猜你喜欢

转载自blog.csdn.net/lidawei0124/article/details/79871483
tld