• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      印刷體英文單詞識別與朗讀在輔助閱讀中的應(yīng)用

      2012-07-13 03:06:14孫國瑞程榮花
      電子設(shè)計(jì)工程 2012年3期
      關(guān)鍵詞:印刷體字符像素點(diǎn)

      馬 飛,申 遠(yuǎn),孫國瑞,程榮花

      (平頂山學(xué)院 軟件學(xué)院,河南 平頂山 467000)

      現(xiàn)代生活節(jié)奏的加快要求我們高效的工作效率和低成本的產(chǎn)出,科技的發(fā)展使得這一要求得以實(shí)現(xiàn)。我們用到很多工具來幫助我們節(jié)省時(shí)間,手機(jī)電腦等工具幾乎應(yīng)有盡有。但是這些技術(shù)仍存在一些不完整性和缺陷。比如廣告紙上的聯(lián)系方式、姓名只需拍照識別就能及時(shí)獲得,即時(shí)撥通電話就可以通信。這種方式較之保存圖片來說,省去大量的內(nèi)存空間和撥打電話的時(shí)間,是人們期望的方式,也是人工智能的發(fā)展趨勢。我們都想坐在電腦前把紙張上的內(nèi)容通過攝像頭獲取,這就推動了印刷體識別的發(fā)展。因?yàn)楝F(xiàn)在印刷體識別仍存在代價(jià)高,操作復(fù)雜的弊端,而圖像若通過攝像頭獲取則節(jié)約了大量的成本,所以基于圖像處理的印刷體的單詞識別系統(tǒng)就顯得十分必要。由于計(jì)算機(jī)科學(xué)和科技的發(fā)展諸多的此類產(chǎn)品也露出水面如:漢王雙槍筆,智能監(jiān)控系統(tǒng),人臉通,指紋識別,車牌識別等產(chǎn)品等都是基于圖像來處理的。常見的圖像識別技術(shù)研究也很廣泛,如模板匹配、貝葉斯、Fisher、SVM和神經(jīng)網(wǎng)絡(luò)[1-3]等主要算法。

      1 獲取圖像

      獲取圖像是設(shè)計(jì)識別軟件的基礎(chǔ),最常見的獲取方式有:在圖像輸入?yún)^(qū)進(jìn)行手動繪制,這有利于樣本訓(xùn)練時(shí)的樣本多樣化。導(dǎo)入本地圖像到圖像輸入?yún)^(qū),這是最基本的獲取圖像的方法。通過攝像頭拍攝獲取圖像。

      1)攝像頭拍攝:通過攝像頭拍攝得到圖像,將圖像導(dǎo)入到圖像輸入?yún)^(qū),或直接把拍攝到的圖像設(shè)置到輸入?yún)^(qū)。

      2)導(dǎo)入本地圖像:在項(xiàng)目中添加一個(gè)文件對話框,通過打開文件對話框找到目標(biāo)圖像,將其添加到圖像輸入?yún)^(qū)。

      2 預(yù)處理

      圖像預(yù)處理是一個(gè)良好的圖像識別系統(tǒng)必不可少的環(huán)節(jié)。本節(jié)主要包括全局二值化、3×3中值濾波去噪等操作,以達(dá)到改善原圖像的目的。

      一般的閾值的處理方式如下:設(shè)一幅原始圖像的像素值p(i,j)的取值范圍為[0,m],那么設(shè)有其閾值為 T=t,0<t<m,則映射成新的二值圖像的像素值 p′(i,j)為:

      用1表示需要的圖像,0表示背景。

      在字符圖像處理中,二值化處理占有非常重要的地位。這樣在圖像處理系統(tǒng)中,可以減少圖像冗余信息的提取從而提高處理速度。雖然一般的圖像處理時(shí)會利用所有的圖像灰度級,但是本系統(tǒng)處理的圖像灰度級不會太多,因?yàn)橛械淖址?、指紋、工程圖等圖像本身就是二值的,而且需要獲取的圖像信息只是字符像素的信息,所以本系統(tǒng)二值化處理只要得到兩個(gè)灰度值。

      圖像信息在采集過程中往往受到各種噪聲源的干擾,這些噪聲在圖像上的常常表現(xiàn)為一些孤立的像素點(diǎn),這可理解為像素的灰度是空間相關(guān)的,即噪聲點(diǎn)像素灰度與它們鄰近像素的灰度有著顯著不同。通常,一般的前置圖像處理后的圖像仍然帶有后續(xù)所不希望夾帶的孤立像素點(diǎn),這種干擾或孤立像素點(diǎn)如不經(jīng)過濾波去噪處理[4],會對以后的圖像區(qū)域分割、分析和判斷帶來影響。所以為了精確識別,要進(jìn)行圖像的濾波去噪處理。本文采用3×3中值濾波去噪,如圖1所示為圖像去噪前的原始圖像,如圖2所示為經(jīng)過中值濾波后的圖像,從圖像效果來看,噪聲的支隊(duì)效果較好。像中的所有行的上下邊界。

      圖1 圖像去噪前Fig.1 Image before the filter noise

      [Step 2]:定義圖像的左邊界、右邊界為此行的左邊界、右邊界 edgeRows[rowsNumber,left],edgeRows[rowsNumber,right]。

      [Step 3]:獲取了行的上下邊界后,從圖像的左邊界掃描到右邊界第一次獲取的黑色像素點(diǎn)的位置的水平分量位置存到 edgeRows[rowsNumber,left]中,再以行的上下邊界為邊界,從圖像右邊界掃描到左邊界第一次獲取的黑色像素點(diǎn)的位置的水平分量位置存到edgeRows[rowsNumber,right]中。

      2)在行的基礎(chǔ)上單個(gè)字符的定位

      [Step 1]:在第一步中獲得的行位置的基礎(chǔ)上,以行的上下邊界為掃描邊界從左到右掃描圖像中標(biāo)定的字符行的區(qū)域,判斷掃描的像素點(diǎn)是否為黑色,若為黑色則記下此像素點(diǎn)位置的水平分量即將它設(shè)置成字符的左邊界edgeLetters[lettersNumber,left];繼續(xù)循環(huán)判斷像素點(diǎn)是否還有黑色若有則繼續(xù)循環(huán),直到不發(fā)現(xiàn)黑色像素點(diǎn)記下此時(shí)像素點(diǎn)位置的水平位置為字母的右邊界edgeLetters[lettersNumber,right];繼續(xù)用遞歸算法獲取下一個(gè)字母的左右邊界。

      [Step 2]:利用同[step1]同樣的原理獲得每行的每個(gè)字母的 上 下 邊 界 edgeLetters [lettersNumber,top], edgeLetters[lettersNumber,dwon]。

      多個(gè)字符定位功能的實(shí)現(xiàn)如圖3多個(gè)字母定位示例。

      圖2 圖像去噪后Fig.2 Image after the filter noise

      3 字符區(qū)域定位

      處理印刷體文字識別時(shí),最常見的還是多個(gè)字母的識別,當(dāng)圖像中有多個(gè)印刷體字符時(shí),需要先獲取行的行的上下左右邊界坐標(biāo),再獲取單個(gè)字符的上下左右邊界坐標(biāo),以便進(jìn)行單個(gè)字符的特征提取和特征值匹配來識別的字符。多個(gè)字符的定位分兩步,實(shí)現(xiàn)算法:

      1)行的定位

      [Step 1]:獲取圖像后從圖像的上邊界到下邊界掃描圖像區(qū)域,當(dāng)檢測到黑色時(shí)記下此像素點(diǎn)位置并把該點(diǎn)的水平方向的坐標(biāo)存入數(shù)組edgeRows[rowsNumber,top]即行的上邊界,繼續(xù)向下掃描若仍檢測到黑色不做任何事,直到檢測到非黑色記下此時(shí)像素點(diǎn),并把此點(diǎn)的坐標(biāo)的垂直分量值記下存入edgeRows[rowsNumber,down]即行的下邊界,繼續(xù)掃描圖像獲取下一行字符的上、下邊界,直到掃描完整張圖片,獲取到圖

      圖3 多個(gè)字母定位示例Fig.3 Location of multiply characters

      4 特征提取與訓(xùn)練入庫

      字母分割的具體算法:

      [Step 1]:經(jīng)過字符區(qū)域定位,得出字符所占區(qū)域的邊界坐標(biāo)為左邊界 edgeOfLetter[left],右邊界 edgeOfLetter[right],上邊界 edgeOfLetter[top],下邊界 edgeOfLetter[down], 字符區(qū)域的寬 width=edgeOfLetter[right]-edgeOfLetter[left],高 height=edgeOfLetter[top]-edgeOfLetter[down];

      [Step 2]:判斷字符區(qū)域的寬度 width和高度height,若width和height同時(shí)大于9則用9×9分割取N=9;若width和height有一個(gè)不滿足大于9則用5×5分割。

      [Step 3]:為保證劃分的區(qū)域均勻,將前(N-1)×(N-1)格的每一格的寬度設(shè)為wx=width/N,高度設(shè)為hy=height/N;

      [Step 4]:由于字符區(qū)的寬高大小不定,不是每個(gè)字符都能剛好平均劃分,所以最后一列的寬應(yīng)定為width-wx×(N-1),最后一行的高應(yīng)定為 height-hy×(N-1);

      [Step 5]:獲取分割點(diǎn)后,將分割線以橫向和縱向不同顏色繪制到定位的字符圖像中,直觀地顯示出分割的效果(這一步可有可無,在完善系統(tǒng)時(shí)并不需要將分割線描繪出來);如圖4分割字母前和圖5分割字母后的效果圖。

      本文采用的網(wǎng)格統(tǒng)計(jì)特征值[5]算法,具體實(shí)現(xiàn)算法:

      圖4 字母“B”分割前Fig.4 Letter B before splitting

      圖5 字母“B”分割后Fig.5 Letter B after splitting

      [Step 1]:在對單個(gè)字符進(jìn)行定位后,將定位的字符區(qū)域分為N×N(本系統(tǒng)采用9×9的分割)個(gè)小區(qū)域;

      [Step 2]:分別對每個(gè)小區(qū)域進(jìn)行判斷,利用calculatePixel(int left, int right, int top, int down)函數(shù)統(tǒng)計(jì)[1]中分割后每個(gè)小區(qū)域中黑像素點(diǎn)的個(gè)數(shù),若一個(gè)單元格的黑像素點(diǎn)個(gè)數(shù)超過pixelNum(本系統(tǒng)設(shè)為6)個(gè),就將此區(qū)域的特征值設(shè)置為1,否則設(shè)置為0存儲于特征數(shù)組arrayOfCharacter[];

      [Step 3]:將步驟[Step 2]中獲得的該字符的所有特征值arrayOfCharacter[],按照特定的命名方式,存儲到相應(yīng)的*.dat的文件中;如圖7字符“a”的9×9分割特征值。

      圖6 字符“a”的9×9分割特征值Fig.6 9×9 grid feature of"a"

      5 字符識別

      英文單詞的識別實(shí)際上就轉(zhuǎn)換為英文字母的識別,然后再組合為單詞的過程。識別就是將提取的信息與記憶中的信息進(jìn)行分類和模式匹配的過程。分類是將一個(gè)未知樣本分到幾個(gè)預(yù)先已知類的過程。數(shù)據(jù)分類問題的解決是一個(gè)兩步過程:第一步,建立一個(gè)模型,描述預(yù)先的數(shù)據(jù)集或概念集。

      本文所用最短歐式距離的模式識別方法,結(jié)合特征提取階段所得的各字母的特征,實(shí)現(xiàn)單詞中字母的識別。具體實(shí)現(xiàn)如下:

      [Step1]:從特征庫打開各字母的特征存儲文件,遍歷所有文件,統(tǒng)計(jì)出特征文件的數(shù)量;

      [Step2]:將提取出來的特征值與特征庫里的所有文件進(jìn)行比對;

      [Step3]:使用上述公式,計(jì)算待測樣品x與訓(xùn)練集中的漢字的每個(gè)特征的距離,并將結(jié)果存放在二維數(shù)組arrTrainedFeature[]中;

      [Step5]:找出運(yùn)算結(jié)果數(shù)組arrTrainedFeature[]中的最小值對應(yīng)的字母編碼,轉(zhuǎn)換為對應(yīng)的字母和空格、標(biāo)點(diǎn)符號,識別后進(jìn)行組合成單詞。

      6 文本朗讀

      語音合成技術(shù)是信息處理領(lǐng)域的一個(gè)重要分支 ,實(shí)現(xiàn)計(jì)算機(jī)文本文件語音合成 ,就是讓計(jì)算機(jī)開口說話 ,這也是人工智能的一個(gè)重要研究方向。語音合成是一門跨學(xué)科的技術(shù),涉及到自然語言理解、語音學(xué)、信號處理、心理學(xué)、聲學(xué)等。TTS技術(shù)(Text To Speech)是當(dāng)前語音合成技術(shù)的代表性研究內(nèi)容 ,它解決的主要問題是如何將文本狀態(tài)的文字信息轉(zhuǎn)化為可聽的聲音信息。這一技術(shù)在人機(jī)對話、電話咨詢、自動播音、助講助讀、語音教學(xué)等方面有著廣闊的應(yīng)用前景。

      最新的TTS技術(shù)推出已經(jīng)兩年有余。Text To Speech是一個(gè)將Text文本通過計(jì)算機(jī)讀出來的過程。TTS的原理在此不作更深入的講解 ,因?yàn)镾peech SDK開發(fā)包已經(jīng)將所有的技術(shù)包含在內(nèi) ,只需要將這些技術(shù)以 “類”和“函數(shù)”的方式應(yīng)用到自己的程序中就可以了。

      通過研究現(xiàn)有的一些語音朗讀軟件發(fā)現(xiàn),有很多的產(chǎn)品都使用了MicroSoft的Speech Api。MicroSoFt Speech Api的功能十分強(qiáng)大,不僅可以準(zhǔn)確讀出單詞,而且還能夠?qū)崿F(xiàn)流利地朗讀句子乃至段落、文章。對于不常見的單詞(如中文人名的拼音),也能夠根據(jù)英文的發(fā)音原則,讀出較準(zhǔn)確的發(fā)音。

      本課題運(yùn)用了現(xiàn)有的語音技術(shù)融合到本系統(tǒng)中。下面介紹一下實(shí)現(xiàn)算法:

      [Step 1]:安裝 MicroSoFt Speech Api,它可以在金山詞霸的光盤上找到,或者從網(wǎng)上下載,文件名是SpchApi.exe,是個(gè)自解壓文件,直接運(yùn)行即可。同時(shí)還需要安裝朗讀的引擎tts51eng.msi,本系統(tǒng)采用的是男聲的引擎;

      [Step 2]:在項(xiàng)目中引入TTS技術(shù)相應(yīng)的開發(fā)包SpeechLib;

      [Step 3]:雖然開發(fā)包中有可以進(jìn)行朗讀的類,但是開發(fā)包中的類方法中有太多的參數(shù),使用不方便,所以在本系統(tǒng)中創(chuàng)建一個(gè)類Speech,該類中定義一個(gè)SpVoicel類型的變量voice 和 Speak(String text)方法;

      [Step 4]:完成字符識別后的文本會在richTextBox中展現(xiàn),使用字符串變量text獲取richTextBox的文本;

      [Step 5]:在窗體中加入一個(gè)按鈕,觸發(fā)單擊按鈕事件創(chuàng)建一個(gè) Speech對象 speech,speech調(diào)用 Speak(String s)方法即speech.Speak(text)。完成這些步驟,就完成了文本朗讀功能的實(shí)現(xiàn)。

      最終處理效果系統(tǒng)界面圖如圖7所示。本系統(tǒng)能夠?qū)Τ善挠⑽倪M(jìn)行精確的定位、識別和朗讀,并能夠?qū)⒅虚g處理結(jié)果顯示出來,以方便用戶查閱對應(yīng)的識別過程。

      圖7 識別結(jié)果圖Fig.7 Recognition system

      7 結(jié) 論

      文中利用VS.net2005[6-7]構(gòu)建了一個(gè)可以進(jìn)行印刷體單詞識別和朗讀的系統(tǒng),能夠進(jìn)行較為準(zhǔn)確的識別和朗讀。但印刷體單詞識別的難點(diǎn)主要在于以下幾方面:

      1)有些英文單詞大小寫字形區(qū)別不大,在識別中很容易將大寫識別成小寫,或者把小寫識別成大寫如:W和w,S和s等。

      2)英文單詞分詞問題。英文單詞由字母組成,字母之間的距離和單詞之間的距離在印刷體中有時(shí)很難區(qū)分。所以在識別單詞時(shí),要注意分詞。

      3)由于脫機(jī)印刷體字母的輸入只是簡單的一幅圖像,它不像聯(lián)機(jī)輸入那樣可以從物理輸入設(shè)備上獲得字符筆畫的順序信息,因此脫機(jī)印刷體字母識別是一個(gè)更有挑戰(zhàn)性的問題。

      [1]王科俊.印刷體中文文檔識別系統(tǒng)的研究 [D].哈爾濱:哈爾濱工程大學(xué),2009.

      [2]張宏濤.印刷體漢字處理后處理方法的研究[J].中文信息學(xué)報(bào),2009(11):67-71.

      ZHANG Hong-tao.Post-processing approach for printed chinese character recognition[J].Journal of Chinese Information Processing,2009(11):67-71.

      [3]梁涌.印刷體漢字識別系統(tǒng)的研究與實(shí)現(xiàn) [D].西安:西北工業(yè)大學(xué),2006.

      [4]倪桂博.一種快速有效的印刷體漢字識別方法[J].華北電力大學(xué)學(xué)報(bào),2008(5):107-112.

      NI Gui-boa.A fast and effective method for printed Chinese character recognition[J].Journal of North China Electric Power University:Natural Science Edition,2008(5):107-112.

      [5]楊淑瑩.模式識別與智能計(jì)算:Matlab技術(shù)實(shí)現(xiàn)[M].北京:電子工業(yè)出版社,2008.

      [6]趙春江.C#數(shù)字圖像處理算法典型實(shí)例 (附光盤)[M].北京:人民郵電出版社,2009.

      [7]李蘭友.Visual C#圖像處理程序設(shè)計(jì)實(shí)例[M].北京:國防工業(yè)出版社,2003.

      猜你喜歡
      印刷體字符像素點(diǎn)
      尋找更強(qiáng)的字符映射管理器
      西夏文楷書和草書手寫體探微
      淺談小學(xué)英語字母手寫體與印刷體的教學(xué)
      字符代表幾
      一種USB接口字符液晶控制器設(shè)計(jì)
      電子制作(2019年19期)2019-11-23 08:41:50
      消失的殖民村莊和神秘字符
      基于canvas的前端數(shù)據(jù)加密
      基于逐像素點(diǎn)深度卷積網(wǎng)絡(luò)分割模型的上皮和間質(zhì)組織分割
      高考的時(shí)候,把字寫得像印刷體有用嗎
      基于Node-Cell結(jié)構(gòu)的HEVC幀內(nèi)編碼
      铜川市| 北川| 麦盖提县| 普陀区| 库伦旗| 灵璧县| 株洲市| 绥宁县| 阿合奇县| 武宁县| 中牟县| 日喀则市| 张北县| 永定县| 德安县| 沈阳市| 十堰市| 桃园县| 本溪市| 贵溪市| 应用必备| 中阳县| 祁门县| 江都市| 宜兰市| 崇仁县| 陵川县| 乐安县| 襄垣县| 固安县| 泽库县| 西充县| 长宁区| 若羌县| 江达县| 大荔县| 惠水县| 项城市| 日喀则市| 永善县| 唐河县|