资源简介

卡尔曼的视频序列图像的目标跟踪程序,matlab编写,用于学习卡尔曼的目标跟踪方法

资源截图

代码片段和文件信息


% compute the background image
Im0 = double(imread(‘ball00000100.jpg‘‘jpg‘));
Im1 = double(imread(‘ball00000101.jpg‘‘jpg‘));
Im2 = double(imread(‘ball00000102.jpg‘‘jpg‘));
Im3 = double(imread(‘ball00000103.jpg‘‘jpg‘));
Im4 = double(imread(‘ball00000104.jpg‘‘jpg‘));
Imback = (Im0 + Im1 + Im2 + Im3 + Im4)/5;
[MRMCDim] = size(Imback);

% Kalman filter static initializations
R=[[0.28450.0045]‘[0.00450.0455]‘];
H=[[10]‘[01]‘[00]‘[00]‘];
Q=0.01*eye(4);
dt=1;
A1=[[1000]‘[0100]‘[dt010]‘[0000]‘];  % on table no vertical velocity
A2=[[1000]‘[0100]‘[dt010]‘[0dt01]‘]; % bounce
A3=[[1000]‘[0100]‘[dt010]‘[0dt01]‘]; % normal motion
g = 6.0;              % gravity=pixels^2/time step
Bu1 = [0000]‘;   % on table no gravity
Bu2 = [000g]‘;   % bounce
Bu3 = [000g]‘;   % normal motion
loss=0.7;

% multiple condensation states
NCON=100;          % number of condensation samples
MAXTIME=60;        % number of time frames
x=zeros(NCONMAXTIME4);      % state vectors
weights=zeros(NCONMAXTIME);  % est. probability of state
trackstate=zeros(NCONMAXTIME);         % state=123;
P=zeros(NCONMAXTIME44);    % est. covariance of state vec.
for i = 1 : NCON              % initialize estimated covariance
for j = 1 : MAXTIME
  P(ij11) = 100;
  P(ij22) = 100;
  P(ij33) = 100;
  P(ij44) = 100;
end
end
pstop=0.05;      % probability of stopping vertical motion
pbounce=0.30;    % probability of bouncing at current state (overestimated)
xc=zeros(41);   % selected state
TP=zeros(44);   % predicted covariance

% loop over all images
fig1=1;
fig2=0;
fig15=0;
fig3=0;
for i = 1 : MAXTIME
i
  % load image
  if i < 11
    Im = (imread([‘ball0000010‘int2str(i-1) ‘.jpg‘]‘jpg‘)); 
  else
    Im = (imread([‘ball000001‘int2str(i-1) ‘.jpg‘]‘jpg‘)); 
  end
  if fig1 > 0
    figure(fig1)
    clf
    imshow(Im)
  end
  Imwork = double(Im);

  % extract ball
  [cc(i)cr(i)radiusflag]=extractball(ImworkImbackfig1fig2fig3fig15i);
  if flag==0
    for k = 1 : NCON
      x(ki:) = [floor(MC*rand(1))floor(MR*rand(1))00]‘;
      weights(ki)=1/NCON;
    end
    continue
  end

  % display green estimated ball circle over original image
  if fig1 > 0
    figure(fig1)
    hold on
    for c = -0.99*radius: radius/10 : 0.99*radius
      r = sqrt(radius^2-c^2);
      plot(cc(i)+ccr(i)+r‘g.‘)
      plot(cc(i)+ccr(i)-r‘g.‘)
    end
  end

  % condensation tracking
  % generate NCON new hypotheses from current NCON hypotheses
  % first create an auxiliary array ident() containing state vector j
  % SAMPLE*p_k times where p is the estimated probability of j
  if i ~= 1
    SAMPLE=10;
    ident=zeros(100*SAMPLE1);
    idcount=0;
    for j = 1 : NCON    % generate sampling distribution
      num=floor(SAMPLE*100*weights(ji-1));  % number of samples to generate
      if num > 0
        ident(idcount+1:idcount+num) = j*ones(1num);
        idcount=idcount+num;
      end
    end
  end

  % generate NCON n

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       4023  2004-11-14 10:05  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000117.jpg

     文件       4104  2004-11-14 10:05  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000118.jpg

     文件       4134  2004-11-14 10:05  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000119.jpg

     文件       4146  2004-11-14 10:06  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000120.jpg

     文件       4119  2004-11-14 10:06  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000121.jpg

     文件       4062  2004-11-14 10:06  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000122.jpg

     文件       4032  2004-11-14 10:06  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000123.jpg

     文件       4067  2004-11-14 10:06  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000124.jpg

     文件       4076  2004-11-14 10:06  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000125.jpg

     文件       4008  2004-11-14 10:06  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000126.jpg

     文件       3972  2004-11-14 10:06  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000127.jpg

     文件       4099  2004-11-14 10:06  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000128.jpg

     文件       4087  2004-11-14 10:06  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000129.jpg

     文件       4082  2004-11-14 10:07  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000130.jpg

     文件       3940  2004-11-14 10:04  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000106.jpg

     文件       4013  2004-11-14 10:04  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000107.jpg

     文件       4078  2004-11-14 10:04  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000108.jpg

     文件       4094  2004-11-14 10:04  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000109.jpg

     文件       4101  2004-11-14 10:04  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000110.jpg

     文件       4089  2004-11-14 10:05  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000111.jpg

     文件       4072  2004-11-14 10:05  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000112.jpg

     文件       3988  2004-11-14 10:05  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000113.jpg

     文件       3967  2004-11-14 10:05  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000114.jpg

     文件       3996  2004-11-14 10:05  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000115.jpg

     文件       4019  2004-11-14 10:05  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000116.jpg

     文件       4066  2004-11-14 10:08  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000140.jpg

     文件       4014  2004-11-14 10:08  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000141.jpg

     文件       3942  2004-11-14 10:08  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000142.jpg

     文件       4010  2004-11-14 10:08  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000143.jpg

     文件       4095  2004-11-14 10:08  卡尔曼的视频序列帧图像的跟踪程序\基于卡尔曼的视频序列帧图像的跟踪程序1\ball00000144.jpg

............此处省略42个文件信息

评论

共有 条评论