Contents ...
udn網路城邦
舉個例子讓你知道找個車牌有多麻煩?
2020/02/19 05:52
瀏覽1,259
迴響0
推薦5
引用0

一個紅色重機的車牌好像不難辨識?但是老實說多數車牌辨識系統碰到紅色都很頭痛,紅底白字更是難過!原因是一旦灰階化之後字元與背景的對比度是不如白底黑字來得高的!如果你只框住車牌部分作二值化,以預設的中值灰階128作門檻,你會根本看不到車牌字元的,如下:

你必須將二值化門檻拉到合適的位置,上圖中色階分佈的兩個峰值,一個是車牌背景的紅色區域,一個是車牌字元的白色區域,你必須很精確的將二值化門檻切到雙峰之間的波谷附近,才能得到最佳的字元二值化影像如下:

但是我們辨識的是「全圖」,找到車牌位置的本身就是最大的問題!上面框出車牌的動作其實就是最難的人工智慧了!多數傳統的車牌辨識演算法是找出「對比度」最強的區域,也就是白底黑字的車牌囉!但是回到原圖與灰階圖看你就知道,連球鞋的鞋底與鞋面對比度都大於車牌!所以傳統的車牌鎖定演算法找不到這種車牌是很合理的結果!

那怎麼辦?基本上就是要找出圖中所有對比度「夠強」的目標,你不能挑食就對了啦!如果對比最強的不是車牌,你就必須找次強次次強的目標,直到找到合理的車牌為止!所以當圖變大了,不是只有畫素變多而已,你要處理的目標案例數目也變多了

而且如果門檻值不能隨著環境亮度與色階分佈彈性變動,你還是看不出目標的!所以二值化絕對不是用全圖資訊決定「一個」合適的灰階亮度作門檻,每個影像區域其實都必須有不同的門檻值,實際上就是隨著目標附近的亮度變化!在數學上就是所謂的低通濾波了!就是找到一個小區域的平均亮度,這樣亮區與暗區就都可以切割出應有的目標了!

下圖是我的動態門檻分布圖,看到沒有?車牌部分是特別亮的!所以代表那個區域你必須用較高的門檻值才看得到字元目標!下下圖就是依據這種門檻切出的二值化圖了!

果然,這樣就夠清楚可以找到我要的車牌字元了!但是大家看出嚴重的副作用了嗎?就是連實際上亮度變化很小的地面都出現了大批麻花!如果全圖只用一個剛好可以看出字元的最佳門檻值,二值化的結果應該是這麼簡單的:

但是我事先哪知道車牌在哪裡?剛好可以看出車牌字元的單一門檻值我怎麼會知道?所以上上圖顯示的,複雜的二值化圖其實是必經的過程,我必須在該圖中找到目標,也就必須連地面雜訊都要檢視處理,一定得先經過超複雜的編碼過程找出獨立目標。如下是用不同顏色顯示我的演算法找出的所有目標,每一個顏色表示一個不相連的獨立目標:

接著是篩選大小與形狀合適的目標如下:

這樣才終於可以找到車牌的字元,組織成車牌字元組與範圍,再切出車牌作幾何修正與辨識字元!作出如下的結果:

所以大家知道了!我沒有規避任何一個傳統影像辨識必須作的事情,而且為了找到可能對比度不佳的車牌,我做的事情比傳統的車牌辨識流程更多出很多倍!這就是我2008年時遇到的困難!我的演算法流程計算時間會慢到無法接受!當然也就不可能變成商業化產品了!

但是我沒有放棄這個物理上合理也必須的流程!我不斷的研究可以達到上述過程目的的數學技巧,發明出運算速度更快的計算公式!2014年開始我得到了較大的突破,所有流程都可以一一完成了,而且很快!譬如將上圖(1280X720)的原始目標編碼實際上會分析出9199個目標!篩選後也還有553個可能是字元的目標,我的新演算法計算這些過程的時間只需22毫秒!就是0.022秒!

當然全圖辨識完成還需要很多其他程序,譬如我們一定會預設車牌應該是深色字體淺色背景,所以會先作正片的辨識,找不到正片車牌時才作負片的辨識,找看看有沒有如上圖是白色字元的車牌!只作正片辨識的時間約為0.1-0.2秒,負片車牌辨識成功的時間也不過是0.2到0.3秒!如果影像較小,譬如三四十萬畫素,我的辨識時間會小於0.1秒!

這就是我可以立足車牌辨識市場的主要原因了!我可以用如此複雜的演算法完成困難的辨識,速度還可以快到一秒鐘辨識接近十次!加上多核心電腦的多執行緒效能,我的停車場動態辨識軟體一秒鐘就可以作四十次以上的車牌辨識!一般道路車載軟體作全景多車(含正負片)辨識,百萬畫素的大影像也可以一秒辨識約20次!所以說到動態車牌辨識在國內我幾乎已經沒有對手了!

更重要的是:如此複雜的過程中,每一個辨識的程序細節,也就是每一個目標的生滅起落我都能精確的追蹤掌握!我沒有放棄或簡化任何一個我認知的物理辨識過程環節!我的辨識速度快並不是來自過度的簡化流程,而是來自更好的演算法效率研究,也就是用更好的數學技巧來達成必要的物理問題處理目的,這樣才能又快又準!

一般機器學習派的演算法常常也可以處理這麼複雜的辨識,但是差別在我沒有偷懶,將複雜的工作交給電腦去胡搞瞎搞!我真的知道我自己在做甚麼?每一個細節我都知道!這是我有信心擊敗所有機器學習派對手的原因!就像武術領域說的:快打慢,慢打不會!我不但會,動作還很快!機器學習派作車牌辨識的人,可能只是「不太會」的等級!他們根本沒耐心去研究辨識流程發生的事實與細節,所以我贏定了!

有誰推薦more
全站分類:心情隨筆 工作職場
自訂分類:不分類

限會員,要發表迴響,請先登入