降采样:
对于一幅图像而言的降采样就是每隔几行、几列得到取一点,组成一个新的图像。以比例因子为2(fact of
2)的降采样来说:就是対一幅图像每隔一行一列取一点。对于n×n的图像就变为n/2×n/2的图像了。比例因子为2的降采样是SFIT要用到的。
升采样:
其实一种插值,就是在一幅图像里利用相关的插值运算得到一幅大的图像!比如比例因子为2的升采样就是每个相邻像素点种插值出一个像素(这里包括X、Y两个方向)。对于n×n的图像就变为2n×2n的图像了。顺便说下插值,就是一种利用已有数据对位置数据的估计。比如我第10秒走了12米,第20走了30,那么我用线性插值估计我第15秒走了(30-12)/2+12=21米,当然插值的方法有很多。
MatLab实现:I为所取Image
function J = doubleSize(I)
[M,N]=size(I) ;
J = zeros(2*M,2*N) ;
J(1:2:end,1:2:end) = I ;
J(2:2:end-1,2:2:end-1)
= 0.25*I(1:end-1,1:end-1)
+ 0.25*I(2:end,1:end-1) + ...
0.25*I(1:end-1,2:end) + 0.25*I(2:end,2:end)
;
J(2:2:end-1,1:2:end) = 0.5*I(1:end-1,:)
+ 0.5*I(2:end,:) ;
J(1:2:end,2:2:end-1) = 0.5*I(:,1:end-1)
+ 0.5*I(:,2:end) ;
function J = halveSize(I)
J=I(1:2:end,1:2:end) ;