close all;
clear ;
%function [] = Meanshift()
%根据一幅目标全可见的图像圈定跟踪目标
I=imread('00001.jpg');
figure();
imshow(I);
[temp,rect]=imcrop(I);%rect是标注目标的参数变化[x坐标,y坐标,长,宽]
[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));%归一化系数
%计算目标权值直方图
%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(