人工神经网络在图像处理与识别中的应用(翻译的IEEE英文原版论文) 联系客服

发布时间 : 星期六 文章人工神经网络在图像处理与识别中的应用(翻译的IEEE英文原版论文)更新完毕开始阅读

开始输入原始图像输入图像加入椒盐噪声采用AMF滤除原始图像的椒盐噪声基于原始输入图像计算出过滤图像的平均误差原始无噪声图像转换成二进制数据矩阵测试图像加入椒盐噪声采用AMF滤除测试图像椒盐噪声测试图像转换为测试数据矩阵基于原始数据矩阵计算出测试矩阵的平均误差采用ANN对测试数据矩阵进行训练产生新数据矩阵 论文设计流程 基于原始数据矩阵计算新数据矩阵的平均误差 1.选取最佳原始图像目的,是为了进行识别提供标准的原始数据,以减小相对误差,提高识别正确率。 2.加入椒盐噪声的目的,因为因为所有用来识别的图像都可能含有某种噪声,这就需要去滤除噪声,从而进行正确的识别。

3.选用自适应中值滤波器原因:滤波器被广泛地用于图象的预处理,抑制图象噪声,增强对比度,以及强化图象的边沿特征. 运用较为广泛的线性滤波器如平均值滤波器,能较好地抑制图象中的加性噪声. 但是,线性滤波器会引起图象的钝化或模糊,使得图象中物体边界产生位移. 特别是,在图象受到乘性噪声或脉冲噪声的干扰,如超声波及雷达成像中普遍存在的斑点噪声,线性滤波器就不能取得预期的效果. 中值滤波器,就像其名字一样,是用该像素的相邻像素的灰度中值来代替该像素的值,是一种非线性滤波器. 例如滤波窗口由3×3 个象素组成,则其中5个象素的灰度值会小于等于该滤波器的输出灰度值,同时5 个象素的灰度值会大于等于滤波器的输出. 由此可见,对于离散的脉冲噪声,当其出现的次数小于窗口尺寸的一半时,将被抑制掉同时也能较好地保证图象的边沿特征,而且易于实现. 因此它被广泛地应用于图象处理,尤其是医学图象处理,如超声波图象.但由于其使用的滤窗大小是固定不变的,当窗中噪声像素数超过有用像素之半时(噪声密度较大时),中值滤波滤波作用大大降低。多次试验验证:在脉冲噪声强度大于0.2时,中值滤波效果就显得不是令人满意。而自适应中值滤波器会根据一定的设定条件改变滤窗的大小,即当噪声面积较大时,通过增加滤窗的大小将噪声予以去除,同时当判断滤窗中心的像素不是噪声时,不改变其当前像素值,即不用中值代替。这样,自适应中值滤波器可以处理噪声概率更大的脉冲噪声,同时在平滑非脉冲噪声图像时能够更好地保持图像细节,这是传统中值滤波器做不到的。所以选用自适应中值滤波有利于保留图像细节,有利于正确进行图像识别。

4.采用将一副图像分割成几部分的方法,只取其中10X10矩阵的元素,一是方便进行误差计算,二是只进行图像某部分进行识别,提高了识别速度,三是采用矩阵形式方便进行将数据输入至ANN网络进行图像处理。

5.采用图像压缩的方法,将像素数据进行进制转换,矩阵ORMAT[][],TESTMAT[][],NEWMAT[][]的列的数目只占了原始图像或测

试图像数据总列数的四分之一,因此利用人工神经网络完成训练和测试所需的时间大大减少。

6.图像处理可以看作一大类图像技术,着重强调在图像之间的变换,图像处理是包含丰富内容和具有广阔应用领域的研究学科。近几年来,作为具有自组织、自学习和联想功能的人工神经网络理论已成功地应用于图像处理的许多方面,如图像压缩、图像分割、边缘检测、图像增强、图像识别等。概括得说,神经网络应用于图像处理的主要思路是:把原始图像或经过适当预处理的图像作为网络的输入信号,在网络的输出端得到处理后的图像信号或分类结果。

7.图像增强的目标是改进图片的质量,例如增加对比度,去掉模糊和噪声,修正几何畸变。

8.BP (Back Propagation)神经网络,即误差反传误差反向传播算法的学习过程,由信息的正向传播和误差的反向传播两个过程组成。输入层各神经元负责接收来自外界的输入信息,并传递给中间层各神经元;中间层是内部信息处理层,负责信息变换,根据信息变化能力的需求,中间层可以设计为单隐层或者多隐层结构;最后一个隐层传递到输出层各神经元的信息,经进一步处理后,完成一次学习的正向传播处理过程,由输出层向外界输出信息处理结果。当实际输出与期望输出不符时,进入误差的反向传播阶段。误差通过输出层,按误差梯度下降的方式修正各层权值,向隐层、输入层逐层反传。周而复始的信息正向传播和误差反向传播过程,是各层权值不断调整的过程,也是神经网络学习训练的过程,此过程一直进行到网络输出的误差减少到可以接受的程度,或者预先设定的学习次数为止。 图像增强的主要目的是使图像处理后达到特定的效果。不同的图像,其处理方法也各不相同,使我们很难找到一个标准的公式或函数,因此可利用神经网络的学习特性和自组织能力帮助我们完成这任务。即将测试数据矩阵的数据输入ANN网络,其输出即为调整好的测试新数据矩阵,将这个新矩阵再与原始数据矩阵进行对比,计算误差,即可判定是否为同一图像。

三.解决问题

Matlab程序

function []=TwoDPCA % %%úce recognition clear all close all clc M=200; traincopy=3;

eignum=100;%%%选取100个特征值。 cel=cell(1,M); cellafter=cell(1,M); tt=clock; S=[]; ii=1;

str=strcat('E:\\人脸\\2dfacedatabase\\ORL\\s1\\1.pgm'); img=imread(str); [ia ib]=size(img); sum=zeros(ia,ib); B=zeros(ia,ib);