Perform inverse distance weighting interpolation using multiple images matlab

I have a total of 4 highly identical grayscale images, where image1 is taken as the reference image, the rest of the images are to be used to enhance image1.

My objective is to enlarge the image to 2 times the original size. Instead of taking average values from neighbouring pixels to fill the upsampled pixels, is it possible to do inverse distance weighting interpolation, so that my image remains sharp?

My other concern is that I need to fill the upsampled pixels with the pixel values from the 3 other images. Is it possible to do interpolation with 4 input images?

• This is basically Multi Image Super Resolution. Look for algorithms on that subject.
– Royi
Oct 30 '15 at 20:33

imresize will enlarge your image, and it gives you a choice of nearest neighbor, bi-linear, or bi-cubic interpolation. As to using the other images for interpolation, you would have to write that yourself.