MeanShift运动目标跟踪matlab程序.docxVIP

  1. 1、本文档共6页,可阅读全部内容。
  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文档。上传文档
查看更多
MeanShift运动目标跟踪 matlab程序 思路简介: 1.截取跟踪目标矩阵rect 2.求取跟踪目标的加权直方图hist1 3.读取视频序列中的一帧, 先随机取一块与rect等大的矩形,计算加权直方图hist2。 4.计算两者比重函数,如果后者差距过大, 更新新的矩阵中心Y,进行迭代(MeanShift是一种变步长可以迅速接近概率密度峰值的方法),直至一定条件后停止。 源程序(参考过其他程序): [plain]? \o view plain view plain \o copy copy ?? function [] = select() close all; clear all; %%%%%%%%%%%%%%%%%%根据一幅目标全可见的图像圈定跟踪目标%%%%%%%%%%%%%%%%%%%%%%% I=imread(E:\数字图像处理\6\2\18.bmp); figure(1); imshow(I); [temp,rect]=imcrop(I); [a,b,c]=size(temp);? %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%计算目标图像的权值矩阵%%%%%%%%%%%%%%%%%%%%%%% y(1)=a/2; y(2)=b/2; tic_x=rect(1)+rect(3)/2; tic_y=rect(2)+rect(4)/2; m_wei=zeros(a,b);%权值矩阵 h=y(1)^2+y(2)^2 ;%带宽 for i=1:a ? ? for j=1:b ? ? ? ? dist=(i-y(1))^2+(j-y(2))^2; ? ? ? ? m_wei(i,j)=1-dist/h; %epanechnikov profile ? ? end end C=1/sum(sum(m_wei));%归一化系数 %计算目标权值直方图qu %hist1=C*wei_hist(temp,m_wei,a,b);%target model hist1=zeros(1,a*b); for i=1:a ? ? for j=1:b ?? ? ? ? ? %rgb颜色空间量化为16*16*16 bins ? ? ? ? q_r=fix(double(temp(i,j,1))/16); ?%fix为趋近0取整函数 ? ? ? ? q_g=fix(double(temp(i,j,2))/16); ? ? ? ? q_b=fix(double(temp(i,j,3))/16); ? ? ? ? q_temp=q_r*256+q_g*16+q_b; ? ? ? ? ? ?%设置每个像素点红色、绿色、蓝色分量所占比重 ? ? ? ? ?? ? ? ? ? hist1(q_temp+1)= hist1(q_temp+1)+m_wei(i,j); ? ?%计算直方图统计中每个像素点占的权重 ? ? end end hist1=hist1*C; rect(3)=ceil(rect(3)); rect(4)=ceil(rect(4)); %%%%%%%%%%%%%%%%%%%%%%%%%读取序列图像 myfile=dir(*.bmp); lengthfile=length(myfile); for l=1:lengthfile ? ? Im=imread(myfile(l).name); ? ? num=0; ? ? Y=[2,2]; ? ? ?%%%%%%%mean shift迭代 ? ? while((Y(1)^2+Y(2)^20.5)num20) ? %迭代条件 ? ? ? ? num=num+1; ? ? ? ?temp1=imcrop(Im,rect);? ? ? ? ?%计算侯选区域直方图 ? ? ? ?%hist2=C*wei_hist(temp1,m_wei,a,b);%target candidates pu ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

文档评论(0)

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

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

1亿VIP精品文档

相关文档