CamShitf算法,即Continuously Apative Mean-Shift算法,基本思想就是对视频图像的多帧进行MeanShift运算,将上一帧结果作为下一帧的初始值,迭代下去。基本步骤为:
1.选取关键区域
2.计算该区域的颜色概率分布--反向投影图
3.用MeanShift算法找到下一帧的特征区域
4.标记并重复上述步骤
该算法的关键就是可以在目标大小发生改变的时候,可以自适应的调整目标区域继续跟踪
在进行CamShitf和MeanShift算法的时候,需要输入反向投影图,这就要求有个很重要的预处理过程是计算反向投影图。对应的函数为calcBackProject。所谓反向投影图就是一个概率密度图。calcBackProject的输入通常为目标区域的直方图和待跟踪图像的直方图,输出与待跟踪图像大小相同,每一个像素点表示该点为目标区域的概率。这个点越亮,该点属于物体的概率越大。这样的输入参数太适合做MeanS算法了。关于反向直方图,可以参考一下这篇文章http://blog.163.com/thomaskjh@126/blog/static/370829982010112810358501/
具体代码如下:
分享到:
相关推荐
对着官方的教程翻译的,有一点点自己的注释,但不一定全对,没把握的地方有英文原文。
对着OpenCV官方教程翻译的东西,初学者看看比较好。
一般opencv的camshift实现都是使用opencv自己的窗口,这样对控制很不方便,我在MFC对话框的picture控件里实现了camshift跟踪
opencv的camshift程序+注释 camshift算法 里面程序有详细的注释 是初学者的好资料 有利于自学
camshift视频中运动物体跟踪,用到opencv库,在vs2005平台下开发。
Opencv2.4.9源码分析——HoughCircles.pdfOpencv2.4.9源码分析——HoughCircles.pdfOpencv2.4.9源码分析——HoughCircles.pdfOpencv2.4.9源码分析——HoughCircles.pdfOpencv2.4.9源码分析——HoughCircles....
Opencv学习笔记 辛苦收集希望和大家交流
爱分享、爱极客的编程怪兽--DaveBobo 博文 《【OpenCV学习笔记 005】 操作像素》 博文链接: http://blog.csdn.net/davebobo/article/details/52541612 OpenCV版本:2.4.9
OpenCV学习笔记(四)运动物体跟踪的camshift算法
OpenCV学习笔记(C++版OpenCV学习笔记,主要包括基础模块和DNN模块)带详细注释源码!!!
这个一个很基础的opencv学习笔记,一些常会遇到的问题,在这里做了肤浅的介绍,还有很多问题没有提及,以后会陆续整理,并上传
Qt+openCV学习笔记(十六)Qt6.6.0rc+openCV4.8.1+emsdk3.1.37编译的静态库 CSDN审核可能较慢,如无法下载,可以过段时间再回来看下 仅供相关爱好者交流使用,请于下载24小时内删除
OpenCV学习笔记,(基础概念,归纳总结),相信你所选择的。
《OpenCV3编程入门》要求读者具有基础的C/C++知识,适合研究计算机视觉以及相关领域的在校学生和老师、初次接触OpenCV但有一定C/C++编程基础的研究人员,以及已有过OpenCV 1.0编程经验,想快速了解并上手OpenCV2、...
详细介绍SIFT算法,opencv的SIFT源码分析,以及应用实例
详细介绍SURF算法,以及opencv的源码分析,并给出应用实例。
在局部特征点检测快速发展的时候,人们对于特征的认识也越来越深入,近几年来许多学者提出了许许多多的特征检测算法及其改进算法,在众多的特征提取算法中,不乏涌现出佼佼者。 从最早期的Moravec,到Harris,再到...
OpenCV是一个基于Apache2.0许可(开源)发行的跨平台计算机视觉和机器学习软件库,网络上一些小伙伴写的一些关于Android版OpenCV的博客,大部分都模糊不清,基本就复制粘贴的,有些甚至没有实践就直接贴上去了,这样...
OpenCV学习笔记入门版,真正的入门级别,自己写的
本文档共分为三个部分,第一个部分介绍SVM的原理,我们全面介绍了5中常用的SVM算法:C-SVC、ν-SVC、...第二个部分我们给出了OpenCV中SVM程序的详细注解。第三个部分我们给出了一个基于OpenCV的SVM算法的简单应用实例。