Contents ...
udn網路城邦
如何善用影像增強技術提升辨識成功率的實例
2022/07/20 04:12
瀏覽1,232
迴響0
推薦4
引用0

如上的案例,這種車牌的設計,好像是刻意用來刁難OCR影像辨識技術用的?正常的車牌沒有那兩條深綠槓槓(也沒必要),沒有它們來攪局,這絕對是一個很好辨識字元目標的影像!但是故意加上那兩條槓槓,顏色還深到跟字元非常接近?加上環境昏暗與超低的解析度(320X240),當然車牌字元極難被正確地獨立切割出來

其實影像辨識要達到最終目的,可以有很多種方式與流程,我們要辨識如上的車牌就可以區分為「辨識車牌」與「辨識字元」兩種類型!如果是辨識整個車牌的特徵,上例就不算太難,但是要辨識字元呢?麻煩就大了!

大約七八年之前,一般的影像解析度差,我在2013-2014年間辨識的第一代車牌影像就是只有320X240的!車牌的六七個字元可以被完全正確切開的機率不高,所以多數車牌辨識演算法都是找(搜尋鎖定)整個車牌的!我的第一代車牌辨識核心也是這樣做的!目前的CNN也是這個層級的演算法,用一些點線的特徵分布鎖定車牌的區域位置。我是認為位階比我的方法低一層樓啦!

當年我就發現這樣做不確定性太高,他們都必須假設車牌是很端正的矩形!不然地毯式搜尋就很難執行了!找過水平的車牌之後,還要找各種大小,傾斜10度、20度、30度到X度的任何可能車牌區塊,絕對不可能找完的!我的第一版也面對一樣的問題,所以只能找到水平的車牌,超過10度就GG了!但是各種角度拍攝的車牌就是會傾斜變形的啊?

所以我做了一個重大的決定:我的新演算法要以辨識車牌「字元」為主軸!這樣當車牌整個傾斜時,我也可以依據字元組的傾斜排列知道,所以任何傾斜變形車牌我都能辨識了!這就是我這些年技術領先的優勢關鍵了!但前提是「大多數」的車牌字元要能被獨立切割辨識出來!

我敢這麼作,也獲得成功的大環境,其實是百萬畫素的時代來臨!如果我被迫回到那個320X240的影像時代呢?我的創新辨識核心可能表現還不如那些「古時候」的辨識核心!譬如上例就是很難讓車牌字元被正確切割的極端案例,幾乎七個字裡面的五六個字都會跟深綠槓槓連成一氣!

我也跟客戶解釋過了!我不是無法辨識這種影像的車牌,但這明顯是屬於「古蹟維護」的工作!我必須客製化古時候的演算法,才能在這種影像上獲得最佳化的辨識能力!那種核心就會有所有舊時代辨識核心的缺點,我的這種努力值得嗎?你們會願意付錢讓我開工嗎?答案當然是不會!

但我是個很聰明很努力的自有技術廠商,客戶既然還是繼續給我這種影像,還是繼續「質疑」我為何辨識錯誤?又不願意針對特殊資料付錢讓我做「考古」的研究,我就只能在現有辨識核心上想點辦法,看看是否能兼顧解決這種特殊狀況了!我的武功高強嘛!招數還是有的!

首先是將太小的圖放大兩倍!那樣字元與背景間的微小空隙就放大一點了,被切割開來的機率當然就大一點了!但只是影像放大並沒有讓間隙的顏色亮度改變,空隙顏色變化不明顯切割還是一樣困難。那就來個「銳利化」處理吧!讓字元間的亮度凹槽變得更明顯,理論上啦!如果本來就是一樣的色階,銳利化也是無效的!

很幸運的,如上例經過影像放大與銳利化處理,REA-1292七個字中有四個字很勉強地被切割成功了!雖不夠完美,但已經足以讓我的其他補救演算法估計出完整的車牌範圍,回到原圖切下車牌影像找到所有的車牌字元。

這一個案例是過關了!但是大家看完我的過程圖,應該也知道這叫做九死一生!很驚險靠運氣才過的!影像增強處理不能完全依賴的道理就是這樣,如果原始資料中連一點顏色變化的跡象都沒有,增強對比就根本沒用了!數學是無法無中生有的!

所以啦!合理的方向還是提升影像資料品質,讓解析度與對比度更好,才是穩定提升正確辨識的合理發展方向,我當然會努力讓辨識率加分,但是巧婦難為無米之炊,我不是點石成金的呂洞賓!如果有人說他們就是大神?就信不信由你了!我很確定自己不是神。

在商言商,其實這種超過合理範圍的「售後服務」是不是應該額外收費呢?我是不是應該扣住這個更新?要求客戶給錢後才更新功能呢?很傷腦筋的!但是我通常就算了!免費更新分享客戶大家高興就好了!也因此我的公司才會不賺錢嘛!說到做生意我真的很糟糕,只是賣一個幾萬元的產品,衍生的工作量卻跟一個數十萬的專案研發類似?而我居然還好高興辨識成功了?被老婆(董事長)罵經營不善真的是活該了!

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

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