本發(fā)明涉及圖像矯正和識別技術(shù)領(lǐng)域,尤其涉及一種基于定位點(diǎn)的旋轉(zhuǎn)數(shù)字識別方法及系統(tǒng)。
背景技術(shù):
王雄華等人在論文《快速定位的QR碼校正方法》中提出一種基于圖像特征的QR碼校正算法,該方法使用多方向掃描像素點(diǎn)的方法找到條碼各個(gè)頂點(diǎn)坐標(biāo),采用逆投影變換完成圖像的幾何校正,但是該方法搜索定位點(diǎn)容易受到背景環(huán)境的干擾,而且受圖像質(zhì)量影響明顯。
李瑩等人在論文《采用特征點(diǎn)提取算法的車牌傾斜校正方法研究》中提出基于非線性雙邊濾波器的Harris算法,然后提取出車牌區(qū)域的字符角點(diǎn)信息,再結(jié)合慣性主軸算法對傾斜車牌進(jìn)行矯正。該方法中容易出現(xiàn)偽角點(diǎn),導(dǎo)致慣性主軸并不準(zhǔn)確,進(jìn)而導(dǎo)致矯正存在偏差。
李彥等人在《基于SIFT特征匹配的車牌識別方法》中提出了一種基于SIFT特征匹配的車牌識別方法,該方法使用超分辨率重建圖像,然后對重建圖像進(jìn)行SIFT特征匹配識別。該方法的匹配速度較快,但是準(zhǔn)確率不高。
彭博等人在《基于深度學(xué)習(xí)的車標(biāo)識別方法研究》中采用PCA對車標(biāo)進(jìn)行特征提取和過濾噪聲,然后使用卷積神經(jīng)網(wǎng)絡(luò)(CNN)來識別視頻中的車標(biāo)。該方法充分利用了卷積神經(jīng)網(wǎng)絡(luò)多層次的提取深層的隱式特征,能夠有效地表達(dá)字符的組合構(gòu)成。然而,該方法的參數(shù)調(diào)整非常復(fù)雜,訓(xùn)練樣本量大,各層參數(shù)個(gè)數(shù)多,并且訓(xùn)練速度慢,這不利于非專業(yè)人員在各種硬件性能有限的車牌識別設(shè)備上擴(kuò)展使用。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明要解決的技術(shù)問題在于針對現(xiàn)有技術(shù)中定位矯正準(zhǔn)確率低以及識別準(zhǔn)確率低的缺陷,提供一種基于定位點(diǎn)的旋轉(zhuǎn)數(shù)字識別方法及系統(tǒng)。
一種基于定位點(diǎn)的旋轉(zhuǎn)數(shù)字識別方法,該方法包括:
S1、對輸入的視頻幀圖像進(jìn)行預(yù)處理,得到相應(yīng)的灰度圖像;
S2、對所述灰度圖像進(jìn)行輪廓提取,得到所述灰度圖像中的色塊的定位點(diǎn)位置、寬度和長度;
S3、根據(jù)所述定位點(diǎn)位置對所述灰度圖像進(jìn)行旋轉(zhuǎn)矯正,得到矯正圖像和矯正定位點(diǎn)位置;
S4、根據(jù)所述矯正定位點(diǎn)位置、所述色塊的寬度和長度對所述矯正圖像進(jìn)行圖像分割,得到只包含數(shù)字部分的數(shù)字圖像;
S5、對所述數(shù)字圖像進(jìn)行灰度化,通過深度學(xué)習(xí)模型和分類器得到所述數(shù)字圖像中的數(shù)字。
本發(fā)明所述的旋轉(zhuǎn)數(shù)字識別方法,步驟S2包括:
S21、對所述灰度圖像進(jìn)行輪廓提取,并通過道格拉斯-普克算法對提取到的輪廓進(jìn)行四邊形逼近處理,得到相應(yīng)的色塊;
S22、當(dāng)確定存在三個(gè)色塊時(shí),計(jì)算得到該三個(gè)色塊的中心點(diǎn)位置、寬度和長度,將該三個(gè)中心點(diǎn)位置分別作為三個(gè)色塊的定位點(diǎn)位置。
本發(fā)明所述的旋轉(zhuǎn)數(shù)字識別方法,步驟S3包括:
S31、根據(jù)三個(gè)定位點(diǎn)構(gòu)成三角形的幾何特征,確定旋轉(zhuǎn)矯正的旋轉(zhuǎn)角;
S32、根據(jù)所述旋轉(zhuǎn)角以所述灰度圖像的中心為旋轉(zhuǎn)原點(diǎn)對所述灰度圖像進(jìn)行旋轉(zhuǎn)矯正,得到矯正圖像和矯正定位點(diǎn)位置。
本發(fā)明所述的旋轉(zhuǎn)數(shù)字識別方法,步驟S1中,對輸入的視頻幀圖像進(jìn)行預(yù)處理包括:對所述視頻幀圖像進(jìn)行灰度化處理、下采樣處理、上采樣處理以及二值化處理。
本發(fā)明所述的旋轉(zhuǎn)數(shù)字識別方法,步驟S5中,所述深度學(xué)習(xí)模型為PCANet模型,所述分類器為SVM分類器。
一種基于定位點(diǎn)的旋轉(zhuǎn)數(shù)字識別系統(tǒng),該系統(tǒng)包括:
預(yù)處理模塊,用于對輸入的視頻幀圖像進(jìn)行預(yù)處理,得到相應(yīng)的灰度圖像;
輪廓提取模塊,連接所述預(yù)處理模塊,用于對所述灰度圖像進(jìn)行輪廓提取,得到所述灰度圖像中的色塊的定位點(diǎn)位置、寬度和長度;
旋轉(zhuǎn)矯正模塊,連接所述輪廓提取模塊,用于根據(jù)所述定位點(diǎn)位置對所述灰度圖像進(jìn)行旋轉(zhuǎn)矯正,得到矯正圖像和矯正定位點(diǎn)位置;
圖像分割模塊,連接所述旋轉(zhuǎn)矯正模塊,用于根據(jù)所述矯正定位點(diǎn)位置、所述色塊的寬度和長度對所述矯正圖像進(jìn)行圖像分割,得到只包含數(shù)字部分的數(shù)字圖像;
數(shù)字識別模塊,連接所述圖像分割模塊,用于對所述數(shù)字圖像進(jìn)行灰度化,通過深度學(xué)習(xí)模型和分類器得到所述數(shù)字圖像中的數(shù)字。
本發(fā)明所述的旋轉(zhuǎn)數(shù)字識別系統(tǒng)中,所述輪廓提取模塊包括:
提取子模塊,連接所述預(yù)處理模塊,用于對所述灰度圖像進(jìn)行輪廓提取,并通過道格拉斯-普克算法對提取到的輪廓進(jìn)行四邊形逼近處理,得到相應(yīng)的色塊;
計(jì)算子模塊,連接所述提取子模塊,用于當(dāng)確定存在三個(gè)色塊時(shí),計(jì)算得到該三個(gè)色塊的中心點(diǎn)位置、寬度和長度,將該三個(gè)中心點(diǎn)位置分別作為三個(gè)色塊的定位點(diǎn)位置。
本發(fā)明所述的旋轉(zhuǎn)數(shù)字識別系統(tǒng)中,所述旋轉(zhuǎn)矯正模塊包括:
確定子模塊,連接所述計(jì)算子模塊,用于根據(jù)三個(gè)定位點(diǎn)構(gòu)成三角形的幾何特征,確定旋轉(zhuǎn)矯正的旋轉(zhuǎn)角;
矯正子模塊,連接所述確定子模塊和所述圖像分割模塊,用于根據(jù)所述旋轉(zhuǎn)角以所述灰度圖像的中心為旋轉(zhuǎn)原點(diǎn)對所述灰度圖像進(jìn)行旋轉(zhuǎn)矯正,得到矯正圖像和矯正定位點(diǎn)位置。
本發(fā)明所述的旋轉(zhuǎn)數(shù)字識別系統(tǒng)中,所述預(yù)處理模塊中,對輸入的視頻幀圖像進(jìn)行預(yù)處理包括:對所述視頻幀圖像進(jìn)行灰度化處理、下采樣處理、上采樣處理以及二值化處理。
本發(fā)明所述的旋轉(zhuǎn)數(shù)字識別系統(tǒng)中,所述數(shù)字識別模塊中,所述深度學(xué)習(xí)模型為PCANet模型,所述分類器為SVM分類器。
本發(fā)明產(chǎn)生的有益效果是:提供一種基于定位點(diǎn)的旋轉(zhuǎn)數(shù)字識別方法及系統(tǒng),通過色塊計(jì)算定位點(diǎn),根據(jù)定位點(diǎn)位置關(guān)系計(jì)算矯正角度,根據(jù)矯正角度對圖像進(jìn)行矯正,保證了定位點(diǎn)和矯正角度的準(zhǔn)確性;識別率高,參數(shù)設(shè)置較簡單,訓(xùn)練速度快,實(shí)際使用時(shí)可以直接載入訓(xùn)練好的網(wǎng)絡(luò)進(jìn)行使用。
附圖說明
下面將結(jié)合附圖及實(shí)施例對本發(fā)明作進(jìn)一步說明,附圖中:
圖1是本發(fā)明實(shí)施例的一種基于定位點(diǎn)的旋轉(zhuǎn)數(shù)字識別方法的流程示意圖。
圖2是本發(fā)明實(shí)施例的一種基于定位點(diǎn)的旋轉(zhuǎn)數(shù)字識別方法的分步驟流程示意圖。
圖3是本發(fā)明實(shí)施例的一種基于定位點(diǎn)的旋轉(zhuǎn)數(shù)字識別方法的分步驟流程示意圖。
圖4是本發(fā)明實(shí)施例的一種基于定位點(diǎn)的旋轉(zhuǎn)數(shù)字識別系統(tǒng)的結(jié)構(gòu)示意圖。
圖5是本發(fā)明實(shí)施例的一種基于定位點(diǎn)的旋轉(zhuǎn)數(shù)字識別方法的流程示意圖。
圖6是本發(fā)明實(shí)施例的矯正前的灰度圖像示意圖。
圖7是本發(fā)明實(shí)施例的矯正后的灰度圖像示意圖。
圖8是本發(fā)明實(shí)施例的矯正角度示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明實(shí)施例中,如圖1所示,一種基于定位點(diǎn)的旋轉(zhuǎn)數(shù)字識別方法,該方法包括:
S1、對輸入的視頻幀圖像進(jìn)行預(yù)處理,得到相應(yīng)的灰度圖像;
S2、對灰度圖像進(jìn)行輪廓提取,得到灰度圖像中的色塊的定位點(diǎn)位置、寬度和長度;
S3、根據(jù)定位點(diǎn)位置對灰度圖像進(jìn)行旋轉(zhuǎn)矯正,得到矯正圖像和矯正定位點(diǎn)位置;
S4、根據(jù)矯正定位點(diǎn)位置、色塊的寬度和長度對矯正圖像進(jìn)行圖像分割,得到只包含數(shù)字部分的數(shù)字圖像;
S5、對數(shù)字圖像進(jìn)行灰度化,通過深度學(xué)習(xí)模型和分類器得到數(shù)字圖像中的數(shù)字。
本發(fā)明實(shí)施例中,如圖2所示,步驟S2包括:
S21、對灰度圖像進(jìn)行輪廓提取,并通過道格拉斯-普克算法對提取到的輪廓進(jìn)行四邊形逼近處理,得到相應(yīng)的色塊;
S22、當(dāng)確定存在三個(gè)色塊時(shí),計(jì)算得到該三個(gè)色塊的中心點(diǎn)位置、寬度和長度,將該三個(gè)中心點(diǎn)位置分別作為三個(gè)色塊的定位點(diǎn)位置。
上述實(shí)施例中,通過道格拉斯-普克算法對提取到的輪廓進(jìn)行四邊形逼近處理,使得輪廓逼近四邊形,逼近精度值小于輪廓周長的0.02倍,輪廓最小面積大于200像素,輪廓最大面積小于40000像素,且所有拐點(diǎn)夾角的余弦值均小于0.2;四個(gè)輪廓對應(yīng)一個(gè)色塊,如果輪廓總數(shù)為12,則讀取色塊頂點(diǎn)位置,并將色塊中心作為定位點(diǎn)位置,計(jì)算色塊的寬度和長度,否則,轉(zhuǎn)到下一幀圖像重新開始識別。
本發(fā)明實(shí)施例中,如圖3所示,步驟S3包括:
S31、根據(jù)三個(gè)定位點(diǎn)構(gòu)成三角形的幾何特征,確定旋轉(zhuǎn)矯正的旋轉(zhuǎn)角;
S32、根據(jù)旋轉(zhuǎn)角以灰度圖像的中心為旋轉(zhuǎn)原點(diǎn)對灰度圖像進(jìn)行旋轉(zhuǎn)矯正,得到矯正圖像和矯正定位點(diǎn)位置。
上述實(shí)施例中,如圖7所示,根據(jù)三個(gè)定位點(diǎn)連接所構(gòu)成三角形的幾何特點(diǎn),確定矯正前后三角形各個(gè)頂點(diǎn)的映射關(guān)系??梢缘贸?,矯正前后定位點(diǎn)所構(gòu)成三角形的直角所對的邊為最長邊,該最長邊所對的頂點(diǎn)即為頂點(diǎn)L,因此計(jì)算定位點(diǎn)構(gòu)成的三角形所有邊中最長邊所對應(yīng)的頂點(diǎn)即是矯正前后的頂點(diǎn)L。以逆時(shí)針為正方向且兩邊所成夾角小于等于90度,三角形中另外任意一條邊到最長邊的角度為正,則與L構(gòu)成這條邊的頂點(diǎn)是矯正前后的頂點(diǎn)B;三角形中另外任意一條邊到最長邊的角度為負(fù),則與L構(gòu)成這條邊的頂點(diǎn)是矯正前后的頂點(diǎn)R。由于矯正后的三個(gè)頂點(diǎn)所成直角三角形位置關(guān)系已知,又找出了各個(gè)頂點(diǎn)的映射關(guān)系,因此只需計(jì)算映射前后對應(yīng)邊所成的夾角即為旋轉(zhuǎn)矯正的夾角。該旋轉(zhuǎn)角的計(jì)算公式可表示為:
α=arctan(k)
其中,k表示L和R所成直線的斜率,α表示LR所成直線與x軸夾角的弧度數(shù),逆時(shí)針為正方向,而degree表示旋轉(zhuǎn)角的弧度。圖6為矯正前的圖像,通過對第一步中經(jīng)過灰度化、下采樣和上采樣后的圖像進(jìn)行旋轉(zhuǎn)變換,得到矯正后的圖像(如圖7)。
該計(jì)算degree的公式是由各點(diǎn)間的多種位置情況計(jì)算得到。如圖8所示,R0為矯正后的R所在位置,degreei(i=1,2,3,4)分別表示為R在Ri位置時(shí)旋轉(zhuǎn)角度的大小。以L為原點(diǎn),以水平方向向右為x軸正方向,以豎直向上為y軸正方向,構(gòu)建直角坐標(biāo)系。由R與L為不同點(diǎn)可得,R.x=L.x與R.y=L.y不同時(shí)成立。若R.x>L.x時(shí),R在第一象限R1、第四象限R4或x軸正方向上,則degree=α;若R.x<L.x時(shí),R在第二象限R2、第三象限R3或x軸負(fù)方向上,則若R.x=L.x且R.y>L.y時(shí),R在y軸正方向上,即若R.x=L.x且R.y<L.y時(shí),R在y軸正方向上,即因此,可以得到上述的角度計(jì)算公式。
利用計(jì)算出的色塊的寬度nWidth和長度nHeight計(jì)算切割區(qū)域的寬和高,矯正后定位點(diǎn)L(左上)、B(左下)、R(右上),切割區(qū)域的左上角頂點(diǎn)為該區(qū)域的寬為nW=|R.x-L.x-2nWidth-pad|,高為nH=|B.y-L.y-2nHeight-pad|。其中,pad是根據(jù)實(shí)際使用設(shè)置的一個(gè)補(bǔ)償值,用于微調(diào)切割區(qū)域的大小。最后,根據(jù)該切割區(qū)域進(jìn)行圖像分割,得到只包含數(shù)字部分的圖像。
本發(fā)明實(shí)施例中,步驟S1中,對輸入的視頻幀圖像進(jìn)行預(yù)處理包括:對視頻幀圖像進(jìn)行灰度化處理、下采樣處理、上采樣處理以及二值化處理。
上述實(shí)施例中,二值化處理可以采用OTSU算法和Kittle算法;灰度化處理可以采用分量法、最大值法、平均值法以及加權(quán)平均法;上采樣就是采集模擬信號的樣本。采樣是將時(shí)間上、幅值上都連續(xù)的信號,在采樣脈沖的作用下,轉(zhuǎn)換成時(shí)間、幅值上離散的信號,所以采樣又稱為波形的離散化過程。通常采樣指的是下采樣,也就是對信號的抽取。其實(shí),上采樣和下采樣都是對數(shù)字信號進(jìn)行重采,重采的采樣率與原來獲得該數(shù)字信號(比如從模擬信號采樣而來)的采樣率比較,大于原信號的稱為上采樣,小于的則稱為下采樣。
本發(fā)明實(shí)施例中,步驟S5中,深度學(xué)習(xí)模型為PCANet模型,分類器為SVM分類器。
上述實(shí)施例中,PCANet是一個(gè)基于CNN的簡化Deep Learning模型,它是一個(gè)深度學(xué)習(xí)網(wǎng)絡(luò),該網(wǎng)絡(luò)采用PCA的方法對圖像進(jìn)行多層次的主成分分析和卷積操作,最后統(tǒng)計(jì)直方圖并生成圖像的特征編碼。本技術(shù)方案采用基于PCANet的方法進(jìn)行字符特征提取并使用SVM分類器進(jìn)行有監(jiān)督的分類識別,該方法有效地結(jié)合了神經(jīng)網(wǎng)絡(luò)和統(tǒng)計(jì)學(xué)習(xí)的特點(diǎn)來提取隱式特征,對各種干擾具有較好的魯棒性。
本發(fā)明還提供一種基于定位點(diǎn)的旋轉(zhuǎn)數(shù)字識別系統(tǒng),如圖4所示,該系統(tǒng)包括:
預(yù)處理模塊1,用于對輸入的視頻幀圖像進(jìn)行預(yù)處理,得到相應(yīng)的灰度圖像;
輪廓提取模塊2,連接預(yù)處理模塊1,用于對灰度圖像進(jìn)行輪廓提取,得到灰度圖像中的色塊的定位點(diǎn)位置、寬度和長度;
旋轉(zhuǎn)矯正模塊3,連接輪廓提取模塊2,用于根據(jù)定位點(diǎn)位置對視頻幀圖像進(jìn)行旋轉(zhuǎn)矯正,得到矯正圖像和矯正定位點(diǎn)位置;
圖像分割模塊4,連接旋轉(zhuǎn)矯正模塊3,用于根據(jù)矯正定位點(diǎn)位置、色塊的寬度和長度對矯正圖像進(jìn)行圖像分割,得到只包含數(shù)字部分的數(shù)字圖像;
數(shù)字識別模塊5,連接圖像分割模塊4,用于對數(shù)字圖像進(jìn)行灰度化,通過深度學(xué)習(xí)模型和分類器得到數(shù)字圖像中的數(shù)字。
本發(fā)明實(shí)施例中,輪廓提取模塊2包括:
提取子模塊21,連接預(yù)處理模塊1,用于對灰度圖像進(jìn)行輪廓提取,并通過道格拉斯-普克算法對提取到的輪廓進(jìn)行四邊形逼近處理,得到相應(yīng)的色塊;
計(jì)算子模塊22,連接提取子模塊21,用于當(dāng)確定存在三個(gè)色塊時(shí),計(jì)算得到該三個(gè)色塊的中心點(diǎn)位置、寬度和長度,將該三個(gè)中心點(diǎn)位置分別作為三個(gè)色塊的定位點(diǎn)位置。
本發(fā)明實(shí)施例中,旋轉(zhuǎn)矯正模塊3包括:
確定子模塊31,連接計(jì)算子模塊22,用于根據(jù)三個(gè)定位點(diǎn)構(gòu)成三角形的幾何特征,確定旋轉(zhuǎn)矯正的旋轉(zhuǎn)角;
矯正子模塊32,連接確定子模塊31和圖像分割模塊4,用于根據(jù)旋轉(zhuǎn)角以視頻幀圖像的中心為旋轉(zhuǎn)原點(diǎn)對視頻幀圖像進(jìn)行旋轉(zhuǎn)矯正,得到矯正圖像和矯正定位點(diǎn)位置。
本發(fā)明實(shí)施例中,預(yù)處理模塊1中,對輸入的視頻幀圖像進(jìn)行預(yù)處理包括:對視頻幀圖像進(jìn)行灰度化處理、下采樣處理、上采樣處理以及二值化處理。
本發(fā)明實(shí)施例中,數(shù)字識別模塊5中,深度學(xué)習(xí)模型為PCANet模型,分類器為SVM分類器。
本發(fā)明的一個(gè)具體實(shí)施例中,如圖5所示,輸入視頻幀圖像,對該視頻幀圖像進(jìn)行灰度化處理、下采樣處理、上采樣處理以及二值化處理,對預(yù)處理后的圖像進(jìn)行輪廓提取,確定提取到的色塊個(gè)數(shù)達(dá)到三個(gè)時(shí)根據(jù)提取到的輪廓計(jì)算三個(gè)色塊的定位點(diǎn)位置、寬度和長度,根據(jù)三個(gè)定位點(diǎn)構(gòu)成的三角形的幾何特征得到旋轉(zhuǎn)矯正的旋轉(zhuǎn)角,根據(jù)旋轉(zhuǎn)角以視頻幀圖像的中心為旋轉(zhuǎn)原點(diǎn)對原視頻幀圖像進(jìn)行旋轉(zhuǎn)矯正,最后進(jìn)行圖像分割和數(shù)字識別,得到識別結(jié)果。
應(yīng)當(dāng)理解的是,對本領(lǐng)域普通技術(shù)人員來說,可以根據(jù)上述說明加以改進(jìn)或變換,而所有這些改進(jìn)和變換都應(yīng)屬于本發(fā)明所附權(quán)利要求的保護(hù)范圍。