

英语原文共 5 页,剩余内容已隐藏,支付完成后下载完整资料
20121309015综合国际研讨会论文集工程师和计算机科学家2009第1卷
IMECS 2009,3月18日-20日,2009,香港
神经网络在图像处理技术中的应用
Weibin Hong, Wei Chen, and Rui Zhang
摘要——如今,我们利用数字量来存储和恢复连续数量的信息。它通常需要我们比较大的存储空间来存储信息,并不能获得关于连续数量的尽可能多的信息,因为传统采样过程不能获得相邻的信息采样点关系。本文提出了一种利用神经网络结构来存储连续量信息的新思想,使其能大大减少存储空间的量,并且尽可能多地恢复连续的信息量。本文给出了一个神经网络在图像处理技术中的应用实例。它告诉我们如何用神经网络结构作为存储介质存储和恢复图像。结果表明,在这种方式下,我们可以获得一个比使用传统的方法清晰的图像,并大大减少存储空间,这是用来存储连续数量的信息。
关键字——神经网络,图像,重建,存储
- 简介
目前,在将连续数量转化为数字量的过程中,我们经常使用模数转换器来完成采样、量化和编码的过程[1]。然后,我们存储在存储介质中的数字量。这是一个非常简单和方便的方法。然而,通过传统的方法获得的信息,不包含相邻采样点的关系的信息。其结果是,它导致存储空间量的增加和信息质量的降低,这些信息是我们在存储介质中从连续数量和存储转换而来的。在接下来将数字量转换为连续数量的过程中,输出越近似于原始的连续数量,它将会需要越高的采样频率和越多的存储空间。但是,如果我们用更少的存储空间来存储连续的信息量,那么采样频率必须是低的,在这种情况下,我们不能实现用来近似原始的连续数量的准确的输出。其结果是,用来存储信息的原始连续数量的转换精度和存储空间,成为当今技术的矛盾。面对这一矛盾,我们必须提高转换质量和我们存储信息的方式。
神经网络具有良好的非线性处理能力的特性[2]。它证明了多层神经网络可以准确逼近任意线性或非线性函数。通过学习不完全数据,神经网络可以用其泛化能力实现对整个数据的准确预测。我们可以利用神经网络近似连续的量,因为任何连续的量可以表示由线性和非线性函数的组合。我们可以利用神经网络的结构来存储连续量的信息。新技术可以帮助我们解决清晰的视觉传达的技术问题和高压缩比等问题。
- 传统相机的缺点
为了简化神经网络的训练,我们用一千像素的摄像头来模拟我们的日常数码相机。因为一百万像素远远超过一千像素,我们使用一百万像素的地图来模拟我们每天用我们的数码相机拍摄的连续的数据对象。如图1,有一个一百万像素的地图,我们可以认为它是一个连续的量。
图1.作为连续量的地图
水平轴为X轴,纵向为Y轴。变量X,Y的范围分别为[-8,8]。 该图的分辨率为1001times;1001=1002001,一百万像素映射。图的长度为8*2=16,宽度为2*8=16。这意味着每0.016单位像素在X轴(或Y轴)的地图方向上,即x= -8:0.016:8;y= x,每个像素都有自己的颜色。然后这1002001个像素组成这个地图。数码相机的像素是33*33=1089。使用数码相机拍摄上面的地图,我们可以得到一张1089像素的照片,正如图2。值得注意的是,1002001像素是远远超过1089像素的,因此我们可以把地图看做1002001像素的连续的量。
图2.传统相机拍摄的图片
在图2中,水平轴为X轴,纵向为Y轴。变量X,Y的范围分别为[-8,8]。图2的分辨率为33times;33=1089。图2的长度和宽度都为16个单位,这意味着每0.5单位像素在X轴或者Y轴方向上。
图2中,数码相机拍摄的图片打开了很多网格。照片中有一个又一个网格。此外,每个网格都有它自己的颜色。而且,照片是模糊的,严重缺乏层次感。在我们的日常生活中存在着许多这样的现象。例如,当我们在日常的照片放大中,这种现象就会发生。从上面的马赛克现象,我们可以看到利用数字量来记录连续量信息的缺点。如今,我们所拍摄的照片,就想图2,占用了大量的存储空间而且无法获得理想的效果。如果把数码相机的分辨率调大(例如,超过500万像素)以牺牲占用大量的存储空间(例如,1M内存),这样我们就可以得到一个良好的视觉效果。
- 智能化传统的数码相机
将先进的智能算法嵌入到传统的数字图像处理技术中,可以大大降低存储空间的数量并且大大提高图像的分辨率。神经网络的特征是,它可以准确地逼近任何复杂的线性或非线性函数。我们建立了一个二输入和单输出的神经网络,它的两个输入是横坐标与纵坐标的像素,输出是颜色值。神经网络以传统相机的数字量信息为学习样本。训练之后,神经网络结构中存储了我们使用数码相机拍摄的连续量的信息。通过神经网络的泛化能力,我们可以得到比数字量占用更少的存储空间的高清晰度的图像和以神经网络权重值形式存储的图像信息。
- 利用新技术实现的视觉效果,实现了以神经网络作为存储介质的存储和重构。
(1)定义一系列的颜色,如图3,从深蓝色到深红色的范围在[0, 1.2],并且颜色值是Z。
Z: 0 0.2 0.4 0.6 0.8 1.0 1.2
图3.颜色值
然后,图1可以被看作是三维图。图1中每个像素的颜色决定了颜色值Z。这个颜色值Z与图1中的横轴X和纵轴Y确定了三维图。如果使用X,Z轴决定的方向来切割图得到的平面,这个图就显式为图4。
图 4.图中一半的样子
利用神经网络逼近三维图,可以得到图1所示的地图信息。X,Y是神经网络的输入,Z是它的输出。
(2)像传统的方法,在拍摄连续量的照片后,33*33=1089像素的摄像头以这种方式来存储信息:它有1089像素。每个像素以X*Y*Z的形式存储。例如,8*7.5*0.234,其中8*7.5代表点的坐标,0.234是颜色值。根据图3可知,它的像素是蓝色。图1拍摄照片后,有1089个X*Y*Z的形式的小数据块。
(3)在MATLAB神经网络工具箱的图形用户界面,构建一个二输入单输出的神经网络,如图5。
图5.构建一个二输入单输出的神经网络
(4)用1089个X*Y*Z数据块训练神经网络。X*Y是神经网络的输入,Z是训练目标。训练这个神经网络100次。在每次训练的过程中,必须输入1089个坐标值X*Y和目标颜色值Z [5] (-8.0times;-8.0times;0.0840,-8.0times;-7.5times;0.0912,-8.0times;-7.0times;0.0879hellip;hellip;-8.0times;8.0times;0.0840,-7.5times;-8.0times;0.0912hellip;hellip;8.0times;7.5times;0.0912,8.0times;8.0times;0.0840)。然后,神经网络通过它自己的结构存储地图的信息。为了导出数据块到MATLAB神经网络工具箱的图形用户界面(NNTOOL)作为训练样本,它需要传递坐标矩阵X,Y到一个2排1089列的矩阵。
程序1:
i=0.5 ; %定义步骤
n=8/I ; %计算一个面内像素的个数
x=-8 : i : 8 ; %计算所有的x
E=ones(2*n 1,1); % 设置一个矩阵,其中包括2*n 1行和1列
X=E*x; %初始化所有的横坐标
A=reshape(X,(2*n 1)^2,1); %将矩阵X转换为一个(2*n 1)^2行和1列的矩阵A
R=[1 0];
A=A*R;
y=-8:i:8; % 计算所有的y坐标值
y=y ; % 将行向量转换为列向量
Y=y*ones(1,2*n 1); % 为了准备导入数据块,它处理的是纵向轴线
B=reshape(Y,(2*n 1)^2,1); %将矩阵Y转换成(2*n 1)^2行和1列的矩阵B
R=[0 1];
B=B*R;
C=A B;
C=C; %将矩阵A和矩阵B合并为一个2行和2*n 1列的矩阵,以训练神经网络。
程序 2:
Z=reshape (Z, 1, (2*n 1) ^2);
将由矩阵Z代表的颜色值转换成列向量。
(5)在此时,需要重建连续的量,其信息存储在上述结构的神经网络中。充分利用神经网络的泛化能力,我们可以输出新的像素坐标(在X轴和Y轴方向上分别为没0.016个单位)到神经网络的输入通道。(-8.0times;-8.0,-8.0times;-7.984, hellip;hellip; -8.0times;8.0,-7.984times;-8.0,-7.984-7.984hellip;hellip;8.0times;7.984,8.0times;8.0).
程序 3:同程序1一样,除了将i=0.5换成i=0.016。然后输出到Matlab神经网络工具箱用于仿真。
导出一个1001*1001=1002001个像素的总和到神经网络的输入通道。换句话说,在100万像素的方式中创建图像,尽管网络是由1089个像素信息训练而来的。例如,我们输出坐标数据-8.0*-7.984到网络的输入通道,然后一个颜色值Z可以被网络的输出通道获得。根据图3,可以找到对应的颜色值Z。这样,通过输入的1001*1001=1002001个像素坐标,神经网络可以计算每个像素的颜色。然后结合这1002001像素,可以得到100万像素的图像,如图6。虽然有一定的误差,图6是明亮的而且层次感强。神经网络通过其结构和泛化能力来计算每个像素的颜色,它将每个像素恢复得尽可能准确。
图6.由神经网络重建的图像
图像的缩放,即只显示X,Yisin;[ 0,8 ],如图7。即使我们在图像上缩放几次,也没有任何网格的图像。图像清晰,具有强烈的层次感。
图7.放大的图6
如果将训练步骤从0.5个单元更改为0.05个单元,图像将进一步清晰,如图8。
图8. 从0.5到0.05的训练步骤中,通过神经网络重建的图像,进一步更接近图1。
B.作为存储介质的神经网络结构的存储机制
在利用神经网络来存储连续的信息量的方式中,如果摄像机和显示设备都使用相同的网
络帧结构,它只负责存储网络中的所有权值。我们可以从这些权值计算每个像素的颜色。从这些像素可以得到图像。事实上,若连续的量包含越多的信息,神经网络的结构就必须越复杂。
以上神经网络的权值:
Iw{1,1}-从输入1到1层的权值:(输入层的权重值)
[0.32117 0.23179; -0.22598 -0.058855; -0.2197 0.28916;-0.13236 0.23204; -0.12373 0.22589; 0.16722 0.17131;0.012231 -0.34929; -0.28658 -0.24239]
Iw{2,1}-层权重:(隐含的权重值)
[0.55072 0.49317 1.266 0.074822 -1.3834 -0.4892 -0.60075-1.2118; 1.7877 -0.014468 -0.069213 -0.18165 0.8804-0.36616 -0.10915 -0.55922; -0.51954 -1.6894 -0.080529 -0.85829 1.6584 -1.4344 -1.1693 0.21185; -0.22666 -1.6051 0.025461 -0.89101 0.3549 -0.42766 -0.29696 0.85384; -1.0715 -1.7215 0.30371 -1.3179 -0.15561 0.92942 0.14995 -0.012989; 0.16497 1.265 -0.79466 -0.20487 -0.71372 1.1138 0.75199 -0.58219; 0.73863 -0.69675 0.45287 -0.73209 0.64714 0.54201 -0.65613 1.3945; -0.56871 1.0983 -0.64282 0.18558 0.12391 -0.36618 0.47466 0.21524;
-0.31446 0.24702 0.38106 -1.3354 0.54997 0.496 -1.4078 0.0042069; -0.93242 -0.81945 -0.56674 0.8288 -0.31064 1.3565 1.2404 0.96787]
Iw{3,2}-层权重:(输出层的权重值)
[-1.0259 -0.37326 -3.0578 1.207 -0.24202 -0.82667 -1.1917 -1.2437 -0.66687 -1.438]
b{1}-1层偏置值:(输入层的阈值)
[-2.948; 0.71287; -2.3819; 0.80726; -0.75987; 0.61566; -1.8717; -2.4648]
b{2}-2层偏置值: (隐含层的阈值r)
[-1.9088; -1.5881; 2.3147; 0.048125; 0.30116; -1.2241; 0.97065; -0.95876; -1.0955; -1.4806]lt;
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[30956],资料为PDF文档或Word文档,PDF文档可免费转换为Word
您可能感兴趣的文章
- 饮用水微生物群:一个全面的时空研究,以监测巴黎供水系统的水质外文翻译资料
- 步进电机控制和摩擦模型对复杂机械系统精确定位的影响外文翻译资料
- 具有温湿度控制的开式阴极PEM燃料电池性能的提升外文翻译资料
- 警报定时系统对驾驶员行为的影响:调查驾驶员信任的差异以及根据警报定时对警报的响应外文翻译资料
- 门禁系统的零知识认证解决方案外文翻译资料
- 车辆废气及室外环境中悬浮微粒中有机磷的含量—-个案研究外文翻译资料
- ZigBee协议对城市风力涡轮机的无线监控: 支持应用软件和传感器模块外文翻译资料
- ZigBee系统在医疗保健中提供位置信息和传感器数据传输的方案外文翻译资料
- 基于PLC的模糊控制器在污水处理系统中的应用外文翻译资料
- 光伏并联最大功率点跟踪系统独立应用程序外文翻译资料
