zoukankan      html  css  js  c++  java
  • 图像内插

    内插是在诸如放大、收缩、旋转和几何校正等任务中广泛应用的基本工具。在本质上,内插是用已知的数据来估计未知位置的数值的处理。假设一幅图大小为500500的图像要放大到750750大小,我们应该怎么去放大,实际上放大的算法有很多,它们各有优缺点。

    1、最邻近内插:假设我们有个大小750750的图片,它的像素之间的间隔和原图(500500)是相同的,也就是说有相同的空间分辨率,然后我们把他缩小成500*500大小(想象成网格),像素之间距离小了,然后在原图上对应着找与图片上像素点的位置距离最近的像素点,找到之火将原图的那个像素点的像素值赋值到该图对应像素点上。效果不是很好,不常用。

    A,B,C,D是新的位置,分别找里它们最近的点,然后赋值,左上角的像素值赋给A,右上角的像素值赋给B……

    2、双线性内插:上面的是用原图上的一个点去确定新位置的灰度,而这个方法使用4个最近邻去估计给定位置的灰度。

    v(x, y) = a*x + b*y + c*x*y + d
    

    我们通过Q12 , Q22, Q11, Q21这四个点来给P点插值。我们先对R1 和 R2这两个点来进行插值,然后通过R1,R2来给P点进行插值。

    这种插值方法的结果通常不是线性的,线性插值的结果与插值的顺序无关。首先进行 y 方向的插值,然后进行 x 方向的插值,所得到的结果是一样的。

    3、双三次内插法:最复杂同时也是效果最好的算法,由(x,y)的16个最近邻点来估计。

    假设源图像A大小为mn,缩放后的目标图像B的大小为MN。那么根据比例我们可以得到B(X,Y)在A上的的
    对应坐标为A(x,y)=A(X(m/M),Y(n/N))。在双线性插值法中,我们选取A(x,y)的最近四个点。而在双立方

    插值法中,我们选取的是最近的16个像素点作为计算目标图像B(X,Y)处像素值的参数。如图所示:

    如图所示P点就是目标图像B在(X,Y)处对应于源图像中的位置,P的坐标位置会出现小数部分,所以我们假设
    P的坐标为P(x+u,y+v),其中x,y分别表示整数部分,u,v分别表示小数部分。那么我们就可以得到如图所示的
    最近16个像素的位置,在这里用a(i,j)(i,j=0,1,2,3)来表示。
    双立方插值的目的就是通过找到一种关系,或者说系数,可以把这16个像素对于P处像素值得影响因子找出
    来,从而根据这个影响因子来获得目标图像对应点的像素值,达到图像缩放的目的。
    我在这次的学习中学习的是基于BiCubic基函数的双三次插值法,BiCubic基函数形式如下:

    我们要做的就是求出BiCubic函数中的参数x,从而获得上面所说的16个像素所对应的系数。在学习双线性插
    值法的时候,我们是把图像的行和列分开来理解的,那么在这里,我们也用这种方法描述如何求出a(i,j)对应
    的系数k_ij。假设行系数为k_i,列系数为k_j。我们以a00位置为例:
    首先,我们要求出当前像素与P点的位置,比如a00距离P(x+u,y+v)的距离为(1+u,1+v)。
    那么我们可以得到:k_i_0=W(1+u),k_j_0=W(1+v).
    同理我们可以得到所有行和列对应的系数:

    k_i_0=W(1+u), k_i_1=W(u), k__i_2=W(1-u), k_i_3=W(2-u);
    k_j_0=W(1+v), k_j_1=W(v), k_j_2=W(1-v), k_j_3=W(2-v);

    这样我们就分别得到了行和列方向上的系数。
    由k_i_j=k_i*k_j我们就可以得到每个像素a(i,j)对应的权值了。

    最后通过求和公式可以得到目标图片B(X,Y)对应的像素值:
    pixelB(X,Y)=pixelA(0,0)k_0_0+pixelA(0,1)k_0_1+…+pixelA(3,3)*k_3_3;
    这里其实就是个求和公式,由于不知道怎么编辑公式,就这样表达了。

  • 相关阅读:
    Maven教程
    Logback文件这么配置,TPS提高至少10倍
    查看ElasticSearch服务状态和结果的URL
    no main manifest attribute, in demo-1.0.jar
    Rocketmq原理&最佳实践
    【ORACLE】Oracle提高篇之DECODE
    ZooKeeper架构原理你学会了吗?
    01:kubernetes概述
    08:图形页面管理监控
    07:企业级镜像仓库Harbor
  • 原文地址:https://www.cnblogs.com/penuel/p/13414522.html
Copyright © 2011-2022 走看看