需要补tmp(:,:,3)和 tmp(:,:,4)之间的2张图像,所以用3:1/3:4。
meshgrid建立网格坐标
%% interpolation-MS2
input_path='./Cdata/';
out_path='./tmp/Cdata_interp_cubic/';
idx=[6, 26, 36];
for i1 =idx
tmp=zeros(1024,1024,6,'uint8');
i=i1-1;
tmp(:,:,1)=imread([input_path, num2str(i,'%03d'), '.png']);
tmp(:,:,2)=imread([input_path, num2str(i+1,'%03d'), '.png']);
tmp(:,:,3)=imread([input_path, num2str(i+2,'%03d'), '.png']);
tmp(:,:,4)=imread([input_path, num2str(i+5,'%03d'), '.png']);
tmp(:,:,5)=imread([input_path, num2str(i+6,'%03d'), '.png']);
tmp(:,:,6)=imread([input_path, num2str(i+7,'%03d'), '.png']);
tmp=double(tmp);
[x,y,z]=size(tmp);
[hx,hy,hz]=meshgrid(1:x, 1:y, 3:1/3:4);
hr=interp3(tmp, hx, hy,hz, 'cubic');
imwrite(uint8(hr(:,:,2)),[out_path, num2str(i+3, '%03d'), '_cubic.png']);
imwrite(uint8(hr(:,:,3)),[out_path, num2str(i+4, '%03d'), '_cubic.png']);
end
pending