双三次插值及MATLAB实现

一、双三次插值的概念

          双三次插值(Bicubic interpolation),又叫双立方插值数值分析这个数学分支中,双三次插值二维空间中最常用的插值方法。在这种方法中,函数f在点 (x0 ,y0) 的值不仅考虑其直接邻接点对其的影响,该方法通过矩形网格中最近的十六个采样点的加权平均得到,在这里需要使用两个多项式插值三次函数,每个方向使用一个。双三次插值是一种更加复杂的插值方式,它能创造出比双线性插值更平滑的图像边缘。双三次插值方法通常运用在一部分图像处理软件打印机驱动程序和数码相机中,对原图像或原图像的某些区域进行放大。

补充知识:最邻近插值算法的目标像素值由源图上单个像素决定,双线性插值算法由源像素某点周围4个像素点按一定权重获得,而双立方插值算法更进一步参考了源像素某点周围4*4个像素来获得。

二、公式

双三次插值通过下式进行计算:

上式可简写为:

    由上可知,对数字图像而言双三次插值算法是基于该像素最4×4 邻域中的像素的加权平均

三、双三次插值的MATLAB实现

tic %计时开始
clear all;
close all;
clc;
I = imread('ngc6543a.jpg');
imshow(I);
%J = imresize(I,2,'nearest');%使用最近邻插值将图像放大到原始大小的 2倍。图像差值运算简单,但图像放大倍数大时质量差!
J = imresize(I,2,'bicubic');%使用双三次插值将图像放大到原始大小的 2倍。图像差值运算复杂,但图像质量好!
 figure,imshow(J);
  toc %计时结束

    如果觉得本文对你和他人学习有所帮助,请关注、转发和点赞。谢谢大家!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值