文档章节

图像缩放与多采样率

abcijkxyz
 abcijkxyz
发布于 2016/11/22 16:46
字数 860
阅读 18
收藏 0

    图像缩放是一个既简单而又复杂的问题,有很多经典的插值算法,但这些插值算法总会一定程度上的模糊图像。就即使采用3次多项式插值也是如此。于是有人认为可以在插值之前采用预处理,插值之后增加后处理的方法以提高图像质量。也就是:

 

               

 

 

 

    其中预处理也就是预滤波,后处理也是后置滤波操作。

    这样的处理过程真正能提高图像质量吗?以前对这一操作过程就有一些疑惑。因为插值本身就具有低通滤波的作用。

 

首先思考一下整数倍图像放大问题。这种情况对应于2维信号的整数倍内插操作。多抽样率数字信号告诉我们,内插操作因为事先不知道要插入的值是多少,于是就用零代替。但这样,从频域角度去看,多出了与信号频谱对称的高频分量,术语叫镜像。所以需要一个低通滤波器以去除镜像。这样滤波之后,原先那些补零的值就被修改为非零。所以,对图像整数倍放大问题,做图像插值后没有必要后置一个滤波器。

 

同样,考虑整数倍图像缩小问题。这种情况对应于2维信号的整数倍抽取操作。抽取就是把某些信号丢掉。最简单的2倍抽取就是保留偶数位置上的点,扔掉奇数位置上的点。但这样有可能会产生频谱混叠。为了避免混叠,可以事先进行低通滤波。以保证抽点之后虽然频谱扩展变胖了,但不会产生交叉。而图像缩小进行的插值本身也就是低通滤波的作用。所以,前面的预滤波没有必要。

 

当然,从多抽样率的观点来看。可以设计一个2维低通滤波器先对图像做低通滤波,然后扔掉奇数位置的点。这样必然得到缩小2倍的图像。对于图像放大问题而言,可以先在每两个像素之间插入0值,然后在设计一个2维低通滤波器对它做滤波,这样必然得到放大2倍的图像。

 

综上所述,采用图像插值的方法做图像缩放,增加预滤波和后置滤波不仅不能提高图像质量,还可能使图像更模糊。因为进行了多次低通滤波。图像质量取决于采用什么样的插值核函数,而插值核函数与多抽样中的滤波器没有本质上的区别,而且应该是一致的。设计怎样的滤波器等价于采用何种插值核函数。

 

目前有基于偏微分方程【PDE】的图像缩放能取得更好的效果。一种实现框架是先采用传统的图像插值的方法,然后做后处理。但是,这里的后处理不是传统的滤波,而是一种基于PDE的非线性扩散以增强边缘。目前更好的方法是完全扔掉插值过程,直接对图像采用图像修复的算法。

本文转载自:http://www.cnblogs.com/celerychen/archive/2010/12/08/3588219.html

共有 人打赏支持
abcijkxyz
粉丝 63
博文 6196
码字总数 1876
作品 0
深圳
项目经理
私信 提问
Android应用开发之(你必须知道的“避免内存溢出图片处理方案”)

今天给大家分享一些图片处理常用技术方案,Android应用开发的朋友必须要了解呀! 众所周知在Android应用开发中在对图片处理时,稍有不慎就会出现以下异常: java.lang.OutofMemoryError: bi...

雨焰
2012/10/23
0
0
Android中RGB_565方式压缩图片详解

Android压缩图片的方式 质量压缩 采样率压缩 缩放压缩 色彩压缩 RGB_565简介 RGB_565是色彩压缩的一种方式,其通过不用透明率以及对RGB的相应位数进行省略。 一个彩色图像由R G B三个分量组成...

右眼皮的爱
2017/09/20
0
0
LA2132系列USB逻辑分析仪高级触发功能图解

LA2132 、64通道 G系列逻辑分析仪 触发功能图示 用一条同步扁平电缆,用二台LA2132 构成64通道逻辑分析仪,连接如下: 时序测量: 采集的数据作为时序波形来显示,每一个通道都能定义为自已喜欢...

dy17comcn
2018/08/15
0
0
Android进阶——图片优化之质量压缩、尺寸压缩、采样率压缩、LibJpeg压缩

效果演示 质量压缩 质量压缩:根据传递进去的质量大小,采用系统自带的压缩算法,将图片压缩成JPEG格式 尺寸压缩 尺寸压缩:根据图片的缩放比例进行等比大小的缩小尺寸,从而达到压缩的效果 ...

qq_30379689
2017/12/24
0
0
【 Android 】高效加载 Bitmap

是 Android 系统中图像处理的最重要的类之一。通过我们可以获取到图片的信息(宽度的像素值,高度的像素值,总的像素值,α 值,还可以通过去创建一个新的等)。获取到信息之后,可以对其进行...

tnnowu
2018/05/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

centos7 Nginx+rtmp 搭建流媒体服务器

一. gcc 安装 安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装: yum -y install gcc gcc-c++ 二. PCRE pcre-devel 安装 PCRE(Perl Compatib...

legend3
29分钟前
2
0
“别更新了,学不动了” 之:全栈开发者 2019 应该学些什么?

转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 原文转载自 公众号 infoqchina 对于什么是全栈开发者并没有一个明确的定义。但是,有一件事是...

葡萄城技术团队
45分钟前
6
0
OSChina 周五乱弹 —— 姑娘馋的口水都留下来了。

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @且无需多言 :分享Fall Out Boy的单曲《Disloyal Order Of Water Buffaloes》 《Disloyal Order Of Water Buffaloes》- Fall Out Boy 手机党...

小小编辑
今天
783
14
vue 对对象的属性进行修改时,不能渲染页面 vue.$set()

我在vue里的方法里给一个对象添加某个属性时,我console.log出来的是已经更改的object ,但是页面始终没有变化 原因如下: **受现代 JavaScript 的限制 (而且 Object.observe 也已经被废弃),...

Js_Mei
今天
2
0
开始看《Java学习笔记》

虽然书买了很久,但一直没看。这其中也写过一些Java程序,但都是基于IDE的帮助和对C#的理解来写的,感觉不踏实。 林信良的书写得蛮好的,能够帮助打好基础,看得出作者是比较用心的。 第1章概...

max佩恩
昨天
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部