車牌識別LPR(六)-- 字符分割


第六篇:字符分割

  在知道了車牌字符的規律之后,可以根據車牌的特點對字符進行分割。一般最容易想到的方法就是根據車牌投影、像素統計特征對車牌圖像進行字符分割的方法。是一種最常用的、最基本的、最簡單的車牌字符分割方法。它的精髓是對車牌圖像進行逐列掃描,統計車牌字符的每列像素點個數,並得到投影圖,根據車牌字符像素統計特點(投影圖中的波峰或者波谷),把車牌分割成單個獨立的字符。

  圖像的邊緣信息一般都是高頻信息,所以在水平、垂直方向上對車牌圖像進行小波變換,對其高頻信息進行重構,獲得相應的高頻信息方面的子圖,在車牌垂直投影圖像中找到每個車牌字符的邊界所在位置,並記下邊界位置的橫坐標;同理在水平投影圖像中找到相應的邊界的縱坐標,再根據相應的字符坐標值將字符分割出來。

  一般在進行分割之前需要對車牌進行預處理:傾斜校正和去噪處理

  在進行分割之后需要統一字符大小,對其進行歸一化和去邊框處理。

(1)統一車牌底色:

  對不同類型的車牌灰度圖像進行二位化以后,有的呈現的是黑底白字,而有的則是白底黑字,為了便於對字符進行分割,需首先將不同種類車牌的二值化結果進行景顏色和目標顏色的統一,然后再用相關字符分割的方法對車牌屮的字符進行切分和提収。統一車牌底色可以有兩種方法:

  基於顏色分量的判斷,但由於我國車牌種類太多,這個方法並不能完全區分,但是區分兩種車牌類型還是可以的,例如藍底白字車牌中的R<B,而黃底黑字中的B>R,在考慮到光照影響和使用已久褪色車牌上這種方法就不好了。

  基於二值圖像中像素比例特征的車牌底色判斷:一般情況下,二值化后的車牌圖像中字符筆畫的像素個數在整個車牌的像素數目中所占的比例要小於50%。因此,可以通過分別計算二值化后的車牌中兩種像素值的像素個數的大小來判斷是否需要反色,若目標像素的比例大於50%,則將圖像進行反色,否則不進行處理。這種方法的優點是算法簡單,適用各種底色類型的車牌。缺點是若車牌中含有的字符的筆畫較粗或者是車牌上存在較多污點或者是有裝飾物等因素影響時,往往不能准確的判斷底色。

(2)圖像去噪

  采集的圖像總是會受到各種噪聲的影響。為了保證后續處理的精確度,需要抑制圖像中的噪聲。對二值化后的車牌圖像進行中值濾波處理,它是一種常見的非線性濾波方法,是一種局部平均的圖像平滑技術,也是一種低通濾波。經典的中值濾波算法步驟如下:

  1、令一個 3*3模板沿行或者列方向的移動;

  2、每次移動后,對模板覆蓋區域的像素灰度值進行排序;

  3、用排序得到的中值代替模板內中心位置的原始圖像像素灰度值。

  通過以上步驟可以看出,中值濾波的主要功能就是讓與周圍像素灰度值的絕對差較大的像素改為與周圍像素灰度值接近的灰度值,去除那些相對於其領域像素更亮或更暗的灰度。一般來說,小於中值濾波器模板面積一半的亮或暗區域會被濾掉,而較大的物體則會幾乎原封不動的保留下來。

(3)傾斜校正

  通常車牌區域的上下沿是兩條明顯的平行直線,一般都采用Hough 變換,檢測出這兩條直線的傾斜角,然后對車牌進行校正。然而傳統的 Hough變換是對整幅圖像的每個像素進行計算,以求出圖像中可能存在的直線。

  要想使用 Hough 變換計算車牌的傾斜角度,必須先確定進行 Hough 變換所需要的數據,即車牌的邊緣點。如果圖像包含完整的車牌,一般采用檢測車牌的上下邊框邊緣點來作為 Hough 變換的數據,但由於實際得到的車牌不一定含有邊框或者只有極少量的邊框,所以最常用的是直接檢測車牌每個字符上下邊緣點作為Hough 變換的數據來源,但是由於實際中得到的車牌含有噪聲、污損等原因,用這種方法會產生大量的干擾點,影響校正效果。

  方法:對車牌圖像在垂直方向進行投影並用高斯濾波器進行平滑,定位投影曲線中的所有波谷點,然后在相應的二值圖中,查找所有波谷點之間最高的連通區域,得到的各個區域大部分就是車牌中的各個字符,最終選取各個連通域中即字符的最高和最低點作為 Hough 變換的檢測點。對圖像進行旋轉時采用雙線性插值。 

(4)去邊框

  定位出來的車牌圖像往往會包含車牌的部分或者全部邊框,甚至還包含部分車身,為車牌字符分割帶來了不利影響。因此就需要先對車牌圖像進行去邊框處理,其原理如下:采用水平投影得到上下邊界。

(5)字符分割

  采用一種基於相鄰字符最大間隔寬度的方法來對車牌中的字符進行分割。由單行車牌的特點可以知道,在第二個字符和第三個字符之間存在一個圓形的間隔符,且該間隔符在每個單行車牌中有且僅有一個,還有一個重要的特點就是此間隔符所在的間隙約是其他相鄰字符之間間隙的2.6倍,是整個車牌圖像中相鄰字符的最大間隙,根據這一先驗知識首先確定了第二個字符右邊緣和第三個字符左邊緣的位置,然后由二值圖像的垂直投影及單個字符的高寬比確定后5個和前2個字符的精確位置,因此,該方法的最為關鍵的部分是尋找圖像中間隔符所在的空隙。

  采用連通域和投影相結合的方法來對車牌圖像進行字符分割,采用四連通標記法對車牌字符邊界進行標記,形成連通域;然后判斷各個區域的高寬是否基本等於車牌字符區域的高寬(去邊框時已經求出),若相差較大時,就進行垂直投影,把寬小於車牌字符寬的相鄰區域進行合並,把寬大於車牌字符寬的相鄰區域進行進一步分割;最后對各個區域加矩形邊框,提取單個車牌字符。

 

  在理想的情況下,波谷的值應該為零,並且兩個字符之間應該存在波谷,但是由於受到噪聲的干擾,使得波谷的值為非零。常見的字符分割的問題有:字符粘連、字符斷裂、數字“1”。字符粘連是指兩個以上的字符連在一起,在垂直投影上的表現是原本應該為波谷的地方,現在卻為非零的垂直投影值;字符斷裂是一個字符分裂為幾部分,在垂直投影上的表現為幾段垂直投影;數字“1”的垂直投影值比較小,容易誤判為噪聲。可以結合車牌中字符的幾何特征解決上述問題。設車牌中字符的寬度為 Width。

  1)字符粘連

  當 Width< charWdith < 1.5*Width,其中 charWidth 為粘連字符的寬度。此時為兩個字符粘連的情形。可取 charWidth / 2 作為單個字符的寬度,以此來分割兩個粘連的字符;若 1.5*Width< charWidth< 2*Width,此時為三個字符粘連的情況。通過單個字符具有固定的寬高比的先驗知識,利用字符的高度求出字符的寬度。然后根據字符的寬度對粘連的字符進行分割。

  2)字符斷裂

  若 charWidthi< 0.5*Width 且 0.5*Width > charWidthi+1。其中 charWidthi為當前字符的寬度,charWidthi+1為下一個字符的寬度。此時把當前字符和下一個字符合並。

  3)數字“1”

  當 charWidthi< 0.5*Width 且 0.5*Width < charWidthi+1時,統計區間寬度 charWidthi內的投影值大於 0.8*Height 的個數 nums,其中 Height 為車牌圖像的高度。當符合條件 nums ≥ Thresh 時,其中 Thresh 為閾值,此時判定為數字“1”,否則為噪聲。

  采用的車牌字符分割方法;對車牌圖像進行灰度化處理,去除顏色信息,使后面的字符分割算法運行速度更快;對灰度車牌圖像進行二值化處理(otsu),並統一車牌圖像的背景和字符的顏色;對有一定傾斜角度的車牌圖像進行傾斜校正處理,對車牌圖像進行去邊框處理;采用連通域與投影法相結合的方法對車牌圖像進行字符分割,為后面的單個字符識別做准備。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM