图像的升采样和降采样.docx
- 文档编号:11497899
- 上传时间:2023-03-02
- 格式:DOCX
- 页数:18
- 大小:1.18MB
图像的升采样和降采样.docx
《图像的升采样和降采样.docx》由会员分享,可在线阅读,更多相关《图像的升采样和降采样.docx(18页珍藏版)》请在冰豆网上搜索。
图像的升采样和降采样
图像的升采样和降采样
一.降采样
1.降采样原理:
(1)时域表达
M倍的降采样是从x(n)中每隔M个样点抽取一个样点,并丢弃其它样点,产生输出序列y(n):
降采样器是时变的线性离散时间系统
(2)频域分析
而
,梳状序列
由
,
为便于理解,可代入
得其频域关系。
先考虑2倍降采样,有:
对一般的M倍降采样,类似地可得其输入-输出间的频域关系为:
是原
的扩展M倍的形状与M−1个右移2kπ的形状的叠加。
为不致混叠失真,x(n)频谱需带限在±π/M内。
很多应用中,采样率变换时裁减一些高频分量是允许的,不会产生失真,但发生频谱混叠是不允许的,它会有明显失真。
所以在降采样前应该对x(n)进行带宽为π/M的低通滤波,该低通预滤波器又称为抽取滤波器。
(3)抽取滤波器的频响特性
因对x(n)预滤波,故输出频谱
中无混叠失真,如图(b)。
但从抽取序列y(n)不能恢复原输入x(n),因为滤波器H(z)只保留了
在区间
的能量,由y(n)只能重构x(n)的这一部分。
而由图(c)也看出,若抽取之前没有进行低通滤波
和
这两个分量会交叠,结果使得抽取器的输出产生混叠失真。
2.图像降采样目的:
降采样,即缩小图像的主要目的有两个:
(1)使得图像符合显示区域的大小;
(2)生成对应图像的缩略图。
3.图像将采样仿真
以2为因子对图像进行降采样,并使用平滑滤波器,可得采样前采样后图像如下所示。
由上图可看出,原始图像经过降采样后,图像变小,并产生明显失真,而使用平滑滤波器后,图像质量得以明显改善。
二.升采样
1.升采样原理
(1)时域表达
L倍升采样是在输入x(n)的每两个样点间内插L−1个零,得到
:
显然,
的采样率提高了L倍,但注意它并未完成真正的内插升采样。
实际上,为实现真正的高采样率内插,应后接某种低通平滑滤波器在时域上内插非零值;而在频域,内插零值将导致多余的高频分量,所以也是要后接一个低通滤波器。
L=3倍的插零升采样结果
(2)频域分析
在基带上产生L−1个多余的镜像谱.
对
再进行低通滤波可在频域去掉这多余的L−1个镜像谱,如下图所示,其中后接的低通滤波器又称为插值滤波器,因为事实上在时域该低通滤波器就是将
中的零值插值样点“填充”为较平滑的非零插值样点,以获得更平滑的插值。
(3)插值滤波器的频响特性
将从
和理想升采样序列y(n)的频谱的差异性来说明插值滤波器H(z)应满足的频响特性。
对模拟信号
按Ts间隔采样得x(n),按T=Ts/L升采样得y(n)。
因此
是x(n)补零插值的L倍升采样而得到,因此有
显然在(−π,π)主值区间,
和
的主要区别是:
在|ω|<π/L区间之外,
为零,而
有高频镜像谱。
因此,若将
通过一个截止频率为π/L,增益为L的理想低通滤波器,其输出就是理想升采样序列y(n)。
实际实现低通插值滤波器时,也有一个通带截止频率ωp到阻带边界频率ωs的过渡带,这里应选择ωs=π/L,而通带截止频率ωp的选取是依据被插值的输入信号中希望被保留的最高频率ωc,可选取ωp=ωc/L。
因此,低通插值滤波器的幅频特性应为:
2倍插值时低通滤波器的效果:
(a)输入x(n)的频谱;(b)插零值2倍升采样后的v(n)的频谱;(c)理想低通滤波后的输出频谱
2.图像升采样目的
图像升采样,即放大图像的主要目的是在不改变观测系统的前提下,利用已经获得的低分辨率图像插值得到较高分辨率,从而可以显示在更高分辨率的显示设备上。
对图像的缩放操作并不能带来更多关于该图像的信息,因此图像的质量将不可避免地受到影响。
在图像中插值,是一种图像处理方法,它可以为数码图像增加或减少象素的数目。
某些数码运用图像插值的方法创造出象素比传感器实际能产生象素多的图像,或创造数码变焦产生的图像。
图像放大时,像素也相应地增加,增加的过程就是“插值”程序自动选择信息较好的像素作为增加的像素,而并非只使用临近的像素,所以在放大图像时,图像看上去会比较平滑、干净。
不过需要说明的是插值并不能增加图像信息。
图像插值是图像处理的一项重要技术,增强视觉效果。
研究此算法,并将其改进将对图像插值算法的发展起到促进作用。
图像插值有着十分重要的应用,如在医学成像系统、航空航天等领域已得到广泛的应用。
因此,一个好的图像插值方法应该既能保证图像的清晰度,又能保持图像边缘的光滑性.
3.图像升采样的算法
(1)最邻近插值算法
最简单的插值算法是最邻近插值,也称为零阶插值。
它输出的像素灰度值就等于距离它映射到的位置最近的输入像素的灰度值,最邻近插值算法简单,在许多情况下都能得到令人满意的结果,但是当图像中包含像素之间灰度级有变化的细微结构时,最邻近算法会在图像中产生人为加工的痕迹。
最邻近点插值[6]取插值点的4个邻点中距离最近的邻点灰度值作为该点的灰度值。
设插值点(i,j)到周边4个邻点fk(i,j)(k=1,2,3,4)的距离为dk(k=1,2,3,4),则:
g(i,j)=fk(i,j),dl=min{d1,d2,d3,d4},l=1,2,3,4
(2)双线性插值算法
双线性插值[1,3]是利用了需要处理的原始图像像素点周围的四个像素点的相关陛,通过双线眭算法计算得出的。
对于一个目的坐标,通过向后映射法得到其在原始图像的对应的浮点坐标(i+u,j+v),其中i,j均为非负整数,u,v为[0,l]区间的浮点数,则这个像素的值f(i+u,j+v)可由原图像中坐标为(i,j)、(i+l,j)、(i,j+1)、(i+1,j+1)所对应的周围四个像素的值决定,即:
f(i+u,j+v)=(1-u)×(1-v)×f(i,j)+(1-u)×V×f(i,j+1)+u×(1-v)×f(i+l,j)+u×v×f(i+l,j+1),其中f(i,j)表示源图像(i,j)处的的像素值,以此类推,这就是双线性内插值法。
如下图所示,已知(0,0)、(0,1)、(1,0)、(1,1)四点的的灰度,可以由相邻像素的灰度值f(0,0)和f(1,0)在X方向上线性插值求出(x,0)的灰度f(x,0),由另外两个相邻像素f(0,1)和f(1,1)在X方向上线性插值可求出(x,1)的灰度f(x,1),最后由f(x,0),f(x,1)在Y方向上进行线性插值就可以得到(x,y)的灰度f(x,y)。
在同一行内根据待插值像素点与其前后的原图像像素点的位置距离进行加权线性插值,即离原图像像素点越近的待插值像素点,原图像像素的加权系数就越大;行间根据待插值行与其上下的原图像行间的距离进行加权线性插值,即离原图像行越近的待插值行,原图像行的加权系数就越大[7]。
双线性插值原理
4.图像升采样仿真
以2为因子,使用邻近插值和双线性插值两种方法对原始图像进行升采样,可得采样前后的图像如下所示
由上图可看出,原始图像经过升采样后,图像变大,并产生明显失真,而双线性插值和邻近插值相比,图像更加清晰,边缘更加光滑,由此可得双线性插值法优于邻近插值法。
三.附录:
1.参考文献:
[1]《数字信号处理原理及其MATLAB实现》从玉良王宏志编著
[2]《数字信号处理》SanjitK.Mitra著
[3]http:
//zh.wikipedia.org/w/index.php?
title=Special%3A%E6%90%9C%E7%B4%A2&profile=default&search=%E9%99%8D%E9%87%87%E6%A0%B7&fulltext=Search维基百科
2.MATLAB代码
(1)图像降采样
%Function:
DownSamplingbyFactor2
%Input:
yourimage.jpg
%Output:
TwoImages
%Figure1.Down:
withoutusingtheaveragingfilter
%Figure2.Down:
withusingtheaveragingfilter
clc;clearall;closeall;
%%%%%%%%%%%%%%%%
%%%Imread%%%
%%%%%%%%%%%%%%%%
I0=imread('yourimage.jpg');
I=rgb2gray(I0);
imshow(I,[]);title('原始图像');
I=double(I);
[heightwidth]=size(I);
hheight=height/2;hwidth=width/2;
dI1=zeros(hheight,hwidth);dI2=zeros(hheight,hwidth);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%DownSamplebyaFactor2%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
fork=1:
hheight
forkk=1:
hwidth
dI1(k,kk)=I(2*k-1,2*kk-1);%Down:
withoutusingtheaveragingfilter
dI2(k,kk)=mean(mean(I(k*2-1:
k*2,kk*2-1:
kk*2)));%Down:
withusingtheaveragingfilter
end
end
figure;imshow(dI1,[]);title('不使用平滑滤波器的降采样');
figure;imshow(dI2,[]);title('使用平滑滤波器的降采样');
(2)图像升采样
closeall;
clc;
clearall;
img=imread('yourimage.jpg');
initial_img=imread('yourimage.jpg');
[height,width,flag]=size(img);
img1=double(img);
figure;
imshow(uint8(initial_img));
title('原始图像')
img2=imresize(img1,[height*2,width*2],'nearest');
img3=imresize(img1,[height*2,width*2],'bilinear');
[height,width,flag]=size(img2);
figure;
imshow(uint8(img2));
title('邻近插值');
figure;
imshow(uint8(img3));
title('双线性插值');
imwrite(img2,'yourimage.jpg');
imwrite(img3,'yourimage.jpg');
-----精心整理,希望对您有所帮助!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图像 采样