
這是同一輛車,也是概略同一時間相同的車況,只是從不同角度拍攝的照片。乍看之下相信沒有人會認為是同一輛車!這也是做影像辨識的一個難言之隱!現在的攝影機都很好了,全彩影像是基本規格,任何數位影像都可以得到每個畫素的三原色RGB值,所以我們就可以使用顏色當做影像辨識的可靠特徵嗎?
譬如紅色的字就是計程車,不是紅色的就不是計程車?那左上照片就會判斷錯了!事實上即使攝影機很好,還是有太多狀況下顏色都會被扭曲難以分辨的!如上的案例就是日照反光,讓車牌的顏色幾乎消失了!事實上環境昏暗時也會讓我們無法明確分辨目標的顏色!所以大家認為應該很好用的顏色資訊其實是很不可靠的!
那甚麼是最可靠的資訊呢?其實還是RGB組合出來的整體灰階資訊!如上圖即使反光讓車牌字變成黯淡的灰色,但只要與字元與背景的亮度有差異,還是可以經過辨識程序被認出來是甚麼字的!
即使你不是像我一樣使用OCR,而是使用YOLO(CNN)等方法辨識物件時情況也是一樣的!如果機器學習的經驗值包括顏色的資訊判斷,就有可能判斷錯誤!也就是物理問題是所有演算法都一樣會面臨也必須處理的問題!所以很微妙的狀況是:如果你用黑白攝影機拍照來做車牌辨識,其實辨識率不會有太大差異!
所以啦!雖然我做車牌辨識還是有先取得全彩RGB資訊的!但是會很保守審慎的使用!任何決策都避免用顏色當作關鍵唯一的指標!譬如上圖左的字元看不出來是紅色,但是T字開頭的車牌在台灣鐵定是計程車,所以我會說它一定是計程車!即使它完全不紅!
但有些舊的計程車牌並不是T開頭的!此時如果某車牌的紅色特徵很明顯呢?就比較尷尬了!事實上常常因為周遭有紅色光源照耀,譬如煞車燈,會讓車牌字元偏紅色!此時我就會再參考字串的格式!譬如ABC-1234或是DE-5678就不可能是計程車,715-D6這種字數格式與正常自小客車不同的,我就會判斷是計程車了!
所以聰明的AI通常不是很神奇,而是很囉唆很複雜!機器學習派希望不必自己處理這些複雜的推理,用機器學習訓練的方式就可以達到目的!我則是比較傳統的盡量使用已知的科學事實規範建立我的邏輯程序!誰比較好?就看結果論了!你相信機器學習可以準確地學會我用的這些邏輯嗎?即使可以,要耗費多少資料與計算成本呢?你想過嗎?
限會員,要發表迴響,請先登入








