基于matlab数字识别算法系统设计与实现(含源文件)
歡迎添加微信互相交流學習哦!
項目源碼:https://gitee.com/oklongmm/biye
目 錄
內容摘要………………………………………………………………………………1
關鍵字…………………………………………………………………………………1
Abstract………………………………………………………………………………..1
Key words………………………………………………??? ……………………….……1
1? 緒論... 2
1.1? 字符識別概述... 2
1.2? 數字識別研究的目的及意義... 2
1.3? 手寫數字識別的典型應用... 3
1.4? 國內外研究現狀... 4
1.5? 手寫體數字識別系統概述... 5
1.6? 本文內容安排... 6
2? 手寫體數字識別中預處理技術... 7
2.1? 圖像灰度化... 7
2.2? 圖像二值化... 8
2.3? 圖像反色... 9
2.4? 圖像去噪聲... 10
2.5? 數字分割... 11
2.5? 數字歸一化... 11
2.5? 數字細化... 13
3? 手寫體數字識別中特征值提取技術... 16
3.1? 特征提取概述... 16
3.2? 手寫體字符特征提取方法概述... 18
3.3? 手寫體數字識別中的結構特征提取... 19
3.4??? 手寫體數字識別中的統計特征提取... 20
4? 人工神經網絡分類器... 21
4.1? 人工神經網絡概述... 21
4.2? BP神經網絡概述... 21
4.3? 本文的神經網絡結構設計... 21
5? 系統實現與結果分析... 24
5.1? 系統實現... 24
5.1.1? 系統實現環境... 24
5.1.2? 系統處理流程圖及主要工作... 25
5.1.3? 系統界面... 26
5.2 ?結果分析... 26
6? 結束語... 26
參考文獻... 27
致謝... 29
?
?
摘要:本文論述并設計實現了一個自由手寫體數字識別系統。文中首先對待識別數字的預處理進行了介紹,包括二值化、噪聲處理、圖像分割、歸一化、細化等圖像處理方法;其次,探討了數字字符特征向量的提取;最后采用了bp神經網絡算法,并以MATLAB作為編程工具實現了具有友好的圖形用戶界面的自由手寫體數字識別系統。實驗結果表明,本方法具有較高的識別率,并具有較好的抗噪性能。
關鍵詞:手寫體數字? 預處理? bp神經網絡? 特征提取
Abstract:This article discusses and implements a handwritten numeral recognition system. In the first part of the pre-treatment of identification numbers were introduced, including binarization, noise processing, image segmentation, normalization, thinning and other image processing methods; Secondly, the digital character of the feature vector; last nerve using bp network algorithm, and MATLAB as the programming tool to achieve a friendly graphical user interface handwritten numeral recognition system. Experimental results show that this method has higher recognition rate, and has better noise immunity.
Keywords: Handwritten numeral recognition? pre-treatment? bp network feature extraction.
1? 緒論?
1.1? 字符識別概述
OCR(Optical Character Recognition)即光學字符識別技術,是通過掃描儀把印刷體或手寫體文稿掃描成圖像,然后識別成相應的計算機可直接處理的字符。OCR是模式識別的一個分支,按字體分類主要分為印刷體識別和手寫體識別兩大類。對于印刷體識別又可以分成單一字體單一字號和多種字體多種字號幾類。而手寫體識別又可分為受限手寫體和不受限手寫體兩類;按識別方式可分為在線識別和脫機識別兩類。
字符識別處理的信息可分為兩大類:一類是文字信息,處理的主要是用各國家、各民族的文字(如:漢字,英文等)書寫或印刷的文本信息,目前在印刷體和聯機手寫方面技術已趨向成熟,并推出了很多應用系統;另一類是數據信息,主要是由阿拉伯數字及少量特殊符號組成的各種編號和統計數據,如:郵政編碼、統計報表、財務報表、銀行票據等等,處理這類信息的核心技術是手寫數字識別。
在整個OCR領域中,最為困難的就是脫機自由手寫字符的識別。到目前為止,盡管人們在脫機手寫英文、漢字識別的研究中已取得很多可喜成就,但距離實用還有一定距離。而在手寫數字識別這個方向上,經過多年研究,研究工作者已經開始把它向各種實際應用推廣,為手寫數據的高速自動輸入提供了一種解決方案。
1.2? 數字識別研究的目的及意義
人類社會己開始進入信息時代,信息產業的發展將對國家的發達和民族的興旺產生重大的影響。因此,世界各國對信息產業的發展都給予了極大的關注和重視。人類社會的不斷進步帶來了信息空間的增長和積累,而計算機的出現為現代化信息處理提供了有效的手段。但是,在信息技術高速發展的同時,一個難題也擺在我們面前,那就是計算機數據處理和網絡傳輸的高速度與數據輸入的低速度之間的矛盾。目前,人類的許多信息是記錄在紙上的文字圖像,將這些信息輸入計算機是非常繁瑣而低效率的工作,這在一定的程度上減緩了社會信息化的進程。因而,作為信息化基礎的數據輸入成了計算機應用中的瓶頸問題。人們接受信息最頻繁的是視覺通道.在日常學習和生活中,所處理的信息有75%—85%是視覺信息,其中文字信息愈來愈占重要地位.比如對各種期刊文獻的閱讀、查找、翻譯:對各種統計報表的匯總、計算、分析;對各種函件票證的分揀、傳送、驗核等。要實現對這些文字信息處理過程的機械化、自動化,其先決條件就是利用計算機對這些文字信息進行識別。
字符識別是利用計算機自動辨識印刷在紙上或人寫在紙上的漢字,是模式識別的一個重要分支,也是文字識別領域較為困難的問題之一。本技術涉及模式識別、圖像處理、數字信號處理、自然語言理解、人工智能、模糊數學、信息論、計算機、中文信息處理等學科,是一門綜合性技術,在中文信息處理、辦公室自動化、機器翻譯、人工智能等高技術領域,都有著重要的實用價值和理論意義。
因此,手寫數字的識別研究有著重大的現實意義,一旦研究成功并投入應用,將產生巨大的社會和經濟效益。
1.3? 手寫數字識別的典型應用
手寫數字識別有著極為廣泛的應用前景,這也正是它受到世界各國的研究工作者重視的一個主要原因。下面將介紹一些以手寫數字識別技術為基礎的典型應用。
(一)手寫數字識別在大規模數據統計中的應用
在大規模的數據統計[12](如:行業年鑒、人口普查等)中,需要輸入大量的數據,以前需要手工輸入,需要耗費大量的人力和物力。近年來在這類工作中采用OCR技術已成為一種趨勢。因為在這種應用中,數據的錄入是集中組織的,所以往往可以通過專門設計表格和對書寫施加限制以便于機器的自動識別。
目前國內的大多數實用系統都要求用戶按指定規范在方格內填寫。另外,這些系統往往采用合適的用戶界面對識別結果做全面的檢查,最終保證結果正確無誤[4]。可以看出,這是一類相對容易的應用,對識別核心算法的要求比較低,是目前國內很多單位應用開發的熱點。
(二)手寫數字識別在財務、稅務、金融領域中的應用
財務、稅務、金融是手寫數字識別大有可為的又一領域。隨著我國經濟的迅速發展,每天等待處理的財務、稅務報表、支票、付款單等越來越多。如果能把它們用計算機自動處理,無疑可以節約大量的時間、金錢和勞力。與上面提到的大規模數據統計處理相比,在這個領域的應用難度更大,原因有:
1、對識別的精度要求更高;
2、處理的表格通常不止一種,所以一個系統應具有智能地同時處理若干種表格的能力;
3、由于處理貫穿于整個日常工作之中,書寫應盡量按一般習慣(如:不對書寫者的寫法做限定,書寫時允許寫連續的字串,而不是在固定的方格內書寫),這樣對識別及預處理的核心算法要求也提高了。
1.4? 國內外研究現狀
手寫體數字識別在學科上屬于模式識別和人工智能的范疇。在過去的數十年中,研究者提出了許多識別方法,目前手寫體數字識別方法可以分為兩類:基于結構特征的方法和基于統計特征的方法。通過幾十年來各國研究學者得對數字識別的研究,國內外在手寫識別上也取得了一定的成就。在我國郵電部第三研究所,以信函分揀為目的,識別書寫在信封上的郵政編碼。其它用傳統方法進行識別研究的有中國科學院自動化研究所,該所對手寫體數字識別的研究歷史幾乎有20年了,在他們新近的報告中,利用以有限狀態自動機為主的識別途徑識別1100個手寫體數字,識別率達95.2%,拒識4%,誤識0.2%,上海交通大學基于壓縮字結構特征的手寫體數字識別算法選取了12600個樣本組成訓練集,6000個樣本組成測試集,用BP網絡進行分類,識別正確率為97.58%,誤識率為1.04%,拒識率為1.38%。 德國E9的Friedhelm Schwenker采用SV-RBF40對手寫體數字進行識別,測試樣本10000個,識別正確率為98.56%。清華大學采用SVM對金融票據中的手寫體數字進行識別,測試樣本20000個,識別率約為92%。然而以上提到的系統,要么對書寫的正規程度有要求,要么其測試樣本和訓練樣本出于同一批人之手。總之,一般的系統對書寫人員限制較多,或者對書寫的正規程度有要求,或者對書寫位置有要求,或者對所用筆、紙有要求,例如對稅務報表的識別就要求用規定的字型書寫數字,并且對書寫的位置有要求,而真正的無限制手寫體數字的識別的研究還有待進一步提高。
?
?
?
?
1.5? 手寫體數字識別系統概述
本文的手寫體數字識別系統總體流程可分為兩大步驟。(見圖1.1)。
?
| 圖像預處理 |
| 神經網絡進行數字識別 |
?
?
圖1.1系統總流程圖
其中圖像預處理的流程如圖1.2 所示。
??????????
| 讀取圖片 |
| 灰度化 |
| 二值化 |
| 歸一化調整 |
| 數字分割 |
| 去噪聲 |
| 圖像細化 |
?
?
圖1.2 圖像預處理流程圖
神經網絡數字識別的具體流程如圖1.3 所示。
?
?
| 樣本訓練 |
| 識別 |
| 字符特征提取 |
?
?
圖1.3 神經網絡數字識別流程圖
?
1) 圖像預處理階段
在獲取原始數字圖像過程中,由于光照、背景紋理、鏡頭分辨率、拍攝角度等原因,難免會造成圖像失真并帶有噪聲。由于這些噪聲的影響,如果對獲取得到的數字圖像進行直接處理的話通常不能得到滿意的結果,因此在獲取原始數字圖像后,需要對圖像進行預處理。對于字符識別的預處理過程一般包括:二值化、去噪聲、數字分割、歸一化處理、圖像細化。經過預處理后的圖片不僅能夠有效濾除噪聲,并且能夠將不同的大小字符進行歸一化到一個固定大小,對大量數據進行壓縮處理。預處理階段在該系統中是一個很重要的階段。預處理效果的好壞會直接影響到整個系統的性能。具體方法可以詳見第二章。
2) 特征提取階段
由于原始數字圖像數據量大,冗余信息較多,一般不進行直接識別,而是進行提取有效特征數據、壓縮數據,然后再進行識別。換句話說特征提取是為了去除圖像信息中對分類沒有幫助的部分,將圖像信息集中到幾個有代表性的特征上來的過程。
3) 數字識別階段
我們將提取到的特征值輸入到已經訓練好的神經網絡中進行分類識別。
?
1.6? 本文內容安排
本文內容上總體安排為六章。
第一章主要是對OCR和手寫體數字識別作簡單的介紹。介紹內容有:OCR及手寫體數字識別的歷史及現狀;手寫體數字識別的典型應用;國內外的研究現狀;數字識別系統的整體描述以及本文的研究內容。
第二章:主要是研究手寫體數字識別中的預處理技術。本文采用預處理有灰度化,二值化,去噪聲,歸一化,細化等技術,該章節對其進行詳細分析。同時本章針對幾種閾值分割進行比較,分析其各自的優缺點。
第三章:主要研究的是手寫體數字識別中的特征值提取技術。在特征值提取模塊中,需要根據特征表達方式或者特征提取技術的不同,選用不同的預處理技術。
第四章:主要簡單介紹神經網絡分類識別器實現原理。初步介紹本文采用的BP神經網絡,并給出本文采用的學習算法和訓練算法。
第五章:介紹了本文實現的系統的開發和運行環境,以及系統的處理過程圖,系統界面。給出實驗結果分析。
第六章:對整個論文的研究和工作進行了總結并指出了進一步的研究方向。
?
?
2? 手寫體數字識別中預處理技術
預處理對于一個良好的識別系統不僅是一個必不可少的環節,而且是至關重要的。如果預處理處理得不夠理想,會從很大程度上降低整個系統的識別率。一般手寫體數字識別而言,預處理包括很多部分,如去噪聲、灰度化、二值化、歸一化、細化等等。
2.1? 圖像灰度化
所謂灰度圖像就是圖像的每一個象素的R、G、B分量的值是相等的。彩色圖像的每個象素的R、G、B值是不相同的,所以顯示出紅綠藍等各種顏色。灰度圖像沒有這些顏色差異,有的只是亮度上的不同。灰度值大的象素點比較亮(象素值最大為255,為白色),反之比較暗(象素值最小為0,為黑色)。對讀取到的圖片進行灰度處理,為下一步二值化做好準備工作。圖像灰度化有各種不同的算法,比較直接的一種就是給象素的rgb 值各自一個加權系數,然后求和。
?
圖2.1測試圖像原圖
?
圖2.2灰度化效果圖
2.2? 圖像二值化
在進行了灰度化處理之后,圖像中的每個象素只有一個值,那就是象素的灰度值。它的大小決定了象素的亮暗程度。為了更加便利的開展下面的圖像處理操作,還需要對已經得到的灰度圖像做一個二值化處理。圖像的二值化就是把圖像中的象素根據一定的標準分化成兩種顏色。
在數字圖像處理中,二值化占有非常重要的地位。這是因為,一方面類似于字符、指紋、工程圖等圖像本身就是二值的。另一方面,在某些情況下即使圖像本身是有灰度的,也將其轉換成二值圖像再處理。這樣在圖像處理系統中,可以減少圖像信息并提高處理速度。
圖像的二值化有幾種類型,其中主要的有基于灰度分布的二值化,也有基于梯度信息的二值化。基于灰度分布的二值化處理一般是通過設定閾值,把它變為僅用二值表示前景和背景顏色的圖像。圖像的二值化可以根據下面的閾值來處理:假設一幅原始圖像的象素值p(i,j)的取值范圍為[0,m],那么設有其閾值為T=t,0<t<m,則映射成新的二值圖像的象素值p’(i,j)為:
?????????????????? (式2.1)
對于基于灰度分布的二值化就是一個帶閾值T的二值映射過程,其分割效果的關鍵在于閾值T的選取。有的應用可以由計算機自動選取,有的則需要人工干預,所以閾值T的選取視應用范圍而有所不同。對于字符識別來說,只需要保留文字特征的二值信息即可。目前,眾多學者對此已經進行了比較詳細的研究,并提出了許多閾值選取的算法,這些算法大體上可以劃分為三類:整體閾值法,局部閾值法和動態閾值法。
1) 整體閾值法(又稱全局閾值法)
僅由象素點(i,j)的灰度值p(i,j)確定閾值的方法稱為整體閾值選擇法。典型的閾值選取算法有直方圖法,熵閾值法等等,一般地,如果圖像灰度直方圖呈現雙峰,或者圖像中背景灰度與目標灰度呈明顯分離狀,整體閾值法分割圖像效果良好且速度快。
2) 局部閾值法
由象素(i,j)的灰度值p(i,j)和象素周圍點的局部灰度特性確定閾值的方法稱為局部閾值法。不同的閾值法源于N(i,j)的不同選擇。對于書寫質量差,干擾較嚴重的字符,采用整體閾值法二值化,效果不太理想,局部閾值法有可能得到較為滿意的二值化結果。
3) 動態閾值法
當閾值選擇不僅取決于該象素閾值及其周圍各象素的灰度值,而且還和象素坐標位置相關時,稱之為動態閾值法。這種方法可以處理低質量甚至單峰直方圖圖像。對文字圖像而言,由于筆畫和背景的區分比較明顯,并且動態閾值法的實現較為復雜、計算時間相對長,因此在文字識別中很少采用。
對于以上三種二值化算法中,由于動態閾值法實現較為復雜而且用時較長,很難滿足文字識別中的實時性要求,因此該算法在字符識別系統中很少被采用。采用整體閾值法和局部閾值法能很好的將背景和目標進行分割。本系統采用整體閾值法。
鑒于在實際中,考慮到所要進行處理的圖像大多是從印刷出版物上掃描得來的底色大多為白色所以我們將這個閾值固定為230。二值化后效果如圖2.3。
?
圖2.3二值化效果圖
2.3? 圖像反色
?????? 圖像的反色工作只是為了后期處理識別圖像方便,并不是必須的過程。反色只是對二值化后的圖像象素值取反。即黑色(象素值為0)轉變為白色(象素值為1),白色(象素值為1轉變為黑色(象素值為0)。
?
??????????????????????????? 圖2.4反色效果圖
2.4? 圖像去噪聲
噪聲對于圖像的預處理非常重要,它會影響圖像處理的輸入、采集、處理各個環節和識別結果的全過程。特別是圖像的輸入、采集的噪聲是十分關鍵的問題。如果輸入不良伴有較大的噪聲,濾波去噪后不能達到理想效果,將必然的嚴重影響處理的全過程以至最后的識別結果。噪聲去除已經成為圖像處理極其重要的步驟,然而現在還沒有一個通用的濾波去噪方法對所有的圖片適用,一般的圖像預處理必須根據實際情況選擇不同濾波去噪方法進行比較,最后得出最佳的濾波去噪方法。
通常去噪聲用濾波的方法,比如中值濾波、均值濾波。但是那樣的算法不適合用在處理字符這樣目標狹長的圖像中,因為在濾波的過程中很有可能會去掉字符本身的象素。系統采用的是去除雜點的方法來進行去噪聲處理的。
具體算法描述如下:
1)掃描整個圖像的每個象素并取得此象素9領域的象素值(如圖2.5)。
2)分別計算0和1的總數S0 ,S1 。
3)if? S0 ?5
x=0;
if? S1 ?5
x=1;
4)重復步驟1)直至不再改變。
| 0 | 1 | 1 |
| 0 | x | 0 |
| 0 | 1 | 0 |
?
?
圖2.5? 領域示意圖
經過上述算法去離散噪聲后,很好的排除了離散噪聲點的干擾。效果如圖2.6所示。
?
???????????????????????????? 圖2.6 去離散噪聲效果圖
2.5? 數字分割
系統在讀進來的圖像中一般會含有多個數字,識別的時候只能根據每個字符的特征來進行判斷,所以還要進行字符分割的工作。這一步工作就是把圖像中的字符獨立的分割出來。
具體的算法如下:
第一步,先自下向上對圖像進行逐行掃描直至遇到第一個白色的象素點。記錄下來。然后再由上向下對圖像進行逐行掃描直至找到第一個白色象素,這樣就找到圖像大致的高度范圍。
第二步,在這個高度范圍之內在自左向右逐列進行掃描,遇到第一個白色象素時認為是字符分割的起始位置,然后繼續掃描,直至遇到有一列中沒有白色象素,則認為這個字符分割結束,然后繼續掃描,按照上述的方法一直掃描直至圖像的最右端。這樣就得到了每個字符的比較精確寬度范圍。
第三步,在已知的每個字符比較精確的寬度范圍內,按照第一步的方法,分別進行自上而下和自下而上的逐行掃描來獲取每個字符精確的高度范圍。
?
圖2.7數字分割效果圖
2.5? 數字歸一化
對于字符識別來說,歸一化是一個很重要的預處理因素。由于人們在書寫、設備使用焦距不同等原因可以導致獲取后的數字圖像字符的大小不一。對于大小不一的字符圖像,處理起來很不方便,因此在通常情況下,在對字符進行預處理的時候,我們必須將單個字符進行歸一化處理。歸一化處理一般的是將單字符圖像進行歸一化到固定的大小的數字圖像,例如本文采用的歸一化后的數字圖像大小為16×16。進過歸一化處理后,一般的能夠將大的字符圖像信息進行縮小到固定大小的數字圖像,這樣在提高識別率的同時也能提高處理的效率。
歸一化包括位置歸一化,大小歸一化及筆畫粗細歸一化。這里主要進行位置和大小的歸一化,而筆畫粗細的歸一化可以看做是數字的細化。
(1)位置歸一化
為了消除數字點陣位置上的偏差,需要把整個數字點陣圖形移動到規定的位置上,這個過程稱作位置歸一化。
有兩種簡單的位置歸一化方法。一種是基于質心的位置歸一化方法;另一種是基于文字外邊框的位置歸一化。基于質心的位置歸一化方法首先計算數字的質心,然后在把質心移動到指定的位置上來。基于數字外邊框的位置歸一化需要首先計算文字的外邊框,并找出中心,然后把數字中心一道指定的位置上來。相對而言,質心的計算是全局性的,基于質心的歸一化方法抗干擾能力更強。
(2)大小歸一化
對不同的數字做變換,使之成為尺寸大小的數字,這個過程被稱做大小歸一化。
因為掃描進來的圖像中字符大小存在較大的差異,而相對來說,統一尺寸的字符識別的標準性更強,準確率自然也更高,標準化圖像就是要把原來各不相同的字符統一到同一尺寸,在系統實現中是統一到同一高度,然后根據高度來調整字符的寬度。主要是通過將字符的外邊框按比例線性放大或者壓縮為規定尺寸的字符來實現。
本文主要是對圖像進行大小的歸一化,將字符圖像歸一化為標準尺度,便于處理與識別。
具體算法如下:先得到原來字符的高度,跟系統要求的高度做比較,得出要變換的系數,然后根據得到的系數求得變換后應有得寬度。再得到寬度高度之后,把新圖像里面的點按照插值的方法映射到原圖像中。
比例縮放所產生的圖像中的像素可能在原圖像中找不到相應的像素點,這樣必須進行插值處理。插值處理常用的方法有兩種,一種是最鄰近插值法,即直接賦值為和它最相近的像素值,這種方法計算簡單,但有時會出現馬賽克現象。另一種是通過一些插值算法來計算相應的像素值,常采用線性插值法,原理是,當求出的分數地址與像素點不一致時,求出周圍四個像素點的距離比,根據該比率,由四個鄰域的像素灰度值進行線性插值。該算法處理效果要好些,但是運算量比較大。在本次設計中,主要是對數字圖像進行壓縮,直接采用了最鄰近插值法,處理后的效果比較好。歸一化算法流程如圖2.8。
?
| 二值去噪后的圖像 |
| 計算字符圖像 的高度和寬度 |
| 根據規定的標準高寬計算縮放因子 |
| 計算新圖像的像素點 映射到原圖像的坐標 |
| 利用臨近插值法計算新圖像像素點的值 ? ? ? ? ? ? ? |
?
?
圖2.8 歸一化算法流程圖
?
??????????????????? 圖2.9 歸一化效果圖
2.5? 數字細化
字符細化是通過一定的處理算法將字符重要的像素點保留下來,去除無關緊要的點,得到字符筆劃骨架的技術。對字符識別而言,字符圖像上的各個像素點對識別率的貢獻并不一樣,細化處理能極大的消除字符圖像中的冗余點,使計算機在分析處理、識別時不受筆劃粗細的影響,快速的接觸到本質內容,減少運算量,從而縮短識別的時間。字符圖像細化結果的好壞將直接影響到字符特征提取的準確與否(尤其是一些結構特征的提取),最終影響到整個字符識別系統的識別率,因而字符細化已成為字符識別系統中極為重要的環節之一。
在圖像分析中,形狀信息是十分重要的。為了便于描述形狀信息和提取特征,對那些細長的區域常用它的“類似骨架”的細線來表示(如字符筆劃),這些細線處于圖形的中軸附近,而且從視覺上來說仍然保持原來的形狀。這種處理就是所謂的細化。經過細化的文字圖像既保留了原文字絕大部分特征,又利于特征提取,而且圖像字符點陣比原圖像的要少,降低了處理工作量。但是由于細化骨架有可能會造成新的畸變,增加對識別的干擾和困難,所以文字細化的基本要求如下:
1) 要保持原有筆劃的連續性,不能由于細化造成筆劃斷開。
2) 要細化為單線,即筆劃寬度只有一個像素。
3) 細化后的骨架應盡量是原來筆劃的中心線。
4) 要保持原有的拓撲、幾何特征,特別是一些明顯的拐角不應被平滑掉。
按照上面的要求,一副圖像的細化骨架就可以表示原始圖像中物體的結構,所以在物體識別和物體定位中,常常使用物體的細化骨架信息。
由于細化骨架具有良好的結構描述特性,所以近幾十年來,許多學者已經提出了很多相關的細化算法,并將其用在不同的字符識別中。細化算法的大體分類如下:
1) 按細化后圖形的連續性分,有四鄰域連接算法,八鄰域連接算法。四鄰域連接算法是在水平垂直四個方向的連接,八鄰域連接則是在四鄰域的基礎上加上正反45o對角線方向,總共八個方向。
2) 按細化處理過程分,有串行、并行和串并行處理法。用M×N(一般采用3×3或者5×5)的窗口對某一像素進行檢測時,如該點是可刪除點,立即刪除,則為串行細化處理,它的刪除要影響到后續點的檢測;如對邊緣點全部檢測完畢后,再同時更新所有可刪除點的值,則為并行細化處理;串行、并行處理混合處理則屬于串并行處理。
3) 按細化的運算方式分為兩種,即邊緣點刪除和內點保留。傳統的基于邊緣點刪除的細化算法,在細化過程中只對邊緣點的可刪除進行判斷并做相應的處理,由于受跟蹤順序及所考察領域的影響,容易產生骨架的非對稱性;基于內點保留的細化算法,容易使所得的骨架大于一個像素。
本文采用了像素領域分析法的細化算法,在速度和保留結構信息的準確性上較佳。其算法如下:
1) 對圖像以每3×3大小劃分子網格,對每個子網格進行兩次操作,其中每個3×3子網格滿足如下矩陣形式:
????
2) 在第一次操作時,當且僅當條件G1,G2和G3被全部滿足時,則刪除中心像素p(即讓p = 0)。
3) 在第二次操作時,當且僅當條件G1,G2和G4被全部滿足時,則刪除中心像素p(即讓p=0)。
條件G1為:,其中,
?
?
其中,為圍繞p點的8領域的映射值。
條件G2為:,其中,
?
?
條件G3為:
條件G4為?
對圖像每個像素都進一次上述運算,視為完成一次細化運算,然后重復迭代這個細化運算,直到圖像不再變化為止,這時得到的圖像中字符筆畫均為單像素點,并良好保留了字符的結構信息。效果如圖2.10所示。
?
?
???????????????????????????????????????????????? 圖2.10細化效果圖
為了更好的顯示細化效果,見放大效果圖2.11。
?????????
圖2.11 細化效果放大圖
如圖所示,數字‘8’經細化后很好的得到了‘8’的骨架。
?
?
?
3 ?手寫體數字識別中特征值提取技術
3.1 ?特征提取概述
模式識別使用特征來區分不同的種類,因此,特征提取是一個模式識別系統的關鍵部分。特征提取的目標是找到某種變換,將n維或n×n維的模式類別空間轉換到維數更小的特征空間,并同時保留識別所需要的大部分信息。通過特征提取,模式分類可以在維數低得多的空間上進行,從而降低了計算的復雜度。而且,對給定的訓練樣本進行特征提取可以獲得更精確的分類函數的描述,以構造更可靠的分類規則。
模式特征對于分類是十分重要的,數字識別的關鍵在于能否找出有效的特征,選取的特征是否具有可辨性、可靠性、獨立性和特征數量少。具體來說,特征的可辨性是指屬于不同類別的樣本,特征應該有相對差別較大的值,這樣不同類別的樣本才能區分的開;特征的可靠性是指對與屬于同一類別的樣本,而其應具有穩定性,這樣同一類別的樣本才可以判別為同一類別而不至于誤判;特征的獨立性是指選擇出來的不同特征之間應該互不相關,這樣才能減少信息的冗余性;特征的數量要少是指特征量越少越容易滿足前面的三個原則,處理速度也會相應提高。模式識別系統的復雜度會隨著特征量的增加而迅速增大。更重要的是,訓練分類器和判別一個分類器的好壞所需要的數量也會隨著所用的特征量的數目呈指數增長。
在一個完善的模式識別系統中,特征提取與選擇技術通常介于對象特征數據采集和分類識別兩個環節中間,所抽取與選擇特征的優劣,嚴重的影響著分類器的設計和性能。在樣本數目不是很多的情況下,用很多特征進行分類器設計,無論從計算復雜程度還是分類器性能來看都是不合適的,因此研究如何把高維特征空間壓縮到低維特征空間,以便有效的設計分類器就成為一個重要的問題,這也是模式識別中的一個關鍵問題。
特征提取方法的選擇是影響識別率的一個至關重要的因素,必須指出的是,對于不同的識別問題和不同樣本數據,使用不同的特征提取方法的適應性差別是很大的,也就是說,一種特征提取方法對一個問題和數據很奏效對另一個問題或數據可能失效。一個解決的辦法是尋找不同的數據的共同特征,或稱不變量。另一方面,對于一個有限的訓練數據集,如果使用的是統計分類器,特征集必須保持在一個合理小的數量內。就數字識別來說,在實際過程中,如何選擇若干種特征提取的方法取決于識別的用途。我們必須考慮到待識別的數字是否有固定的方向和大小,是印刷體還是手寫體,是否存在不同的書寫風格,是否有缺損,程度如何。這些有利于縮小特征提取選擇的難度和提高識別率。此外,雖然特征提取是一個好的字符識別系統的重要組成部分,但是對于一個識別系統,為了達到較佳的結果,其它的步驟,如二值化,歸一化等也需要優化處理,并且這些處理不是前后互相獨立的。特征提取的選擇取決于這些預處理的結果。
雖然,在一定意義上特征提取和特征選擇都是要達到降維的目的,只是所實現的途徑不同,特征提取是通過某種變換的方法組合原始高維特征,獲得一組低維的新特征,而特征選擇是根據專家的經驗知識或根據某種評價準則來挑選出那些對分類最優影響力的特征,并生成新的特征。有時這兩者并不是截然分開的。例如可以先將原始特征空間映射到維數較低的空間,在這個空間中再進行選擇以進一步降低維數。當然也可以先經過選擇,去掉那些明顯沒有分類信息的特征,再進行映射,以降低維數。
同樣對于手寫體字符的識別,特征提取可以降低字符信息量。去除無用的冗余信息、提高識別系統性能。手寫體字符的識別,常用的特征有結構特征和統計特征。結構特征和統計特征各有優點:結構特征對細節變化比較敏感,對噪聲干擾較大的圖像,識別率不高。統計特征對噪聲不敏感,具有較好的穩定性,但對圖像細節上的細微差異不敏感,在待識別字符形狀較相似時易發生錯誤。所以,統計特征和結構特征相互之間具有一定的互補性。
3.2 ?手寫體字符特征提取方法概述
特征提取是整個字符識別系統的關鍵,識別算法是根據選取特征的種類來進行選擇的。所選取的特征是否是穩定,是否代表一類字符的特點,是系統識別率的高低關鍵。
由上節可知手寫體字符特征提取的方法可分為結構特征和統計特征兩種,下面就分別簡單介紹這兩種特征提取方法的特點與一般方法。
1) 結構特征提取方法
采用結構特征提取字符進行結構分析從而達到識別的目的,是一種非常直觀的方法,其思想與人認字的原理有點相像,但又有所不同。其基本思想是:字符可以逐級分解成部件、筆劃乃至筆段,識別時可以自底向上,由像素得到筆段,由筆段結合成筆劃,由筆劃構成部件,由部件組成字符,逐級分析字符圖像的結構,根據各元素的屬性、數量及其互相關系,便可以判定待識字符。目前研究比較成熟,效果較好的是基于筆劃和基于筆段分析的手寫體字符識別。
對不同的字符手寫樣本,盡管人書寫風格千變萬化,然而筆劃與筆劃之間的位置關系,以筆劃為基元的字符的整體拓撲結構是不變的。人認字就是抓住了這些本質不變的特征,因此能適應不同的書寫風格的文字。所以,基于筆劃來自動識別字符一直是手寫體字符識別研究的一類主要研究方法。
雖然字符的筆劃特征受字體、字形大小等影響較小,是識別字符的良好特征,但可惜筆劃特征對實際的書寫文本來說比較難穩定的提取。通常,用基于筆劃段作為特征能較好的解決這一困難。采用結構特征提取方法的難點在于筆劃或筆段等基元的準確提取。雖然提取筆劃或筆段的方法已有多種,但他們都是基于圖像處理的方法,截然不同于人根據知識和經驗而做出的視覺處理。單純建立在圖像處理方法上的筆段分析只能十分機械的按圖像就事論事,結果提取到的筆段難免與人的判別不完全一致。這種情況在存在連筆、斷筆、模糊等場合尤為不可避免。所以,書寫畸變對結構特征分析法有著不可忽視的影響。因此,尋求穩定可靠的筆段提取方法仍然是當前有待進一步研究的課題。
2) 統計特征提取方法
從統計模式識別的觀點來看,字符識別實際上是一個模式分類問題,人對自然物體的識別,是建立在對該物體進行學習、特征分析的基礎上的,計算機模式識別的過程與人的識別過程有著相似的地方。實際上就是一種通過學習或者其它方法,形成一個記憶知識庫,進行模式識別時,清晰地表達出一種從物體到記憶知識庫的映像,從而得到識別的結果。人在進行物體識別時,是利用大腦中通過學形成的記憶庫,對識別的物體進行一種黑箱式的映像,從記憶庫中找出相匹配的類別。計算機要把人類識別物體時的這種黑箱式的映像表達出來,一般式有兩個步驟完成的:第一步,以適當的特征來描述物體,第二步,計算機執行某種運算完成的映像。此過程實際上就是傳統的統計模式識別進行物體識別時所采用的一般方法,具體來說就是特征提取和分類函數的設計的問題,而特征提取是問題難點和關鍵所在。因此如果特征已知,就可以利用現有的數學理論來指導設計映像函數。然而,對于特征的選擇和提取,卻沒有可遵循的理論來指導,我們很難比較一個物體中哪些特征是實質性,哪些特征是代表性的,哪些特征可能是不重要或與識別無關緊要的,這些都需要大量的實驗和理論指導。經過人們在這方面的大量研究工作,提出了一些統計特征提取方法。
由此可見,對手寫體數字圖像進行特征值的提取,特征值的選擇不僅能濃縮信息、降低維數、提高處理效率的同時,其對系統的識別性能也有很重要的影響。在3.3和3.4小節中,我們將詳細描述本文所采用的2種特征值(共8+16=24種特征值)的提取方法。
3.3? 手寫體數字識別中的結構特征提取
采用結構特征對字符進行結構分析以達到識別目的是一種非常直觀的方法。字符由各個子部件構成,逐級分析字符圖像的結構,根據元素的屬性、數量及其相互關系,便可判定待識字符。
與統計方法相比,結構分析不注重特征的絕對位置,只考慮特征的相對關系,因而對書寫風格的變化不敏感,其缺點在于特征提取的算法都相對復雜。下面將介紹本文采用的穿越密度結構特征向量的提取方法。
穿越密度(次數)特征已被廣泛的應用于字符識別的研究中。穿線法是取得筆劃密度的一個通用算法,其基本思想是用一組或幾組與水平成0度、30度、45度或者60度等的平行線,貫穿字符,提取字符與平行線的交點信息作為識別的依據。該算法由于涉及字符拓撲結構方面的信息,所以對字符旋轉縮放和變形有較強的容忍度。文獻[20]提出的一種徑向貫穿字符的穿線法,該方法以字符重心為坐標原點,分別從坐標原點以0、45、90、135、180、-135、-90、-45度方向引出8條線穿越字符,以各個方向穿越字符的次數組成向量作為該字符的徑向筆劃密度特征。但是,當書寫風格引起統一字符的之心位置不同時,該方法提取的特征準確性差。
本文采用的是整體貫穿法,該方法就是間隔一定距離從垂直和水平方向上進行整體穿越,由于本文通過歸一化處理后的圖像的大小是16×16的,因此本文采用方法是間隔4個像素進行從水平和垂直方向進行穿越,從而得到3行、3列上(共6個)的穿越次數統計。與水平成45、135度角的兩條穿越線,將這八個數據作為特征向量。如圖3.1的第17—24這八個特征所示。
?
圖3.1特征向量的提取
統計特征中最主要的特征為粗網格特征。粗網格特征是一組注重字符圖像的整體的分布特征,此種特征對噪聲具有極強的抑制能力。一般來說,雖然手寫體數字的書寫風格千變萬化,但是數字筆劃的分布是有一定的規律的。由于10個字符的筆劃具有比較固定的總體分布狀況,從特征選擇的質量來講,不同數字的特征向量在特征空間中的分布是比較分散的,即特征空間中不同類的類間距離是比較大的。
如圖3.1中1—16這16個特征所示,本文采用的粗網格特征提取的方法是:把數字點陣分成幾個局部小區域,并把每個小區域上的點陣密度作為描述特征,即統計每個小區域中圖像的像素的個數作為特征數據。本文對原始圖像進行歸一化處理后的圖像是16×16的點陣,將之劃分為大小4×4的小區域,共計16個。
?
4? 人工神經網絡分類器
4.1? 人工神經網絡概述
人工神經網絡( Artificial Neural Networks, 簡寫為ANNs)也簡稱為神經網絡(NNs)或稱作連接模型(Connectionist Model) ,是對人腦或自然神經網絡(Natural Neural Network)若干基本特性的抽象和模擬。人工神經網絡以對大腦的生理研究成果為基礎的,其目的在于模擬大腦的某些機理與機制,實現某個方面的功能。國際著名的神經網絡研究專家,第一家神經計算機公司的創立者與領導人Hecht Nielsen給人工神經網絡下的定義就是:“人工神經網絡是由人工建立的以有向圖為拓撲結構的動態系統,它通過對連續或斷續的輸入作狀態相應而進行信息處理。” 這一定義是恰當的。 人工神經網絡的研究,可以追溯到 1957年Rosenblatt提出的感知器模型(Perceptron) 。它幾乎與人工智能——AI(Artificial Intelligence)同時起步,但30余年來卻并未取得人工智能那樣巨大的成功,中間經歷了一段長時間的蕭條。直到80年代,獲得了關于人工神經網絡切實可行的算法,以及以Von Neumann體系為依托的傳統算法在知識處理方面日益顯露出其力不從心后,人們才重新對人工神經網絡發生了興趣,導致神經網絡的復興。 目前在神經網絡研究方法上已形成多個流派,最富有成果的研究工作包括:多層網絡BP算法,Hopfield網絡模型,自適應共振理論,自組織特征映射理論等。人工神經網絡是在現代神經科學的基礎上提出來的。它雖然反映了人腦功能的基本特征,但遠不是自然神經網絡的逼真描寫,而只是它的某種簡化抽象和模擬。
神經網絡的研究可以分為理論研究和應用研究兩大方面。
理論研究可分為以下兩類:
1).利用神經生理與認知科學研究人類思維以及智能機理。
2).利用神經基礎理論的研究成果,用數理方法探索功能更加完善、性能更加優越的神經網絡模型,深入研究網絡算法和性能, 如:穩定性、收斂性、容錯性、魯棒性等;開發新的網絡數理理論,如:神經網絡動力學、非線性神經場等。
應用研究可分為以下兩類:
1).神經網絡的軟件模擬和硬件實現的研究。
2).神經網絡在各個領域中應用的研究。這些領域主要包括:模式識別、信號處理、知識工程、專家系統、優化組合、機器人控制等。
隨著神經網絡理論本身以及相關理論、相關技術的不斷發展,神經網絡的應用定將更加深入。
4.2 ?BP神經網絡概述
在人工神經網絡發展歷史中,很長一段時間里沒有找到隱層的連接權值調整問題的有效算法。直到誤差反向傳播算法(BP算法)的提出,成功地解決了求解非線性連續函數的多層前饋神經網絡權重調整問題。
BP (Back Propagation)神經網絡,即誤差反傳誤差反向傳播算法的學習過程,由信息的正向傳播和誤差的反向傳播兩個過程組成。輸入層各神經元負責接收來自外界的輸入信息,并傳遞給中間層各神經元;中間層是內部信息處理層,負責信息變換,根據信息變化能力的需求,中間層可以設計為單隱層或者多隱層結構;最后一個隱層傳遞到輸出層各神經元的信息,經進一步處理后,完成一次學習的正向傳播處理過程,由輸出層向外界輸出信息處理結果。當實際輸出與期望輸出不符時,進入誤差的反向傳播階段。誤差通過輸出層,按誤差梯度下降的方式修正各層權值,向隱層、輸入層逐層反傳。周而復始的信息正向傳播和誤差反向傳播過程,是各層權值不斷調整的過程,也是神經網絡學習訓練的過程,此過程一直進行到網絡輸出的誤差減少到可以接受的程度,或者預先設定的學習次數為止。
?
????????????????????? 圖4.1? 三層前饋神經網絡示意圖
4.3 ?本文的神經網絡結構設計
1) 神經網絡的結構模型
針對當前的脫機手寫識別,選擇bp神經網絡。
2) 神經網絡的層數、以及各層的節點數
一般的選擇隱含層的層數要從網絡精度和訓練時間上考慮,對于比較簡單的映射關系,在網絡精度達到要求的情況下,應該盡量選擇較少的隱含層層數,對于較復雜的映射關系,可以通過增加隱含層層數,保證映射關系的正確實現。其實兩個隱含層就能解決任何形式的分類的問題,事實上任何一個連續的函數,都可以用三層BP神經網絡映射來逼近。因此本文選擇三層BP神經網絡(輸入層、1個隱含層、輸出層)。
對于輸入層的節點數,一般與輸入的特征向量的個數相同,由于本文提取的字符的特征向量有24個,因此采用的神經網絡的輸入層的節點數也為24。對于輸出層的節點數,由于數字識別只有10類,2的4次方就可以表示10類,因此本文采用的神經網絡的輸出層的節點數為4。對于隱含層的節點的個數沒有一個理論基于指導,但是根據前人經驗,一般參照下列公式進行設計:
???????? ???????????????(式4.1)
其中為隱含層的節點數,為輸入節點的個數,為輸出節點的個數,一般取1~10之間的常數。
因此由式5.1(選擇α=9),則可計算得本文采用的隱含層的節點個數為14個。
3) 輸出層的值確定
在2)中已經指出,本文采用的輸出層的節點數為4。由于目標向量如果采取大于1以上的值,可能會導致算法不收斂,因此本文使用目標向量0.01來代表0,0.99表示1。所以,數字0~9的目標向量見表4.1。
??????????????????? 表4.1數字0~9的目標向量
| 數字0 | 0.01 | 0.01 | 0.01 | 0.01 |
| 數字1 | 0.01 | 0.01 | 0.01 | 0.99 |
| 數字2 | 0.01 | 0.01 | 0.99 | 0.01 |
| 數字3 | 0.01 | 0.01 | 0.99 | 0.99 |
| 數字4 | 0.01 | 0.99 | 0.01 | 0.01 |
| 數字5 | 0.01 | 0.99 | 0.01 | 0.99 |
| 數字6 | 0.01 | 0.99 | 0.99 | 0.01 |
| 數字7 | 0.01 | 0.99 | 0.99 | 0.99 |
| 數字8 | 0.99 | 0.01 | 0.01 | 0.01 |
| 數字9 | 0.99 | 0.01 | 0.01 | 0.99 |
4) 傳遞函數確定
傳遞函數的選擇直接影響到神經網絡結構的性能,因此各層之間選擇一個合適的傳遞函數也是很重要的。本文通過對多種傳遞函數進行測試,最終確定各層的傳遞函數為:
第二層:采用logsin傳遞函數,即對數S型傳遞函數。
第三層:采用purelin傳遞函數,即線性傳遞函數。
5) 訓練函數和學習函數選擇
訓練函數和學習函數的選擇對訓練的時間起著至關重要的作用,一個好的訓練函數和學習函數能夠較好避免神經網絡陷入局部最優解,同時也能夠提升訓練的效率。本文采用的訓練函數采用traingdx函數,學習函數采用learngdm函數。
6) 網絡訓練參數確定
在網絡訓練過程中應根據實際情況預先確定誤差界值。誤差界值的選擇完全根據網絡模型的收斂的速度大小和具體樣本的學習精度來確定。當Emin值選擇較小時,學習效果好,但收斂速度慢,訓練次數增加。如果Emin值選擇較大時訓練不充分。通常選定神經網絡的誤差界值Emin在0.0001~0.01之間,即在迭代計算誤差值e < Emin時,則認為學習完成,停止計算,輸出結果。有些時候,訓練次數往往很大,甚至不能收斂。此時應該設置一個訓練次數的限制NTmin,在達到該訓練次數NTmin還沒有收斂到Emin時,可以作放棄或停止處理,本文訓練BP網絡分類器時設定Emin=0.001,最大訓練次數為NTmin=5000。
上面的就是本文神經網絡的結構設計,圖4.2所示的是本文的神經網絡對樣本數據進行訓練的訓練曲線。
?
圖4.2本文神經網絡訓練曲線
?
5? 系統實現與結果分析
5.1? 系統實現
5.1.1? 系統實現環境
Windows98/2000/XP是當前最流行的操作系統,現在大部分應用系統都是建立在這些平臺上,同時考慮到軟件系統的應用領域和可推廣性,我們的系統也是基于Windows XP平臺的。編程軟件采用Matlab。
5.1.2? 系統處理流程圖及主要工作
?
| 讀取圖片 |
| 灰度化 |
| 二值化 |
| 歸一化調整 |
| 數字分割 |
| 去噪聲 |
| 圖像細化 |
| 特征提取 |
| 識別 |
?
?
圖5.1系統處理流程圖
?
在整個課題中,主要完成以下工作:1) 通過畫圖軟件獲得訓練和測試樣本(也可以直接選擇經過數碼相機怕照獲得的圖像)。2) 使用前文所述方法對圖像進行預處理。3) 建立一套完整的手寫體數字識別測試系統。
?
5.1.3? 系統界面
?
圖5.2系統主要界面
?
?
?
?
?
?
?
?
?
?
在實驗過程中我們分別對10個數字10個樣本進行測試。
?
| 數字 類別 | 正識樣本數 | 誤識樣本數 | 識別率 |
| 0 | 10 | 0 | 100% |
| 1 | 10 | 0 | 100% |
| 2 | 9 | 1 | 90% |
| 3 | 9 | 1 | 90% |
| 4 | 9 | 1 | 90% |
| 5 | 8 | 2 | 80% |
| 6 | 9 | 1 | 90% |
| 7 | 10 | 0 | 100% |
| 8 | 9 | 0 | 90% |
| 9 | 9 | 1 | 90% |
| 合計 | 93 | 7 | 93% |
圖5.3 試驗結果分析
從檢測結果來看,雖然用于訓練的數據集并不是很多,但誤差率并不是很高,這也體現了BP算法的優越性,相信如果用更多的數據進行訓練會使得正確的檢測率提高而錯誤的檢測率降低,從而使網絡趨于收斂。
?
?
?
?
?
?
?
?
?
?
?
?
?
?
6? 結束語
本文對自由手寫體數字識別的基本原理及方法作了介紹,并用MATLAB工具實現了自由手寫體數字識別系統。在實際生活中,手寫體數字識別尤其脫機手寫體數字識別的應用比較廣泛,例如銀行票據認證、成績自動錄入等等。
本文從建立一個完整的脫機手寫體數字識別系統的目的出發,對識別系統的重要幾個環節:預處理,二值化,分割,分類器進行了研究。本文的選取了合適的特征值,進行整體識別。
通過實驗測試,本文設計的系統取得了較好的識別效果并具有良好的抗噪能力。但是還需要從預處理和特征選擇方面做更深入研究,有待進一步提高系統的識別率。
在課題研究過程中,由于時間、精力和條件等因素的限制,對一些問題的研究深度不夠,在以下幾個方面還需要做進一步研究工作:
(l)為了獲得更好的識別效率,從特征向量入手,應想辦法提取更精確的特征向量,比如投影特征、環凸凹特征等。
(2)如何簡化圖像預處理,以及針對某些步驟尋找更簡單有效的方法,完善某些不甚成熟的地方,從而更好的提高識別率。
??
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
參考文獻
[1]馬立權,李維,蔡韓輝,路瑩,李歆.手寫數字識別中的預處理技術研究. 儀器儀表學報. 第22 卷第3 期增刊.2001
[2] 程晨.手寫數字識別淺析.科技信息28期.2008
[3]杜選,高明峰.人工神經網絡在數字識別中的應用.計算機系統應用.2007年第二期
[4]曹丹,楊長興,張偉.手寫數字識別的研究進展.電腦知識與技術. Vol.5,No.3,January 2009, pp. 688,695
[5] 施少敏,馬彥恒陳建泗基于BP神經網絡的數字識別方法.網絡與信息技術2006, Vol. 25, No. 10
[6] 李雪梅.數字識別技術探究電力學報.Vol. 22 No. 3 2007
[7] 張偉王克儉 秦臻.基于神經網絡的數字識別的研究微電子學與計算.2006 年第23 卷第8 期
[8] 馬耀名, 黃敏.基于BP神經網絡的數字識別研究.信息技術2007年4期
[9] 王亞坤,曾德良,李向菊. 一種新穎的數字識別算法.電力科學與工程Jan. 2009Vol.25, No.1
[10] 武志強,巨輝,曹世梅. 改進的BP 神經網絡在數字識別上的應用.成都信 息工程學院學報. Vol. 23 No. 6Dec. 2008
[11]馮新宇,龐艷輝.車牌識別技術實現方法初探科技與經濟.2007年2期
[12] 國剛,王毅.應用BP神經網絡進行手寫體字母數字識別電腦知識與技術.
Vol.4,No.6,November 2008, pp.1459-1460,1465
[13] L. Lam, S. W. Lee,C.Y.Suen.Thinning Methodologies-AComprehensive Survey.IEEE Transactions on Pattern Analysis and Machine Intelligence,1992,14(9):879
[14]馬向長.字符識別系統中圖像預處理方法的研究.碩士學位論文.北京:北京科技大學,2002
[15]周開利,康耀紅.神經網絡模型及其matlab仿真程序設計.北京:清華大學出版社.2005
[16]聞新,周露,李翔,張寶偉.mtalab神經網絡仿真與應用.北京:科學出版社.2003
[17]王正林,劉明.精通matlab7.0.北京:電子工業出版社.2006
[18]飛思科技產品研發中心.matlab6.5輔助圖像處理.北京:電子工業出版社.2003
[19] 孫兆林.matlab6.x圖像處理.北京:清華大學出版社.2002
[20] 杜彥蕊,郭連騏,杜海明.手寫字符的徑向貫穿特征碼提取的研究.應用科技,2003,30(4):4~6
[21] 手寫體數字識別的軟件設計.中北大學畢業論文設計
?
?
?
致謝
?
總結
以上是生活随笔為你收集整理的基于matlab数字识别算法系统设计与实现(含源文件)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: dedecms调用某一顶级栏目下二级标签
- 下一篇: php怎么引入外部css文件,js如何引