追踪算法ASMS体验

来源:互联网 发布:mac word 用户权限 编辑:程序博客网 时间:2024/05/18 00:54

对应论文:Tomas Vojir, Jana Noskova and Jiri Matas, “Robust scale-adaptivemean-shift for tracking“. Pattern Recognition Letters 2014.

github地址:https://github.com/vojirt/asms

 

实现环境:Win7 64位+ Visual Studio 2015 + Opencv3.1.0

 

该算法是基于尺度自适应的mean-shift追踪算法,在追踪过程中,会根据追踪物体的尺寸变化做出相应的调整。


新建win32控制台应用程序,空项目。将下载下来的asms-master压缩至某处。

1.      添加头文件,将asms-master文件夹下的src文件夹下的文件添加至“头文件”,如下:



2.      新建cpp源文件,将asms-master文件夹下的main_demo.cpp里面的代码拷贝至新建的cpp源文件中,在原来程序的基础上添加两个头文件:

#include <opencv2/highgui.hpp>#include <opencv2/imgproc.hpp>

3.      右键项目属性,

1)添加包含目录,主要是包含opencv下的include文件夹和asms-master下的src文件夹。我的如下:


2)添加库目录。将opencv下的lib库路径添加下来。我的如下:


3)添加附加依赖项(配置属性--连接器--输入),Release模式下添加opencv_world310.lib,Debug模式下添加opencv_world310d.lib。


运行程序

该程序是调用电脑的摄像头,选择摄像头采集的图像中的物体,系统便开始追踪。按Esc键退出程序。

我稍微修改了一下程序,使得可以读取视频文件。效果如下:(第一幅图像为手动选择的追踪物体,后两幅图像为效果)



说明:

1.      分别在x64 Debug模式和x64 Release模式下运行了,Debug模式下运行很慢,几秒更新一帧,Release模式下速度快了很多。

2.      使用上面那个视频测试的时候,会发现有时候会跟踪不准确以及丢失情况,如下:





作者给的测试速度如下(以ms为单位):


0 0
原创粉丝点击