圖像識(shí)別與處理_第1頁
圖像識(shí)別與處理_第2頁
圖像識(shí)別與處理_第3頁
圖像識(shí)別與處理_第4頁
圖像識(shí)別與處理_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

-.z.研究生課程論文〔作業(yè)〕封面〔2021至2021學(xué)年度第1學(xué)期〕課程名稱:圖像識(shí)別與處理技術(shù)課程編號(hào):211320學(xué)生姓名:潘琪學(xué)號(hào):140710611年級(jí):2021級(jí)任課教師:*秋峰提交日期:2021年1月20日成績(jī):__________________教師簽字:__________________開課---結(jié)課:第周---第周評(píng)閱日期:年月日東北農(nóng)業(yè)大學(xué)研究生院制利用神經(jīng)網(wǎng)絡(luò)進(jìn)展數(shù)字識(shí)別的方法探索摘要:本文介紹了一種利用BP神經(jīng)網(wǎng)絡(luò)進(jìn)展印刷體數(shù)字像識(shí)別的方法。利用MATLAB軟件提取圖像里的數(shù)字信息,進(jìn)展灰度處理和二值化處理,作為輸入建立一個(gè)BP神經(jīng)網(wǎng)絡(luò),并對(duì)其進(jìn)展測(cè)試。最終可對(duì)特定大小的數(shù)字圖像進(jìn)展識(shí)別。關(guān)鍵詞:BP神經(jīng)網(wǎng)絡(luò),灰度,特征值A(chǔ)bstract:ThispaperintroducesamethodofusingBPneuralnetworktocarryoutthedigitalimagerecognitionoftheprintedbody.UsingMATLABsoftwaretoe*tractdigitalinformationfromtheimage,thegrayprocessingandbinarizationprocessing,asaninputtobuildaBPneuralnetwork,andtotestits.Finally,thespecificsizeofthedigitalimagecanbedistinguished.Keywords:BPneuralnetwork,graylevel,characteristicvalue1BP神經(jīng)網(wǎng)絡(luò)的根本原理和學(xué)習(xí)算法1.1BP神經(jīng)網(wǎng)絡(luò)處理信息的根本原理自然神經(jīng)系統(tǒng)是由構(gòu)造上相對(duì)獨(dú)立的神經(jīng)細(xì)胞構(gòu)成的,這些細(xì)胞被稱為神經(jīng)元。單個(gè)神經(jīng)元完成相比照擬簡(jiǎn)單的功能,然而神經(jīng)元之間的廣泛連接、復(fù)雜構(gòu)造使得神經(jīng)系統(tǒng)具有高級(jí)智能活動(dòng)的能力?;谶@種認(rèn)識(shí),人們提出了多種人工神經(jīng)網(wǎng)絡(luò)的模型從不同角度來模擬自然神經(jīng)。一個(gè)神經(jīng)網(wǎng)絡(luò)的模型主要由神經(jīng)元的計(jì)算特性、網(wǎng)絡(luò)的構(gòu)造、連接權(quán)值的學(xué)習(xí)規(guī)則三方面要素來決定。BP神經(jīng)網(wǎng)絡(luò)采用并行網(wǎng)絡(luò)構(gòu)造,包括輸入層、隱層和輸出層,經(jīng)過作用函數(shù)后,把隱含層節(jié)點(diǎn)的輸出信號(hào)傳遞到輸出節(jié)點(diǎn),最后給出輸出結(jié)果。輸入信號(hào)通過隱層點(diǎn)作用于輸出節(jié)點(diǎn),經(jīng)過非線性變換,產(chǎn)生輸出信號(hào),網(wǎng)絡(luò)訓(xùn)練的每個(gè)樣本包括輸入向量和期望輸出量,網(wǎng)絡(luò)輸出值與期望輸出值之間的偏差,通過調(diào)整輸入節(jié)點(diǎn)與隱層節(jié)點(diǎn)的聯(lián)接強(qiáng)度取值和隱層節(jié)點(diǎn)與輸出節(jié)點(diǎn)之間的聯(lián)接強(qiáng)度以及閾值,使誤差沿梯度方向下降,經(jīng)過反復(fù)學(xué)習(xí)訓(xùn)練,確定與最小誤差相對(duì)應(yīng)的權(quán)值和閾值后停頓訓(xùn)練。經(jīng)過訓(xùn)練后的網(wǎng)絡(luò)能對(duì)類似樣本的輸入信息自行處理,輸出經(jīng)過非線性轉(zhuǎn)換的誤差最小的信息。1.2BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)算法根本BP學(xué)習(xí)算法包括信號(hào)的前向傳播和誤差的反向傳播兩個(gè)方面,根據(jù)從出入到輸出方向得到的輸出值,從輸出到輸入方向進(jìn)展權(quán)值和閾值的調(diào)整。BP神經(jīng)網(wǎng)絡(luò)構(gòu)造如下圖。其中:表示輸入層第個(gè)輸入節(jié)點(diǎn),;表示第個(gè)輸入節(jié)點(diǎn)到第個(gè)隱層節(jié)點(diǎn)之間的權(quán)值,;表示第個(gè)隱層節(jié)點(diǎn)的閾值;表示隱層的鼓勵(lì)函數(shù);表示第個(gè)隱層節(jié)點(diǎn)到第個(gè)輸出節(jié)點(diǎn)之間的權(quán)值,;表示第個(gè)輸出節(jié)點(diǎn)的閾值;表示輸出層的鼓勵(lì)函數(shù);表示第個(gè)輸出節(jié)點(diǎn)的輸出。信號(hào)的前向傳播:第個(gè)隱層節(jié)點(diǎn)的輸入:第個(gè)隱層節(jié)點(diǎn)的輸出:第個(gè)輸出層節(jié)點(diǎn)的輸入:第個(gè)輸出層節(jié)點(diǎn)的輸出:誤差的反向傳播:首先由輸出層開場(chǎng)逐層計(jì)算各層神經(jīng)元的輸出誤差,然后根據(jù)誤差梯度下降法來調(diào)節(jié)各層的權(quán)值和閾值,使修改后的網(wǎng)絡(luò)的最終輸出接近期望值。每一個(gè)樣本的二次型誤差準(zhǔn)則函數(shù)為:為第個(gè)輸出層的期望輸出。系統(tǒng)對(duì)個(gè)訓(xùn)練樣本的總誤差準(zhǔn)則函數(shù)為:根據(jù)誤差梯度下降法依次求出輸出層權(quán)值的修正量,輸出層閾值的修正量,隱含層權(quán)值的修正量,隱含層閾值的修正量:輸出層權(quán)值修正量:輸出層閾值修正量:隱層權(quán)值修正量:隱層閾值修正量:其中為學(xué)習(xí)率。又因?yàn)椋海?,,整理后可以得到:假設(shè)第次學(xué)習(xí)時(shí)網(wǎng)絡(luò)的權(quán)值和閾值分別為,,,,則經(jīng)過調(diào)整后第次學(xué)習(xí)時(shí)網(wǎng)絡(luò)的權(quán)值和閾值應(yīng)為:;;2數(shù)字識(shí)別用神經(jīng)網(wǎng)絡(luò)進(jìn)展數(shù)字識(shí)別首先利用MATLAB軟件對(duì)數(shù)字圖像進(jìn)展處理,將數(shù)字圖像轉(zhuǎn)化為可以進(jìn)展處理的矩陣,構(gòu)建一個(gè)BP神經(jīng)網(wǎng)絡(luò),將這些矩陣作為神經(jīng)網(wǎng)絡(luò)的輸入,其所對(duì)應(yīng)的數(shù)作為網(wǎng)絡(luò)的輸出,即可實(shí)現(xiàn)數(shù)字識(shí)別的功能。數(shù)字識(shí)別首先要對(duì)圖片進(jìn)展預(yù)處理,對(duì)較大的圖片還要進(jìn)展特征值提取,較小的圖片也可將處理后的數(shù)據(jù)直接作為網(wǎng)絡(luò)的輸入,最后利用BP神經(jīng)網(wǎng)絡(luò)對(duì)輸入進(jìn)展分類得到不同的輸出。2.1圖像的預(yù)處理由于我們得到的圖片一般為RGB格式,MATLAB讀取后為的矩陣,其中為圖片的像素值,是3層取值范圍為0~255的矩陣的疊加。我們可以利用"rgb2gray〞函數(shù)將其轉(zhuǎn)化為灰度矩陣作為輸入,灰度矩陣是取值范圍為0~255的矩陣。為了更容易處理,我們可以進(jìn)一步利用"im2bw〞函數(shù)將灰度圖像轉(zhuǎn)化為只包含"0〞和"1〞的二值圖像,以二值矩陣作為輸入,利用神經(jīng)網(wǎng)絡(luò)進(jìn)展學(xué)習(xí)訓(xùn)練后輸出。本文采用3組圖像作為訓(xùn)練樣本,每組圖像是包含0~9的10個(gè)圖片,每個(gè)圖片像素大小都為,如果采集的數(shù)字圖像大小不是,可以利用"imresize〞函數(shù)對(duì)其進(jìn)展處理。三組圖像分別用新羅馬字體、仿宋體、華文新魂輸入,采用png格式保存,如下圖。將原始圖像轉(zhuǎn)化為灰度圖像和二值圖像,主程序如下:I=imread('***.png');%讀取文件名為***的png圖片gray=rgb2gray(I);%將rgb圖像轉(zhuǎn)化為灰度圖像gray=imresize(gray,[32,32]);%將圖像大小標(biāo)準(zhǔn)化為32*32bw=im2bw(gray,0.5);%將灰度圖像轉(zhuǎn)化為二值圖像對(duì)每個(gè)圖片執(zhí)行上述命令即可得到每個(gè)圖像的灰度矩陣和二值矩陣,我們以第二組圖像中的4為例,執(zhí)行命令后的結(jié)果如下列圖所示:其中第一個(gè)為原圖像,第二個(gè)為灰度圖像,第三個(gè)為二值圖像。我們可以看出,原圖像和灰度值圖像的邊緣局部分界不明顯,而二值圖像有明顯的邊界。這是因?yàn)樵瓐D像和灰度圖像是用0~255這256個(gè)數(shù)來表示亮度,數(shù)值越大亮度越高,因此邊界存在過渡色。而二值圖像是用"0〞和"1〞來表示亮度,空白處為1,黑處為0,并且在程序中設(shè)定的是以灰度值的中點(diǎn)為分界點(diǎn),當(dāng)灰度值小于最大值的一半時(shí)取0,大于最大值的一半時(shí)取1。經(jīng)過處理后我們可以得到兩個(gè)的灰度矩陣和二值矩陣。2.2特征值提取圖像經(jīng)二值化處理后大小并沒有改變,當(dāng)圖像像素太大時(shí)輸入量就太多,本例中每個(gè)圖片就需要個(gè)輸入。我們可以對(duì)每個(gè)圖片提特征值,這樣就可以減少神經(jīng)網(wǎng)絡(luò)的輸入,提高學(xué)習(xí)效率。我們可以將原矩陣橫向分為8份,縱向分為8份,構(gòu)成一個(gè)矩陣,輸入就減少為64個(gè)。這樣矩陣的每個(gè)位置相當(dāng)于原矩陣的小塊,可以將每個(gè)小塊中0的個(gè)數(shù)作為新矩陣的值,即表示每個(gè)位置黑色塊的多少。提取特征值的算法如下〔已經(jīng)得到二值矩陣bw〕:fori=1:1:8a=(i-1)*4+1;c=a;d=a+4;forj=1:1:8b=(j-1)*4+1;e=b;f=b+4;g=0;forh=c:1:d-1fork=e:1:f-1ifbw(h,k)==0g=g+1;endendend*(i,j)=g;endend任然接上例,我們對(duì)4的二值矩陣進(jìn)展特征值提取,運(yùn)行結(jié)果如下列圖:可以得到其特征值矩陣:以此作為BP神經(jīng)網(wǎng)絡(luò)的輸入,輸出為4。以此類推,對(duì)每個(gè)圖片執(zhí)行上述命令后就可以得到30個(gè)用特征值矩陣表示的訓(xùn)練樣本。3數(shù)字識(shí)別對(duì)圖像進(jìn)展預(yù)處理和特征值提取后,我們就得到了所需的訓(xùn)練樣本,可以構(gòu)建神經(jīng)網(wǎng)絡(luò)進(jìn)展訓(xùn)練仿真。這里采用"newff〞函數(shù)構(gòu)建兩層BP神經(jīng)網(wǎng)絡(luò),隱含層包含16個(gè)神經(jīng)元,采用雙曲正切函數(shù)"tansig〞;輸出層有1個(gè)神經(jīng)元,采用線性函數(shù)"purelin〞;訓(xùn)練函數(shù)采用"trainrp〞。如果將二值函數(shù)直接作為輸入,則網(wǎng)絡(luò)有1024個(gè)輸入,1個(gè)輸出;假設(shè)以特征值矩陣作為輸入,則網(wǎng)絡(luò)有64個(gè)輸入,一個(gè)輸出。在進(jìn)展訓(xùn)練前,最好利用"reshape〞函數(shù)將輸入矩陣構(gòu)造成的列矩陣以便于網(wǎng)絡(luò)輸入,調(diào)用格式為:"**=reshape(*,n,1)〞,其中**為新矩陣,*為原矩陣,為輸入神經(jīng)元的個(gè)數(shù)。在這里我們直接采用二值矩陣作為輸入,建立網(wǎng)絡(luò)的主程序如下:P=[p11,p21,p31,p41,p51,p61,p71,p81,p91,p101,p12,p22,p32,p42,p52,p62,p72,p82,p92,p102,p13,p23,p33,p43,p53,p63,p73,p83,p93,p103];t=[1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0];net=newff(P,t,16,{'tansig','purelin'},'trainrp');net=initnw(net,2);其中p11到p103分別為各個(gè)圖片轉(zhuǎn)化為列矩陣后的二值矩陣,t為每個(gè)圖片對(duì)應(yīng)的輸出值。因?yàn)槭褂?newff〞函數(shù)建立函數(shù)網(wǎng)絡(luò)時(shí),權(quán)值和閾值的初始化是隨機(jī)的,所以要根據(jù)經(jīng)歷調(diào)整輸出層權(quán)值和閾值。應(yīng)用"train〞函數(shù)對(duì)網(wǎng)絡(luò)進(jìn)展訓(xùn)練之前,需要預(yù)先設(shè)置網(wǎng)絡(luò)訓(xùn)練參數(shù)。將訓(xùn)練步數(shù)設(shè)置為200,訓(xùn)練精度設(shè)置為0.001,兩次顯示之間的訓(xùn)練步數(shù)為15,動(dòng)量項(xiàng)因子為0.9,性能函數(shù)為均方誤差性能函數(shù),程序如下:net.trainParam.epochs=200;net.performF='sse';net.trainParam.goal=0.001;net.trainParam.show=15;net.trainParam.mc=0.9;net=train(net,P,t);訓(xùn)練結(jié)果如下:可以看出,該網(wǎng)絡(luò)在進(jìn)展18次訓(xùn)練后得到最優(yōu)的權(quán)值和閾值。訓(xùn)練完成后可用"sim〞函數(shù)進(jìn)展仿真,調(diào)用格式為:Y=sim(net,P);仿真結(jié)果為:Y=[123456789012345678901234567890]對(duì)網(wǎng)絡(luò)進(jìn)展檢驗(yàn),假設(shè)輸入圖片為如下含有噪聲的圖片:對(duì)其進(jìn)展預(yù)處理得到二值矩陣p0后,用該網(wǎng)絡(luò)進(jìn)展仿真,得到輸出y:y=sim(net,p0);結(jié)果為y=5??梢娋W(wǎng)絡(luò)性能較好。4結(jié)論本文介紹了一種利用BP神經(jīng)網(wǎng)絡(luò)進(jìn)展數(shù)字識(shí)別的方法,先對(duì)圖片進(jìn)展預(yù)處理,對(duì)較大的圖片還需要進(jìn)展特征值提取,得到用來表示圖片的矩陣作為輸入,采用輸入層1024層,隱含層16層,輸出層1層的網(wǎng)絡(luò)進(jìn)展學(xué)習(xí)訓(xùn)練,最終得到了較好的結(jié)果。參考文獻(xiàn)[1]*德豐.MATLAB神經(jīng)網(wǎng)絡(luò)應(yīng)用設(shè)計(jì)[M].:機(jī)械工業(yè),2

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論