一種字符識別方法及裝置的制造方法
【專利摘要】本發(fā)明實施例提供一種字符識別方法及裝置,通過對待識別圖像進行放大處理,生成高像素待識別圖像;對高像素待識別圖像進行二值化處理,濾除高像素待識別圖像中的干擾因素;采用投影直方圖方法,從二值化圖像中獲取包含待識別字符的圖片;將獲取的包含待識別字符的圖片輸入多層人工神經網(wǎng)絡模型,獲取該多層人工神經網(wǎng)絡模型輸出的待識別字符。采用本發(fā)明技術方案,對高像素待識別圖像進行二值化處理,能夠有效濾除背景圖像等干擾因素,保證了最終識別結果的準確性;采用投影直方圖方法對二值化圖像進行切分,保證了切分得到的每一個包含待識別字符的圖片中均包含一個完整字符,識別結果準確率更高。
【專利說明】
-種字符識別方法及裝置
技術領域
[0001] 本發(fā)明實施例設及圖像處理領域,尤其設及一種字符識別方法及裝置。
【背景技術】
[0002] 驗證碼是一種區(qū)分用戶是計算機還是人的計算機程序。驗證碼技術通過一次強制 的用戶交互過程,能夠有效防止惡意破解密碼,頻繁自動提交某項任務等行為。
[0003] 隨著計算機技術的發(fā)展,采用圖形圖像處理技術也能夠對驗證碼進行識別。具體 的,對驗證碼所在圖片進行切分,并對切分后的圖片進行識別,W確定圖片中包含的驗證 碼。其中,通常采用如下兩種方式對驗證碼所在圖片進行切分,第一種切分方式,根據(jù)預設 的切分寬度進行切分,第二種切分方式,根據(jù)圖像中的梯度值進行切分;由于驗證碼中可能 包含不同寬度的字符,因此,當采用第一種切分方式時,將存在很大的誤差;由于驗證碼可 能包含背景圖像等,背景圖像會成為干擾因素,因此,當采用第二種切分方式時,僅通過梯 度值識別驗證碼,無法濾除上述干擾因素,將造成切分結果存在誤差。
[0004] 由此可見,目前在對驗證碼中包含的字符進行識別的過程中,存在字符識別結果 誤差大的問題。
【發(fā)明內容】
陽〇化]本發(fā)明實施例提供一種字符識別方法及裝置,用W解決目前在對驗證碼中包含的 字符進行識別的過程中,存在字符識別結果誤差大的問題。
[0006] 本發(fā)明實施例提供的具體技術方案如下:
[0007] 本發(fā)明實施例提供一種字符識別方法,包括:
[0008] 獲取待識別圖像;其中,所述待識別圖像中包含待識別字符;
[0009] 根據(jù)預設的放大比例,對所述待識別圖像進行放大處理,獲取放大處理后的高像 素待識別圖像;
[0010] 對所述高像素待識別圖像進行二值化處理,生成二值化圖像;
[0011] 采用投影直方圖方法,從所述二值化圖像中獲取包含待識別字符的圖片;
[0012] 從所述包含待識別字符的圖片中,獲取待識別字符。
[0013] 一種字符識別裝置,包括:
[0014] 圖像獲取單元,用于獲取待識別圖像;其中,所述待識別圖像中包含待識別字符;
[0015] 圖像處理單元,用于根據(jù)預設的放大比例,對所述待識別圖像進行放大處理,生成 放大處理后的高像素待識別圖像;且圖像處理單元還用于對所述高像素待識別圖像進行二 值化處理,生成二值化圖像;
[0016] 圖片獲取單元,用于采用投影直方圖方法,從所述二值化圖像中獲取包含待識別 字符的圖片;
[0017] 字符識別單元,用于從所述包含待識別字符的圖片中,獲取待識別字符。
[0018] 本發(fā)明實施例提供的字符識別方法及裝置,通過對待識別圖像進行放大處理,生 成高像素待識別圖像;對高像素待識別圖像進行二值化處理,濾除高像素待識別圖像中的 干擾因素;采用投影直方圖方法,從二值化圖像中獲取包含待識別字符的圖片;從獲取的 包含待識別字符的圖片中,獲取待識別字符。采用本發(fā)明技術方案,對待識別圖像進行放大 處理,避免后續(xù)直接對待識別圖像進行二值化處理時,生成的二值化處理后的圖像邊緣不 均勻,保證了最終識別結果的準確性;并且,對高像素待識別圖像進行二值化處理,能夠有 效濾除背景圖像等干擾因素,進一步保證了最終識別結果的準確性;采用投影直方圖方法 對二值化圖像進行切分,保證了切分得到的每一個包含待識別字符的圖片中均包含一個完 整字符,從而提高了識別結果的準確率。
【附圖說明】
[0019] 圖1為本發(fā)明實施例中圖像處理系統(tǒng)結構示意圖;
[0020] 圖2為本發(fā)明實施例中字符識別流程圖;
[0021] 圖3a為本發(fā)明實施例中在待識別圖像中建立的直角坐標系;
[0022] 圖3b為本發(fā)明實施例中插值運算示意圖;
[0023] 圖4為本發(fā)明實施例中獲取高像素待識別圖像中每一個像素點的像素值的流程 圖;
[0024] 圖5為本發(fā)明實施例中獲取包含待識別字符的圖片流程圖;
[0025] 圖6a為本發(fā)明實施例中投影直線斜率范圍示意圖;
[0026] 圖化為本發(fā)明實施例中任意一斜率對應的直方圖示意圖;
[0027] 圖7為本發(fā)明實施例中待識別圖像和包含待識別字符的圖片對比示意圖;
[0028] 圖8為本發(fā)明實施例中字符識別裝置結構示意圖。
【具體實施方式】
[0029] 為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明實施例 中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是 本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員 在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0030] 參閱圖1所示,為本發(fā)明實施例中圖像處理系統(tǒng)架構示意圖,該圖像處理系統(tǒng)包 括字符識別裝置,該字符識別裝置用于將獲取到的待識別圖像進行處理,W從待識別圖像 中識別出字符,該字符識別裝置可W具備用戶交互界面,W便于向用戶呈現(xiàn)識別結果;可選 的,上述圖像處理系統(tǒng)中還可W包含圖像采集設備,用于采集待識別圖像,并將采集到的待 識別圖像發(fā)送至字符識別裝置??蛇x的,上述字符識別裝置可W為單獨的設備,也可W為一 個多功能圖像處理設備中的一部分,本發(fā)明實施例W上述字符識別裝置可W為單獨的設備 為例進行介紹。
[0031] 下面結合說明書附圖,對本發(fā)明實施例作進一步詳細描述。
[0032] 參閱圖2所示,本發(fā)明實施例中,字符識別裝置從待識別圖像中進行字符識別的 過程,包括:
[0033] 步驟200 :獲取待識別圖像;其中,該待識別圖像中包含待識別字符。
[0034] 步驟210 :根據(jù)預設的放大比例,對上述待識別圖像進行放大處理,生成放大處理 后的局像素待識別圖像。
[0035] 步驟220 :對上述高像素待識別圖像進行二值化處理,生成二值化圖像。
[0036] 步驟230:采用投影直方圖方法,從上述二值化圖像中獲取包含待識別字符的圖 片。
[0037] 步驟240 :從上述包含待識別字符的圖片中,獲取待識別字符。
[0038] 在步驟200中,圖像采集設備將獲取的待識別圖像發(fā)送至字符識別裝置。其中,圖 像采集設備可W從各個網(wǎng)站的用戶驗證頁面或者選中信息確認頁面等包含驗證碼的頁面 中選取待識別圖像;該待識別圖像即為包含驗證碼的圖像。
[0039] 在步驟210中,字符識別裝置根據(jù)預設的放大比例,確定高像素待識別圖像中每 一個像素點的位置,并采用雙線性插值算法,對上述待識別圖像進行圖像放大處理,獲取高 像素待識別圖像中每一個像素點的像素值,W及根據(jù)上述每一個放大處理后的像素點的像 素值和位置,生成高像素圖像。其中,該預設的放大比例為根據(jù)具體應用場景預先配置的 值;預設的放大比例包括預設的橫向放大比例和預設的縱向放大比例,且橫向放大比例與 縱向放大比例可W相等,也可W不等。
[0040] 本申請實施例中,參閱圖3a所示,圖像處理設備在待識別圖像中建立直角坐標 系,將水平方向作為橫軸,將與橫軸垂直的豎直方向作為縱軸,將待識別圖像的左下角作為 原點。
[0041] 參閱圖4所示,在字符識別裝置生成高像素待識別圖像的過程中,字符識別裝置 基于上述直角坐標系,獲取高像素待識別圖像中每一個像素點的像素值的過程,具體包 括:
[0042] 步驟al :字符識別裝置根據(jù)預設的放大比例,在該待識別圖像中包含的所有原始 像素點中,確定每一個放大處理后的像素點對應的四個原始像素點。
[0043] 步驟曰2 :字符識別裝置確定上述每一個放大處理后的像素點對應的四個原始像 素點中,第一方向的兩對原始像素點,W及第二方向的兩對原始像素點;其中,該第一方向 為水平方向,第二方向為豎直方向,或者,該第一方向為豎直方向,第二方向為水平方向。
[0044] 本發(fā)明實施例中,圖像處理設備將一個放大處理后的像素點對應的四個原始圖像 劃分為兩對,其中,將四個原始像素點中處于同一行或者同一列的兩個原始像素圖像作為 一對;基于此,一個放大處理后的像素點對應的原始像素點即為第一方向上的兩對原始像 素點,W及第二方向上的兩對原始像素點。例如,參閱圖3b所示,若第一方向為橫軸正方 向,第二方向為縱軸正方向,則第一方向的兩對原始像素點分別為Qll和Q 12, W及〇21和Q 22, 第二方向的兩對原始像素點分別為Qll和Q 21,W及Qi2和Q 22。
[0045] 步驟曰3 :字符識別裝置獲取上述每一個放大處理后的像素點在第一方向的兩對 原始像素點分別對應的第一插值,并將獲取的兩個第一插值作為初始插值;或者,獲取所述 每一個放大處理后的像素點在第二方向的兩對原始像素點分別對應的第二插值,并將獲取 的兩個第二插值作為初始插值。
[0046] 本發(fā)明實施例中,字符識別裝置獲取每一個放大處理后的像素點對應的初始插值 時,可W采用W下兩種方式:
[0047] 第一種方式,字符識別裝置獲取每一個放大處理后的像素點在第一方向的兩對原 始像素點分別對應的第一插值,將獲取的兩個插值作為上述每一個放大處理后的像素點對 應的初始插值;例如,參閱圖3b所示,若第一方向為橫軸正方向,第二方向為縱軸正方向, 則第一插值為Qll和Q 12的插值,W及Q 21和Q 22的插值。
[0048] 第二種方式,字符識別裝置獲取每一個放大處理后的像素點在第二方向的兩對原 始像素點分別對應的第二插值,將獲取的兩個插值作為上述每一個放大處理后的像素點對 應的初始插值;例如,參閱圖3b所示,若第一方向為橫軸正方向,第二方向為縱軸正方向, 則第二插值為Qll和Q 21的插值,W及Q 12和Q 22的插值。
[0049] 步驟a4 :字符識別裝置根據(jù)上述每一個放大處理后的像素點對應的初始插值,計 算上述每一個放大處理后的像素點對應的插值,并根據(jù)計算得到的每一個放大處理后的像 素點對應的插值,確定每一個放大處理后的像素點的像素值。
[0050] 本發(fā)明實施例中,高像素待識別圖像中的像素點的像素值(記為Ri)均可W采用 上述雙線性插值算法,根據(jù)原始像素點的像素值獲取。其中,上述任意一 Ri可W采用如下 公式獲取: 陽 05U Ri=QaXqa+QbX 化
[0052] 其中,Ri為插值;Q。為第一原始像素點的像素值;q。為第一原始像素點的權重值, 該權重值根據(jù)預設的放大比例獲?。籕b為第二原始像素點的像素值;Qb為第二原始像素點 的權重值,該權重值根據(jù)預設的放大比例獲取。
[0053] 進一步的,字符識別裝置還可W通過其他圖像放大處理方法對待識別圖像進行放 大處理,如偏微分方程插值,小波逆向插值等,在此不再寶述。
[0054] 采用上述技術方案,字符識別裝置將分辨率較低的待識別圖像轉換為分辨率較高 的高像素待識別圖像,W下對圖像進行處理的各個步驟均是基于上述高像素待識別圖像, 避免后續(xù)直接對待識別圖像進行二值化處理時,生成的二值化處理后的圖像邊緣不均勻, 保證了最終識別結果的準確性。 陽化5] 在步驟220中,字符識別裝置對獲取的高像素待識別圖像進行二值化處理,將彩 色的高像素待識別圖像轉換為只有兩種顏色的二值化圖像。較佳的,該兩種顏色中一種顏 色的像素值為0,另一種顏色的像素值為1。
[0056] 進一步的,將高像素待識別圖像轉換為二值化圖像之前,字符識別裝置將高像素 待識別圖像由彩色圖像轉換為灰度圖像,并將該灰度圖像進行二值化處理,將該低像素圖 像轉換為二值化圖像。其中,字符識別裝置可W采用分量法或者加權平均法,將高像素待識 別圖像由彩色圖像轉換為灰度圖像。
[0057] 可選的,在字符識別裝置將高像素待識別圖像轉換為二值化圖像的過程中,可W 將每一個像素點的像素值與預設闊值進行比較,并根據(jù)比較結果生成二值化圖像;例如,若 存在任意一像素點的像素值大于上述預設闊值,則字符識別裝置確定該任意一像素點二值 化處理后的像素值為1,否則,該任意一像素點二值化處理后的像素值為0。
[0058] 采用上述技術方案,字符識別裝置將高像素待識別圖像進行二值化處理,待識別 圖像中包含的背景圖像等干擾因素將被大幅度削弱,二值化圖像中包含的待識別字符邊緣 也將變得平滑,便于后續(xù)在對待識別字符的識別,提高了識別結果的準確率;并且,字符識 別裝置將彩色的高像素待識別圖像轉化為二值化圖像,壓縮了待識別圖像的信息量,簡化 了后續(xù)字符識別過程的復雜度,提高了圖像處理的效率。
[0059] 在步驟230中,字符識別裝置采用投影直方圖方法,生成多個直方圖,并根據(jù)生成 的直方圖,對二值化圖像進行切分,獲取包含待識別字符的圖片。
[0060] 參閱圖5所示,字符識別裝置采用投影直方圖方法,獲取包含待識別字符的圖片 的過程,包括:
[0061] 步驟bl :字符識別裝置獲取預設投影直線斜率范圍。
[0062] 本發(fā)明實施例中,字符識別裝置可W在本地預先存儲預設投影直線斜率范圍,該 預設投影直線斜率范圍可W根據(jù)具體應用場景預先設置;可選的,預設投影直線斜率范圍 k e (-K,K),參閱圖6a所示;由于斜率和角度存在對應關系,因此,k對應的角度也可W為 一個角度范圍;例如,該預設投影直線斜率范圍對應的角度范圍為-15°~15°。
[0063] 步驟b2:字符識別裝置將二值化圖像中的每一個黑色像素點分別投影在預設投 影直線斜率范圍中的每一個斜率對應的直線上,建立每一個斜率對應的直方圖。
[0064] 本發(fā)明實施例中,字符識別裝置按照預設斜率步長,將黑色像素點依次投影到上 述預設投影直線斜率范圍內的每一個斜率對應的直線上。預設斜率步長可W根據(jù)具體應用 場景預先設置,通常情況下,該預設斜率步長對應的角度值為Γ。
[0065] 基于上述預設斜率步長,字符識別裝置可W自預設投影直線斜率范圍的最小值 起,按照預設斜率步長,生成S條直線;將上述黑色像素點分別投影在該S條直線中的每一 條直線上。
[0066] 可選的,針對二值化圖像中的每一個黑色像素點,字符識別裝置均執(zhí)行如下操作: 分別根據(jù)每一個斜率和該黑色像素點的位置坐標,獲取該黑色像素點分別在每一個斜率對 應的直線上的坐標值。具體的,字符識別裝置獲取上述黑色像素點投影在每一條直線上后 的坐標值;若該黑色像素點的位置坐標為(XI,X2),則在預設投影斜率范圍內,存在任意一 投影直線斜率為k時,上述黑色像素點投影到該任意一投影直線上后的坐標值可W滿足如 下公式:
[0067] a = (1+1〇2χ (Xi+kx2)
[0068] 其中,a為黑色像素點投影到該任意一投影直線上后的坐標值;k為任意一投影直 線斜率;Χ?和X 2為黑色像素點在二維坐標系中的坐標值。
[0069] 字符識別裝置根據(jù)獲取的每一個黑色像素點分別在每一個斜率對應的直線上的 坐標值,建立每一個斜率對應的直方圖。具體的,字符識別裝置針對每一個斜率,均能獲得 所有黑色像素點投影在該斜率對應的直線上的坐標值;字符識別裝置根據(jù)每一個黑色像素 點在該斜率對應的直線上的坐標值,獲取每個預設直方區(qū)間范圍內包含的黑色像素點的數(shù) 目;根據(jù)每個預設直方區(qū)間范圍內包含的黑色像素點的數(shù)目,建立該斜率對應的直方圖; 其中,所述直方圖中每一個直方寬度為該預設直方區(qū)間范圍,該直方高度為該預設直方區(qū) 間范圍內包含的像素點的數(shù)目;上述預設直方區(qū)間范圍為根據(jù)具體應用場景預先設置的 值。參閱圖化所示,為本發(fā)明實施例中任意一斜率對應的直方圖示意圖。
[0070] 進一步的,字符識別裝置建立該斜率對應的直方圖之后,針對任意一斜率,字符識 別裝置根據(jù)得到的各個坐標值,確定所有待識別字符的范圍;具體的,步驟cl :字符識別裝 置自二值化圖像的起始位置為起點,判斷該任意一斜率對應的直方圖中前Ξ個直方(即第 一個直方,第二個直方和第Ξ個直方)高度是否均達到預設闊值,若是,則字符識別裝置確 定該第一個直方的起始位置即為待識別字符的起始位置;否則,沿上述任意一斜率對應的 直線方向,獲取自第二個直方開始的下一個Ξ個連續(xù)直方(即第二個直方,第Ξ個直方和 第四個直方)高度,直至確定存在任意一連續(xù)Ξ個直方的高度達到上述預設闊值,將該任 意一連續(xù)Ξ個直方中第一個直方起始位置確定為待識別字符的起始位置;步驟c2 直方 圖結束位置為起點,采用上述步驟cl中的方式,字符識別裝置確定待識別字符的結束位 置;將待識別字符的起始位置和待識別字符的結束位置之間的區(qū)域,確定為所有待識別字 符的范圍??蛇x的,上述預設闊值為根據(jù)具體應用場景預先設置的值,如該預設闊值可W設 置為3。字符識別裝置可W先執(zhí)行步驟cl,再執(zhí)行步驟c2;字符識別裝置也可W先執(zhí)行步驟 c2,再執(zhí)行步驟cl ;字符識別裝置還可W同時執(zhí)行步驟cl和步驟c2。采用上述技術方案, 字符識別裝置確定所有待識別字符的范圍,W下獲取包含待識別字符的圖片的過程基于該 所有待識別字符的范圍,使獲取的包含待識別字符的圖片更加準確;并且,本發(fā)明實施例先 從二值化圖像中確定所有待識別字符的范圍,再從確定的所有待識別字符的范圍中確定谷 值區(qū)間,相較于直接從二值化圖片中確定谷值區(qū)間時,需要對整個二值化圖像進行掃描處 理,W及濾除更多偽谷值區(qū)間的過程,本發(fā)明實施例技術方案有效減少了信息處理量。
[0071] 步驟b3:字符識別裝置分別對每一個斜率對應的直方圖進行掃描,確定每一個斜 率對應的直方圖的谷值區(qū)間;其中,該谷值區(qū)間用于表征待識別圖像中每相鄰兩個待識別 字符之間間隙的范圍。
[0072] 本發(fā)明實施例中,每一個斜率對應一個直方圖;字符識別裝置分別獲取每一個斜 率對應的直方圖中包含的初始谷值區(qū)間;根據(jù)單個待識別字符最小寬度和單個待識別字符 最大寬度,對獲取的初始谷值區(qū)間進行評估,W去除偽谷值區(qū)間;字符識別裝置根據(jù)去除的 所述偽谷值區(qū)間,W及去除偽谷值區(qū)間后剩余的初始谷值區(qū)間,確定該斜率對應的谷值區(qū) 間(參閱圖化中所示)。
[0073] 可選的,字符識別裝置針對每一個斜率,獲取該斜率對應的直方圖中包含的初始 谷值區(qū)間的過程,具體包括:字符識別裝置從所有待識別字符的范圍中的開始位置起,向結 束位置掃描該斜率對應的直方圖;根據(jù)掃描結果,從直方圖中選取高度低于相鄰兩個直方 (即該選取的直方的前一個直方和后一個直方)高度的區(qū)間;將選取的區(qū)間確定為初始估 值區(qū)間。
[0074] 可選的,字符識別裝置對獲取的初始谷值區(qū)間進行評估,W去除偽谷值區(qū)間的過 程,具體包括:字符識別裝置根據(jù)待識別字符的數(shù)目,確定谷值區(qū)間的數(shù)目,其中,當待識別 字符的數(shù)目為Μ時,谷值區(qū)間的數(shù)目即為M-1 ;并且,字符識別裝置根據(jù)待識別字符的數(shù)目, 確定單個待識別字符最大寬度(記為WmJ和單個待識別字符最小寬度(記為WmJ ;針對任 意一初始谷值區(qū)間,當該任意一初始谷值區(qū)間滿足如下條件中的任意一個時,即確定該任 意一初始谷值區(qū)間為偽谷值區(qū)間,上述條件為:1該任意一初始谷值區(qū)間與上述所有待識 別字符的范圍中的開始位置之間的距離小于單個待識別字符最小寬度;2該任意一初始谷 值區(qū)間與上述所有待識別字符的范圍中的結束位置之間的距離小于單個待識別字符最小 寬度;3任意一初始谷值區(qū)間與其相鄰的任意一個相鄰初始谷值區(qū)間之間的距離小于單個 待識別字符最小寬度;4該任意一初始谷值區(qū)間與上述所有待識別字符的范圍中的開始位 置之間的距離大于單個待識別字符最大寬度;5該任意一初始谷值區(qū)間與上述所有待識別 字符的范圍中的結束位置之間的距離大于單個待識別字符最大寬度;6任意一初始谷值區(qū) 間與其相鄰的任意一個相鄰初始谷值區(qū)間之間的距離大于單個待識別字符最大寬度。
[0075] 進一步的,當滿足條件1和條件2、條件4和條件5時,直接將確定的偽谷值區(qū)間 舍棄,當滿足條件3時,即當存在任意一初始谷值區(qū)間與其相鄰的任意一個相鄰初始谷值 區(qū)間之間的距離小于單個待識別字符最小寬度時,獲取與該任意一相鄰初始谷值區(qū)間,將 該任意一谷值區(qū)間與該任意一相鄰初始谷值區(qū)間進行合并,并將合并后的區(qū)間確定為谷值 區(qū)間;當滿足條件6時,即任意一初始谷值區(qū)間與其相鄰的任意一個相鄰初始谷值區(qū)間之 間的距離大于單個待識別字符最大寬度,若該任意一初始谷值區(qū)間和該任意一個相鄰初始 谷值區(qū)間中確定相對位置關系為,任意一初始谷值區(qū)間位于任意一個相鄰初始谷值區(qū)間之 后,則將任意一初始谷值區(qū)間舍棄,將任意一個相鄰初始谷值區(qū)間確定為谷值區(qū)間,若該任 意一初始谷值區(qū)間和該任意一個相鄰初始谷值區(qū)間中確定相對位置關系為,任意一初始谷 值區(qū)間位于任意一個相鄰初始谷值區(qū)間之前,則將任意一相鄰初始谷值區(qū)間舍棄,將任意 一初始谷值區(qū)間確定為谷值區(qū)間。
[0076] 在上述過程中,單個待識別字符最小寬度和單個待識別字符最大寬度滿足如下公 式: 陽077] Wm…=aX L/M ;W max= b X L/M 陽078] 其中,Wmi。為單個待識別字符最小寬度;WmJ%單個待識別字符最大寬度;L為投影 字符區(qū)間的長度。a和b均為預設系數(shù),根據(jù)具體應用場景預先設置獲得,可選的,a = 0. 6, b = 1. 5。
[0079] 采用上述技術方案,字符識別裝置從初始估值區(qū)間中去除偽谷值區(qū)間,避免了在 對包含待識別字符的圖片的切分過程中,偽谷值區(qū)間造成的切分結果錯誤的問題,提高了 對包含待識別字符的圖片切分的準確度。
[0080] 進一步的,當去除偽谷值區(qū)間之后,得到的谷值區(qū)間數(shù)目不等于M-1時,字符識別 裝置確認針對該斜率的包含待識別字符的圖片獲取失敗。如果每一斜率對應的直方圖下, 去偽谷值區(qū)間后,得到的谷值區(qū)間的數(shù)目均不等于M-1,那么則認為該帶是被字符不能采用 上述方式進行切分,即該字符識別裝置不能識別該類型的字符,只能向系統(tǒng)申請新的字符 進行切分識別。
[00川步驟b4 :字符識別裝置根據(jù)確定的每一個斜率對應的直方圖的谷值區(qū)間,W及預 設的目標函數(shù),從預設投影直線斜率范圍中,選取目標函數(shù)值最小的斜率。
[0082] 本發(fā)明實施例中,字符識別裝置將確定的每一個斜率對應的直方圖的谷值區(qū)間分 別代入預設的目標函數(shù)中,得到每一個斜率對應的目標函數(shù)值;從得到的所有目標函數(shù)值 中選取最小的目標函數(shù)值,并確定該最小的目標函數(shù)值對應的斜率(即為k')。
[0083] 可選的,上述目標函數(shù)滿足如下公式:
[0084]
陽0財其中,C(k)為目標函數(shù);tmk為斜率k對應的直方圖中第Μ個谷值區(qū)間對應的直 方高度;cU為斜率k對應的直方圖中第Μ個谷值區(qū)間長度;μ為d mk對t mk的補償系數(shù),該 μ值可W根據(jù)開發(fā)數(shù)據(jù)集的切分正確率調整獲得,該μ值范圍不做限定,可選的,該μ = 0. 5 ;Μ為待識別字符數(shù)目。
[0086] 可選的,最小的目標函數(shù)值對應的斜率k'滿足如下公式:
[0087]
陽ο蝴其中,C(k)為目標函數(shù);-κ和Κ為預設的投影直線斜率范圍,即k e (-Κ,Κ)。
[0089] 步驟b5 :字符識別裝置根據(jù)選取的斜率,W及選取的斜率對應的谷值區(qū)間,對二 值化圖像進行切分,獲取包含待識別字符的圖片。
[0090] 本發(fā)明實施例中,字符識別裝置W二值化圖像的預設點為中屯、點,將二值化圖像 進行旋轉,旋轉的角度即為選取的斜率k'對應的角度,其中,該預設點通常為二值化圖像左 下角的點;根據(jù)選取的谷值區(qū)間,對旋轉后的二值化圖像進行切分,即W每一個選取的斜率 對應的谷值區(qū)間的中屯、做為一個切分點,對旋轉后的二值化圖像進行切分。參閱圖7所示, 為本發(fā)明實施例中待識別圖像和包含待識別字符的圖片對比示意圖。
[0091] 采用上述技術方案,通過投影直方圖方法對二值化圖像進行切分,避免了切分得 到的包含待識別字符的圖片中包含多個字符或者不完整字符的問題,保證了切分得到的每 一個包含待識別字符的圖片中均包含一個完整字符,進而保證了后續(xù)對包含待識別字符的 圖片中包含的待識別字符進行識別的準確率。
[0092] 進一步的,字符識別裝置獲取包含待識別字符的圖片之后,將獲取的包含待識別 字符的圖片進行歸一化處理。采用該技術方案,將切分后尺寸不一致的包含待識別字符的 圖片歸一化為尺寸大小一致的圖片,W及將包含待識別字符的圖片中包含的待識別字符歸 一化為尺寸大小一致的待識別字符,便于后續(xù)對包含待識別字符的圖片中包含的待識別字 符的識別。
[0093] 步驟240中,字符識別裝置可W通過本地預存的多層人工神經網(wǎng)絡,從包含待識 別字符的圖片中,獲取待識別字符;其中,該多層人工神經網(wǎng)絡可W根據(jù)訓練樣本學習獲 得。
[0094] 可選的,字符識別裝置將包含待識別字符的圖片輸入多層人工神經網(wǎng)絡;其中,該 包含待識別字符的圖片的數(shù)目為Μ個,該Μ為大于0的正整數(shù);針對上述Μ個包含待識別字 符的圖片中的每一個包含待識別字符的圖片,均執(zhí)行如下操作:獲取多層人工神經網(wǎng)絡模 型輸出的該包含待識別字符的圖片對應的識別結果;可選的,字符識別裝置可W對該包含 待識別字符的圖片進行Υ次識別,當該Υ次識別結果中存在一次識別結果與標準字符識別 結果相同,即表示對該包含待識別字符的圖片識別成功。 陽0巧]采用上述技術方案,通過多層人工神經網(wǎng)絡模型對包含待識別字符的圖片進行識 另IJ,相較于現(xiàn)有技術中的Κ近鄰技術,本發(fā)明實施例的識別結果準確率更高。
[0096] 進一步的,字符識別裝置獲取多層人工神經網(wǎng)絡模型輸出的該包含待識別字符的 圖片對應的識別結果之后,將獲取的識別結果與該包含待識別字符的圖片對應的標準字符 識別結果進行比較;根據(jù)比較結果,確定待識別字符的正確率;并將該正確率確定為該待 識別字符的安全性指標。
[0097] 具體的,當包含待識別字符的圖片的數(shù)目為Μ個,識別成功的待識別字符數(shù)目為X 個,則待識別字符的正確率(記為t)為:
[0098] t = X/MX100%
[0099] 其中,t為待識別字符的正確率;X為識別成功的待識別字符數(shù)目;Μ為包含待識別 字符的圖片的數(shù)目。 陽100] 采用上述技術方案,字符識別裝置能夠根據(jù)識別結果確定待識別字符的安全性指 標,確定待識別字符的安全性;網(wǎng)站能夠根據(jù)上述安全性指標對自身的驗證碼進行改進,從 而提高網(wǎng)站驗證碼的安全性。 陽101] 基于上述技術方案,參閱圖8所示,本發(fā)明實施例提供一種字符識別裝置,包括圖 像獲取單元80,圖像處理單元81,圖片獲取單元82,字符識別單元83,其中:
[0102] 圖像獲取單元80,用于獲取待識別圖像;其中,所述待識別圖像中包含待識別字 符; 陽103] 圖像處理單元81,用于根據(jù)預設的放大比例,對所述待識別圖像進行放大處理,生 成放大處理后的高像素待識別圖像;
[0104] 圖像處理單元81,還用于對所述高像素待識別圖像進行二值化處理,生成二值化 圖像;其中,所述二值化圖像中僅包含兩種顏色;
[01化]圖片獲取單元82,用于采用投影直方圖方法,從所述二值化圖像中獲取包含待識 別字符的圖片; 陽106] 字符識別單元83,用于從所述包含待識別字符的圖片中,獲取待識別字符。
[0107] 進一步的,還包括灰度圖像轉換單元84,用于:對所述高像素待識別圖像進行二 值化處理之前,將所述高像素待識別圖像轉換為灰度圖像。
[0108] 可選的,所述圖片獲取單元82,具體用于:獲取預設投影直線斜率范圍;將所述二 值化圖像中的每一個黑色像素點分別投影在所述預設投影直線斜率范圍中的每一個斜率 對應的直線上,建立每一個斜率對應的直方圖;分別對每一個斜率對應的直方圖進行掃描, 確定每一個斜率對應的直方圖的谷值區(qū)間;其中,所述谷值區(qū)間用于表征所述待識別圖像 中每相鄰兩個待識別字符之間間隙的范圍;根據(jù)確定的每一個斜率對應的直方圖的谷值區(qū) 間的個數(shù),W及預設的目標函數(shù),從所述預設投影直線斜率范圍中,選取目標函數(shù)值最小的 斜率;對選取斜率對應的直方圖,根據(jù)其對應的谷值區(qū)間進行切分,獲取包含待識別字符的 圖片。
[0109] 可選的,所述圖片獲取單元82將所述二值化圖像中的每一個黑色像素點分別投 影在所述預設投影直線斜率范圍中的每一個斜率對應的直線上,建立每一個斜率對應的直 方圖,具體包括:針對所述二值化圖像中的每一個黑色像素點,均執(zhí)行如下操作:按照預設 斜率步長,將該黑色像素點依次投影到所述預設投影直線斜率范圍內的每一個斜率對應的 直線上;分別根據(jù)所述每一個斜率和該黑色像素點的位置坐標,獲取該黑色像素點分別在 每一個斜率對應的直線上的坐標值;根據(jù)獲取的所述每一個黑色像素點分別在每一個斜率 對應的直線上的坐標值,建立每一個斜率對應的直方圖。
[0110] 可選的,所述圖片獲取單元82根據(jù)獲取的所述每一個黑色像素點在每一個斜率 對應的直線上的坐標值,建立每一個斜率對應的直方圖,具體包括:針對每一個斜率對應的 直線,均執(zhí)行如下操作:根據(jù)每一個黑色像素點在該斜率對應的直線上的坐標值,獲取每個 預設直方區(qū)間范圍內包含的黑色像素點的數(shù)目;根據(jù)每個預設直方區(qū)間范圍內包含的黑色 像素點的數(shù)目,建立該斜率對應的直方圖;其中,所述直方圖中每一個直方寬度為該預設直 方區(qū)間范圍,該直方高度為該預設直方區(qū)間范圍內包含的像素點的數(shù)目。 陽111] 可選的,所述圖片獲取單元82分別對每一個斜率對應的直方圖進行掃描,確定每 一個斜率對應的直方圖的谷值區(qū)間,具體包括:獲取所述待識別字符的數(shù)目;根據(jù)待識別 字符的數(shù)目,確定單個待識別字符最小寬度和單個待識別字符最大寬度;針對每一個斜率 對應的直方圖,均執(zhí)行如下操作:根據(jù)每一個預設直方區(qū)間范圍對應的直方高度,從該斜率 對應的直方圖中,選取所述直方高度低于相鄰兩側直方高度的區(qū)間,將選取的區(qū)間確定為 初始谷值區(qū)間;根據(jù)所述單個待識別字符最小寬度和單個待識別字符最大寬度,從所述初 始谷值區(qū)間中,去除偽谷值區(qū)間;根據(jù)去除的所述偽谷值區(qū)間,W及去除所述偽谷值區(qū)間 后,剩余的初始谷值區(qū)間,確定該斜率對應的直方圖的谷值區(qū)間。
[0112] 可選的,所述字符識別單元83,具體用于:將所述包含待識別字符的圖片輸入多 層人工神經網(wǎng)絡;其中,所述包含待識別字符的圖片的數(shù)目為Μ個,所述Μ為大于0的正整 數(shù);針對所述Μ個包含待識別字符的圖片中的每一個包含待識別字符的圖片,均執(zhí)行如下 操作:獲取所述多層人工神經網(wǎng)絡模型輸出的該包含待識別字符的圖片對應的識別結果。
[0113] 進一步的,還包括安全性指標確定單元85,用于:獲取所述多層人工神經網(wǎng)絡模 型輸出的該包含待識別字符的圖片對應的識別結果之后,將獲取的識別結果與該包含待識 別字符的圖片對應的標準字符識別結果進行比較;根據(jù)比較結果,確定待識別字符的正確 率;并將所述正確率確定為所述待識別字符的安全性指標。
[0114] 綜上所述,本發(fā)明實施例中,獲取待識別圖像;其中,該待識別圖像中包含待識別 字符;根據(jù)預設的放大比例,對上述待識別圖像進行放大處理,生成放大處理后的高像素待 識別圖像;對上述高像素待識別圖像進行二值化處理,生成二值化圖像;其中,該二值化圖 像中僅包含兩種顏色;采用投影直方圖方法,從上述二值化圖像中獲取包含待識別字符的 圖片;將上述包含待識別字符的圖片輸入多層人工神經網(wǎng)絡模型,獲取該多層人工神經網(wǎng) 絡模型輸出的待識別字符。采用本發(fā)明技術方案,對待識別圖像進行放大處理,避免后續(xù)直 接對待識別圖像進行二值化處理時,生成的二值化處理后的圖像邊緣不均勻,保證了最終 識別結果的準確性;并且,對高像素待識別圖像進行二值化處理,能夠有效濾除背景圖像等 干擾因素,進一步保證了最終識別結果的準確性;采用投影直方圖方法對二值化圖像進行 切分,保證了切分得到的每一個包含待識別字符的圖片中均包含一個完整字符;相較于現(xiàn) 有技術的Κ近鄰技術,通過多層人工神經網(wǎng)絡模型對包含待識別字符的圖片進行識別,識 別結果準確率更高。
[0115] W上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的單元可 W是或者也可W不是物理上分開的,作為單元顯示的部件可W是或者也可W不是物理單 元,即可W位于一個地方,或者也可W分布到多個網(wǎng)絡單元上。可W根據(jù)實際的需要選擇其 中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。本領域普通技術人員在不付出創(chuàng)造性 的勞動的情況下,即可W理解并實施。
[0116] 通過W上的實施方式的描述,本領域的技術人員可W清楚地了解到各實施方式可 借助軟件加必需的通用硬件平臺的方式來實現(xiàn),當然也可W通過硬件?;谶\樣的理解,上 述技術方案本質上或者說對現(xiàn)有技術做出貢獻的部分可軟件產品的形式體現(xiàn)出來,該 計算機軟件產品可W存儲在計算機可讀存儲介質中,如R0M/RAM、磁碟、光盤等,包括若干指 令用W使得一臺計算機設備(可W是個人計算機,服務器,或者網(wǎng)絡設備等)執(zhí)行各個實施 例或者實施例的某些部分所述的方法。
[0117] 最后應說明的是:W上實施例僅用W說明本發(fā)明實施例的技術方案,而非對其限 審IJ ;盡管參照前述實施例對本發(fā)明實施例進行了詳細的說明,本領域的普通技術人員應當 理解:其依然可W對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征 進行等同替換;而運些修改或者替換,并不使相應技術方案的本質脫離本發(fā)明實施例各實 施例技術方案的精神和范圍。
【主權項】
1. 一種字符識別方法,其特征在于,包括: 獲取待識別圖像;其中,所述待識別圖像中包含待識別字符; 根據(jù)預設的放大比例,對所述待識別圖像進行放大處理,生成放大處理后的高像素待 識別圖像; 對所述高像素待識別圖像進行二值化處理,生成二值化圖像; 采用投影直方圖方法,從所述二值化圖像中獲取包含待識別字符的圖片; 從所述包含待識別字符的圖片中,獲取待識別字符。2. 根據(jù)權利要求1所述的方法,其特征在于,采用投影直方圖方法,從二值化圖像中獲 取包含待識別字符的圖片,具體包括: 獲取預設投影直線斜率范圍; 將所述二值化圖像中的每一個黑色像素點分別投影在所述預設投影直線斜率范圍中 的每一個斜率對應的直線上,建立每一個斜率對應的直方圖; 分別對每一個斜率對應的直方圖進行掃描,確定每一個斜率對應的直方圖的谷值區(qū) 間;其中,所述谷值區(qū)間用于表征所述待識別圖像中每相鄰兩個待識別字符之間間隙的范 圍; 根據(jù)確定的每一個斜率對應的直方圖的谷值區(qū)間,以及預設的目標函數(shù),從所述預設 投影直線斜率范圍中,選取目標函數(shù)值最小的斜率; 根據(jù)選取的斜率,以及所述選取的斜率對應的谷值區(qū)間,對所述二值化圖像進行切分, 獲取包含待識別字符的圖片。3. 如權利要求2所述的方法,其特征在于,將所述二值化圖像中的每一個黑色像素點 分別投影在所述預設投影直線斜率范圍中的每一個斜率對應的直線上,建立每一個斜率對 應的直方圖,具體包括: 針對所述二值化圖像中的每一個黑色像素點,均執(zhí)行如下操作:按照預設斜率步長,將 該黑色像素點依次投影到所述預設投影直線斜率范圍內的每一個斜率對應的直線上;分別 根據(jù)所述每一個斜率和該黑色像素點的位置坐標,獲取該黑色像素點分別在每一個斜率對 應的直線上的坐標值; 根據(jù)獲取的所述每一個黑色像素點分別在每一個斜率對應的直線上的坐標值,建立每 一個斜率對應的直方圖。4. 根據(jù)權利要求3所述的方法,其特征在于,根據(jù)獲取的所述每一個黑色像素點在每 一個斜率對應的直線上的坐標值,建立每一個斜率對應的直方圖,具體包括: 針對每一個斜率對應的直線,均執(zhí)行如下操作: 根據(jù)預設區(qū)間,將該斜率對應的直線離散化; 根據(jù)每一個黑色像素點在該斜率對應的直線上的坐標值,獲取每個預設區(qū)間內包含的 黑色像素點的數(shù)目; 根據(jù)每個預設區(qū)間內包含的黑色像素點的數(shù)目,建立該斜率對應的直方圖;其中,所述 直方圖中每一個直方的直方寬度為該預設直方區(qū)間長度,直方高度為該預設直方區(qū)間范圍 內包含的像素點的數(shù)目。5. 根據(jù)權利要求2-4任一項所述的方法,其特征在于,分別對每一個斜率對應的直方 圖進行掃描,確定每一個斜率對應的直方圖的谷值區(qū)間,具體包括: 獲取所述待識別字符的數(shù)目; 根據(jù)待識別字符的數(shù)目,確定單個待識別字符最小寬度和單個待識別字符最大寬度; 針對每一個斜率對應的直方圖,均執(zhí)行如下操作: 根據(jù)每一個預設區(qū)間對應的直方高度,從該斜率對應的直方圖中,選取所述直方高度 低于相鄰兩側直方高度的區(qū)間,將選取的區(qū)間確定為初始谷值區(qū)間; 根據(jù)所述單個待識別字符最小寬度和單個待識別字符最大寬度,從所述初始谷值區(qū)間 中,去除偽谷值區(qū)間;根據(jù)去除的所述偽谷值區(qū)間,以及去除所述偽谷值區(qū)間后,剩余的初 始谷值區(qū)間,確定該斜率對應的直方圖的谷值區(qū)間。6. 根據(jù)權利要求1所述的方法,其特征在于,從所述包含待識別字符的圖片中,獲取待 識別字符,具體包括: 將所述包含待識別字符的圖片輸入多層人工神經網(wǎng)絡;其中,所述包含待識別字符的 圖片的數(shù)目為Μ個,所述Μ為大于0的正整數(shù); 針對所述Μ個包含待識別字符的圖片中的每一個包含待識別字符的圖片,均執(zhí)行如下 操作:獲取所述多層人工神經網(wǎng)絡模型輸出的該包含待識別字符的圖片對應的識別結果。7. 根據(jù)權利要求6所述的方法,其特征在于,獲取所述多層人工神經網(wǎng)絡模型輸出的 該包含待識別字符的圖片對應的識別結果之后,所述方法還包括: 將獲取的識別結果與該包含待識別字符的圖片對應的標準字符識別結果進行比較; 根據(jù)比較結果,確定待識別字符的正確率;并 將所述正確率確定為所述待識別字符的安全性指標。8. -種字符識別裝置,其特征在于,包括: 圖像獲取單元,用于獲取待識別圖像;其中,所述待識別圖像中包含待識別字符; 圖像處理單元,用于根據(jù)預設的放大比例,對所述待識別圖像進行放大處理,生成放大 處理后的高像素待識別圖像,且所述圖像處理單元用于對所述高像素待識別圖像進行二值 化處理,生成二值化圖像; 圖片獲取單元,用于采用投影直方圖方法,從所述二值化圖像中獲取包含待識別字符 的圖片; 字符識別單元,用于從所述包含待識別字符的圖片中,獲取待識別字符。9. 根據(jù)權利要求8所述的裝置,其特征在于,所述圖片獲取單元,具體用于: 獲取預設投影直線斜率范圍; 將所述二值化圖像中的每一個黑色像素點分別投影在所述預設投影直線斜率范圍中 的每一個斜率對應的直線上,建立每一個斜率對應的直方圖; 分別對每一個斜率對應的直方圖進行掃描,確定每一個斜率對應的直方圖的谷值區(qū) 間;其中,所述谷值區(qū)間用于表征所述待識別圖像中每相鄰兩個待識別字符之間間隙的范 圍; 根據(jù)確定的每一個斜率對應的直方圖的谷值區(qū)間的個數(shù),以及預設的目標函數(shù),從所 述預設投影直線斜率范圍中,選取目標函數(shù)值最小的斜率; 對選取斜率對應的直方圖,根據(jù)其對應的谷值區(qū)間進行切分,獲取包含待識別字符的 圖片。10. 如權利要求9所述的裝置,其特征在于,所述圖片獲取單元將所述二值化圖像中的 每一個黑色像素點分別投影在所述預設投影直線斜率范圍中的每一個斜率對應的直線上, 建立每一個斜率對應的直方圖,具體包括: 針對所述二值化圖像中的每一個黑色像素點,均執(zhí)行如下操作:按照預設斜率步長,將 該黑色像素點依次投影到所述預設投影直線斜率范圍內的每一個斜率對應的直線上;分別 根據(jù)所述每一個斜率和該黑色像素點的位置坐標,獲取該黑色像素點分別在每一個斜率對 應的直線上的坐標值; 根據(jù)獲取的所述每一個黑色像素點分別在每一個斜率對應的直線上的坐標值,建立每 一個斜率對應的直方圖。11. 根據(jù)權利要求9-10任一項所述的裝置,其特征在于,所述圖片獲取單元分別對每 一個斜率對應的直方圖進行掃描,確定每一個斜率對應的直方圖的谷值區(qū)間,具體包括: 獲取所述待識別字符的數(shù)目; 根據(jù)待識別字符的數(shù)目,確定單個待識別字符最小寬度和單個待識別字符最大寬度; 針對每一個斜率對應的直方圖,均執(zhí)行如下操作:根據(jù)每一個預設直方區(qū)間范圍對應 的直方高度,從該斜率對應的直方圖中,選取所述直方高度低于相鄰兩側直方高度的區(qū)間, 將選取的區(qū)間確定為初始谷值區(qū)間;根據(jù)所述單個待識別字符最小寬度和單個待識別字符 最大寬度,從所述初始谷值區(qū)間中,去除偽谷值區(qū)間;根據(jù)去除的所述偽谷值區(qū)間,以及去 除所述偽谷值區(qū)間后,剩余的初始谷值區(qū)間,確定該斜率對應的直方圖的谷值區(qū)間。12. 根據(jù)權利要求8所述的裝置,其特征在于,所述字符獲取單元,具體用于: 將所述包含待識別字符的圖片輸入多層人工神經網(wǎng)絡;其中,所述包含待識別字符的 圖片的數(shù)目為Μ個,所述Μ為大于0的正整數(shù); 針對所述Μ個包含待識別字符的圖片中的每一個包含待識別字符的圖片,均執(zhí)行如下 操作:獲取所述多層人工神經網(wǎng)絡模型輸出的該包含待識別字符的圖片對應的識別結果。13. 根據(jù)權利要求12所述的裝置,其特征在于,還包括安全性指標確定單元,用于: 獲取所述多層人工神經網(wǎng)絡模型輸出的該包含待識別字符的圖片對應的識別結果之 后,將獲取的識別結果與該包含待識別字符的圖片對應的標準字符識別結果進行比較;根 據(jù)比較結果,確定待識別字符的正確率;并將所述正確率確定為所述待識別字符的安全性 指標。
【文檔編號】G06K9/68GK105989377SQ201510374610
【公開日】2016年10月5日
【申請日】2015年6月30日
【發(fā)明人】王育軍
【申請人】樂視致新電子科技(天津)有限公司