一、最近邻插值算法
思想&步骤:
1.根据放大的倍数,新建一个大小为原图像大小*倍数的0矩阵
2.0矩阵的每一个像素点的值根据原图像求出,即分别把x,y除以倍数后得到的小数取整( matlab中的round函数取小数的最近整数 )
3.对于边缘的情况要注意
最邻近插值简单且直观,速度也最快,但得到的图像质量不高。
代码demo:
A=imread('E:\matlab\work\tiger.jpg');%读取图像信息
imshow(A);%显示原图
title('原图');
Row=size(A,1);
Col=size(A,2);%图像行数和列数
nn=2;%放大倍数
m=round(nn*Row);%求出变换后的坐标的最大值
n=round(nn*Col);
B=zeros(m,n,3);%定义变换后的图像
for i=1:m
for j=1:n
x=round(i/nn);
y=round(j/nn);%最小临近法对图像进行插值
%处理边缘
if x==