插值的定义:

设函数y=f(x)在区间[a,b]上有定义,且已知在点a≤x0<x1<…<xn≤b上的值为y0,y1,…,yn,若存在简单函数P(x)使得

P(xi)=yi (i=0,1,…,n)

成立,就称P(x)为f(x)的插值函数, x0,x1,…,xn称为插值节点,包含插值节点的区间[a,b]称为插值区间,求插值函数P(x)的方法就是插值法。

有时,在图像的几何变换中,比如缩放和旋转,输出图像上的像素点坐标有可能对应于原图像上几个像素点之间的位置,这个时候就需要通过灰度插值处理来计算出该输出点的灰度值。

常用的图像插值算法可以分为最近邻插值,双线性插值和立方卷积插值。

1.最近邻插值

最简单的插值方法是最近邻插值,即选择离它所映射到的位置最近的输入像素的灰度值为插值结果。若几何变换后输出图像上坐标为(x,y)的像素点在原图像上的对应值坐标为

(u,v),则近邻插值公式为:

[······]表示求整

与其它两种插值算法相比,最近插值具有简单快速的特点,但是对于邻近像素点的灰度值有较改变,细微结构是粗糙的。

2.双线性插值

设g(x',y')上像素坐标为(x',y')的点对应于原图像上的坐标为(u,v),如下图所示

将f(x,y)周围的四点存入二维数组a[2][2],并令u=0,v=1,简化后可以得到双线性插值公式:

1:x方向上的线性插值

R1 = (1-x)*array[0][0] + x*array[1][0];
    R2 = (1-x)*array[0][1] + x*array[1][1];

2:y方向上的线性插值

双线性插值具有低通滤波器特质,使高频信号受损,图像轮廓模糊,但同时边缘处的过度也比较自然。缺点是运算速度比最近邻插值要慢。

3.三次卷积插值(又称立方卷积插值)

三次卷积法能够克服以上两种算法的不足,计算精度高,但计算亮大,他考虑一个浮点坐标(i+u,j+v)周围的16个邻点,目的像素值f(i+u,j+v)可由如下插值公式得到:


S(x)是对 Sin(x*Pi)/x 的逼近(Pi是圆周率——π)

最邻近插值(近邻取样法)、双线性内插值、三次卷积法 等插值算法对于旋转变换、错切变换、一般线性变换 和 非线性变换 都适用。

【转载】皇 家 国 际 开 户图像的插值算法18O88O49999的更多相关文章

  1. 用LabVIEW实现《家国梦》游戏中自动收货收金币

    前几周,很流行一个手机游戏,叫<家国梦>.我在手机上玩了一两天后,发现了两个问题: 1. 收货收金币太没意思,只需要手指滑在固定的路线,一会儿就烦了 2. 怎么追赶也追不上手快的人(当然也 ...

  2. 【转载】浅谈游戏开发之2D手游工具

    浅谈游戏开发之2D手游工具 来源:http://www.gameres.com/459713.html 游戏程序 平台类型: iOS Android  程序设计: 其它  编程语言:   引擎/SDK ...

  3. Python与家国天下

    导读:Python猫是一只喵星来客,它爱地球的一切,特别爱优雅而无所不能的 Python.我是它的人类朋友豌豆花下猫,被授权润色与发表它的文章.如果你是第一次看到这个系列文章,那我强烈建议,请先看看它 ...

  4. qt: 打不开png图像以及opencv加载中文路径问题;

    经过亲测, QT(版本: 5.9.4)提供的QImageReader或者函数load在加载本地png图像时,均会提示失败, 按照网上的方法,将Qt plugins下的imageformats 拷贝到e ...

  5. [转载] 使用FFmpeg捕获一帧摄像头图像

    最近在研究FFmpeg,比较惊讶的是网上一大堆资料都是在说如何从已有的视频中截取一帧图像,却很少说到如何直接从摄像头中捕获一帧图像,其实我一直有个疑问,就是在Linux下,大家是用什么库来采集摄像头的 ...

  6. 前端开发面试题-HTML(转载)

    本文由 本文的原作者markyun 收集总结了一些前端面试题,初学者阅后也要用心钻研其中的原理,重要知识需要系统学习.透彻学习,形成自己的知识链.万不可投机取巧,临时抱佛脚只求面试侥幸混过关是错误的! ...

  7. 前端开发面试题-JavaScript(转载)

    本文由 本文的原作者markyun 收集总结. 介绍js的基本数据类型. Undefined.Null.Boolean.Number.String. ECMAScript 2015 新增:Symbol ...

  8. 前端开发面试题-CSS(转载)

    本文由 本文的原作者markyun 收集总结. 介绍一下标准的CSS的盒子模型?低版本IE的盒子模型有什么不同的? (1)有两种, IE 盒子模型.W3C 盒子模型: (2)盒模型: 内容(conte ...

  9. java开发常用jar包介绍(转载)

    jta.jar 标准JTA API必要 commons-collections.jar 集合类 必要 antlr.jar  ANother Tool for Language Recognition ...

随机推荐

  1. js上传文件前判断获取文件大小并且加以判断

    描述:要求浏览器单个上传文件大小不超过10M. 解决方案: var fileSize = $("#fileId")[0].files[0].size/(1024*1024);if( ...

  2. socket小计

    socket,是一个实现了双向通信的链接. 将http比喻为轿车,承载数据.传递数据,那么socket,就是轿车的发动机,它轿车动起来.

  3. failed to open stream :HTTP request failed 解决方法

    用curl抓取,不要用file_get_contents(); 前者比后者效率高一点

  4. 2019-2020-1 20199329《Linux内核原理与分析》第一周作业

    Linux学习随笔 Linux 是一个操作系统,我们的 Linux 主要是系统调用和内核那两层. UNIX前身是Multics,但 UNIX 的商业版本非常昂贵,于是Linus Torvalds(Li ...

  5. Linux系统硬件时间12小时制和24小时制表示设置

    目前的服务器status是下面这样的 服务器系统    centos7 Linux系统时间      Fri Mar 20 15:26:27 CST 2020 Linux系统硬件时间  Fri 20 ...

  6. 显示 QStringList 的内容

    QStringList s; s << "your" << "string" << "list"; ; ...

  7. python教程(目录)

    很早就想出一套python的零基础入门教程,各种原因一直没动手.今天立个flag,2020年一定完成这个目标. 入门篇 完全零基础的小白应该从这里看起. 一.计算机原理 这里不是要让大家去深入的学习计 ...

  8. mysql-管理命令【创建用户、授权、修改密码、删除用户和授权、忘记root密码】

    一.创建用户 命令: CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 关键参数说明: username - 创建登录用户名, host ...

  9. SpringBoot 集成Swagger2自动生成文档和导出成静态文件

    目录 1. 简介 2. 集成Swagger2 2.1 导入Swagger库 2.2 配置Swagger基本信息 2.3 使用Swagger注解 2.4 文档效果图 3. 常用注解介绍 4. Swagg ...

  10. Django中的content_type表

    models.py from django.db import models from django.contrib.contenttypes.models import ContentType # ...