亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 7-14.m

?? Matlab數字信號處理與應用源代碼
?? M
字號:
%例程7-14   基于卡爾曼濾波器的機動目標跟蹤
% Make a point move in the 2D plane
% State = (x y xdot ydot). We only observe (x y).
 
% X(t+1) = Φ(t) X(t) + noise(Q)
% Y(t) = H X(t) + noise(R)
 
ss = 4; % state size
os = 2; % observation size
F = [1 0 1 0; 0 1 0 1; 0 0 1 0; 0 0 0 1]; 
H = [1 0 0 0; 0 1 0 0];
Q = 0.1*eye(ss);
R = 1*eye(os);
initx = [10 10 1 0]';   %target initial parameters
initV = 10*eye(ss);
 
seed = 9;
rand('state', seed);
randn('state', seed);
T = 15;
[x,y] = sample_lds(F, H, Q, R, initx, T);  %generate target data
 
%kalman filter 
[xfilt, Vfilt, VVfilt, loglik] = kalman_filter(y, F, H, Q, R, initx, initV);                                  
% one step predict
[xsmooth, Vsmooth] = kalman_smoother(y, F, H, Q, R, initx, initV);
%calculate the error between the filtered data and the real data 
dfilt = x([1 2],:) - xfilt([1 2],:); 
mse_filt = sqrt(sum(sum(dfilt.^2)));   
 
dsmooth = x([1 2],:) - xsmooth([1 2],:);
mse_smooth = sqrt(sum(sum(dsmooth.^2)))


figure(1)
clf
%subplot(2,1,1)
hold on
plot(x(1,:), x(2,:), 'ks-');
plot(y(1,:), y(2,:), 'g*');
plot(xfilt(1,:), xfilt(2,:), 'rx:');
for t=1:T, plotgauss2d(xfilt(1:2,t), Vfilt(1:2, 1:2, t)); end
hold off
legend('true', 'observed', 'filtered', 3)
xlabel('x')
ylabel('y')
% 3x3 inches
set(gcf,'units','inches');
set(gcf,'PaperPosition',[0 0 3 3])  
%print(gcf,'-depsc','/home/eecs/murphyk/public_html/Bayes/Figures/aima_filtered.eps');
%print(gcf,'-djpeg','-r100', '/home/eecs/murphyk/public_html/Bayes/Figures/aima_filtered.jpg');
 
 figure(2)
%subplot(2,1,2)
hold on
plot(x(1,:), x(2,:), 'ks-');
plot(y(1,:), y(2,:), 'g*');
plot(xsmooth(1,:), xsmooth(2,:), 'rx:');
for t=1:T, plotgauss2d(xsmooth(1:2,t), Vsmooth(1:2, 1:2, t)); end
hold off
legend('true', 'observed', 'smoothed', 3)
xlabel('x')
ylabel('y')
 
 % 3x3 inches
set(gcf,'units','inches');
set(gcf,'PaperPosition',[0 0 3 3])  
%print(gcf,'-djpeg','-r100', '/home/eecs/murphyk/public_html/Bayes/Figures/aima_smoothed.jpg');
%print(gcf,'-depsc','/home/eecs/murphyk/public_html/Bayes/Figures/aima_smoothed.eps');


function [x, V, VV, loglik] = kalman_filter(y, A, C, Q, R, init_x, init_V, varargin)
% Kalman filter.
% [x, V, VV, loglik] = kalman_filter(y, A, C, Q, R, init_x, init_V, ...)
%
% INPUTS:
% y(:,t)   - the observation at time t
% A - the system matrix
% C - the observation matrix 
% Q - the system covariance 
% R - the observation covariance
% init_x - the initial state (column) vector 
% init_V - the initial state covariance 
%
% OPTIONAL INPUTS (string/value pairs [default in brackets])
% 'model' - model(t)=m means use params from model m at time t [ones(1,T) ]
%     In this case, all the above matrices take an additional final dimension,
%     i.e., A(:,:,m), C(:,:,m), Q(:,:,m), R(:,:,m).
%     However, init_x and init_V are independent of model(1).
% 'u'     - u(:,t) the control signal at time t [ [] ]
% 'B'     - B(:,:,m) the input regression matrix for model m
%
% OUTPUTS (where X is the hidden state being estimated)
% x(:,t) = E[X(:,t) | y(:,1:t)]
% V(:,:,t) = Cov[X(:,t) | y(:,1:t)]
% VV(:,:,t) = Cov[X(:,t), X(:,t-1) | y(:,1:t)] t >= 2
% loglik = sum{t=1}^T log P(y(:,t))
%
% If an input signal is specified, we also condition on it:
% e.g., x(:,t) = E[X(:,t) | y(:,1:t), u(:, 1:t)]
% If a model sequence is specified, we also condition on it:
% e.g., x(:,t) = E[X(:,t) | y(:,1:t), u(:, 1:t), m(1:t)]
 
[os T] = size(y);
ss = size(A,1); % size of state space
 
% set default params
model = ones(1,T);
u = [];
B = [];
ndx = [];
 
args = varargin;
nargs = length(args);
for i=1:2:nargs
  switch args{i}
   case 'model', model = args{i+1};
   case 'u', u = args{i+1};
   case 'B', B = args{i+1};
   case 'ndx', ndx = args{i+1};
   otherwise, error(['unrecognized argument ' args{i}])
  end
end
 
x = zeros(ss, T);
V = zeros(ss, ss, T);
VV = zeros(ss, ss, T);
 
loglik = 0;
for t=1:T
  m = model(t);
  if t==1
    %prevx = init_x(:,m);
    %prevV = init_V(:,:,m);
    prevx = init_x;
    prevV = init_V;
    initial = 1;
  else
    prevx = x(:,t-1);
    prevV = V(:,:,t-1);
    initial = 0;
  end
  if isempty(u)
    [x(:,t), V(:,:,t), LL, VV(:,:,t)] = ...
    kalman_update(A(:,:,m), C(:,:,m), Q(:,:,m), R(:,:,m), y(:,t), prevx, prevV, 'initial', initial);
  else
    if isempty(ndx)
      [x(:,t), V(:,:,t), LL, VV(:,:,t)] = ...
      kalman_update(A(:,:,m), C(:,:,m), Q(:,:,m), R(:,:,m), y(:,t), prevx, prevV, ... 
            'initial', initial, 'u', u(:,t), 'B', B(:,:,m));
    else
      i = ndx{t};
      % copy over all elements; only some will get updated
      x(:,t) = prevx;
      prevP = inv(prevV);
      prevPsmall = prevP(i,i);
      prevVsmall = inv(prevPsmall);
      [x(i,t), smallV, LL, VV(i,i,t)] = ...
      kalman_update(A(i,i,m), C(:,i,m), Q(i,i,m), R(:,:,m), y(:,t), prevx(i), prevVsmall, ...
            'initial', initial, 'u', u(:,t), 'B', B(i,:,m));
      smallP = inv(smallV);
      prevP(i,i) = smallP;
      V(:,:,t) = inv(prevP);
    end    
  end
  loglik = loglik + LL;
end
 

function [xnew, Vnew, loglik, VVnew] = kalman_update(A, C, Q, R, y, x, V, varargin)
% KALMAN_UPDATE Do a one step update of the Kalman filter
% [xnew, Vnew, loglik] = kalman_update(A, C, Q, R, y, x, V, ...)
%
% INPUTS:
% A - the system matrix
% C - the observation matrix 
% Q - the system covariance 
% R - the observation covariance
% y(:)   - the observation at time t
% x(:) - E[X | y(:, 1:t-1)] prior mean
% V(:,:) - Cov[X | y(:, 1:t-1)] prior covariance
%
% OPTIONAL INPUTS (string/value pairs [default in brackets])
% 'initial' - 1 means x and V are taken as initial conditions (so A and Q are ignored) [0]
% 'u'     - u(:) the control signal at time t [ [] ]
% 'B'     - the input regression matrix
%
% OUTPUTS (where X is the hidden state being estimated)
%  xnew(:) =   E[ X | y(:, 1:t) ] 
%  Vnew(:,:) = Var[ X(t) | y(:, 1:t) ]
%  VVnew(:,:) = Cov[ X(t), X(t-1) | y(:, 1:t) ]
%  loglik = log P(y(:,t) | y(:,1:t-1)) log-likelihood of innovatio
 
% set default params
u = [];
B = [];
initial = 0;
 
args = varargin;
for i=1:2:length(args)
  switch args{i}
   case 'u', u = args{i+1};
   case 'B', B = args{i+1};
   case 'initial', initial = args{i+1};
   otherwise, error(['unrecognized argument ' args{i}])
  end
end
 
%  xpred(:) = E[X_t+1 | y(:, 1:t)]
%  Vpred(:,:) = Cov[X_t+1 | y(:, 1:t)]
 
if initial
  if isempty(u)
    xpred = x;
  else
    xpred = x + B*u;
  end
  Vpred = V;
else
  if isempty(u)
    xpred = A*x;
  else
    xpred = A*x + B*u;
  end
  Vpred = A*V*A' + Q;
end
 
e = y - C*xpred; % error (innovation)
n = length(e);
ss = length(A);
S = C*Vpred*C' + R;
Sinv = inv(S);
ss = length(V);
loglik = gaussian_prob(e, zeros(1,length(e)), S, 1);
K = Vpred*C'*Sinv; % Kalman gain matrix
% If there is no observation vector, set K = zeros(ss).
xnew = xpred + K*e;
Vnew = (eye(ss) - K*C)*Vpred;
VVnew = (eye(ss) - K*C)*A*V;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色婷婷国产精品| 福利一区在线观看| 亚洲精品乱码久久久久久久久| 精品少妇一区二区三区在线播放| 欧美在线啊v一区| 欧洲精品视频在线观看| 欧美色图片你懂的| 欧美三级中文字| 欧美日本乱大交xxxxx| 欧美丝袜第三区| 欧美一区二区三级| 日韩欧美在线1卡| 久久久久久久久久久99999| 国产亚洲人成网站| 亚洲天堂成人网| 亚洲在线视频一区| 午夜精品久久久| 麻豆精品国产91久久久久久| 免费av网站大全久久| 国产很黄免费观看久久| 成人成人成人在线视频| 欧洲人成人精品| 欧美不卡在线视频| 国产精品日产欧美久久久久| 成人免费一区二区三区视频| 性感美女极品91精品| 精品在线视频一区| va亚洲va日韩不卡在线观看| 欧美日韩五月天| 久久亚洲二区三区| 亚洲人123区| 日韩va欧美va亚洲va久久| 激情综合网激情| av爱爱亚洲一区| 欧美日韩aaa| 欧美激情在线看| 一区二区三区电影在线播| 日韩高清电影一区| 不卡的av电影在线观看| 欧美日韩小视频| 中文字幕一区在线观看视频| 午夜影视日本亚洲欧洲精品| 国产精品77777竹菊影视小说| 色婷婷亚洲一区二区三区| 欧美xxxxxxxx| 亚洲一区二区精品3399| 国产v日产∨综合v精品视频| 色综合天天狠狠| 久久久av毛片精品| 午夜精品久久久久久久99水蜜桃 | 亚洲国产精品久久人人爱| 免费不卡在线观看| 精品视频在线免费观看| 国产欧美日韩视频一区二区| 午夜精品aaa| 91在线观看视频| 欧美国产精品专区| 精品一区二区在线看| 91九色最新地址| 国产精品久久久久一区| 国内精品嫩模私拍在线| 欧美日本一区二区三区| 依依成人精品视频| 91亚洲国产成人精品一区二区三 | 蜜桃久久久久久| 91久久精品午夜一区二区| 国产欧美精品一区二区色综合 | 一区二区三区四区av| 国产成人av影院| 久久精品这里都是精品| 美女网站在线免费欧美精品| 精品视频全国免费看| 国产精品高潮久久久久无| 国产成人欧美日韩在线电影 | 国产精品18久久久久久久久 | 欧美日韩在线综合| 伊人色综合久久天天| jiyouzz国产精品久久| 国产精品久久久久永久免费观看 | 亚洲午夜精品网| 欧美性生活大片视频| 亚洲综合一区二区三区| 91成人国产精品| 亚洲午夜久久久久久久久电影网| 欧美色手机在线观看| 亚洲成a人片在线不卡一二三区| 欧美亚洲综合久久| 亚洲成av人片| 欧美成人一区二区| 国产一区在线视频| 中文字幕亚洲电影| 在线观看一区二区视频| 三级不卡在线观看| 久久日一线二线三线suv| 加勒比av一区二区| 欧美国产综合一区二区| www.av精品| 婷婷夜色潮精品综合在线| 欧美一区二区三区电影| 国产成人免费高清| 亚洲人成电影网站色mp4| 欧美日本韩国一区| 极品少妇一区二区| 亚洲欧美中日韩| 欧美午夜理伦三级在线观看| 久久精品国产99久久6| 国产精品欧美精品| 欧美日韩小视频| 丁香啪啪综合成人亚洲小说 | 亚洲h精品动漫在线观看| 精品国产乱码久久久久久浪潮| 国产成人福利片| 亚洲在线视频免费观看| 久久综合久色欧美综合狠狠| av电影天堂一区二区在线| 日韩综合小视频| 国产精品免费视频网站| 欧美精品99久久久**| 成人午夜电影久久影院| 午夜久久久久久| 国产精品乱人伦中文| 日韩视频在线永久播放| 91蜜桃在线观看| 国产精品一级片| 三级不卡在线观看| 玉米视频成人免费看| 日本一区二区综合亚洲| 91麻豆精品91久久久久久清纯| 99精品视频在线免费观看| 久久99久久久久| 亚洲午夜一二三区视频| 国产精品久久久久久久久免费桃花 | 国产精品久久综合| www欧美成人18+| 91精品黄色片免费大全| 色88888久久久久久影院野外| 国产美女av一区二区三区| 日韩中文字幕亚洲一区二区va在线| 国产精品三级电影| 国产欧美日韩在线| 26uuuu精品一区二区| 精品嫩草影院久久| 日韩精品专区在线影院重磅| 欧美视频在线观看一区| 色国产精品一区在线观看| heyzo一本久久综合| 国产激情91久久精品导航| 国产一本一道久久香蕉| 极品少妇xxxx精品少妇| 六月婷婷色综合| 日本大胆欧美人术艺术动态| 首页国产欧美久久| 日本 国产 欧美色综合| 日韩国产欧美视频| 天天色天天操综合| 日本最新不卡在线| 日韩电影免费在线| 蜜桃在线一区二区三区| 老司机精品视频线观看86| 久久国产乱子精品免费女| 久久激五月天综合精品| 韩国三级在线一区| 国产乱码精品一区二区三区av | 国产精品麻豆欧美日韩ww| 国产精品国产三级国产三级人妇| 国产日韩av一区二区| 国产清纯在线一区二区www| 国产精品乱人伦一区二区| 亚洲美女视频在线观看| 亚洲福利视频导航| 日本三级亚洲精品| 国产麻豆精品视频| av影院午夜一区| 欧美亚男人的天堂| 日韩精品中文字幕一区 | 欧美精品少妇一区二区三区| 在线不卡免费欧美| 久久蜜桃av一区精品变态类天堂 | 国产精品1区2区3区在线观看| av高清不卡在线| 欧美精品日日鲁夜夜添| 久久影院电视剧免费观看| 亚洲同性同志一二三专区| 亚洲a一区二区| 国产精品一区在线观看乱码| 色呦呦日韩精品| 日韩一区二区三区视频在线观看| 国产欧美综合色| 午夜日韩在线电影| 成人精品gif动图一区| 欧美日韩久久不卡| 中文字幕免费观看一区| 亚洲成人一二三| 丁香啪啪综合成人亚洲小说| 91麻豆精品国产综合久久久久久| 国产日韩欧美不卡| 日本女优在线视频一区二区| 91丨porny丨最新| 精品国产91久久久久久久妲己 | 国产成人精品aa毛片|