本發(fā)明涉及圖像分割領域,具體而言,涉及一種基于數(shù)學運算驗證碼圖像的分割方法和裝置。
背景技術:
圖像分割是圖像處理、圖像識別中的一項關鍵技術,但由于圖像差異性太大,很難找到一種方法適用于所有的圖像分割,也沒有制定出判斷分割算法好壞的標準。
現(xiàn)有的圖像分割方法主要有基于密度投影的分割方法、基于距離的分割方法和基于形態(tài)學腐蝕擴張的分割方法。
采用基于密度投影的分割方法時,需要對圖像數(shù)據(jù)進行二值化預處理,圖像二值化處理的作用是將三通道圖片(由紅黃藍三基色組成)轉(zhuǎn)換為黑白單色圖片(由0和1組成的單通道圖片),因為圖片的差異性,采取的二值化方法也不同,主要的二值化方法為閾值法、hsv色彩提取法,基于密度投影的分割方法采用水平密度投影法進行文字切割,該方法沿水平方向計算垂直方向像素和,假設背景為白色,文字為黑色,那么垂直方向像素和波谷與波谷之間即為文字,該方法的缺陷在于對二值化要求高,不適用左右結構字符,并且要求單個文字左右兩部分空白不超過一個像素的圖片。
采用基于距離的分割方法時,也需要對圖像數(shù)據(jù)進行二值化預處理,針對二值化后的圖片,采用距離切割方法進行文字切割,距離切割方法是一種根據(jù)文字在圖片中的位置進行切割的方法,該方法的缺陷在于只適用于文字大小和位置固定的圖片。
采用基于形態(tài)學腐蝕擴張的分割方法時,也需要對圖像數(shù)據(jù)進行二值化預處理,針對二值化后的圖片,采用形態(tài)學腐蝕擴張法進行圖像分割。該方法的缺陷在于將二值化后的圖片腐蝕擴張后,需確保單個字粘連(即單個字只有一個等密度曲線),相鄰文字間不粘連,因此只適用于單張圖片分割。
針對上述有技術中對數(shù)學運算驗證碼圖像進行分割時需對圖像進行二值化處理、去噪以及對圖像中字符的位置有限制而帶來的分割復雜和適用性差的問題,目前尚未提出有效的解決方案。
技術實現(xiàn)要素:
本發(fā)明提供一種基于數(shù)學運算驗證碼圖像的分割方法和裝置,以至少解決現(xiàn)有技術中對數(shù)學運算驗證碼圖像進行分割時需對圖像進行二值化處理、去噪以及對圖像中字符的位置有限制而帶來的分割復雜和適用性差的技術問題。
根據(jù)本發(fā)明實施例的一個方面,提供一種基于數(shù)學運算驗證碼圖像的分割方法,包括:獲取待處理的數(shù)學運算驗證碼圖像;將待處理的數(shù)學運算驗證碼圖像與預構建的字符模板匹配,得到匹配結果;其中,字符模板包括數(shù)字模板和符號模板;根據(jù)匹配結果對待處理的數(shù)學運算驗證碼圖像進行分割。
優(yōu)選的是,獲取待處理的數(shù)學運算驗證碼圖像之后,還包括:將待處理的數(shù)學運算驗證碼圖像進行灰度化處理。
在上述任一方案中優(yōu)選的是,將待處理的數(shù)學運算驗證碼圖像與預構建的字符模板匹配,包括:將字符模板的左上角像素沿著待處理的數(shù)學運算驗證碼圖像的每一個像素對齊,計算像素相似度,若像素相似度大于等于預設匹配閾值,則匹配成功,否則匹配失敗。
在上述任一方案中優(yōu)選的是,預設匹配閾值的取值范圍為大于或等于0.7。
在上述任一方案中優(yōu)選的是,數(shù)字模板包括0-9的阿拉伯數(shù)字表示方式和漢字表示方式,符號模板包括加減乘除的數(shù)學符號表示形式和漢字表示形式。
根據(jù)本發(fā)明實施例的另一方面,還提供了一種基于數(shù)學運算驗證碼圖像的分割裝置,包括:獲取模塊,用于獲取待處理的數(shù)學運算驗證碼圖像;匹配模塊,用于將待處理的數(shù)學運算驗證碼圖像與預構建的字符模板匹配,得到匹配結果;其中,字符模板包括數(shù)字模板和符號模板;分割模塊,用于根據(jù)匹配結果對待處理的數(shù)學運算驗證碼圖像進行分割。
優(yōu)選的是,裝置還包括:處理模塊,用于在獲取模塊獲取待處理的數(shù)學運算驗證碼圖像之后,將待處理的數(shù)學運算驗證碼圖像進行灰度化處理。
在上述任一方案中優(yōu)選的是,匹配模塊用于將字符模板的左上角像素沿著待處理的數(shù)學運算驗證碼圖像的每一個像素對齊,計算像素相似度,若像素相似度大于等于預設匹配閾值,則匹配成功,否則匹配失敗。
在上述任一方案中優(yōu)選的是,預設匹配閾值的取值范圍為大于或等于0.7。
在上述任一方案中優(yōu)選的是,數(shù)字模板包括0-9的阿拉伯數(shù)字表示方式和漢字表示方式,符號模板包括加減乘除的數(shù)學符號表示形式和漢字表示形式。
按照本發(fā)明的基于數(shù)學運算驗證碼圖像的分割方法和裝置,通過獲取待處理的數(shù)學運算驗證碼圖像,將待處理的數(shù)學運算驗證碼圖像與預構建的字符模板匹配,得到匹配結果;其中,字符模板包括數(shù)字模板和符號模板,根據(jù)匹配結果對待處理的數(shù)學運算驗證碼圖像進行分割,達到了對數(shù)學運算驗證碼圖像進行分割的目的,無需二值化和去噪等困難的圖像預處理過程,并且對數(shù)學運算驗證碼圖像的字符位置沒有限制,可實現(xiàn)切割的同時識別,具有速度快、實用性強的特點,進而解決了現(xiàn)有技術中對數(shù)學運算驗證碼圖像進行分割時需對圖像進行二值化處理、去噪以及對圖像中字符的位置有限制而帶來的分割復雜和適用性差的技術問題。
附圖說明
此處所說明的附圖用來提供對本發(fā)明的進一步理解,構成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構成對本發(fā)明的不當限定。在附圖中:
圖1是根據(jù)本發(fā)明實施例1的基于數(shù)學運算驗證碼圖像的分割方法的示意圖;
圖2是根據(jù)本發(fā)明實施例1的數(shù)學運算驗證碼圖像;
圖2(a)是根據(jù)本發(fā)明實施例1的對圖2的數(shù)學運算驗證碼圖像進行分割后的第一個字符示意圖;
圖2(b)是根據(jù)本發(fā)明實施例1的對圖2的數(shù)學運算驗證碼圖像進行分割后的第一個字符示意圖;
圖2(c)是根據(jù)本發(fā)明實施例1的對圖2的數(shù)學運算驗證碼圖像進行分割后的第一個字符示意圖;以及
圖3是根據(jù)本發(fā)明實施例2的基于數(shù)學運算驗證碼圖像的分割裝置的示意圖。
具體實施方式
為了使本技術領域的人員更好地理解本發(fā)明方案,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分的實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應當屬于本發(fā)明保護的范圍。
需要說明的是,本發(fā)明的說明書和權利要求書及上述附圖中的術語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應該理解這樣使用的數(shù)據(jù)在適當情況下可以互換,以便這里描述的本發(fā)明的實施例能夠以除了在這里圖示或描述的那些以外的順序?qū)嵤?。此外,術語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產(chǎn)品或設備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或?qū)τ谶@些過程、方法、產(chǎn)品或設備固有的其它步驟或單元。
實施例1
根據(jù)本發(fā)明實施例,提供了一種基于數(shù)學運算驗證碼圖像的分割方法的方法實施例,需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的計算機系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
圖1是根據(jù)本發(fā)明實施例的基于數(shù)學運算驗證碼圖像的分割方法,如圖1所示,該方法包括如下步驟:
步驟S102,獲取待處理的數(shù)學運算驗證碼圖像。
具體的,待處理的數(shù)學運算驗證碼圖像可能具有背景色以及其他的噪音,如圖2所示,圖2為一種數(shù)學運算驗證碼圖像,此處需要說明的是,由于附圖要求,圖2中給出的數(shù)學運算驗證碼圖像是沒有背景色的一種例子,實際情況中應用的數(shù)學運算驗證碼圖像可能會有至少一種背景色。
步驟S104,將待處理的數(shù)學運算驗證碼圖像與預構建的字符模板匹配,得到匹配結果;其中,字符模板包括數(shù)字模板和符號模板。
具體的,針對于數(shù)學運算驗證碼圖像來說,數(shù)學運算中使用的字符是有限的,因此字符模板也是有限的,并不會太多,匹配過程不會特別復雜,此處需要說明的是,由于待處理的數(shù)學運算驗證碼圖像中可能包括多個字符,本發(fā)明中可以對多個字符依次進行匹配,也可以同時進行匹配,采用同時匹配的方法能夠進一步加快匹配速度。
步驟S106,根據(jù)匹配結果對待處理的數(shù)學運算驗證碼圖像進行分割。
具體的,匹配結束后,可以按照字符在待處理的數(shù)學運算驗證碼圖像中的順序取出字符,完成分割。
在本實施例中,通過獲取待處理的數(shù)學運算驗證碼圖像,將待處理的數(shù)學運算驗證碼圖像與預構建的字符模板匹配,得到匹配結果;其中,字符模板包括數(shù)字模板和符號模板,根據(jù)匹配結果對待處理的數(shù)學運算驗證碼圖像進行分割,達到了對數(shù)學運算驗證碼圖像進行分割的目的,無需二值化和去噪等困難的圖像預處理過程,并且對數(shù)學運算驗證碼圖像的字符位置沒有限制,可實現(xiàn)切割的同時識別,具有速度快、實用性強的特點,進而解決了現(xiàn)有技術中對數(shù)學運算驗證碼圖像進行分割時需對圖像進行二值化處理、去噪以及對圖像中字符的位置有限制而帶來的分割復雜和適用性差的技術問題。
在一可選的實施例中,步驟S102中在獲取待處理的數(shù)學運算驗證碼圖像之后,還包括:將待處理的數(shù)學運算驗證碼圖像進行灰度化處理。
具體的,待處理的數(shù)學運算驗證碼圖像的背景色以及噪音可能包括多中顏色,造成噪音嚴重,為了去除噪音,加快匹配速度,可以將待處理的數(shù)學運算驗證碼圖像進行灰度化處理,將背景色、噪音以及字符轉(zhuǎn)化為灰度。
在一可選的實施例中,數(shù)字模板包括0-9的阿拉伯數(shù)字表示方式和漢字表示方式,符號模板包括加減乘除的數(shù)學符號表示形式和漢字表示形式。
具體的,由于數(shù)學運算涉及的字符量很少,因此字符模板相應的數(shù)量也不大,字符模板主要包括數(shù)字模板和符號模板,數(shù)字模板進一步可以分為0-9的阿拉伯表示方式的數(shù)字模板和漢字表示方式的數(shù)字模板,具體可以包括“0”、“1”、“2”、“3”、“4”、“5”、“6”、“7”、“8”、“9”以及“零”、“壹”、“貳”、“叁”、“肆”、“伍”、“陸”、“柒”、“捌”、“玖”,符號模板可以進一步分為加減乘除的數(shù)學符號表示形式和漢字表示形式,具體可以包括“+”、“-”、“×”、“÷”以及“加”、“減”、“乘”、“除”,上述的數(shù)字模板和符號模板共計28個模板,其中針對每個模板,可以通過改變字體等因素再分出4個模板,總共112個模板。
具體的,符號模板需要提前準備好,可以根據(jù)需求從圖片提前分割出字符模板,也可以采用圖片生成器生成各種大小、各種旋轉(zhuǎn)角度的字符模板。
在一可選的實施例中,步驟S104中將待處理的數(shù)學運算驗證碼圖像與預構建的字符模板匹配,包括:將字符模板的左上角像素沿著待處理的數(shù)學運算驗證碼圖像的每一個像素對齊,計算像素相似度,若像素相似度大于等于預設匹配閾值,則匹配成功,否則匹配失敗。
具體的,基于提前準備好的字符模板,本發(fā)明中進行匹配的過程不需要對待處理的數(shù)學運算驗證碼圖像進行二值化以及去噪操作,在一種可選的實施例中,可以將灰度化后的待處理的數(shù)學運算驗證碼圖像與28個字符模板分別進行匹配,將字符模板的左上角像素沿著待處理的數(shù)學運算驗證碼圖像的每一個像素對齊,計算像素相似度,在匹配成功后,記錄相應的位置。
在一可選的實施例中,如圖2所示,采用本發(fā)明實施例對圖2的數(shù)學運算驗證碼圖像進行分割,首先需要采用28個模板與該圖像進行匹配,可以依次或者同時將圖像中的所有字符進行匹配,每匹配成功一個字符,可以記錄該字符的位置以及該字符對應的字符模板,匹配完成后,可以按照字符在圖像中的順序?qū)⒆址〕?,圖2(a)、2(b)和2(c)依次為圖2中數(shù)學運算驗證碼圖像的第1個字符、第2個字符和第3個字符。
在一可選的實施例中,預設匹配閾值的取值范圍為大于或等于0.7。
具體的,當預設匹配閾值取值0.7時,若像素相似度大于等于0.7,則匹配成功,否則匹配失敗。
實施例2
根據(jù)本實施例,提供一種基于數(shù)學運算驗證碼圖像的分割裝置的產(chǎn)品實施例,圖3是根據(jù)本發(fā)明實施例的基于數(shù)學運算驗證碼圖像的分割裝置,如圖3所示,該裝置包括獲取模塊、匹配模塊和分割模塊。
其中,獲取模塊,用于獲取待處理的數(shù)學運算驗證碼圖像;匹配模塊,用于將待處理的數(shù)學運算驗證碼圖像與預構建的字符模板匹配,得到匹配結果;其中,字符模板包括數(shù)字模板和符號模板;分割模塊,用于根據(jù)匹配結果對待處理的數(shù)學運算驗證碼圖像進行分割。
在本實施例中,獲取模塊通過獲取待處理的數(shù)學運算驗證碼圖像,匹配模塊將待處理的數(shù)學運算驗證碼圖像與預構建的字符模板匹配,得到匹配結果;其中,字符模板包括數(shù)字模板和符號模板,分割模塊根據(jù)匹配結果對待處理的數(shù)學運算驗證碼圖像進行分割,達到了對數(shù)學運算驗證碼圖像進行分割的目的,無需二值化和去噪等困難的圖像預處理過程,并且對數(shù)學運算驗證碼圖像的字符位置沒有限制,可實現(xiàn)切割的同時識別,具有速度快、實用性強的特點,進而解決了現(xiàn)有技術中對數(shù)學運算驗證碼圖像進行分割時需對圖像進行二值化處理、去噪以及對圖像中字符的位置有限制而帶來的分割復雜和適用性差的技術問題。
在一可選的實施例中,裝置還包括:處理模塊,用于在獲取模塊獲取待處理的數(shù)學運算驗證碼圖像之后,將待處理的數(shù)學運算驗證碼圖像進行灰度化處理。
在一可選的實施例中,數(shù)字模板包括0-9的阿拉伯數(shù)字表示方式和漢字表示方式,符號模板包括加減乘除的數(shù)學符號表示形式和漢字表示形式。
在一可選的實施例中,匹配模塊的具體實施包括:將字符模板的左上角像素沿著待處理的數(shù)學運算驗證碼圖像的每一個像素對齊,計算像素相似度,若像素相似度大于等于預設匹配閾值,則匹配成功,否則匹配失敗。
在一可選的實施例中,預設匹配閾值的取值范圍為大于或等于0.7。
上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。
在本發(fā)明的上述實施例中,對各個實施例的描述都各有側(cè)重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關描述。
在本申請所提供的幾個實施例中,應該理解到,所揭露的技術內(nèi)容,可通過其它的方式實現(xiàn)。其中,以上所描述的裝置實施例僅僅是示意性的,例如所述單元的劃分,可以為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,單元或模塊的間接耦合或通信連接,可以是電性或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。
另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用軟件功能單元的形式實現(xiàn)。
所述集成的單元如果以軟件功能單元的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術方案本質(zhì)上或者說對現(xiàn)有技術做出貢獻的部分或者該技術方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設備(可為個人計算機、服務器或者網(wǎng)絡設備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:U盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、移動硬盤、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
以上所述僅是本發(fā)明的優(yōu)選實施方式,應當指出,對于本技術領域的普通技術人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本發(fā)明的保護范圍。