本發(fā)明涉及驗(yàn)證碼識(shí)別領(lǐng)域,特別涉及一種漢字依次點(diǎn)選驗(yàn)證碼識(shí)別方法及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。
背景技術(shù):
1、驗(yàn)證碼通常是包含由數(shù)字和字母組成的圖像,目前市面上的驗(yàn)證碼主要分為三類,分別是:字符驗(yàn)證碼、滑塊驗(yàn)證碼和漢字依次點(diǎn)選驗(yàn)證碼。其中,漢字依次點(diǎn)選驗(yàn)證碼需要先從圖片中找到文字,再根據(jù)提示依次點(diǎn)擊對(duì)應(yīng)漢字,這種操作對(duì)人難度不大;但是讓電腦自動(dòng)從一張圖片中找出文字所在區(qū)域,并再根據(jù)提示點(diǎn)擊對(duì)應(yīng)漢字,則難度非常大。對(duì)此,目前主流的做法是通過(guò)yolo算法(目標(biāo)檢測(cè)算法)識(shí)別出漢字所在的區(qū)域來(lái)解決該問(wèn)題,但是該方法的區(qū)域漢字容易被背景干擾,ocr識(shí)別漢字準(zhǔn)確率較低,導(dǎo)致驗(yàn)證碼識(shí)別成功率較低。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的目的在于克服現(xiàn)有技術(shù)的缺點(diǎn)與不足,提供一種漢字依次點(diǎn)選驗(yàn)證碼識(shí)別方法,該方法能找出需要依次點(diǎn)擊的文字,并且沒(méi)有背景干擾,通過(guò)ocr技術(shù)就能極大提高文字識(shí)別的準(zhǔn)確率,由此提高了驗(yàn)證碼識(shí)別準(zhǔn)確率。
2、本發(fā)明的目的通過(guò)以下的技術(shù)方案實(shí)現(xiàn):
3、一種漢字依次點(diǎn)選驗(yàn)證碼識(shí)別方法,包括以下順序的步驟:
4、s1、讀取驗(yàn)證碼圖片,通過(guò)變異點(diǎn)智能提取算法提取出驗(yàn)證碼圖片中的各個(gè)漢字所在區(qū)域以及漢字單獨(dú)的圖片;所述變異點(diǎn)為在平面構(gòu)成中的統(tǒng)一秩序中出現(xiàn)局部變異,在整體中凸顯的相異因素,即驗(yàn)證碼圖片中的漢字;
5、所述變異點(diǎn)智能提取算法,執(zhí)行以下操作:
6、(1)首先讀取驗(yàn)證碼圖片所有像素點(diǎn)信息;
7、(2)然后依次遍歷驗(yàn)證碼圖片所有像素點(diǎn):若像素點(diǎn)t的透明通道值為0,則繼續(xù)遍歷下一個(gè)像素點(diǎn),否則就新建相似顏色偽連續(xù)點(diǎn)集合points,然后執(zhí)行步驟(3);
8、(3)查找距離像素點(diǎn)t的若干個(gè)像素點(diǎn)范圍內(nèi)所有透明通道值不為0、且與像素點(diǎn)t色調(diào)值之差小于預(yù)設(shè)值的像素點(diǎn),所形成的像素點(diǎn)集合定義為集合p1,用于存放像素點(diǎn)的坐標(biāo)信息和顏色信息;
9、1)若集合p1的數(shù)量為0,就執(zhí)行步驟(4),否則去重集合p1中的坐標(biāo)信息,得到集合p1’,將集合p1’中的像素點(diǎn)都添加到相似顏色偽連續(xù)點(diǎn)集合points中,同時(shí)將驗(yàn)證碼圖片中點(diǎn)集合points所在的像素點(diǎn)透明通道值設(shè)為0;
10、2)提取點(diǎn)集合points最外圍的邊緣點(diǎn)集合p2,再依次查找距離點(diǎn)集合p2各像素點(diǎn)的若干個(gè)像素點(diǎn)范圍內(nèi)所有透明通道值不為0、且與像素點(diǎn)t色調(diào)值之差小于預(yù)設(shè)值的像素點(diǎn),所形成的像素點(diǎn)集合定義為集合p1,用于存放像素點(diǎn)的坐標(biāo)信息和顏色信息;然后執(zhí)行步驟1);
11、(4)將相似顏色偽連續(xù)點(diǎn)集合points去重后得到新的點(diǎn)集合points,然后把新的點(diǎn)集合points添加到各相似顏色區(qū)域集合l1中;
12、(5)遍歷集合l1中所有的相似顏色偽連續(xù)點(diǎn)集合points,若相似顏色偽連續(xù)點(diǎn)集合points的像素點(diǎn)數(shù)量低于一個(gè)驗(yàn)證碼漢字所占的像素?cái)?shù)量,或者相似顏色偽連續(xù)點(diǎn)集合points的寬度、高度大于一個(gè)驗(yàn)證碼漢字的寬度、高度,則相似顏色偽連續(xù)點(diǎn)集合points為背景的像素點(diǎn)集合,將該相似顏色偽連續(xù)點(diǎn)集合points從集合l1中刪除,形成集合l1’;
13、(6)重新畫(huà)一張與驗(yàn)證碼圖片長(zhǎng)度和寬度相同的圖片picture1,所有像素點(diǎn)顏色都設(shè)置為白色;然后遍歷集合l1’中所有的相似顏色偽連續(xù)點(diǎn)集合points,把相似顏色偽連續(xù)點(diǎn)集合points中的所有像素點(diǎn)按照其顏色重新畫(huà)在圖片picture1上,提取出驗(yàn)證碼圖片中各個(gè)漢字在白色背景下的所在區(qū)域;
14、s2、根據(jù)各個(gè)漢字在白色背景下的所在區(qū)域,得到各個(gè)漢字的坐標(biāo)和依次點(diǎn)擊的順序。
15、步驟2)中,所述邊緣點(diǎn)集合p2通過(guò)以下方式得到:
16、點(diǎn)集合points按照y軸分組,分別獲取每組x最大值的所有點(diǎn)、x最小值的所有點(diǎn),保存到邊緣點(diǎn)集合p2;
17、點(diǎn)集合points按照x軸分組,分別獲取每組y最大值的所有點(diǎn)、y最小值的所有點(diǎn),保存到邊緣點(diǎn)集合p2;
18、邊緣點(diǎn)集合p2去重,得到最終的邊緣點(diǎn)集合p2。
19、所述漢字對(duì)應(yīng)的單個(gè)文字分別保存為背景為白色圖片,然后通過(guò)ocr識(shí)別各個(gè)變異點(diǎn)文字,判斷識(shí)別出的文字是否在依次點(diǎn)擊漢字字符串中:若是,就將該點(diǎn)所在位置的中間點(diǎn)保存起來(lái),否則就判斷下一個(gè)識(shí)別出的文字是否在依次點(diǎn)擊漢字字符串中;遍歷匹配完所有變異點(diǎn)文字后,如果還有一個(gè)需要點(diǎn)擊的文字和ocr識(shí)別出來(lái)的匹配不上,那么就把該變異點(diǎn)所在位置的中間點(diǎn)認(rèn)為是該需要點(diǎn)擊文字的位置;如果最后結(jié)果有2個(gè)及以上的文字和ocr識(shí)別出來(lái)的匹配不上那么該次識(shí)別失敗。
20、同時(shí),本發(fā)明提供:
21、一種服務(wù)器,所述服務(wù)器包括處理器和存儲(chǔ)器,所述存儲(chǔ)器中存儲(chǔ)有至少一段程序,所述程序由所述處理器加載并執(zhí)行以實(shí)現(xiàn)上述漢字依次點(diǎn)選驗(yàn)證碼識(shí)別方法。
22、一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)中存儲(chǔ)有至少一段程序,所述程序由處理器加載并執(zhí)行以實(shí)現(xiàn)上述漢字依次點(diǎn)選驗(yàn)證碼識(shí)別方法。
23、本發(fā)明與現(xiàn)有技術(shù)相比,具有如下優(yōu)點(diǎn)和有益效果:
24、1、本發(fā)明可大大提高該類型驗(yàn)證碼識(shí)別準(zhǔn)確率,給業(yè)務(wù)流程賦能,助力企業(yè)進(jìn)行數(shù)字化轉(zhuǎn)型。
25、2、常規(guī)遞歸查詢顏色相似度由于遞歸次數(shù)太多從而導(dǎo)致堆棧溢出,本發(fā)明的變異點(diǎn)智能提取算法能規(guī)避堆棧溢出問(wèn)題。
1.一種漢字依次點(diǎn)選驗(yàn)證碼識(shí)別方法,其特征在于,包括以下順序的步驟:
2.根據(jù)權(quán)利要求1所述漢字依次點(diǎn)選驗(yàn)證碼識(shí)別方法,其特征在于,步驟2)中,所述邊緣點(diǎn)集合p2通過(guò)以下方式得到:
3.根據(jù)權(quán)利要求1所述漢字依次點(diǎn)選驗(yàn)證碼識(shí)別方法,其特征在于,所述漢字對(duì)應(yīng)的單個(gè)文字分別保存為背景為白色圖片,然后通過(guò)ocr識(shí)別各個(gè)變異點(diǎn)文字,判斷識(shí)別出的文字是否在依次點(diǎn)擊漢字字符串中:若是,就將該點(diǎn)所在位置的中間點(diǎn)保存起來(lái),否則就判斷下一個(gè)識(shí)別出的文字是否在依次點(diǎn)擊漢字字符串中;遍歷匹配完所有變異點(diǎn)文字后,如果還有一個(gè)需要點(diǎn)擊的文字和ocr識(shí)別出來(lái)的匹配不上,那么就把該變異點(diǎn)所在位置的中間點(diǎn)認(rèn)為是該需要點(diǎn)擊文字的位置;如果最后結(jié)果有2個(gè)及以上的文字和ocr識(shí)別出來(lái)的匹配不上那么該次識(shí)別失敗。
4.一種服務(wù)器,所述服務(wù)器包括處理器和存儲(chǔ)器,其特征在于,所述存儲(chǔ)器中存儲(chǔ)有至少一段程序,所述程序由所述處理器加載并執(zhí)行以實(shí)現(xiàn)權(quán)利要求1至3中任一權(quán)利要求所述漢字依次點(diǎn)選驗(yàn)證碼識(shí)別方法。
5.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)中存儲(chǔ)有至少一段程序,其特征在于,所述程序由處理器加載并執(zhí)行以實(shí)現(xiàn)權(quán)利要求1至3中任一權(quán)利要求所述漢字依次點(diǎn)選驗(yàn)證碼識(shí)別方法。