彩色图像上执行Mean Shift迭代搜索目标 ,维加权直方图 + 巴氏系数 + Mean Shift迭代
今天要给大家分享的是:
在彩色图像上进行Mean Shift迭代搜索目标 二维加权直方图+巴氏系数+Mean Shift迭代
关于 加权直方图、巴氏系数、Mean Shift迭代 这三者之间的关系请大侠们阅读我的还有一篇博文:加权直方图+巴氏系数+Mean Shift的关系
关于一维直方图在灰度图像上的迭代程序请看:一维直方图+巴氏系数+Mean Shift
先上一张迭代过程的执行图吧 :
请看程序:
/**********控制算法执行行为的主要參数*******************************************************/
//该參数用于控制给定的初始位置框和真正的roi框的重叠度:取值范围(0,1)
//初始搜索框位置默认放在真实位置的右下角,与真实目标框de重叠度是overlap
float overlap = 0.5f; //一般来说,重叠度越高。迭代收敛越快。迭代次数越少
int MaxIterNum = 50; //该參数用于控制Mean Shift的最大迭代次数
bool isJudgeOverShift = false;//用于Mean Shift迭代过程中推断是否冲过头的标志
weight_method = 1; //选择加权核函数 ==0的话选择 Epanechnikov kernal;==1选择Gaussian kernal
lock_roi = true; //假设lock_roi为真,则鼠标选取的矩形框被无效化,使用roi_rect的默认位置作为roi区域
/**********控制算法执行行为的主要參数*******************************************************/
以下是用不同的通道组合执行得到的对照图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemhqbTA3MDU0MTE1/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
上图中的通道组合依次是(blue,red)组合,(blue,green)组合。(green ,red)组合
不同的组合生成的二维直方图是不一样的,所以上面三个数字融合是不一样的,需要的是不迭代相同数量
版权声明:本文博客原创文章,博客,未经同意,不得转载。
彩色图像上执行Mean Shift迭代搜索目标 ,维加权直方图 + 巴氏系数 + Mean Shift迭代的更多相关文章
- ansible 批量在远程主机上执行命令
ansible 和 saltstack 都是为了同时在多台主机上执行相同的命令, 但是 salt配置麻烦,ansible基本不用配置, ansible 通过ssh来连接并控制被控节点 1. 安装 第一 ...
- Windows 7上执行Cake 报错原因是Powershell 版本问题
在Windows 7 SP1 电脑上执行Cake的的例子 http://cakebuild.net/docs/tutorials/getting-started ,运行./Build.ps1 报下面的 ...
- .Net程序在linux mono环境和WindowsServer上执行测试对比
最近研究了一下mono,想把windows上写的.Net程序移植到linux上跑.网上有资料说Linux上mono执行.Net程序效率比Windows高,本着实证的态度,只有实际验证过才有说服力. 写 ...
- PHP在linux上执行外部命令
PHP在linux上执行外部命令 一.PHP中调用外部命令介绍二.关于安全问题三.关于超时问题四.关于PHP运行linux环境中命令出现的问题 一.PHP中调用外部命令介绍在PHP中调用外部命令,可以 ...
- Duilib 鼠标在某控件例如按钮上悬停后,对目标控件操作
其实对WM_MOUSEHOVER消息的处理,因为WindowImplBase基类中对此消息未处理,所以在自己的窗口类中实现: .h文件中加入 LRESULT OnMouseHover( UINT uM ...
- Linux 在一个命令行上执行多个命令
Linux 在一个命令行上执行多个命令 1. [ ; ] 如果被分号(;)所分隔的命令会连续的执行下去,就算是错误的命令也会继续执行后面的命令. 2. [ && ] 如果命令被 &am ...
- MySQL线上执行大事务或锁表操作
前提 在线执行一些大事务或锁表操作(给某个核心级表加一列或者执行修改操作),此时不但主库从库要长时间锁表,主从延迟也会变大.未避免大事务sql对整个集群产生影响,,我们希望一条SQL语句只在Maste ...
- Linux 在一个命令行上执行多个命令(转载)
对于单个命令执行我想大多数人都是明了的,也就是在一个命令行上执行一条命令.那对于在一行上执行多个命令怎么办呢,其实也很简单,只需在各命令之间加上特殊命令符号,我们常规使用到的有3个特殊命令符号. 1. ...
- db2的select语句在db2 client上执行正确,JDBC连接数据库时报错
db2的select语句在db2 client上执行正确,JDBC连接数据库时报错. sql语句是:select ...from QUALIFIER.tableName fetch first 21 ...
随机推荐
- 重新想象 Windows 8 Store Apps (8) - 控件之 WebView
原文:重新想象 Windows 8 Store Apps (8) - 控件之 WebView [源码下载] 重新想象 Windows 8 Store Apps (8) - 控件之 WebView 作者 ...
- quartz.net持久化和集群
首先你应该使用的是持久化的quartz,所有定时任务的情况都是保存在数据库表总的,每次启动时,scheduler容器都是按照qrtz_triggers等表内存储的信息来执行定时任务(主要包括cron表 ...
- android 中国通信乱码问题
1.要解决中文乱码问题.首先得了解什么是字符编码 计算机要处理各种字符,就须要将字符和二进制内码相应起来,这样的相应关系就是字符编码. 要制定字符编码首先要确定字符集,并将 字符集内的字符排序.然后和 ...
- Android异步任务
本文主要探讨Android平台提供的各种异步载入机制,包括它们的适用场景.用法等. 1. AsynTask AsynTask适用于最长能够持续几秒钟的短时间的操作,对于长时间的操作,建议使用java. ...
- 程序猿学英语—In July the English learning summary
七月的英语学习更加曲折,七月初.查看更多,周六和周日可以保证每天两小时的英语教室学习.周一到周 五一般是上完晚自习九点多来机房学习英语,学习一个小时十点多再回宿舍. 考完试,回家待了五天,不好意思的说 ...
- 如何使用junit4写单元测试用例(转)
JUnit4是JUnit框架有史以来的最大改进,其主要目标便是利用Java5的Annotation特性简化测试用例的编写. 先 简单解释一下什么是Annotation,这个单词一般是翻译成元数据.元数 ...
- FPGA 时序问题
近期 做一个项目------4个 1080p(1920 x 1080) 合成 一个 4K(3840 x 2160,297M)的接口板.当 1080p 进去, 1080p出来的时候,视频正常 播放出来. ...
- 【原创】构建高性能ASP.NET站点之二 优化HTTP请求(前端)
原文:[原创]构建高性能ASP.NET站点之二 优化HTTP请求(前端) 构建高性能ASP.NET站点之二 优化HTTP请求(前端) 前言: 这段时间比较的忙,文章写不是很勤,希望大家谅解. 上一篇文 ...
- Linux tcpdump命令具体解释
简单介绍 用简单的话来定义tcpdump,就是:dump the traffic on a network,依据使用者的定义对网络上的数据包进行截获的包分析工具. tcpdump能够将网络中传送的数据 ...
- MySQL性能、监控与灾难恢复
原文:MySQL性能.监控与灾难恢复 监控方案: up.time http://www.uptimesoftware.com/ 收费 Cacti http:/ ...