李忠虎 赵丽娜
通过实际应用MATLAB 图像处理工具,对数字图像进行灰度化和滤波平滑处理,并对图像的特征进行特取,为实现精密测试提供了前提。
数字图像处理技术就是将人眼能够看到的连续的物理图像通过计算机采样和量化成二维的函数,并通过演算使其在空间上和数值上离散化,从而形成的一个数字点阵。随着计算机技术和信息处理技术的迅猛发展,数字图像处理技术已在工业检测、航空航天、星球探测、军事侦察、公安防暴、人机交互和文化艺术等领域得到了广泛运用并越来越受到人们的重视。
MATLAB 语言是Mathwoks 公司推出的一种面向工程和科学计算,运算数据可视化和交互式程序设计的高级计算机矩阵运算语言。它将科学数据可视化以及非线性动态系统的建模和仿真模拟集成在一个视窗环境中,结合现代数值分析和矩阵计算,为工程设计、精密检测以及进行科学有效数值计算的众多学科领域研究提供全面、高效的解决方案,摆脱了传统的程序设计语言编辑模式。
MATLAB 数字图像工具箱主要支持四种图像类型:分别是真彩色图像(RGB)、索引图像、灰度图像和二值图像,各类图像可以通过MATLAB 软件工具箱的转换函数相互转换类型,MATLAB 可操作的图像文件包括BMP、HDF、JPEG、PCX、TIFF、XWD 等格式。
在大多数测量过程中采集到计算机的图像一般都为彩色图像,由于彩色图像的数据量比较大,为减少图像处理过程的时间需要将彩色图像灰度化转换成灰度图像,这样能够减少处理数据运算量还能不损失图像的边缘信息。在图像采集过程中,由于受到各种因素的影响,被测图像会变的模糊而使得测量误差超差。为提高测量精度需要将数字图像转化为灰度图像,并进行滤波降噪处理。
运用MATLAB 语言实现彩色图像灰度化和图像的直方图均衡化,将图像中有用的信息突出出来,削弱或消除不需要的信息。
对应的进行灰度化和直方均衡化的MATLAB 源程序及主要注解如下:
% 图像灰度化和直方图均衡化
I=imread(‘tupian1.jpg’);% 读入彩色图像文件
I=rgb2gray(I);% 图像灰度化处理
J=histeq(I);% 对图像直方图均衡化处理,默认灰度级数为 64
subplot(121),imshow(I)% 显示灰度化图像
subplot(122),imshow(J)% 显示直方图均衡化图像
在对数字图像进行初步灰度化和直方图均衡化处理后,在其基础上再对数字图像进行平滑去噪,对数字图像的平滑去噪其实就是对图像信息进行滤波处理。对图像进行滤波处理主要是为了凸现数字图像中某些重要的信息,同时去除或抑制某些无用的信息来提高图像质量。如强化图像的高频分量,可以使图像物体的轮廓更为清晰。
图像滤波处理过程有可能会造成图像失真,因为它不是以图像保真为原则的,它的目的主要有两个:一是提高图像的清晰度;二是有利于计算机识别和处理,如通过锐化滤波突出图像的边缘轮廓线,以便进行特征分析。
滤波处理方法有很多种,不同的方法消除或抑制随机噪声的效果也有所不同,引起的图像中的细微环节和边缘特征的损失程度也不同。在这里主要讨论邻域平均滤波法、加权均值滤波法和中值滤波法三种常用的滤波方法。
下面通过几个实验来对比以下三种滤波方法的处理效果。
对应三种滤波方法的MATLAB 源程序及主要注解如下:
图2 灰度化图像和直方图均衡化图像
图3 滤波处理后图像的对比
通过图3 所示,邻域平均滤波法和加权平均滤波法虽然对图像起到平滑的作用,但在消除噪声的同时,也使得图像中的一些细微数据因被平均滤波而变得模糊了;中值滤波法则在消除噪声的同时还能保持图像中的细微部分,防止边缘轮廓模糊,对如脉冲干扰和椒盐噪声这样的随机噪声具有很好的滤波效果,而且很好的保持了边缘特征信息。
在现代工艺和各类检测过程中,检测被测对象的边缘信息是非常重要的,图像最基本的特征就是边缘,它存在于目标、背景和区域之间,包含着很多有价值的目标边界信息,是分割图像的最重要的依据,也是图像匹配的重要特征。
图4 利用canny 算子检测结果
目前,有很多的图像边缘检测方法,在这里仅介绍基于Canny 算子检测方法,它是边缘检测算法中最常用的一种算子,也是普遍公认的性能优越的边缘检测算子,它经常被其他算子引用作为标准算子并与其进行优劣分析对比。Canny 算子具有高效的检测率、精确定位和明确响应三大优点,这三点也成为评判边缘检测算子的三个标准条件。
下面通过实验来介绍Canny 算子检测方法,对应的MATLAB 语言实现的源程序及主要注解如下:
如图4 所示,物体的边缘的特征表达的比较清楚,图像中的细微部分清晰地表达出来,最大程度的体现了物体的轮廓特征,有利于精密检测的实现。
通过实验,运用 MATLAB 语言对数字图像进行处理,比VC 等软件语言使用简单,还能快速实现模拟计算仿真并输出效果图,大大提高了工作学习效率,对于各类精密检测和科学应用方面有着非常好的辅助性作用。近来MATLAB 软件针对数字图像处理技术推出了许多新的功能,这对相关行业的研究人员提供了高效、便捷的学习和研究工具。