如何使用视频对物体进行运动跟踪? [英] How to do motion tracking of an object using video?

查看:16
本文介绍了如何使用视频对物体进行运动跟踪?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有人可以指导我学习教程或指导我如何跟踪以 6 DOF 移动的物体的运动.我打算使用移动玩具车的视频流.我想计算玩具车的位移和旋转角度.我遇到了一些研究论文,但找不到任何适合这项工作的库.

Could someone direct me to a tutorial or guide me how to track motion of an object moving with 6 DOF. I am planing to use a video stream of a moving toy car. I want to calculate displacement and rotation angle of the toy car. I came across some research papers but couldn't find any libraries to the job.

有没有办法使用 OpenCV 或 Matlab 或其他一些免费提供的软件来做到这一点?

Is there a way to do this using OpenCV or Matlab or some other freely available software?

谢谢

推荐答案

跟踪是一个经典的计算机视觉问题,在计算机科学中仍然致力于研究;通过查看接受论文列表,您可以快速了解该领域的最新进展CVPR 2010(这是一年一度的顶级计算机视觉会议)中,您将看到仍然有关于该主题的活跃工作正在发布(在列表中搜索跟踪"一词).

Tracking is a classical computer vision problem to which research is still devoted in computer science; you can quickly get a sense of the state-of-the-art in this field by checking the list of accepted papers in CVPR 2010 (which is an annual top computer vision conference) and you'll see that there is still active work being published on the topic (search for the word "tracking" within the list).

跟踪问题解决方案的标准处理流程如下工作:首先解析图像以提取有意义的描述符,从而捕获图像的相关角点和其他显着特征.这些描述符随后被馈送到一个在线分类器,该分类器经过训练可以在每一帧中检测您感兴趣的特定对象的可能实例.您的对象的描述符可能是先验已知的(即离线计算),从之前的对象外观示例,但它通常在每一帧中根据系统随时间看到的内容进行更新,以使检测自适应到动态对象外观.最后,为了从每一帧(从检测到的那些)中的可能候选池中进行选择,您的对象的位置和速度等参数使用顺序相对于先前帧估计统计模型.

The standard processing pipeline of a solution for a tracking problem works as follows: The image is first parsed to extract meaningful descriptors that capture relevant corners and other salient features of the image. These descriptors are later fed to an on-line classifier that is trained to detect likely instances of your particular object of interest in each frame. The descriptor of your object may be known a priori, (i.e. computed off-line) from previous examples of what the object looks like, but it is usually updated in every frame by what the the system sees over time, to make the detection adaptive to the dynamic object appearance. Finally, in order to choose from a pool of possible candidates in each frame (from those that were detected), parameters such as the position and velocity of your objects are estimated with respect to previous frames using a sequential statistical model.

有大量关于良好图像描述符的计算机视觉文献,但其中一些最受欢迎的是 SIFTSURFHOG.对于分类,两种最成功的方法是 支持向量机分类集成(例如 boosting随机森林),而对于估计部分,大多数人仍然使用卡尔曼滤波器(这是一种顺序 马尔科夫模型),粒子过滤器a> 或更一般地说 密度估计模型.

There is a vast computer vision literature on good image descriptors, but some of the most popular ones are SIFT, SURF, or HOG. For classification, two of the most successful methods are support vector machines or classification ensembles (e.g. boosting or random forests), and for the estimation part, most people still use Kalman filters (which is a type of sequential Markov model), particle filters or more generally density estimation models.

您描述的具体情况比自然户外场景中任意相机和对象运动的更一般和更困难的对象跟踪问题要容易一些,因此您可能能够在网上找到一些可以立即在您的设置,但我对此表示怀疑.正如其他人指出的那样(据我所知),没有现成的 库可以立即适用于各种对象、背景和运动空间.也就是说,您可能可以在线找到我上面描述的标准通用管道的各个组件(分类器、过滤器/特征库、马尔可夫估计模型)的代码.

The specific case you described is a bit easier than the more general and difficult object-tracking problem with arbitrary camera and object motion in natural outdoor scenes, so you might be able to find some code online that could work right away in your setting, but I doubt it. As others pointed out, (and to the best of my knowledge), there is no off-the-shelf library that works right away for all sorts of objects, backgrounds and motion spaces. That said, you can probably find code for the individual components of the standard general pipeline I described above (classifiers, banks of filters/features, Markov estimation models) online.

我的建议是,如果您有兴趣构建一个好的系统(即真正有效的系统),那么请查看在顶级年度计算机视觉会议上发表最新论文的作者的网站,例如 CVPR, ICCVECCVSIGGRAPH.他们倾向于将最近工作的代码放在网上,其中包含一些视频示例,这可能有助于您了解他们的方法在真实环境中的工作原理.

My suggestion is, if you are interested in building a good system (i.e. one that actually works), then look at the websites of the authors of most recent papers in top annual computer vision conferences, such as CVPR, ICCV, ECCV and SIGGRAPH. They tend to have code online for their most recent work with some video examples, and this might help you get a sense of how their methods work in a real setting.

这篇关于如何使用视频对物体进行运动跟踪?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆