最简单的目标跟踪方法--------模板匹配与相关系数法

2023-05-16

前言

  模板匹配和相关系数法是目标跟踪的经典方法,它的优点有很多:简单准确,适用面广,抗噪性好,而且计算速度快。缺点是不能适应剧烈光照变化和目标剧烈形变。

  所谓模板匹配法,就是指在一帧图像内寻找目标模板的位置,和模板最像的地方就是目标了。只要把全图的所有子区域和目标模板比较一下,找到最像目标模板的子区域,它就是目标的位置。如何度量子区域和目标模板的相似程度呢?最简单的办法就是计算这二者的相关系数。

 

相关系数

  相关系数(r)是一种数学距离,可以用来衡量两个向量的相似程度。它起源于余弦定理:cos(A)=(a2+c2-b2)/2bc.如果两个向量的夹角为0度(对应r=1),说明它们完全相似,如果夹角为90度(r=0),则它们完全不相似,如果夹角为180度(r=-1),则它们完全相反。把余弦定理写成向量的形式:

cos(A) = <b,c>/(|b|*|c|),

即:cos(A) = (b1c1+b2c2+… bncn)/sqrt[(b12+b22+…+bn2) (c12+c22+…+cn2)]

其中分子表示两个向量的内积,分母表示两个向量的模相乘。

在实际应用中,更常用的是去均值相关系数,它在上式的基础上还要在分子分母减去各个向量的均值:

这样,两个向量相似的部分被减掉,它们的相关性就被放大了。

假设目标模板是一个10*10的图像,它就可以被看作是一个100维的向量,每一维是一个像素点的灰度值。然后把这个向量和图像中的每一个子区域作比较,找出相关系数最大的子区域,目标的位置就找到了。

 

算法加速

   按照上文的方法在一帧600*800的图像中寻找一个30*30的目标大概需要几秒的时间,还远远达不到实时性的要求。上式可以化简加速的地方有很多,将原式变形:

 

其中xi的求和,分母的左半部分都是一个常数,不必每次都算。分子的左边,yi求和,分母的右边可以通过intergral image的方法来加速。通过这些加速方法,算法的速度可以达到每帧100ms以内,但还是不能达到实时的标准。

 

搜索策略

 

   在搜索时,最笨的方法就是暴力式逐行遍历搜索,把图像中的每一个子区域都计算一遍。实际上目标往往只在一个非常小的区域出现,很多地方根本没必要计算。所以在搜索时,如果当前位置的相关系数小于一定阈值或者该位置离上一帧的目标中心很远的时候,搜索的步长可以加大,反之则减小搜索步长。

 

   另一种搜索方法是以上一帧的目标中心为起点,以梯度下降的方法来搜索目标。该方法有一点需要注意,如果目标运动幅度较大,需要利用图像金字塔的方法搜索。

 

   这两种方法都能够使算法的速度达到30ms以内。

 

模板大小

 

   模板大小的确定往往是一个经验值,紧帖目标轮廓的模板或者包含太多背景的模板都不好,前者的模板太小,它对目标的变化太敏感,会很容易丢失目标。后者正相反,目标变化的时候算法却没有反应。一般而言,目标所占模板的比例在30%~50%为佳。

 

转载于:https://www.cnblogs.com/easymind223/archive/2012/08/14/2638015.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

最简单的目标跟踪方法--------模板匹配与相关系数法 的相关文章

随机推荐

  • ajax部分验证表单数据,简单的Ajax+Servlet表单数据验证

    var XMLHttpReq 创建XMLHttpRequest对象 function createXMLHttpRequest if window XMLHttpRequest Mozilla 浏览器 XMLHttpReq 61 new X
  • 云服务器装操作系统吗,云服务器能装操作系统吗

    云服务器能装操作系统吗 内容精选 换一换 监控是保持云耀云服务器可靠性 可用性和性能的重要部分 xff0c 通过监控 xff0c 用户可以观察云耀云服务器资源 为使用户更好地掌握自己的云耀云服务器运行状态 xff0c 公有云平台提供了云监控
  • 打造性能服务器图片,详解用node-images打造简易图片服务器.pdf

    详详解解用用node images 打打造造简简易易图图片片服服务务器器 Edit 2016 5 11 修正了代码里面一些明显的错误 xff0c 并发布在 aj axj s 之中 xff0c 源码在这里 Edit 2016 5 24 加入
  • 企业应用:浅谈 “数据权限” 和 查询 API 设计

    背景 多数企业应用都需要对数据权限进行控制 xff0c 如 xff1a 某个用户只能看到某个范围的数据 xff08 数据行 xff09 某个用户只能看到某几列数据 xff08 数据列 xff09 本文以数据行级别的权限控制为范例 xff0c
  • 您必须了解的4种OpenStack Neutron网络类型

    如果您托管的OpenStack虚拟实例需要网络连接 xff0c 则必须创建一个网络 有多种类型的网络 xff0c 为了做出正确的选择 xff0c 您至少需要了解两个非常重要的网络属性 xff1a router xff1a external
  • 动态链接库*.so的编译与使用- -

    动态链接库 so的编译与使用 动态库 so在linux 下用c和c 43 43 编程时经常会碰到 xff0c 最近在网站找了几篇文章介绍动态库的编译和链接 xff0c 总算搞懂了这个之前一直不太了解得东东 xff0c 这里做个笔记 xff0
  • Linux系统VNC配置实践总结

    VNC 概述 VNC Virtual Network Computing 是 虚拟网络 计算机 的缩写 VNC 是一款优秀的 远程控制 工具软件 xff0c 由著名的 AT amp T 的欧洲研究实验室开发的 VNC 是在基于 UNIX 和
  • linux不需要杀毒软件

    linux一般不需要杀毒软件 所有在windows下的病毒在linux下都失效 xff0c 即使你下载一堆病毒 xff0c 不论多强的病毒 xff0c 对病毒狂点都没事 既然没中毒 xff0c 切换回windows当然也没事 xff0c 但
  • 使用badblocks命令检测、修复硬盘坏道

    badblocks是Linux下常用的坏道修复工具 当你觉得硬盘上可能有坏道 xff0c 或者是SMART数据显示有坏道的时候 xff0c 都可以用badblocks来检查一下 假设我们要检查的硬盘是 dev sdb sudo badblo
  • python3 如何给装饰器传递参数

    引子 之前写过一篇文章用来讲解装饰器 https www cnblogs com JiangLe p 9309330 html 那篇文章的定位是入门级的 所以也就没有讲过多的高级主题 xff0c 决定在这里讲一下如果为装饰器传递参数 目标
  • VirsualBox 安装Ubuntu上不了网

    VirsualBox 安装Ubuntu上不了网 xff0c 可以ping通 xff0c 但是浏览器上不了网 可以选择双网卡 xff0c 如下 xff1a 桥接网卡为了是上外网 xff0c NAT为了上内网 能够SSH连接 囧囧小先生一直是技
  • martian source packets(ll header)

    原文地址 xff1a http blog chinaunix net space php uid 61 346158 amp do 61 blog amp id 61 2131002 martian source packets ll he
  • java爬虫学习日记2-宽度优先爬虫代码实现

    爬虫两种方式 宽度优先和带偏好爬虫 先复习下上次学了什么 xff1a URL和URI的结构组成根据指定网址爬取网站内容 xff08 get方式和post方式 xff09 上一日记中学到了抓取单个页面内容的方法 xff0c 但实际项目中则需要
  • x11vnc 安装及使用

    x11vnc 安装及使用 TOC CentOS 7 安装 yum install y x11vnc 默认yum源中没有x11vnc的 在epel repo里有 为x11vnc创建密码 x11vnc storepasswd sudo mv v
  • 导出数据库数据成txt格式

    set verify off set colsep 分隔符 set echo off set feedback off set heading off set pagesize 0 set linesize 10000 set numwid
  • 调整Azure中虚拟机数据磁盘大小实践

    首先 xff0c 在Azure中关于数据存储的付费规则中规定 xff0c 只要你使用的不是Azure的XIO高级存储提供的I O密集型的高吞吐低延迟的服务 xff0c 那么得益于Azure存储设计中采用的稀疏文件方式存储 xff0c 存储虚
  • 具有云部署工具的OpenStack自动化

    在云世界中 xff0c 口头禅是 使一切自动化 毫不奇怪 xff0c 随着OpenStack扩展范围 xff0c 自动化项目正在其中涌现 但是 xff0c 这些项目的种类和数量仍然令人惊讶 xff1a 超过20个 xff01 这是三篇系列文
  • Docker部署服务时间相差8小时解决方法

    b 交代一下产生问题的环境 xff1a ubuntu server 16 tomcat8 docker部署 b 最近用docker部署tomcat服务遇到了个小问题 xff0c 生成订单获取的系统时间与当前北京时间相差了8个小时 第一反应是
  • 准备博客搬家了,搬家到CTO博客

    每次写完文章 xff0c 选分类的时候 xff0c 越来越没有我要的分类了 看来已经不适合码农的地盘了 准备搬家 xff01 转载于 https blog 51cto com cijianjushi 1535291
  • 最简单的目标跟踪方法--------模板匹配与相关系数法

    前言 模板匹配和相关系数法是目标跟踪的经典方法 xff0c 它的优点有很多 xff1a 简单准确 xff0c 适用面广 xff0c 抗噪性好 xff0c 而且计算速度快 缺点是不能适应剧烈光照变化和目标剧烈形变 所谓模板匹配法 xff0c