• 沒有找到結果。

車牌字元粹取

第三章 研究架構

3.4 車牌字元粹取

在這個階段的兩個主要工作,分別是由車牌影像中切割出各個可能 的元件,以及對可能的旋轉與偏斜進行校正。由於牌照位置透過前面幾 節的處理程序中已經取得,故對於本階段,只需直接由原始影像中,針

圖 10:車牌屬性判定 (a)二值化影像 (b)車牌彩色影像

(a) (b)

對該區域進行二值化,若是門檻值的取得的較適當的話,物件邊緣將明 顯分開,可獲得較為良好的元件分割結果。然而,其產出的結果也許不 是只包含了所需要的車牌文字,如發照地、牌照燈或與車牌相連的車體 部份。為了要辨別真正的字體元件以及其他所不需要的東西,本系統使 用了連通元件標示[25]找出元件及 Hough Transform 進行過濾。

3.4.1 連通元件標示

在數位影像中,每個像素都與其他的像素相鄰,如以方形格子來表 達時,則在每個像素四周,都有一些共享邊界的其他像素,稱為 4-neighbor 或是 8-neighbor。在機器視覺的應用中,從影像裡找尋各個連通元件是很 常見的問題,這些於連通元件中,由點所構成的區域,往往代表了物件。

則藉由找尋這些連通元件,便可以取得物件本身的特性,而元件標示演 算法則是達成此一目的的手段。

在此,以 8-neighborhood Connected Components Labeling 演算法[17],

將所有的可能元件都標示出來,同時也可以對於一些面積過小或長寬比 不符合的元件,進行初步的過濾工作,以期將後續需處理的元件數量降 低。

Connected Components Labeling 的演算法為 2-pass 的方法,詳細步驟 描述如下:

First pass:對整個影像逐行給一組非零的像素R( ji, )一組新的非零的 值 v,而值 v 的選擇乃依照其鄰近點像素的值而定,並依據 以下原則。

1. 如果其鄰近點都是背影點(其值為零),則R( ji, )必須給定一組新的

標示號碼。

2. 如果只有一個鄰點有非零值(即不是背景),則R( ji, )給定與此鄰點 的相同的值。

3. 如果有一個以上的鄰點有非零值,則R( ji, )可任意給定其中之一 的鄰點值即可,同時如果鄰點間有一個以上的值皆為不同,則發 生了 label collision,必須將這一組設定成相同值,方法為將這組 值放入 equivalence table 中。

Second pass: 在 first pass 所有的區域像素都已被標示完畢,但有些區 塊可能被標示為不同的標示值(因為發生 label collision)。因 此必須要再掃描整張影像並且依據 equivalence table 中的資 訊將像素中的值重新標示為 equivalence table 中的最小值。

f(i-1,j) F(i-1,j-1) f(i-1,j) f(i-1,j+1)

f(i,j-1)

f(i,j)

f(i,j-1)

f(i,j)

在標示完影像之後,除了可以得到可能的字元元件外,還可以同時

蒐 集 該 物 件 的 位 置 、 度 、 高 度 與 密 度 等

資料,而這些資訊都可以提供

往後物件特性的過濾之用。

3.4.2 Hough Transform

經過 Connected Component Labeling 演算法將所有通過初步過濾的元 圖 11:(a) 4-connectivity (b) 8-connectivity 的確認區域

(a) (b)

件標示出來,但在許多時候,無法判定那些元件是車輛牌照號碼,在無 法確認那個元件才是所需的目標元件,只能借助牌照本身所具有的特性 進行判別。在正常的情況下,車輛牌照上字體的排列,都將呈現一直線。

因此,運用 Hough Transform 對於所標示出來的連通元件的位置進行檢 驗,以挑選出正確位於同一直線的元件。

利用 Hough Transform 來偵測元件的狀態,在一般的 OCR 運用上十 分普遍[26],除了偵測元件是否在同一直線之外,Hough Transform 也可 得到該直線的斜率,同時在車牌辨識上,也常被利用來取得車輛或車牌 的偏斜角度[27][28],因在本研究中利用 Hough Transform 來偵測物件與 取得傾斜角度。

θ θ

ρ=xcos +ysin 方程式 15

θ

1

θ

2

ρ

1

ρ

2

θ

ρ θ

2

ρ

2

θ

1

ρ

1

x y

如上圖所示,ρ代表由原點到線段的垂直距離,而θ 則是該線條的 角度,Hough Transform 的演算法如下:

1. 宣告一塊適當的空間作為 Hough Space 2. 初始 Hough Space 中的值

圖 12:Hough Transform (a) 空間中的直線 (b) ρ,θ 參數

(a) (b)

3. 利用ρ= xcosθ+ysinθ對影像中的每一點進行轉換,並在 Hough Space 的相對索引位置加一。

4. 找出 Hough Space 中值較大的,即可能為所欲尋找的直線。

3.4.3 刪除非車號特性之物件

在利用連通元件標示法所標示出來的元件,由於同時也可以順便取

得 其 度 、 高度度及面積等資訊,且由於連通元件標示法有可能標 密 、

示到許多非車號的元件,因此可以設定適當的臨界值,刪除一些明顯不 可能為車號的元件[11]。

過濾元件的條件式如下:

度 太

width> width_threshold

高度太高:height>height_ thresholdmax 高度太低:height<height_ thresholdmin 字體太瘦:width/height<ratio_thresholdmin 字體太扁:width/height>ratio_thresholdmax 密度太大:density>density_ thresholdmax 密度太小:density<density_ thresholdmin 面積太大:area>area_ thresholdmax 面積太小:area<area_ thresholdmin

其中我們利用[11]實驗所得的結果取作為門檻值參考的標準,但是由 於客觀環境可能不同,因此可以依據不同的場景,不同的車牌大小視狀 況而對這些參數值給予適當的修正。

3.4.4 元件高度及寬度調整

在所標示到的元件資料當中,因為受到各類型的雜訊及螺絲孔的影 像,使得所標示到的元件高度產生不一致的現象,但由於在車牌影像中,

具有一明顯的特性:即所有的車號字元的高度皆為一致。因此如果車號 字元元件高度發生不一致的情形,應必須將符合的字元予以調整至適當 的高度,以避免往後正規化後的字元導入 SimNet 訓練或辨識時發生錯誤 的情形。

車牌號碼字元雖然在高度上,具有一致性,但在字元寬度上就沒有 那麼的一致了,但仍有其規律性存在,唯獨在字元「I」與「1」[11]時特 別例外,當車牌上如果出現些字的時候,很容易在判斷密度、面積、以 及寬度時,因為所得到的結果低於所設定的門檻值而使得這些字元遭到 被刪除的命運,如果這些字元在車號之中,甚至於可能影響未來因距離 過濾,造成連鎖效應,使得相鄰的字元因距離過遠而遭到刪除。如果幸 運的不被刪除,在接下來的字元正規化時,也可能因其長寬比的特性,

使得正規化後所得到的結果不佳,造成往後辨識上的困難。

因此必須將這些特性不佳的物件屬件作適度的調整,也就是對於具 有「1」、「I」等字元特性的物件,將這些物件中的寬度以及其他相關屬性 作調整,只要符合我們所設定的長寬比,我們都對它做寬度擴展的動作。

圖 13:(a)進行高度調整前 (b)進行高度調整後

(a) (b)

基本上,字元寬度的擴展,簡單的利用其原本的寬度大小,以物件的中 心為準,向左右各擴展適當的寬度即可。

3.4.5 字元正規化

除了元件的的確認以外,另一個必須解決的問題是字體的正規化。

一般來說,在平面的影像上主要有四種幾何扭曲分別為位移、旋轉、大 小變化、偏斜等,這些幾何扭曲勢必對後續的車號識別的工作造成困擾。

這些問題主要導因於攝影時角度與攝影距離的改變,為了處理這些問 題,適當的正規化程序是必要的。

Ø 位移

位移指物體由一個位置直線移到空間中的另一個位置座標,只需在 原來的座標空間上加入一個位移距離Tx,Ty便可以將原來的座標(x,y)移 到新的位置(x',y')

Tx x

x'= + 方程式 16

Ty y

y'= + 方程式 17

Ø 旋轉

旋轉指的是將物體中的每一個像素,依照一個圓形的軌跡來移動。

旋轉的轉換需要配合旋轉角度來作運算,以決定此物體中每個點的新座 標位罝的所在。由於在先前我們已對車牌字元進行 Hough Transform,所

圖 14:(a)寬度調整即進行正規化的 (b)經寬度調整再 正規化

(a) (b)

以已取得該車牌的偏斜角度,因此可以利用所取得的角度資訊進行校正 的工作。

θ θ sin cos

' x y

x= + 方程式 18

θ θ sin cos

' y x

y= − 方程式 19

對於旋轉的現象,我們使用前面 Hough Transform 所得的結果進行正 規化。其程序如下:

1. 計算出每個 Connected Component 的中心點。

2. 利用旋轉方程式進行旋轉。

3. 直到每個元件都處理完畢為止。

θ θ ( )sin cos

) (

' xR x xR y yR

x= + − − − 方程式 20 θ

θ ( )sin cos

) (

' yR y yR x xR

y= + − − − 方程式 21 由於經過了旋轉的校正之後,圖形中所留下的幾何扭曲,則以剪變 現象為主,系統中對每一個 Connected Component 進行計算以對抗 X 軸上 的剪變,以作校正。

Ø 大小變化

大小變化即物體大小的轉換,透過與 Scaling factor Sx,Sy相乘,便可 以得到轉換後的新座標(x',y')。這些 Scaling factor 是任意的正數,小於 1 為縮小該物體尺寸,而大於 1,則放大了物體,由於大小字樣由於距離的 關係,牌照字樣大小不一,在影像資料作為輸入的部分將所有的元件皆 轉換成 16x16 大小。

Sx x

x'= ⋅ 方程式 22

Sy y

y'= ⋅ 方程式 23

利用上述的兩個方程式可能在元件本身小於所要調整的大小時,容 易造成不連續的情形,為了解決此一問題,可以利用形態學的方法進行

校正的動作,但由於形態學本身的特性容易在校正後造成字形的模糊及 字體相連的問題,因此在此利用近鄰插補法(Nearest-neighborhood

interpolation),補足所需要的資訊,本研究雖然也有嚐試利用線性插補法 (Linear interpolation)來補足所需要的資訊,但由於線性插補法在小物件字 型較不容易看出成效且需要利用較多的計算時間,因此只需要利用近鄰 插補法即可達到相當不錯的效果。

[

( ), ( )

]

) ,

1(x y g round x round y

f = s 方程式 24

Ø 偏斜

在拍攝車輛影像時,可能造成旋轉的原因有二:一為攝像設備傾斜 或地面不平坦所造成;另一則為拍攝位置、角度等。其中前者所造成的 影響純粹為旋轉,而後者就產生了偏斜問題,在大多數的例子中兩者是 同時發生的。因此利用 Hough Transform 計算所得的資料包含了前述的兩 項因素,必須一併校正。

經過旋轉校正後,即使原始影像仍存有偏斜現象,其特性亦已改變,

只要以剪變效應視之即可。最普遍的兩種剪變轉換是 x 與 y 方向剪變。

相關文件