前面详细介绍了最近邻插值实现图像的旋转,但是我们都知道,最近邻插值对于图像的旋转效果不是特别的好。所以在本文中,我们详细讨论一下双线性插值算法。
首先,详细介绍一下什么事双线性插值,以及双线性插值为什么会比最近邻插值效果好一些。
为什么图像的旋转一定要插值,因为在旋转过程中,由于三角函数的影响,导致旋转后的点,并不是每一个点都可以在原图像中找到对应点(如:计算出(3.5,4.4)将对应哪个点呢?),所以这些点的灰度值如何确定,就需要我们利用插值算法来进行处理,最近邻插值,想法比较简单,直接四舍五入,显然这种方法不是最理想的。那么双线性插值是什么呢?首先看图:
如上图,假如,我们计算后得到的像素点为p,但是这个点并没有在图像中有点与之对应,因为它的值可能是小数的,那么,我们如何确定它的灰度值呢?
双线性插值的想法也比较简单,双线性,顾名思义,利用了2次线性插值。那是哪两次呢?这时,我们便利用上了其周围的像素点O12 O22 O11 O 21 .通过O12 O22 计算出R2点的灰