downsamp.m

来自「Recovering 3-D structure from motion in 」· M 代码 · 共 55 行

M
55
字号
function V = downsamp(U)

% from "Camera Calibration Toolbox for Matlab"
% Jean-Yves Bouguet
% Intel Corporation
% Microprocessor Research Labs

% Now works with color images!

U = double(U);

[r,c,k] = size(U);

p = floor((r+1)/2); % row
q = floor((c+1)/2); % col


U2 = zeros(r+2,c+2,k);

for i=1:k

	U2(:,:,i) = [U(:,:,i) U(:,end,i)*ones(1,2); ones(2,1)*U(end,:,i) U(end,end,i)*ones(2,2)];
   
end;

cp = 2*(0:(p-1))+1; % row
cq = 2*(0:(q-1))+1; % col


r2 = length(cp);
c2 = length(cq);

e = cq+1;
ee = cq+2;
w = cq-1; w(1) = 1;
ww = cq-2; ww(1) = 1; ww(2) = 1;
n = cp-1; n(1) = 1;
nn = cp-2; nn(1) = 1; nn(2) = 1;
s = cp+1;
ss = cp+2;

V = zeros(r2,c2,k);

for i = 1:k,
   
   V(:,:,i) = (36*U2(cp,cq,i) + 24*(U2(n,cq,i) + U2(s,cq,i) + U2(cp,e,i) + U2(cp,w,i)) + ...
      16 * (U2(n,e,i) + U2(s,e,i) + U2(n,w,i) + U2(s,w,i)) + ...
      6 * (U2(nn,cq,i) + U2(ss,cq,i) + U2(cp,ee,i) + U2(cp,ww,i)) + ...
      4 * (U2(n,ww,i) + U2(nn,w,i) + U2(n,ee,i) + U2(nn,e,i) + U2(s,ww,i) + U2(ss,w,i) + U2(s,ee,i) + U2(ss,e,i)) + ...
   	(U2(nn,ee,i) + U2(ss,ee,i) + U2(nn,ww,i) + U2(ss,ww,i)))/256;
   
end;


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?