• 大小: 162KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-01-02
  • 语言: Matlab
  • 标签: matlab  内插法  

资源简介

自己用matlab写的对于最近邻内插法,双线性内插法,双三次内插法的具体实现

资源截图

代码片段和文件信息

function B=re_bilinear(Anum)
%双线性内插法,两个参数,第一个为灰度图像矩阵,第二个为放大或缩小倍数
%输入的必须是灰度图像,第二个为图像放大倍数,输入小于1大于0的数则进行缩小
    len=length(size(A));
%判断输入的是灰度图像
    if len==2
        [mn]=size(A);
%建立变化后的图像
        B=zeros(m*numn*num);
%为了之后的边界处理问题,将原图像扩充一阶
        X=[A(11)A(1:)A(1n);A(:1)AA(:n);A(m1)A(m:)A(mn)];
        for i=1:m*num
            for j=1:n*num
%+1是因为对原图像进行了一阶的扩充
               x=i/num+1;
               y=j/num+1;
               x_int=floor(x);
               y_int=floor(y);
               x_point=x-x_int;
               y_point=y-y_int;
%双线性内插法
               if x==x_int &&y==y_int
                   B(ij)=X(xy);
               elseif x~=x_int&&y==y_int
                   B(ij)=(X(x_int+1y_int)-X(x_inty_int))*x_point+X(x_inty_int);
             

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件      196662  2016-09-27 12:55  girl.bmp
     文件        1401  2016-09-28 16:00  re_bilinear.m
     文件        1611  2016-09-28 16:00  re_cubic.m
     文件        1094  2016-09-28 16:00  re_nearest.m

评论

共有 条评论