岳建杰,趙旦峰
哈爾濱工程大學(xué)信息與通信工程學(xué)院,黑龍江哈爾濱 150001
基于K-means的圖像文字識(shí)別與提取研究
岳建杰,趙旦峰
哈爾濱工程大學(xué)信息與通信工程學(xué)院,黑龍江哈爾濱 150001
針對(duì)當(dāng)前圖像文字識(shí)別與提取的最新發(fā)展?fàn)顩r,提出一種基于K-means的圖像文字識(shí)別與提取算法,其主要處理步驟包括圖像的預(yù)處理、像素點(diǎn)聚類處理、圖層的選擇與優(yōu)化以及最終的文字切分等。經(jīng)過上機(jī)對(duì)算法進(jìn)行測(cè)試,該算法能夠有效提高圖像文字識(shí)別與提取的準(zhǔn)確率與執(zhí)行效率,并可以針對(duì)不同環(huán)境下的圖片文字進(jìn)行有效識(shí)別。
K-means;圖像文字提?。晃淖肿R(shí)別;二值化處理
目前常用的識(shí)別算法包括神經(jīng)網(wǎng)絡(luò)、支持向量機(jī)、K-近鄰算法等,而K-means聚類算法是當(dāng)前常用的基于劃分的分類算法,能夠按照既定標(biāo)準(zhǔn)與要求將集合進(jìn)行劃分。在數(shù)字圖像文字提取與識(shí)別中,可以通過對(duì)數(shù)字圖像進(jìn)行灰度處理,將文字背景與文字前景用不同的灰度像素來表示,并使用K-means聚類算法進(jìn)行像素劃分,從而將文字從數(shù)字圖像中提取出來,作為OCR識(shí)別的圖像輸入[1]。所以,K-means聚類算法是當(dāng)前圖像文字識(shí)別與提取中使用非常廣泛的處理算法。
根據(jù)集合元素劃分方法的不同,聚類算法可以分為層次劃分、密度劃分、網(wǎng)格劃分以及模型劃分等,K-means屬于基于密度劃分的聚類算法[2]。
K-means聚類算法的基本思想是利用集合元素之間的距離為劃分標(biāo)準(zhǔn),在集合內(nèi)部按照元素的分布密度的不同將元素劃分為不同的子集合。
在劃分過程中,通過定義元素之間的距離,按照元素到聚類中心之間的距離最小原則將元素進(jìn)行聚合,從而得到最終的劃分結(jié)果。
K-means聚類算法的基本流程主要包括以下幾個(gè)步驟[3]:
1)根據(jù)元素劃分的基本要求,從集合元素中隨機(jī)選擇k個(gè)元素作為劃分結(jié)果的中心元素,并針對(duì)集合中的每個(gè)元素計(jì)算其到聚類中心元素的距離大小,按照最小距離原則把各個(gè)元素劃分到對(duì)應(yīng)的聚類中心元素集合中;
2)按照劃分結(jié)果對(duì)各個(gè)子集合中的元素計(jì)算特征均值,并根據(jù)計(jì)算結(jié)果對(duì)劃分結(jié)果進(jìn)行更新操作[4];
3)對(duì)更新后的子集合元素再次按照第一步中的方法進(jìn)行聚類操作,從而得到更新后的元素劃分結(jié)果;
4)按照上述步驟進(jìn)行循環(huán)計(jì)算,當(dāng)2次計(jì)算所得到的聚類中心元素相同時(shí),所得到的劃分結(jié)果即為聚類結(jié)果。
由于K-means聚類算法的基本流程比較固定,其本質(zhì)是在給定的集合元素距離計(jì)算方法的前提下,不斷進(jìn)行聚類迭代與循環(huán)運(yùn)算即可對(duì)元素進(jìn)行聚類劃分[5]。所以在應(yīng)用過程中只需要定義合適的距離計(jì)算方法即可非常方便地將K-means算法轉(zhuǎn)化為計(jì)算機(jī)可執(zhí)行程序進(jìn)行上機(jī)運(yùn)行,所以K-means聚類算法是目前對(duì)集合元素進(jìn)行分類的常用方法。
采用K-means聚類算法的缺陷主要是在選擇聚類中心元素時(shí),算法受到樣本元素的選擇隨機(jī)性和外部噪聲的影響比較顯著,如果不進(jìn)行有效的算法優(yōu)化則比較容易導(dǎo)致算法陷入局部最優(yōu)。因此在采用K-means聚類算法的圖像文字提取與識(shí)別處理中需要根據(jù)圖像文字自身的特點(diǎn)對(duì)算法進(jìn)行改進(jìn)與優(yōu)化。
文中提出的基于K-means的圖像文字識(shí)別與提取算法中主要包括數(shù)字圖像預(yù)處理、像素聚類處理、圖層選擇與優(yōu)化以及文字切分4個(gè)核心步驟,并最終得到能夠被OCR進(jìn)行識(shí)別的文字?jǐn)?shù)字圖像,算法詳細(xì)流程設(shè)計(jì)介紹如下。
2.1 圖像預(yù)處理
在本文提出的圖像文字識(shí)別與提取算法中,首先需要對(duì)數(shù)字圖像進(jìn)行一系列的預(yù)處理,包括圖像灰度轉(zhuǎn)換、二值化處理、文字塊定位以及文字邊緣檢測(cè)等,圖像預(yù)處理的算法流程設(shè)計(jì)如圖1所示。
圖1 圖像預(yù)處理算法設(shè)計(jì)
從圖1中可以看到,圖像預(yù)處理的過程主要包括如下幾個(gè)步驟。
1)圖像灰度轉(zhuǎn)換
將彩色圖像轉(zhuǎn)化為僅包含像素亮度信息的灰度圖,并將數(shù)字圖像中的背景冗余信息與其他噪聲進(jìn)行去除,從而為后續(xù)的文字塊分割以及文字提取提供便利。
數(shù)字圖像文字提取與識(shí)別中的噪聲主要是由于外界光照因素、顏色因素和其他因素導(dǎo)致的圖像有效信息受到干擾所產(chǎn)生的,因此噪聲的去除主要采用了濾波方式,包括領(lǐng)域平均濾波法以及中位值濾波法等,將數(shù)字圖像像素中的噪聲去除[7]。
2)二值化處理
將數(shù)字圖像經(jīng)灰度化處理后得到的黑白圖像中的背景與前景進(jìn)行分離,一般采用灰度像素閾值分離的方法來進(jìn)行,包括全局域閾值分離法、局部閾值分離法以及動(dòng)態(tài)可變閾值分離法等。
由于動(dòng)態(tài)閾值分離法的計(jì)算量較大、處理效率不高,同時(shí)全局閾值分離法的分離效果較差,所以本算法采用了局部最優(yōu)閾值分離法,通過計(jì)算數(shù)字圖像不同區(qū)塊中像素的灰度梯度值的變化來對(duì)像素進(jìn)行分離[8]。
3)邊緣檢測(cè)處理
將經(jīng)二值化處理后的圖像進(jìn)行特征區(qū)域劃分,通過對(duì)數(shù)字圖像灰度變化、顏色變化以及紋理特征的變化差異進(jìn)行檢測(cè),從而實(shí)現(xiàn)文字塊與圖像背景的分離。
本算法的邊緣檢測(cè)算法中主要采用了一階以及二階微分算子來進(jìn)行圖像像素灰度導(dǎo)數(shù)值的計(jì)算,從而實(shí)現(xiàn)不同區(qū)域的邊緣檢測(cè)。
2.2 聚類處理
經(jīng)過圖像預(yù)處理之后即可得到能夠采用K-means聚類算法進(jìn)行文字塊提取的目標(biāo)圖像[9]。通過對(duì)目標(biāo)圖像中的像素進(jìn)行聚類處理,可以從圖像中提取得到待識(shí)別的文字目標(biāo)區(qū)塊,本算法采用的聚類處理詳細(xì)流程如圖2所示。
圖2 聚類處理詳細(xì)流程設(shè)計(jì)
從圖2中可以看到,聚類處理過程主要包括的步驟如下所述。
1)對(duì)數(shù)字圖像進(jìn)行像素空間分類,將其劃分為N個(gè)子簇,并在每個(gè)像素簇中隨機(jī)選擇一個(gè)像素作為中心點(diǎn);
2)采用歐幾里得距離作為像素間距離的計(jì)算方式分別計(jì)算N個(gè)像素簇中各個(gè)像素點(diǎn)到中心點(diǎn)的距離大小,并按照最小距離原則進(jìn)行像素聚類,得到N個(gè)像素點(diǎn)子集合,記為Pi(n),其中i=1,2,…,N;
3)隨機(jī)選擇2個(gè)像素子集合Pk和Pm,并計(jì)算2個(gè)集合之間的最近距離,隨后將Pk中距離Pm最近的像素點(diǎn)歸入Pm集合,并從Pk中刪除;
4)重新計(jì)算經(jīng)過上一步處理后得到的N個(gè)像素子集合的中心點(diǎn),重復(fù)上述過程直到各個(gè)像素子集合不再發(fā)生變化;
5)對(duì)最終得到的N個(gè)像素子集合計(jì)算灰度均值,并以計(jì)算得到的灰度值作為各個(gè)像素子集合的標(biāo)記,并采用局部聚類分類法進(jìn)行,從而得到最終的聚類結(jié)果。
2.3 圖層選擇與優(yōu)化
在經(jīng)過聚類處理后可以將原數(shù)字圖像的灰度處理結(jié)果劃分為多個(gè)圖層。由于數(shù)字圖像文字的中心特性,可以通過計(jì)算各個(gè)圖像圖層像素點(diǎn)距離中心區(qū)域的距離大小得到最終需要選擇的圖像圖層[10]。
在本算法中為了提高圖層選擇的準(zhǔn)確度,在圖層選擇過程中,首先將圖層集合按照中心距離的大小劃分為2個(gè)子集合。其次采用連通域分析、像素噪聲去除等操作,最后再選擇距離最小的圖像圖層作為最終的選擇結(jié)果,在此圖層中即包含了要進(jìn)行提取與識(shí)別的文字塊,即可對(duì)其進(jìn)行文字切分操作。
2.4 文字切分
在經(jīng)過閾值分割后得到的圖像區(qū)域中可能還包含部分噪聲像素,即得到的分割結(jié)果中還包含了部分不屬于文字區(qū)域的像素點(diǎn),所以需要對(duì)這些噪音像素進(jìn)行去除處理,經(jīng)過切分處理后得到最終能夠被OCR識(shí)別的文字圖像[11]。
在本文的算法中對(duì)上述噪音像素進(jìn)行剔除的步驟主要包括:
1)首先將文字處理結(jié)果中明顯不符合文字高寬比的像素進(jìn)行去除;
2)通過定義文字塊的邊緣密度,并根據(jù)文字塊邊緣密度通常大于0.2的特征進(jìn)一步去除噪音像素;
3)將處理結(jié)果中區(qū)域面積小于10個(gè)像素點(diǎn)的區(qū)域進(jìn)行去除;
4)對(duì)處理結(jié)果中的像素塊進(jìn)行融合處理,得到最終的文字塊。
通過文字切分處理后即可得到能夠被OCR識(shí)別的文字圖像。
為了檢驗(yàn)本文提出的圖像文字識(shí)別算法的識(shí)別效果,做了與基于BP神經(jīng)網(wǎng)絡(luò)識(shí)別算法的對(duì)比。本文提出的圖像文字識(shí)別算法采用OpenCV開發(fā)接口在Visual C++6.0開發(fā)環(huán)境下對(duì)算法進(jìn)行了軟件實(shí)現(xiàn),OCR識(shí)別功能接口采用Microsoft Office工具實(shí)現(xiàn),軟件實(shí)現(xiàn)的基本流程如圖3所示。
圖3 圖像文字識(shí)別軟件實(shí)現(xiàn)流程圖
圖像文字識(shí)別軟件的運(yùn)行界面如圖4所示。
圖4 圖像文字識(shí)別軟件運(yùn)行界面
2種算法對(duì)文字識(shí)別軟件的識(shí)別效果測(cè)試結(jié)果如表1、2所示。從表中可以看出,本文提出的文字提取與識(shí)別算法對(duì)數(shù)字圖像中的文字區(qū)域定位比較準(zhǔn)確,高于BP神經(jīng)網(wǎng)絡(luò)的識(shí)別算法,在圖像文字排列比較復(fù)雜的情況下,算法的定位準(zhǔn)確度依然保持在95%以上,而BP神經(jīng)網(wǎng)絡(luò)明顯低于本文提出的算法。
表1 K-means圖像文字識(shí)別軟件測(cè)試效果
表2 BP神經(jīng)網(wǎng)絡(luò)圖像文字識(shí)別軟件測(cè)試效果
通過對(duì)K-means聚類算法進(jìn)行考察與分析,并結(jié)合數(shù)字圖像的灰度處理、二值化、邊緣檢測(cè)等技術(shù),設(shè)計(jì)了一個(gè)基于聚類的圖像文字識(shí)別與提取算法。通過與BP神經(jīng)網(wǎng)絡(luò)識(shí)別算法的對(duì)比驗(yàn)證得出,該算法能夠很好地對(duì)復(fù)雜數(shù)字圖像背景中的文字區(qū)域進(jìn)行定位與提取操作,并得到能夠被OCR進(jìn)行識(shí)別的圖像文字,具有比較高的執(zhí)行效率與準(zhǔn)確度。
[1]楊春蓉,趙小勇.利用改進(jìn)的最優(yōu)聚類算法邊緣提取方法研究[J].計(jì)算機(jī)應(yīng)用與軟件,2012(12):54-58.
[2]RAMAN M,AGGARWALH.Study and comparison of vari-ous image edge detection techniques[J].International Jour-nal of Image Processing,2009(2):113-118.
[3]王景中,胡貝貝.歸一化算法在文字識(shí)別系統(tǒng)中的應(yīng)用研究[J].計(jì)算機(jī)應(yīng)用與軟件,2011(3):22-24.
[4]閻少宏,彭亞綿,楊愛民,等.LLE算法及其在手寫文字識(shí)別中的應(yīng)用[J].河北聯(lián)合大學(xué)學(xué)報(bào):自然科學(xué)版,2012(2):49-53.
[5]種耀華.基于NSCT圖像文字信息提取新方法[J].計(jì)算機(jī)應(yīng)用,2012(2):182-185.
[6]?,?基于聚類與邊緣檢測(cè)的自然場(chǎng)景文本提取方法[J].計(jì)算機(jī)工程與設(shè)計(jì),2010(18):33-36.
[7]胡石根,陸以勤.漢字聯(lián)機(jī)手寫識(shí)別系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)仿真,2010(9):77-79.
[8]MANSHENG X,X M,MANSHENG X,et al.A property optimization method in support of approximately duplicated records detecting[C]//IEEE International Conference on Intelligent Computing and Intelligent Systems.[S.l.],2009:118-122.
[9]胡廣,李娟,黃本雄.結(jié)合空間信息的模糊C均值聚類圖像分割算法[J].計(jì)算機(jī)與數(shù)字工程,2008(4):29-32.
[10]劉小丹,牛少敏.一種改進(jìn)的K-means聚類彩色圖像分割方法[J].湘潭大學(xué)自然科學(xué)學(xué)報(bào),2012(2):47-51.
[11]GATOSB,PRATIKAKIS I,PERANTONISS J.Adaptive degraded document image binarization[C]//Computation-al Intelligence Laboratory,Institute of Informatics and Tel-ecommunications,National Center for Scientific Research “Demokritos”.Athens,Greece.2006:327-329.
Research on the recognition and extraction of image characters based on K-means
YUE Jianjie,ZHAO Danfeng
College of Information and Communication Engineering,Harbin Engineering University,Harbin 150001,China
Based on the latest developments in the recognition and extraction of image characters,this paper propo-ses a K-means-based algorithm for the recognition and extraction of image text.Itsmain processing steps include im-age preprocessing,pixel clustering process,selection and optimization of the layer and the final text segmentation.By computer testing,itwas found that the algorithm can effectively improve the accuracy and efficiency of recogni-tion and extraction of image characters.In addition,it can effectively identify image characters under differentenvi-ronments.
K-means;extraction of image text;character recognition;binarization
TN971.1
A
1009-671X(2015)02-017-04
10.3969/j.issn.1009-671X.201406014
2014-06-19.
日期:2015-03-25.
黑龍江省科技攻關(guān)計(jì)劃資助項(xiàng)目(GC12A305).
岳建杰(1986-),男,碩士研究生;
趙旦峰(1961-),男,教授,博士生導(dǎo)師.
岳建杰,E-mail:348274742@qq.com.
http://www.cnki.net/kcms/detail/23.1191.u.20150325.1256.009.html