0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

图像插值理论研究之双三次插值

星星科技指导员 来源:eetop 作者:eetop 2023-12-14 14:35 次阅读

双三次插值,英文是Bicubic interpolation。双三次插值是一种更加复杂的插值方式,它能创造出比双线性插值更平滑的图像边缘。双三次插值方法通常运用在一部分图像处理软件、打印机驱动程序和数码相机中,对原图像或原图像的某些区域进行放大。Adobe Photoshop CS 更为用户提供了两种不同的双三次插值方法:双三次插值平滑化和双三次插值锐化。

在数值分析这个数学分支中,双三次插值(英语:Bicubic interpolation)是二维空间中最常用的插值方法。在这种方法中,函数f在点 (x,y) 的值可以通过矩形网格中最近的十六个采样点的加权平均得到,在这里需要使用两个多项式插值三次函数,每个方向使用一个。

双三次插值又叫双立方插值,用于在图像中“插值”(Interpolating)或增加“像素”(Pixel)数量/密度的一种方法。通常利用插值技术增加图形数据,以便在它打印或其他形式输出的时候,能够增大打印面积以及(或者)分辨率。

目前有不同的插值技术可供选用。双立方插值通常能产生效果最好,最精确的插补图形,但它速度也几乎是最慢的。“双线性插值”(Bilinear interpolation)的速度则要快一些,但没有前者精确。在商业性图像编辑软件中,经常采用的是速度最快,但也是最不准确的“最近相邻”(Nearest Neighbor)插值。其他一些插值技术通常只在高档或单独应用的程序中出现。

通过双三次插值可以得到一个连续的插值函数,它的一阶偏导数连续,并且交叉导数处处连续。

1000019445-6364867219724256329826274.png

如上图所示,我们在新生成的图像中,像素点是f(x,y),先映射到源图像中的坐标为f(i+u,j+v)需要找到对应的原图像中离最近的16个点。

和前面介绍的双线性插值的分析方法类似(http://blog.chinaaet.com/justlxy/p/5100052604),我们可以分别对行和列进行依次处理。则有,

1000019445-6364867244807580214598469.png

则有,

1000019445-6364867404728432285766014.png

而s(*)表示的则是权值,有多种计算方法(模型),常用的有Bicubic、Mitchell和Lanczos等,这里简单介绍一下Bicubic函数:

1000019445-6364867424294209572591471.png

该函数,波形如下图所示:

1000019445-6364867433619957567265649.png

Lanczos函数为:

1000019445-6364867442145641425087961.png

波形也是类似的:

1000019445-6364867445411550646504920.png


审核编辑:黄飞

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数码相机
    +关注

    关注

    2

    文章

    434

    浏览量

    38004
  • 图像边缘
    +关注

    关注

    0

    文章

    10

    浏览量

    7309
  • 双三次插值
    +关注

    关注

    0

    文章

    2

    浏览量

    5731
收藏 人收藏

    评论

    相关推荐

    关于labview

    我想对采集到的一组数据(大约10M)进行一维,请问模块各接口应该怎么连接啊,请高手给讲讲呗~
    发表于 08-10 10:45

    Matlab应用中的函数

    :’linear’:双线性插值算法(缺省算法);’nearest’:最临近;’spline’:三次样条
    发表于 11-03 16:06

    求线性插值

    在求解线性插值的时候,我先把一个数组分成两个,再求的时候,有时候出结果,有时候不出结果,求指教
    发表于 11-08 22:04

    问题

    LabVIEW中是什么意思,有没有公式,还有二维数组的根本看不懂,求高人指点!!!
    发表于 09-22 09:01

    求教labview样条

    求教大侠指导样条。如果已知一组数据【(x,y)】,对其按等间隔(非时间)采样后【(c1,y1)】。现在想通过对原数据进行样条,并求出在y1时刻的x1
    发表于 10-31 21:36

    求实现三次法的C语言程序,拜托各位了!十分感谢!

    在DSP6000开发平台上用C语言实现三次法,实现对图像的缩放效果的改进。
    发表于 04-20 21:59

    如何对一波形所有极大(小)点用三次样条函数拟...

    哪位大神能帮我一下,本人在做小电流接地系统选线,在matlab中搭建了系统模型后进行了单相接地故障仿真,对于仿出来的波形要进行HHT变换,其中第一步就是要对仿真图形所有极大和极小点用三次样条
    发表于 08-09 19:10

    与拟合方法

    与拟合方法
    发表于 03-27 19:21

    labview问题

    求教,labview用一维控件在想要的地方插好后,如何与原来未
    发表于 08-26 17:55

    verilog实现三次样条

    本帖最后由 我来看看你在干什么 于 2018-5-15 09:10 编辑 用verilog实现EMD算法,需要用到三次样条法,请问有做过类似算法实现的吗,可以讲一下verilog实现
    发表于 05-13 21:34

    请问DAC39J84内部方式是0吗?

    请问DAC39J84内部方式是0吗? 请问2x 4x 8x 16x 过程分别是怎样的
    发表于 03-04 07:26

    IEC纠错是如何工作的?

    我想了解PNA上的纠错,包括旧的(8720D / 8753E)和新的(N5241A / N5242A)。 * _Q1 - 什么是算法?_ *
    发表于 04-30 16:06

    双三次插值原理及源码实现

    双三次插值(bicubic_interpolation)原理及MATLAB源码实现。
    发表于 05-03 10:30

    计算机数值方法概念及机器人轨迹控制中点补与三次样条函数

    计算机数学数值方法概念及机器人轨迹控制中点补与三次样条函数(内容附图页码一致,图文并茂)在机器人轨迹控制中,有用到点补和三次样条函数, 计算机数学数值方法使之便于实现。 章节20.
    发表于 08-04 11:14

    python

    python,更多编程教程请到:菜鸟教程 https://www.piaodoo.com/友情链接:高州阳光论坛https://www.hnthzk.com/人人影视http
    发表于 07-12 06:33