Home > . > interp2_uvmat.m

# interp2_uvmat

## PURPOSE

A matrix (npy,npx) to interpolate

## SYNOPSIS

function A_out=interp2_uvmat(A,XIMA,YIMA)

## DESCRIPTION

``` A matrix (npy,npx) to interpolate
XIMA: matrix of non-integer x index values (npY,npX)
YIMA: matrix of non-integer y index values (npY,npX), (with the same size as XIMA)```

## CROSS-REFERENCE INFORMATION

This function calls:
This function is called by:

## SOURCE CODE

```0001 % A matrix (npy,npx) to interpolate
0002 %XIMA: matrix of non-integer x index values (npY,npX)
0003 %YIMA: matrix of non-integer y index values (npY,npX), (with the same size as XIMA)
0004 function A_out=interp2_uvmat(A,XIMA,YIMA)
0005 npx=size(A,2);
0006 npy=size(A,1);
0007 npX=size(XIMA,2);
0008 npY=size(XIMA,1)
0009 XIMA=reshape(XIMA,1,npX*npY)+0.5;%indices corresponding to XIMA, reshaped in a matlab vector
0010 YIMA=reshape(YIMA,1,npX*npY)+0.5;%indices corresponding to XIMA, reshaped in a matlab vector
0011 X_delta=XIMA-floor(XIMA);%distance to the closest integer value
0012 XIMA=floor(XIMA);%integer x index on the image
0013 Y_delta=YIMA-floor(YIMA);%distance to the closest integer value
0014 YIMA=floor(YIMA);%integer x index on the image
0015 flagin=(XIMA>=1 & XIMA<=npx-1 & YIMA >=1 & YIMA<=npy-1);%flagin=1 inside the original image
0016 ind_in=find(flagin);%list of indices of XIndex for valid values of image indices (inside the original image)
0017 ind_out=find(~flagin);
0018 vec_A=double(reshape(A(:,:,1),1,npx*npy));%reshape the original image as a Matlab image vector
0019 ICOMB=((XIMA-1)*npy+(npy+1-YIMA));%determine the indices in the image Matlab vector corresponding to XIMA and YIMA
0020 ICOMB=ICOMB(flagin);%selection of the valid indices
0021 X_delta=X_delta(ind_in);
0022 Y_delta=Y_delta(ind_in);
0023 A_out(ind_in)=(1-Y_delta).*(1-X_delta).*vec_A(ICOMB)+Y_delta.*(1-X_delta).*vec_A(ICOMB-1)+X_delta.*(1-Y_delta).*vec_A(ICOMB+npy)+X_delta.*Y_delta.*vec_A(ICOMB+npy-1);
0024 A_out(ind_out)=zeros(size(ind_out));
0025 A_out=reshape(A_out,npY,npX);%interpolated image```

Generated on Fri 13-Nov-2009 11:17:03 by m2html © 2003