数字图像处理中Matlab的应用实例

2016-01-28 04:28吕敬兰
读写算·教研版 2016年2期
关键词:图像增强

吕敬兰

摘 要:图像是人类赖以获取信息的最重要来源之一。图像技术与计算机技术不断融合,出现了一系列图像处理软件,其中最典型的是 Matlab,该软件为图像技术的发展提供了强大支持。本文通过实例阐述Matlab 在图像处理中的应用,以图像增强、图像压缩为例,给出了实现图像处理的程序代码,为今后进一步研究打下了基础。

关键词:Matlab;图像增强;图像压缩

中图分类号:G642 文献标识码:B 文章编号:1002-7661(2016)02-002-01

一、引言

Matlab软件是矩阵实验室的简称,是由美国 Math Works 公司于1984 年推出,历经十几年的发展和竞争,现已成为(IEEE) 国际公认的最优秀的科技应用软件之一[1]。Matlab是数字图像处理、计算机图形学、电子线路、电机学、自动控制、通信技术、物理、力学等领域的科研人员所必须掌握的一种程序设计语言。目前基于Windows 系统的最新版本已上升到Matlab6.5,它继承了以往版本的优点, 非常容易使用。Matlab最基本的数据结构是数组,数字图像用数组(矩阵)存储,矩阵中的一个元素对应于图像的一个像素,这意味着 Matlab矩阵运算功能可以应用于图像处理。

数字图像处理是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。一般来讲,图像处理主要包括三个方面:

1、提高图像的视感质量,如改变图像亮度和彩色,增强或抑制某些成分,对图像进行几何变换等,以改善图像的质量。

2、提取图像中所包含的某些特征或特殊信息,所提取出来的特征或信息往往为计算机分析图像提供便利。提取的特征包括很多方面,如频域特征、灰度特征、颜色特征、边界特征、区域特征、文理特征、形状特征、拓扑特征和关系结构等。

3、图像数据的变换、编码和压缩,以便于图像的存储和传输。

数字图像处理的过程其实就是对图像的一种运算过程,从技术上来说,数字图像处理分为空间域和频率域处理。本文通过2个应用实例,验证了 Matlab 图像处理所得到的效果。

二、图像增强的应用

如果不考虑图像降质,仅突出图像中所感兴趣的部分,可以强化图像的某些分量。例如,强化图像高频分量,可使图像中物体轮廓清晰、细节明显;强化低频分量可以减少图像中噪声的影响。 图像复原要求对图像降质的原因有一定的了解, 一般讲应根据降质过程建立降质模型,再采用某种滤波方法,恢复或重建原来的图像。

小波分析方法在图像处理方面具有很多优点。经二维小波分解后,图像的轮廓主要体现在低频部分,而细节部分则体现在高频部分。因此,通过对低频分解系数进行增强处理,对高频分解系数进行衰减处理,即可以达到图像增强的作用。 Matlab用于图像增强的一个实例如下:

function exam1()

I=imread(' … \lena.bmp');

subplot(1,2,1); imshow(I)

colormap(gray);title(' 原始图像 ')

[a,b]=wavedec2(I,2,'sym4'); len=length(a);

for i=1:len

if(a(i)>300)

a(i)=2*a(i);

else

a(i)=0.5*a(i);

end

end

nx=waverec2(a, b, 'sym4');subplot(1,2,2);

image(nx);

title(' 增强图像 ')

三、图像压缩的应用

图像数据的特点之一是信息量大。 一幅 512×512,灰度等级为8b 的图像,其数据量为256KB。在现代通信中,图片传输成了一个重要的研究课题,如何尽可能减少数据的传输量,并保证图像的质量,是目前人们面对的一大难题。采用编码压缩技术,可以减少数据的传输量、提高通信速度。

在某些情况下,如果对图像的要求不高,可以对图像进行有目的的压缩。 作为一个应用实例, 可用Matlab把一个 512×512 的图像压缩为 256×256 的图像。图像压缩的实现代码如下:

Function exam2 ()

I=imread(' … \lena.bmp');I=double(I)/255;

[m,n]=size(I);

figure(1)

imshow(I)

title(sprintf(' 原始图片: %4d * %4d',size(I)));

A=[];B=[];

for i=1:2:n-1

A=[A,(I(:,i)+I(:,i+1))/2];

end

for i=1:2:m-1

B=[B;(A(i,:)+A(i+1,:))/2];

end

figure(2)

imshow(B)

title(sprintf(' 压缩图片: %4d * %4d',size(B)));

与图像处理系统相关的软件和图像处理中图像变换的方法有很多种,Matlab 软件在图像处理当中有着很多的优点,本文介绍了Matlab的图像处理功能,以图像增强、图像压缩作为应用实例,给出了 Matlab 实现的程序代码,为今后进一步研究打下了基础。

参考文献:

[1] 冈萨雷斯. 数字图像处理(第二版)[M].北京:电子工业出版社,2009.8

[2] 蓝章礼.数值图像处理与数值通信 [M].北京:清华大学出版社,2009.3

[3] 曹 弋.MATLAB 教程及实例[M].北京:机械工业出版社,2009.6

猜你喜欢
图像增强
基于纹理先验和颜色聚类的图像增强算法
关于对低照度图像增强算法的研究
通过图像增强与改进Faster-RCNN网络的重叠鱼群尾数检测
一种基于轻量级深度网络的无参考光学遥感图像增强算法
图像增强技术在超跨声叶栅纹影试验中的应用
水下视觉SLAM图像增强研究
虚拟内窥镜图像增强膝关节镜手术导航系统
基于图像增强的无人机侦察图像去雾方法
基于非下采样剪切波变换与引导滤波结合的遥感图像增强
船用视频图像增强装置的模块化设计