文档章节

图像缩放与多采样率

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
粉丝 60
博文 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
08/15
0
0
Android进阶——图片优化之质量压缩、尺寸压缩、采样率压缩、LibJpeg压缩

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

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

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

tnnowu
05/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

配置Spring的注解支持

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。 配置Spring的注解支持 以上也提到了使用注解来配...

凯哥学堂
27分钟前
0
0
关于Spring Aop存在的一点问题的思考

在本人前面的文章Spring Aop原理之切点表达式解析中讲解了Spring是如何解析切点表达式的,在分析源码的时候,出现了如下将要讲述的问题,我认为是不合理的,后来本人单纯使用aspectj进行试验...

爱宝贝丶
28分钟前
0
0
JavaScript 概述

JavaScript是面向Web的编程语言。绝大多数现代网站都使用了JavaScript,并且所有的现代Web浏览器——基于桌面系统、游戏机、平板电脑和智能手机的浏览器——均包含了JavaScript解释器。这使得...

Mr_ET
59分钟前
0
0
Java Run-Time Data Areas(Java运行时数据区/内存分配)

Java运行时数据区(内存分配) 本文转载官网 更多相关内容可查看官网 中文翻译可参考 2.5. Run-Time Data Areas The Java Virtual Machine defines various run-time data areas that are use...

lichuangnk
今天
0
0
docker learn :services docker-compose.yml

docker-compose.yml定义了服务的运行参数 version: "3" services: web: # replace username/repo:tag with your name and image details image: hub.c.163.com/dog948453219/friendlyhello d......

writeademo
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部