基于小波的图像边缘检测,小波变换边缘检测原理
1、什么是“小波神经网络”?能干什么用呀
小波神经网络(Wavelet Neural Network, WNN)是在小波分析研究获得突破的基础上提出的一种人工神经网络。它是基于小波分析理论以及小波变换所构造的一种分层的、多分辨率的新型人工神经网络模型。
即用非线性小波基取代了通常的非线性Sigmoid 函数,其信号表述是通过将所选取的小波基进行线性叠加来表现的。它避免了BP 神经网络结构设计的盲目性和局部最优等非线性优化问题,大大简化了训练,具有较强的函数学习能力和推广能力及广阔的应用前景。
“小波神经网络”的应用:
1、在影像处理方面,可以用于影像压缩、分类、识别与诊断,去污等。在医学成像方面的减少B超、CT、核磁共振成像的时间,提高解析度等。
2、在信号分析中的应用也十分广泛。它可以用于边界的处理与滤波、时频分析、信噪分离与提取弱信号、求分形指数、信号的识别与诊断以及多尺度边缘侦测等。
3、在工程技术等方面的应用。包括电脑视觉、电脑图形学、曲线设计、湍流、远端宇宙的研究与生物医学方面。
扩展资料:
小波神经网络这方面的早期工作大约开始于1992 年,主要研究者是Zhang Q、Harold H S 和焦李成等。其中,焦李成在其代表作《神经网络的应用与实现》中从理论上对小波神经网络进行了较为详细的论述。近年来,人们在小波神经网络的理论和应用方面都开展了不少研究工作。
小波神经网络具有以下特点:首先,小波基元及整个网络结构的确定有可靠的理论根据,可避免BP 神经网络等结构设计上的盲目性;其次,网络权系数线性分布和学习目标函数的凸性,使网络训练过程从根本上避免了局部最优等非线性优化问题;第三,有较强的函数学习能力和推广能力。
谷歌人工智能写作项目:小发猫
2、图像边缘检测算法的研究与实现 的开题报告
摘 要 针对基于PC实现的图像边缘检测普遍存在的执行速度慢、不能满足实时应用需求等缺点,本文借助于TI公司的TMS320DM642图像处理芯片作为数字图像处理硬件平台,DSP/BIOS为实时操作系统,利用CCS开发环境来构建应用程序;并通过摄像头提取视频序列,实现对边缘检测Sobel算子改进[1]小波神经网络边缘检测流程图。
关键词 DM642;Sobel算子;程序优化;图像边缘检测
1 引言
边缘是图像中重要的特征之一,是计算机视觉、模式识别等研究领域的重要基础。图像的大部分主要信息都存在于图像的边缘中,主要表现为图像局部特征的不连续性,是图像中灰度变化比较强烈的地方,也即通常所说的信号发生奇异变化的地方。经典的边缘检测算法是利用边缘处的一阶导数取极值、二阶导数在阶梯状边缘处呈零交叉或在屋顶状边缘处取极值的微分算法。图像边缘检测一直是图像处理中的热点和难点。
近年来,随着数学和人工智能技术的发展,各种类型的边缘检测算法不断涌现,如神经网络、遗传算法、数学形态学等理论运用到图像的边缘检测中。但由于边缘检测存在着检测精度、边缘定位精度和抗噪声等方面的矛盾及对于不同的算法边缘检测结果的精度却没有统一的衡量标准,所以至今都还不能取得令人满意的效果。另外随着网络和多媒体技术的发展,图像库逐渐变得非常庞大;而又由于实时图像的目标和背景间的变化都不尽相同,如何实现实时图像边缘的精确定位和提取成为人们必须面对的问题。随着DSP芯片处理技术的发展,尤其是在图像处理方面的提高如TMS320C6000系列,为实现高效的、实时的边缘检测提供了可能性[5]。在经典的边缘检测算法中,Sobel边缘检测算法因其计算量小、实现简单、处理速度快,并且所得的边缘光滑、连续等优点而得到广泛的应用。本文针对Sobel算法的性能,并借助于TMS320DM642处理芯片[3],对该边缘检测算法进行了改进和对程序的优化,满足实时性需求。
2 Sobel边缘检测算法的改进
经典的Sobel图像边缘检测算法,是在图像空间利用两个方向模板与图像进行邻域卷积来完成的,这两个方向模板一个是检测垂直边缘,一个是检测水平边缘。算法的基本原理:由于图像边缘附近的亮度变化较大,所以可以把那些在邻域内,灰度变化超过某个适当阈值TH的像素点当作边缘点。Sobel算法的优点是计算简单,速度快。但由于只采用了两个方向模板,只能检测水平方向和垂直方向的边缘,因此,这种算法对于纹理较复杂的图像,其边缘检测效果欠佳;同时,经典Sobel算法认为,凡灰度新值大于或等于阈值的像素点都是边缘点。这种判定依据是欠合理的,会造成边缘点的误判,因为多噪声点的灰度新值也很大。
2.1 图像加权中值滤波
由于图像中的边缘和噪声在频域中均表现为高频成分,所以在边缘检测之前有必要先对图像进行一次滤波处理,减少噪声对边缘检测的影响。中值滤波是一种非线性信号的处理方法[2],在图像处理中,常用来保护边缘信息;保证滤波的效果。加权中值滤波,首先对每个窗口进行排序,取适当的比例,进行曲线拟合,拟合后的曲线斜率表征了此窗口的图像特征,再根据图像各部分特性适当的选择权重进行加权。
2.2 增加方向模板
除了水平和垂直两方向外,图像的边缘还有其它的方向,如135o和45o等,为了增加算子在某一像素点检测边缘的精度,可将方向模板由2个增加为8个即再在经典的方向模板的基础上增加6个方向模板,如图1所示。
2.3 边缘的定位及噪声的去除
通常物体的边缘是连续而光滑的,且边缘具有方向和幅度两个特征,而噪声是随机的。沿任一边缘点走向总能找到另一个边缘点,且这两个边缘点之间的灰度差和方向差相近。而噪声却不同,在一般情况下,沿任一噪声点很难找到与其灰度值和方差相似的噪声点[4]。基于这一思想,可以将噪声点和边缘点区分开来。对于一幅数字图像f(x,y),利用上述的8个方向模板Sobel算子对图像中的每个像素计算,取得其中的最大值作为该点的新值,而该最大值对应的模板所表示的方向为该像素点的方向。若|f(x,y)-f(x+i,y+j)|>TH2,对于任意i=0,1,-1;j=0,1,-1均成立,则可判断点(x,y)为噪声点。图2给出了图像边缘检测系统改进算法的软件流程图。
图1 边缘检测8个方向模板
图2 系统结构图
3 基于TMS320DM642的图像处理的设计及算法优化
3.1 TMS320DM642功能模块及图像处理系统的硬件结构
DSP以高速数字信号处理为目标进行芯片设计,采用改进的哈佛结构(程序总线和数据总线分开)、内部具有硬件乘法器、应用流水线技术、具有良好的并行性和专门用于数字信号处理的指令及超长指令字结构(VLIW)等特点;能完成运算量大的实时数字图像处理工作。
TMS320DM642是TI公式最近推出的功能比较强大的TMS320C6x系列之一,是目前定点DSP领域里性能较高的一款[6]。其主频是600MHz,8个并行运算单元、专用硬件逻辑、片内存储器和片内外设电路等硬件,处理能力可达4800MIPS。DM642基于C64x内核,并在其基础上增加了很多外围设备和接口,因而在实际工程中的应用更为广泛和简便。本系统使用50 MHz晶体震荡器作为DSP的外部时钟输入,经过内部锁相环12倍频后产生600 MHz的工作频率。DM642采用了2级缓存结构(L1和L2),大幅度提高了程序的运行性能。片内64位的EMIF(External Memory Interface)接口可以与SDRAM、Flash等存储器件无缝连接,极大地方便了大量数据的搬移。更重要的是,作为一款专用视频处理芯片,DM642包括了3个专用的视频端口(VP0~VP2),用于接收和处理视频,提高了整个系统的性能。此外,DM642自带的EMAC口以及从EMIF 口扩展出来的ATA口,还为处理完成后产生的海量数据提供了存储通道。
本系统是采用瑞泰公司开发的基于TI TMS320DM642 DSP芯片的评估开发板——ICETEK DM642 PCI。在ICETEK DM642 PCI评估板中将硬件平台分为五个部分,分别是视频采集、数据存储、图像处理、结果显示和电源管理。视频采集部分采用模拟PAL制摄像头,配合高精度视频A/D转换器得到数字图像。基于DSP的视频采集要求对视频信号具备采集,实时显示、对图像的处理和分析能力。视频A/D采样电路—SAA7115与视频端口0或1相连,实现视频的实时采集功能。视频D/A电路—SAA7105与视频口2相连,视频输出信号支持RGB、HD合成视频、PAL/NTSC复合视频和S端子视频信号。通过I2C总线对SAA7105的内部寄存器编程实现不同输出。
整个系统过程由三个部分组成:图像采集—边缘处理—输出显示,如图2所示。摄像头采集的视频信号经视频编码器SAA7115数字化,DM642通过I2C总线对SAA7115进行参数配置。在SAA7115内部进行一系列的处理和变换后形成的数字视频数据流,输入到核心处理单元DM642。经过DSP处理后的数字视频再经过SAA7105视频编码器进行D/A转换后在显示器上显示最终处理结果。
3.2 图像处理的软件设计和算法优化的实现
由于在改进Sobel边缘检测算子性能的同时,也相对增加了计算量,尤其是方向模板的增加,每个像素点均由原来的2次卷积运算增加为8次卷积运算,其实时性大大减弱。为了改进上述的不足,在深入研究处理系统和算法后,针对TMS320DM642的硬件结构特点,研究适合在TMS320DM642中高效运行的Sobel改进算法,满足实时处理的要求。整个程序的编写和调试按照C6000软件开发流程进行,流程分为:产生C代码、优化C代码和编写线性汇编程序3个阶段。使用的工具是TI的集成开发环境CCS。在CCS下,可对软件进行编辑、编译、调试、代码性能测试等工作。在使用C6000编译器开发和优化C代码时[7-8],对C代码中低效率和需要反复调用的函数需用线性汇编重新编写,再用汇编优化器优化。整个系统的控制以及数字图像处理是用C程序实现,大部分软件设计采用C程序实现,这无疑提高了程序的可读性和可移植性,而汇编程序主要是实现DM642的各部分初始化。其边缘检测优化算法在DM642中的实现步骤具体如下:
S1:根据DM642的硬件结构要求和控制寄存器设置,初始化系统并编写实现边缘检测算法的C程序。
S2:借助CCS开发环境的优化工具如Profiler等产生.OUT文件。
S3:根据产生的附件文件如.MAP文件,分析优化结果及源程序结构,进一步改进源程序和优化方法。
S4:使用CCS中调试、链接、运行等工具,再生成.OUT可执行文件。
S5:运行程序,如果满足要求则停止;否则重复步骤S2~S4直至满足使用要求。
4 实验结果
本文以Lena图像为例根据上述的硬件环境和算法实现的原理和方法,图4~图6分别给出了在该系统下采集的视频Lena图像及使用边缘检测算子和改进后处理的结果。由实验结果可以看出,在该系统下能实时完成视频图像的处理,并且给出的边缘检测算子能较好的消除噪声的影响,边缘轮廓清晰。该算法不仅能抑制图像中大部分噪声和虚假边缘,还保证了较高的边缘点位精度。
图4 Lena原始图像 图5 传统Sobel算子 图6 改进Sobel算子
5 总结
本文实现了在TMS320DM642评估板上用改进的Sobel算子对实时图像进行边缘检测,无延迟地得到边缘图像。边缘检测效果较好,既提高了图像检测的精度又满足了实时性的要求。从检测结果看,利用该改进后的算子在边缘精确定位、边缘提取都达到了很好的效果,且抗噪声能力强,并为目标跟踪、无接触式检测、自动驾驶、视频监控等领域的应用提供了坚实的基础。
参考文献
[1] 王磊等. 基于Sobel理论的边缘提取改善方法[J].中国图像图形学报,2005.10
[2] 陈宏席. 基于保持平滑滤波的Sobel算子边缘检测.兰州交通大学学报,2006,25(1):86—90
[3] 熊伟. 基于TMS320DM642的多路视频采集处理板卡硬件设计与实现[ M]. 国外电子元器件,2006
[4] 朱立.一种具有抗噪声干扰的图像边缘提取算法的研究[J].电子技术应用.2004,25(1)
[5] 刘松涛,周晓东.基于TMS320C6201的实时图像处理系统[J].计算机工程,2005(7):17—23
[6] TI TMS320DM642 video/imaging fixed-point digital signal processor data manual,2003
[7] TMS320C6x Optimizing C Compiler User’s Guide’ TEXAS INSTRUMENTS”,2002
[8] TMS320C32x Optimizing C/C++ Compiler User's Guide,Texas Instruments Incorporated,2001
3、如何理解图像的边缘?常用的边缘检测算法有哪些
早期的有边缘算子法、曲线拟合法、模板匹配法、门限化法。近年来又有许多新的边缘检测的算法:小波变换、小波包的边缘检测等,基于数学形态学、模糊理论和神经网络的边缘检测算法等。
如果您对我的回答有不满意的地方,还请您继续追问;
答题不易,互相理解,互相帮助!
4、利用matlab实现BP神经网络边缘检测算法,图像大小1628*1236,求网络建立代码 20
可以去matlab中文论坛 看看吧 也许会有收获
5、用小波分析法除去音频信号的噪声
小波变换及其应用是八十年代后期发展起来的应用数学分支,被称为“Fourier分析方法的突破性进展[1]”。 1986年Meyer Y构造了一个真正的小波基,十多年间小波分析及其应用得到了迅速发展,原则上传统的傅里叶分析可用小波分析方法取代[2],它能对几乎所有的常见函数空间给出通过小波展开系数的简单刻划,也能用小波展开系数描述函数的局部光滑性质,特别是在信号分析中,由于它的局部分析性能优越,因而在数据压缩与边缘检测等方面它比现有的手段更为有效[3-8]。 小波变换在图像压缩中的应用因它的高压缩比和好的恢复图像质量而引起了广泛的注意,且出现了各种基于小波变换的图像压缩方案。
小波变换自1992年Bos M等[9]首先应用于流动注射信号的处理,至今虽才8年时间,但由于小波变换其优良的分析特性而迅速渗透至分析化学信号处理的各个领域。本文介绍了小波变换的基本原理及其在分析化学中的应用情况。
1 基本原理
设f(t)为色谱信号,其小波变换在L2(R)中可表示为:
其中a, b∈R,a≠0,参数a称为尺度因子b为时移因子,而(Wf)(b, a)称为小波变换系数,y(t)为基本小波。在实际分析化学信号检测中其时间是有限长度,f(t)通常以离散数据来表达,所以要采用Mallat离散算法进行数值计算,可用下式表示:
fj+1=θj + f j
其中:N为分解起始尺度;M为分解次数;fj和qj可由下式求得:
此处:Φj, m为尺度函数;Ψj, m 为小波函数;系数Cmj ,dmj可由下式表达:
hk-2m , gk-2m取决于小波母函数的选取。
用图表示小波分解过程如下:
图中fN 、fN-1....fN-m和θN-1、θN-2....θN-m分别称为在尺度N上的低频分量和高频分量。上述分解过程的逆过程即是信号的重构过程。
2 分析化学中的应用
根据小波变换基本原理及其优良的多分辩分析特性,本文将小波变换在分析化学信号处理中的应用划归为以下三个方面:
2.1 信号的滤波
小波滤波方法目前在分析化学中应用主要是小波平滑和小波去噪两种方法。小波平滑是将某一信号先经小波分解,将在时间域上的单一信号分解为一系列不同尺度上的小波系数(也称不同频率上的信号), 然后选定某一截断尺度,使高于此尺度的小波系数全部为零,再重构信号,这样就完成了一个低通小波滤波器的设计;而小波去噪,则是在小波分解基础上选定一阈值,对所有尺度空间的小波系数进行比较,使小于此阈值的小波系数为零,然后重构信号[10]。
邵利民[11]等首次将小波变换应用于高效液相色谱信号的滤波,他们应用了Haar小波母函数,由三次小波分解后所得的低频部分重构色谱信号,结果成功地去除了噪声,明显地提高了色谱信号的信噪比,而色谱峰位保持一致,此法提高了色谱的最低检测量和色谱峰的计算精度。董雁适[12]等提出了基于色谱信号的小波自适应滤波算法,使滤波与噪声的频带分布,强度及信噪在频带上的交迭程度基本无关,具有较强的鲁棒性。
在光谱信号滤噪中的应用,主要为红外光谱和紫外光谱信号滤噪方面的应用,如Bjorn K A[13]等将小波变换用于红外光谱信号的去噪,运用6种不同的小波滤噪方法(SURE,VISU,HYBRID,MINMAX,MAD和WP)对加噪后红外光谱图进行了去噪,针对加噪与不加噪的谱图,对Fourier变换、移动平均滤波与小波滤波方法作了性能比较研究,结果认为Fourier变换、移动平均滤波等标准滤波方法在信噪比很低时滤噪性能与小波滤波方法差不多,但对于高信噪比的信号用小波滤噪方法(特别是HYBRID和VISU)则更有效 。闵顺耕[14]等对近红外漫反射光谱进行了小波变换滤波。顾文良[15]等对示波计时电信号进行了滤噪处理。王立世[16]等对电泳信号也做了小波平滑和去噪,都取得了满意的效果。邹小勇[17]等利用小波的时频特性去除了阶跃伏安信号中的噪音,并提出了样条小波多重滤波分析方法,即将过滤后的高频噪音信号当成原始信号进行滤波处理,使之对有用信号进行补偿。鲍伦军等[18]将样条小波和傅里叶变换联用技术应用于高噪音信号的处理。另外,程翼宇[19]等将紫外光谱信号的滤噪和主成分回归法进行了有机的结合,提出了小波基主成分回归(PCRW)方法,改善了主成分回归算法。
2.1 信号小波压缩
信号经小波分解之后,噪音信号会在高频部分出现,而对于有用的信号分量大部分在低频部分出现,据此可以将高频部分小波系数中低于某一阈值的系数去除,而对其余系数重新编码,只保留编码后的小波系数,这样可大大减少数据贮存量,达到信号压缩的目的。
在近代分析化学中分析仪器的自动化水平在不断提高,分析仪器所提供的数据量越来越大。寻找一种不丢失有效信息的数据压缩方法,节省数据的贮存量,或降低与分析化学信息处理有关的一些算法的处理量,已成为人们关心的问题。Chau F T等[20]用快速小波变换对模拟和实验所得的紫外可见光谱数据进行了压缩,讨论了不同阶数的Daubechies小波基、不同的分解次数及不同的阈值对压缩结果的影响。Barclay V J和Bonner R F[10]对实验光谱数据作了压缩,压缩率可达1/2~1/10,并指出在数据平滑和滤噪的同时,也能进行数据的压缩是小波有别与其他滤波方法的一大特点。王洪等[21]用Daubechies二阶正交小波基对聚乙烯红外光谱进行了成功的压缩,数据可压缩至原来的1/5以下。邵学广等[22]对一维核磁共振谱数据作了小波变换压缩,分别对常用的Haar、Daubechies以及Symmlet小波基作了比较,其结果表明准对称的Symmlet小波基对数据的复原效果最佳,而且在压缩到64倍时,均方差仍然较小。章文军等[23]提出了常用小波变换数据压缩的三种方法,将紧支集小波和正交三次B-样条小波压缩4-苯乙基邻苯二甲酸酐的红外光谱数据进行了对比,计算表明正交三次B-样条小波变换方法效果较好,而在全部保留模糊信号及只保留锐化信号中数值较大的系数时,压缩比大而重建光谱数据与原始光谱数据间的均方差较小。邵学广等[24]将小波数据压缩与窗口因子分析相结合,在很大程度上克服了用窗口因子分析直接处理原始信号时人工寻找最佳窗口的困难,在压缩比高达8:1的情况下,原始信号中的有用信息几乎没有丢失,窗口因子分析的解析时间大为缩短。Bos M等[25]用Daubechies小波对红外光谱数据进行压缩,压缩后的数据作为人工神经网络算法的输入接点,从而提高了人工神经网络的训练速度,预测的效果也比直接用光谱数据训练的要好。
2.3 小波多尺度分析
在多尺度分析方面的应用主要是对化学电信号进行小波分解,使原来单一的时域信号分解为系列不同频率尺度下的信号,然后对这些信号进行分析研究。
小波在色谱信号处理方面的应用,主要是对重叠色谱峰的解析。邵学广[26-27]等对苯、甲苯、乙苯三元体系色谱重叠峰信号小波变换后的某些频率段进行放大,然后重构色谱信号,使重叠色谱峰得到了分离,定量分析结果得到了良好的线性关系。此后邵学广[28]等利用了谱峰提取法对植物激素重叠色谱峰作了定量计算,此法表明,利用小波变换从重叠色谱信号中提取的各组分的峰高与浓度之间仍然具有良好的线性关系。
重叠伏安峰的分辨是电分析化学中一个长期存在的难题。当溶液中存在两种或更多的电活性物质,而这些物质的氧化(或还原)电位又很靠近时,就会不可避免地出现重叠峰的现象,而给进一步的定性、定量分析带来了很大困难。因此,人们做了较多的工作去解决这一难题。数学方法是目前处理重叠峰的重要手段,如Fourier变换去卷积以及曲线拟合。曲线拟合通常用来获得“定量”的信息,但这种方法有较多的人为因素,重叠峰包含的峰的个数,相对强度都是靠假设得来,因而可能引入严重的误差;去卷积方法则是一种频域分析手段,但该方法需先找出一个函数来描述伏安峰,然后再根据这个函数来确定去卷积函数,因此,去卷积函数的确定是比较麻烦的,尤其是对不可逆电极过程,无法找到一个合适的函数表达式,而且该方法还需经正、反Fourier变换,比较繁琐费时, 而小波分析的出现成了电分析化学家关注的热点。
陈洁等[29]用DOG小波函数处理差分脉冲实验数据,通过选择合适的伸缩因子,成功地延长了用DPV法测定Cu2+的线性范围。郑建斌等[30-31]将小波变换用于示波计时电位信号的处理,在有用信息提取、重叠峰分辨等方面进行了系统的研究。王洪等[32]将小波边缘检测的思想用于电位滴定终点的确定,找到了一种判断终点准确的终点判断方法。郑小萍等[33]将样条小波变换技术用于分辨重叠的伏安峰,以选定的分辨因子作用于样条小波滤波器,构造了一个小波峰分辨器,用它来直接处理重叠的伏安峰,取得了较好的分离效果,被处理重叠峰可达到完全基线分离,且峰位置和峰面积的相对误差均较小。
对于红外光谱图,目前也是通过对红外谱图进行小波分解,以提高红外谱图的分辩率。陈洁[34]等对辐射合成的丙烯酰胺、丙烯酸钠共聚物水凝胶的红外光谱信号经小波处理后,使其特征吸收带较好地得到分离,成功地提高了红外光谱图的分辨率。谢启桃[35]等对不同晶型聚丙烯红外光谱图作了小波变换,也得到了可用以区分聚丙烯a、b两晶型的红外光谱图。
3 展望
小波变换由于其优良的局部分析能力,使其在分析化学信号的滤噪、数据压缩和谱峰的分离方面得到了很好的应用。本人通过对小波变换在化学中应用的探索,认为对于分析化学中各种电信号的平滑、滤波还有待作更深入的研究,以设计出更为合理有效的小波滤波器,以消除由于平滑而导至的尖锐信号的峰高及峰面积的变化或由于去噪而带来的尖锐信号附近的不应有的小峰的出现;对于重叠峰的分离及其定量计算,还应该探讨如色谱峰基线的确定方法以及待分离频率段的倍乘系数的确定方法;另外对于色谱峰的保留指数定性问题,由于不同化合物在某一确定的分析条件下有可能会出现保留值相同的情况,这将使在未知样中加标准的峰高叠加法定性或外部标准物对照定性变得困难,我们是否可能对色谱峰进行小波分解,然后在不同的尺度上对其进行考察,以寻求色谱峰的小波定性方法,这可能是个可以进一步研究的问题。
小波变换将在分析化学领域得到更加广泛的应用,特别对于分析化学中的多元定量分析法,如多元线性回归法(MLR),主成分回归法(PCR),偏最小二乘法(PLS)等方法及人工神经网络(ANN)将会同小波变换进行有机的结合,以消除各种噪声干扰对定量分析的影响;或对相关数据进行压缩以减少待分析数据的冗余,提高分析精度和大大减少计算量提高分析速度。小波变换将会成为分析化学中定量和定性分析的一种非常重要的工具。
6、小波神经网络的建模怎么确定隐含层的神经元个数
确定隐层节点数的方法为“试凑法”。
隐含神经元的数目是非常重要的,它的选取结果直接影响到网络的性能好坏。如果隐含层的神经元数量太少,网络就不能够很好的学习,即便可以学习,需要训练的次数也非常多,训练的精度也不高。当隐含层神经元的数目在一个合理的范围内时,增加神经元的个数可以提高网络训练的精度,还可能会降低训练的次数。但是,当超过这一范围后,如果继续增加神经元的数量,网络训练的时间又会增加,甚至还有可能引起其它的问题。那么,究竟要选择多少个隐含层神经元才合适呢?
遗憾的是,至今为止还没有理论规定该如何来确定网络隐含层的数目。所以,只能用尝试的方法来寻找最适宜的隐含层神经元数目。本文采取的做法是:构建多个BP网络,它们除了隐含层神经元个数不同外,其它一切条件都相同,通过比较它们训练的循环次数和网络精度,找到最佳的神经元个数。
小波神经网络的隐层设计原则也遵循这个方法。也有一些经验公式,可以作为参考。
7、求一个“基于小波神经网络的模拟电路故障诊断仿真程序”
智能网络管理系统分析与系统设计
4.1需求分析
随着网络技术的不断发展,5G时代的来临,网络设备数量的迅增导致网络管理难度的增大,系统管理人员的工作压力繁重,特别是目前大量的基于Web环境的各个业务系统对企业的网络提出了更高的要求,除了要保证网络的安全性、稳定性、保密性、可靠性外,还要确保网络速度、服务质量、使用方便等各个因素。网络管理系统面临网络设备运行环境是否安全、设备运行是否平稳、设备故障能否快速发现并解决等问题。本文采用B/S架构可以更大程度上跨平台使用此系统,结合web技术和人工智能技术根据实际情况实现具有故障诊断的智能网络管理系统,在一定程度上实现传统网络管理系统的自动化。图4.1为系统模块用例图:
4.1.1功能需求
(1)从用例图中可以看到,本系统分为两种角色,超级管理员和普通用户。超级管理员拥有最高权限,可以对普通用户进行添加、修改、删除操作,用户管理本质就是通过赋予用户角色对系统操作权限不同,使得用户角色分工不同更加网络管理工作更加细致和明确。同时,超级管理员可以升级普通用户为超级管理员也可以根据人员不同赋予不同的权限。(2)用户可以在系统中添加和删除网络设备,在实际企业当中网络设备资源数量众多,针对设备资源进行有针对性行的管理可以满足企业日益增加的设备需求。用户可以通过在系统中填写设备详情添加相应网络设备;选取相应设备填写对应标签、地址、流量类型可以掌握设备端口流量流入流出情况和连接状态以及查看设备信息;选取某设备端口,输入修改后的ip地址、子网掩码、登录密码、特权密码等可以通过telnet协议对设备端口进行配置;如果某设备已经损坏或者不再需要时,可以点击删除按钮对设备进行删除;可以查看个人详细信息对个人信息进行修改。(3)网络故障是是网络管理系统中的重要模块,网络可以平稳运行是评价网络管理系统的重要指标。网络虚拟环境下,复杂的资源关系以及各资源之间的互相干扰,一旦某个接口发生故障,故障数据隐藏在底层网络可能会蔓延到整个网络,导致整个网络无法运行,这样无疑给网络恢复带来了更大困难,增加了企业成本。本系统故障模块针对以太网中的接口故障,在现有智能故障诊断技术中,BP神经网络具有良好的非线性能力和自学习和自适应能力,因此,本系统故障模块引入BP神经网络,采集接口故障数据经过BP神经网络训练可以实现对目标接口进行故障诊断,并判断故障类型。同时用户可以查看历史告警记录表对故障信息进行统计。
4.1.2非功能性需求
系统应具有实用性,能够满足实际业务需求,各个功能模块业务可以高效正确的运转。要求设计简单、架构和层次设计清晰,便于维护和扩展具有一定的可靠性和易用性。系统安全是网络管理系统的必要条件之一,防止sql注入等安全问题出现,对前后端数据传输进行验证防止前端传输不安全数据到后台服务器当中。在监控模块中系统可以对设备数据进行实时监控并展示,应具有实时性。
4.2系统总体架构设计
本文研究利用Django、Vue等开发技术,并结合人工智能网络故障智能诊断技术设计并实现了智能网络网络管理系统。系统总体架构分为视图层、应用服务层和设备层三层。系统的设计总体架构如图所示:
1)视图层使用前端相关技术如Vue, ECharts开发系统界面包括界面的布局与美化、用户交互设计等。
2)应用服务器层包括Web服务器和NMS两部分。Web服务器可以处理浏览器的请求并返回相应。在此系统中接收前端传来的数据请求,经过后台程序解析处理完成对应操作。NMS是网络管理工程当中的核心,通过代理向设备发送指令,管理被管设备,可以通过oid查询MIB库保存对应项获取目标设备网络数据。
3)在网络设备层,被管设备代理是网络上被管设备代理的集合,主要工作是采集数据和分析数据。系统首先服务层通过Telnet协议连接网络设备,通过SNMP协议实现对网络设备运行状态的监控,将采集到的数据进行计算处理之后存储到Mysql数据库中。
4)Mysql数据库是系统开发功能模块的基础,用于存储用户数据、网络运行数据以及故障数据等。用户通过对数据库进行新增、查询、更新、删除操作对系统数据进行管理。
4.3系统主要功能模块设计
本系统分为用户管理、配置管理、设备监控管理、故障诊断四个功能模块,下面将对这四个模块的设计进行详细说明。
4.3.1系统功能模块
1)用户管理:系统管理员使用该模块可以完成查看、添加、修改和删除系统全体用户账号的管理操作以及用户登录功能,该模块的设计类似于RBAC(基于角色的访问控制),不同的管理员拥有不同的系统操作权限。
2)配置管理:通过web界面对设备进行相关配置即命令下发,管理员可以通过该模块远程连接目标设备并且对设备端口进行ip和子网掩码修改以及置。
3)设备监控管理:对通讯设备接口进行实时流量监控,返回数据便于管理员及时查看设备运行状态查看资源并且统计流量数据。
4)故障诊断:及时发现通讯网络接口中发生的故障,并判断故障类型便于管理员及时处理故障,以免造成更大损失。
4.3.2用户管理模块设计
用户管理模块是管理系统中较基础同时也是非常重要的一个模块,主要负责对该系统用户进行统一有效管控,用户管理模块活动图如图4.4所示:
1)用户登录:系统部署在服务器之后,Django框架可以使用命令创建一个超级管理员。超级管理员和普通用户可以通过用户名和密码登录到该系统当中。
2)用户添加:超级管理员拥有该系统的最高权限,可以添加普通用户无需注册,添加信息主要包括,用户名、密码、头像、邮箱等信息,普通用户可以根据超级管理员分配的权限参与管理系统。
3)用户删除:超级管理员界面可以删除当前普通用户角色,删除之后原普通用户用户名好密码作废。
4)用户信息修改:超级管理员和普通用户都可以对自己信息进行修改包括密码、个人资料,超级管理员可以赋予普通用户权限等。
4.3.3配置管理模块设计
网络设备配置模块主要用于对设备参数进行设置和修改和对设备进行添加和删除,从而对设备进行管理。该系统主要针对设备端口ip地址和子网掩码进行修改,配置管理结构示意图如下:
1)设备参数配置:首先在被管设备开启端口并配置Telnet协议,同时设置登录名和登录密码以及特权密码,用户在浏览器通过表单填写相关目标设备信息,通过HTTP协议传输给服务器,服务将前端传过来的信息解析成设备可以识别的指令,代替管理员在终端直接对设备的操作,自动下发对应指令到设备上完成配置。
2)设备添加:用户可以添加某个设备,并给予相应标识,网络设备列表当中就会出现当前所有设备,设备信息也会存储在数据库当中。
3)设备删除:当某一项设备不再使用管理员可以在浏览器的设备列表当中将其删除。
4.3.4设备监控模块
设备监控模块主要监控设备运行状态以及资源消耗情况,存储到Mysql数据库当中,通过前端组件以图表的格式将其可视化,可以让管理员更加直观的观测到网络设备的运行状态。设备监控模块结构示意图如下:展示设备是否在线,以及展示当前运行设备列表,通过SNMP协议可以判断目标设备是否在线,如果在线前端提示目标设备当前正在运行,否在提示当前设备不在运行或者未正确安装SNMP协议,因为监控模块主要通过SNMP协议访问设备获取MIB变量得到目标值并测试其连通性。
1)实时展示目标设备端口流量流入和流出情况,管理员在前端添加监控目标,通过SNMP协议和目标设备通信,如果当前设备在线也就是服务器可以通过SNMP和目标设备通信,服务器查询目标设备的MIB对象,找到请求的数据,将返回的网络数据存入数据库,前端利用Echarts进行绘图,为了更加直观,流量图采用曲线图的方式展示时间段内某端口流入或者流出网络总流量,单位按照每秒总传输量来计算。此外,管理员可以切换目标设备查看。
4.3.5故障诊断模块
故障诊断模块就是协助管理员及时发现并处理网络设备突发的故障,本模块引入了BP神经网络故障诊断技术,目的是高效快速的判断网络设备接口故障类型。基于BP神经网络的网络故障诊断流程示意图如图4.6所示:
故障发现及时与否对网络设备能否持续提供服务至关重要。通过SNMP协议主动轮询和异步警告可以获取到设备发生的故障信息,服务器获取到网络状态故障信息后,经过分析,如果可以直接判断故障类型,则直接发送到前端界面,这类故障类型一般具有较明显的特征。如果某接口发生故障不可以直接判断其故障类型则通过基于BP神经网络的故障诊断模型进行判断,将获取到的接口相关数据自动进行预处理后作为故障诊断模型的输入数据,故障诊断模型会输出相应结果对应相应故障可视化到前端提示管理员,管理员可以通过前端查看故障信息进行修复。4.4数据库设计
4.4.1系统E-R图
系统数据库包含多个实体,实体之间具体包含一对多和对多对的关系。系统E-R图如图4.8所示:
4.4.2数据库表结构设计
根据需求分析的结果数据库表设计如下:
(1)用户表用于记录用户相关信息,其中用户ID(userId)作为用户表的主键自增。
(1)设备监控表,存储监控的目标设备信息。
4.5 本章小结
本章节主要内容:首先对基于用例图进行系统需求分析,对系统整体总结构进行了设计,其次根据需求设计了系统整体功能模块图,接着针对各个功能模块结合活动图进行详述,最后对整个系统的数据库表设计进行了简要概述。