• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-06-07
  • 语言: Matlab
  • 标签: matlab  

资源简介

非matlab自带图像插值函数,用matlab代码写的双三次图像插值函数。

资源截图

代码片段和文件信息

function [out] = bilinearInterpolation(im out_dims)

    %// Get some necessary variables first
    in_rows = size(im1);
    in_cols = size(im2);
    out_rows = out_dims(1);
    out_cols = out_dims(2);

    %// Let S_R = R / R‘        
    S_R = in_rows / out_rows;
    %// Let S_C = C / C‘
    S_C = in_cols / out_cols;

    %// Define grid of co-ordinates in our image
    %// Generate (xy) pairs for each point in our image
    [cf rf] = meshgrid(1 : out_cols 1 : out_rows);

    %// Let r_f = r‘*S_R for r = 1...R‘
    %// Let c_f = c‘*S_C for c = 1...C‘
    rf = rf * S_R;
    cf = cf * S_C;

    %// Let r = floor(rf) and c = floor(cf)
    r = floor(rf);
    c = floor(cf);

    %// Any values out of range cap
    r(r < 1) = 1;
    c(c < 1) = 1;
    r(r > in_rows - 1) = in_rows - 1;
    c(c > in_cols - 1) = in_cols - 1;

    %// Let delta_R = rf - r and delta_C = cf - c
    delta_R = rf - r;
    delta_C = cf - c;

    %// Final li

评论

共有 条评论