zoukankan      html  css  js  c++  java
  • L1_APG_Tracker实现代码剖析

         最近在看有关将L1范数最小化运用到视频跟踪上的文章,这里是文章和实现代码的下载地址http://www.dabi.temple.edu/~hbling/code_data.htm,有兴趣的同学可以关注一下,并且希望和各位多多交流。

         我把它的代码好好看了一下,并且对多组图像做了实验,效果还好。下面是我对其代码的剖析:

         

    第一阶段:模板基底T的初始化

    1.手动选定第一个目标模板t1

    2.在高斯分布下随机扰动t1角点的坐标,得到其它9个目标模板t2,t3,...,t9

    3.通过图像的仿射变换,将十个目标模板从原图像中“拿出”(crop),并缩放为同样大小的十幅目标模板图像(如12*15大小)。具体做法如下:

      对每个目标模板,都首先计算出仿射变换参数R=[R(1,1), R(1,2), R(2,1), R(2,2), R(1,3), R(2,3)]。然后,输入R,原图像,和目标模板图像大小,即可通过图像仿射变换处理得到目标模板图像。

    4.将每幅目标模板图像都写作向量形式,并作正规化处理,得到最终的初始化T

     

    第二阶段:粒子样本S的初始化

    1设定粒子样本数为N(如600)

    2初始化S为对应t1模板的R,即每个粒子样本都初始化为对应t1模板的R

     

    第三阶段:

    1.在高斯分布下随机扰动St生成同St具有相同均值与方差的St+1

    2. 对每个粒子样本,输入St+1中对应的仿射参数,通过图像仿射变换处理得到对应的候选模板图像yt+1(i),图像大小等于目标模板图像大小.

    3.将每幅候选模板图像都写作向量形式,并作正规化处理

     

    第四阶段:最小误差限

    1.求解最小二乘问题(9)

    2.算得上限qi,并按降序排列之.

     

    第五阶段:解l1最小化问题(11)

    1. 对qi满足阈值的候选模板yi,用APG方法解(11),并算出对应的观测概率pi。
    2. 对qi不满足阈值的候选模板yi,令pi=0
    3. 选取最大pi对应的系数ci作为要找的目标系数和粒子xi作为要找的目标粒子.

     

    第六阶段 更新

    1,检测遮挡并更新(11)中的u

    2,更新T

    3  通过重采样,更新S。

     

    第七阶段

    画出该帧图画的检测结果

     

     

    End

     

    随后各帧,返回第三阶段,依次处理…

     

          看文章的同时,可以看代码帮助理解文章中的算法和更多的细节。但是对于要做研究的同学,只看懂人家怎么做的还不够,还要更深的理解其中的数学原理,为什么这样做就能产生这一效果,并能预测到若改动一些参数或式子,会产生什么样的效果改变,并通过实验验证之。刚走上这条道,希望技术与科学双丰收,共勉!

  • 相关阅读:
    树链剖分 (模板) 洛谷3384
    ST表 (模板) 洛谷3865
    IOI 2005 River (洛谷 3354)
    IOI 2005 River (洛谷 3354)
    poj1094 Sorting It All Out
    poj1094 Sorting It All Out
    spfa(模板)
    HAOI 2006 受欢迎的牛 (洛谷2341)
    HAOI 2006 受欢迎的牛 (洛谷2341)
    洛谷1850(NOIp2016) 换教室——期望dp
  • 原文地址:https://www.cnblogs.com/pixel/p/2728243.html
Copyright © 2011-2022 走看看