理解图像处理中的 双线性内插法(图文说明)

此文章转载自网络,同时自己理解修改注释一番,水平有限,如有错漏请提出指正
tag: 双线性插值,双线性内插法,图像插值法

1 . 为什么要用图像的插值?

在图像的放大和缩小的过程中,需要计算新图像像素点在原图的位置,如果计算的位置不是整数,就需要用到图像的内插,我们需要寻找在原图中最近得像素点赋值给新的像素点,这种方法很简单是最近邻插法,这种方法好理解、简单,但是不实用,会产生是真现象,产生棋盘格效应,更实用的方法就是双线性内插,作为最基本的图像处理算法之一,这些算法在Photoshop中都可以设置。
要用此法,线要理解,才能用得得心应手。

2. 从最基本的基础立即开始:一维线型插值法

如下图所示,我们最了解的直线之间从插值示意图。

理解图像处理中的 双线性内插法(图文说明)_第1张图片

我们已经知道(x0,y0)与(x1, y1)的值,并且已知 x 的值,要求 y 的值。根据初中的知识:

公式1

就是直线上的点,正切值,是一样的,下面进行变换,让x轴上的比例为一个a:

公式2

再变换,我们要求出y:

公式3

3. 二维线型插值法的理解(图文说明)

双线性插值是做了二次一维的线性插值,我们用四个最近邻估计给定的灰度。我们新图像的像素点对应输入图像的(u0 , v0)(u0,v0不是整数),则其必定落在原始图像四个像素点中间。四个像素点分别是(u’ , v’ )、(u’ , v’ +1)、(u’+1 , v’ )、(u’ +1, v’+1 )。如下图1所示:

(图中,u ,v 分别是平面上的位置坐标, g轴是色深,也就是可以想象为颜色值的坐标)

理解图像处理中的 双线性内插法(图文说明)_第2张图片
图一


如图1所示:在红色平面内,在红色平面内,只有u’ 是变量,v’ 是常值,连线 g(u’ , v’ )、 g(u’+1 , v’ ),相当于做一次一维线性插值,求出 g(u0, v’ )的值。同理,如图3中,在蓝色的平面内我们可以再做一次一维线性插值,求出g(u0, v’ +1)的值。同理如图4,在黑色的平面内,我们可以求出(u0, v0)对应的值g(u0, v0)的值。(双线性插值就是分别在 u、v方向上做线性插值)数学推导过程如下:(图中用线圈起来的就是代表每一个公式)

理解图像处理中的 双线性内插法(图文说明)_第3张图片
图二


理解图像处理中的 双线性内插法(图文说明)_第4张图片
图三


理解图像处理中的 双线性内插法(图文说明)_第5张图片
图四


最后的推导公式:

理解图像处理中的 双线性内插法(图文说明)_第6张图片

你可能感兴趣的:(技术心得以及事项,网罗所得)