庖丁解牛TLD(二)——初始化工作(为算法的准备)

原创 2011年11月10日 20:11:54

我说的初始化,还不是算法的初始化工作,而是读入图像,响应键盘鼠标之类的工作。作者提供的代码中的工作包含了从摄像头读取和从文件中读取两种输入方案。这里介绍一下从文件输入的办法。因为OpenCV从视频读取图像序列的办法有很好的demo,我这里就不介绍摄像头的办法了。TLD下载后有一个文件夹是_input,里面存放着一组图片组,图片文件的名字为00001.png、00002.png....。我读取图片组的关键代码如下,这段代码具有普遍意义,可以移植到以后想读入图片组的任意程序中:

stringstream fileNameStream;
string sourceImageFileName;
for(int nFrame=0; nFrame<NUM; nFrame++)
{
    nFrame++;
    fileNameStream << "_input\\" << setw(5) << setfill('0') << nFrameNum << ".png";
    sourceImageFileName = fileNameStream.str();
    fileNameStream.clear();
    fileNameStream.str("");

    // 读取图像
    g_src = imread(sourceImageFileName);
}

这就实现了图片的读入工作,再参考camshiftdemo的办法实现了鼠标和键盘的响应。鼠标的响应就是得到目标区域的范围,用鼠标选中boundingbox。文件读进来了,目标区域boundingbox也得到了,接下来就是需要对算法进行研究了。

先介绍几个我研究过的心得,bbox文件夹下面的代码主要都是对boundingbox的处理。tld文件夹下面的存放的是主干的算法,从run_TLD入手,感觉就是对起始帧进行初始化工作,然后逐帧读入图片序列,进行算法处理。还是先分析初始化工作,作者的tldInitSource函数实现的就是基本的初始化,给一些变量赋值,开辟矩阵大小,这个没什么好讲的。tldInitFirstFrame文件完成的工作就是选中boundingbox,这个功能我已经通过鼠标的响应得到了boundingbox,也可以略过不细分析。重点的初始化工作是在tldInit里实现的,这个函数也是我接下来研究的重点,本人Matlab较差,真希望有高人指点啊,一起研究啊

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Oracle9i手工建库

/*创建Oracle文件目录*/ C>mkdir C:oracleadmingdqybdumpC>mkdir C:oracleadmingdqycdumpC>mkdir C:oracleadmingd...
  • orafox
  • orafox
  • 2006-09-13 19:04
  • 1770

TLD(Tracking-Learning-Detection)学习与源码理解之(四)

下面是自己在看论文和这些大牛的分析过程中,对代码进行了一些理解,但是由于自己接触图像处理和机器视觉没多久,另外由于自己编程能力比较弱,所以分析过程可能会有不少的错误,希望各位不吝指正。而且,因为编程很...

TLD(Tracking-Learning-Detection)学习与源码理解之(二)

TLD(Tracking-Learning-Detection)学习与源码理解之(二) zouxy09@qq.com OpenTLD下载与编译: (1)https://github.com/arthu...

TLD(Tracking-Learning-Detection)学习与源码理解之(五)

下面是自己在看论文和这些大牛的分析过程中,对代码进行了一些理解,但是由于自己接触图像处理和机器视觉没多久,另外由于自己编程能力比较弱,所以分析过程可能会有不少的错误,希望各位不吝指正。而且,因为编程很...

带你玩-Object Tracking using OpenCV (二)

目标跟踪算法 在本节中,我们将挖掘一些不同的跟踪算法。我们的目标不是对每一个跟踪器有深刻的理论理解,而是从实践的角度来理解它们。 让我们首先先解释一下跟踪的一些基本原理。在跟踪中,我们的目标是在当前帧...

比微软kinect更强的视频跟踪算法--TLD跟踪算法介绍

TLD(Tracking-Learning-Detection)是英国萨里大学的一个捷克籍博士生在其攻读博士学位期间提出的一种新的单目标长时间(long term tracking)跟踪算法。该算法与...

TLD(Tracking-Learning-Detection)学习与源码理解之(六)

下面是自己在看论文和这些大牛的分析过程中,对代码进行了一些理解,但是由于自己接触图像处理和机器视觉没多久,另外由于自己编程能力比较弱,所以分析过程可能会有不少的错误,希望各位不吝指正。而且,因为编程很...

TLD(Tracking-Learning-Detection)学习与源码理解之(七)

下面是自己在看论文和这些大牛的分析过程中,对代码进行了一些理解,但是由于自己接触图像处理和机器视觉没多久,另外由于自己编程能力比较弱,所以分析过程可能会有不少的错误,希望各位不吝指正。而且,因为编程很...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)