opencv中常用的检测及跟踪算法原理介绍.pptxVIP

opencv中常用的检测及跟踪算法原理介绍.pptx

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
opencv中常用的检测及跟踪算法原理介绍

OPENCV中常用物体检测算法和跟踪算法的介绍;一、运动物体的检测方法;1、背景减法 背景减法的原理是利用当前图像与背景图像的差分来检测运动区域的一种技术。它一般能够提供最完整的特征数据,而且速度快,能适合实时系统的要求。但是对于动态场景的变化,如光照和外来无关事件的干扰特别敏感。 2、时间差分 时间差分方法利用图像序列中前后几个相邻帧图像之间的差分来提取图像中的运动区域例如Lipton等利用两帧差分方法从实际视频图像中检测出运动目标,进而用于目标的分类与跟踪。一个改进的方法是利用三帧差分代替两帧差分,如VSM开发了一种自适应背景减除与三帧差分相结合的混合算法,它可以快速有效地从背景中检测出运动目标。时间差分运动检测方法对于动态环境具有较强的自适应性,但它一般不能完全提取出所有相关的特征像素点,在运动实体内部容易产生空洞现象。 3、光流 光流方法的运动检测采用了运动目标随时间变化的光流场特性,从而有效地提取和跟踪运动目标。该方法的优点是在摄像机运动存在的前提下也能检测出独立的运动目标,而缺点在于计算方法相当复杂,且抗噪声性能差,如果没有特别的硬件装置则不能被应用于全帧视频流的实时处理。 4、统计方法 统计方法是利用单个像素或几组像素的变化特征建立背景模型,克服了传统背景减法对动态干扰因素较敏感的问题。如利用背景注册技术构建可靠的背景模型,将当前帧与背景模型相减提前前景区域。该方法能成功克服噪声和光照变化的影响,但是需要捕获大量数据建立背景模型,如果背景变化较大,则前若干帧则无法获得完整的背景模型。;二、运动物体的跟踪方法;1、Kalman滤波器 卡尔曼滤波是基于高斯分布的状态预测方法,可实时地进行跟踪预测。其基本思想是,若有一组强而合理的假设,给出系统的历史测量值,则可以建立最大化这些早期测量值的后验概率的系统状态模型。即重复更新系统状态模型。 Kalman滤波器需要二个重要的假设(1)被建模的系统是线性的;即k时刻的系统状态可以用某个矩阵与k-1时刻的系统状态的乘积表示。(2)假设噪声是高斯分布的白??声,即噪声与时间不相关。 Kalman算法流程: 首先,我们先要引入一个离散控制过程的系统。该系统可用一个线性随机微分方程(Linear Stochastic Difference equation)来描述: X(k)=A X(k-1)+B U(k)+W(k) 再加上系统的测量值: Z(k)=H X(k)+V(k) 上两式子中,X(k)是k时刻的系统状态,U(k)是k时刻对系统的控制量。A和B是系统参数,对于多模型系统,他们为矩阵。Z(k)是k时刻的测量值,H 是测量系统的参数,对于多测量系统,H为矩阵。W(k)和V(k)分别表示过程和测量的噪声。他们被假设成高斯白噪声(White Gaussian Noise),他们的covariance 分别是Q,R(这里我们假设他们不随系统状态变化而变化)。 对于满足上面的条件(线性随机微分系统,过程和测量都是高斯白噪声),卡尔曼滤波器是最优的信息处理器。下面我们来用他们结合他们的covariances 来估算系统的最优化输出。 ; 首先我们要利用系统的过程模型,来预测下一状态的系统。假设现在的系统状态是k,根据系统的模型,可以基于系统的上一状态而预测出现在状态: X(k|k-1)=A X(k-1|k-1)+B U(k) ……….. (1) 式(1)中,X(k|k-1)是利用上一状态预测的结果,X(k-1|k-1)是上一状态最优的结果,U(k)为现在状态的控制量,如果没有控制量,它可以为0。 到现在为止,我们的系统结果已经更新了,可是,对应于X(k|k-1)的covariance还没更新。我们用P表示covariance: P(k|k-1)=A P(k-1|k-1) A’+Q ……… (2) 式 (2)中,P(k|k-1)是X(k|k-1)对应的covariance,P(k-1|k-1)是X(k-1|k-1)对应的 covariance,A’表示A的转置矩阵,Q是系统过程的covariance。式子1,2就是卡尔曼滤波器5个公式当中的前两个,也就是对系统的预测。现在我们有了现在状态的预测结果,然后我们再收集现在状态的测量值。结合预测值和测量值,我们可以得到现在状态(k)的最优化估算值X(k|k): X(k|k)= X(k|k-1)+Kg(k) (Z(k)-H X(k|k-1)) ……… (3) 其中Kg为卡尔曼增益(Kalman Gain): Kg(k)= P(k|k-1) H’ / (H P(k|k-1) H’ + R) ……… (4) 到现在为止,我们已经得到了k状态下最优的估算值X(k|k)。但是为了要使卡尔曼滤波器不断的运行下去直到系统过程结束,我们还要更新k状态下X(k

文档评论(0)

wuyoujun92 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档