

影像模糊時很多似是而非的狀況就會出現,如上圖經過一連串的影像處理,最右邊的字元怎麼看都像是一個6?我之前的版本也會說它是一個6?但是我知道這一定是錯的!因為台灣車牌的六七碼格式中6的字型是完全不同的!下圖左邊是六碼車牌的6,右邊是七碼車牌的6!上面的6顯然不是七碼車牌的6!如果這個字是6就表示這個車牌一定不是七碼車牌!資訊就正面衝突矛盾了!

正常人會如何思考呢?如果我已經確定這個車牌是七碼格式的車牌,那麼六碼格式車牌中的字型就不應該列入評量考慮!應該只從七碼的字型中找到一個最相似的字!以位置來說,這是第七個字,所以一定是個數字,那就是必須從七碼車牌字型的0-9中找到一個最相似的數字了!答案應該是8!
很微妙的是,像這麼模糊的車牌,在辨識的開始階段我們無法很確定它是六或七碼的車牌?譬如某兩字可能會互相沾連?某些字可能會模糊到破碎的程度,必須經過一些例外處理才能正確切割或拼合,通常要到最後階段才能確定這是一個六或七碼的車牌,此時每個位置是甚麼字已經先被辨識確定了!
所以類似上面的矛盾必須到最後才能被檢驗發現,但是只要你有做這種檢查,知道狀況之後要如何處理就不難!在之前比對某個目標像甚麼字時,我們只要留下比對分數,此時回頭找特定範圍的分數最高值即可!上面這個字與六碼6字的符合度分數高達90分以上,與七碼8字的符合度才60幾分!但考慮到周邊資訊的相容性,它就不可能是六碼字的6,一定是個七碼字的8了!
我的影像辨識中就是有很多這種小聰明,累加起來的效果就好像我的程式會做很多推理思考了!我認為好的AI就應該是這個樣子的!如果你只相信「Data Driven」,完全依據影像資料訓練出來的經驗值來判斷辨識答案,就沒有這種推理思考的空間了!那種AI當然是比較笨的!即使你用再「深度」的學習,把模型搞得更複雜,也不會自動產出這種智慧的!
所以我認為:影像辨識還是必須以傳統的專家系統概念來發展,才會走向越來越準確合理的AI終極目標!ML、DL與CNN等技術最多只適合做探索或輔助的角色!完全不用都可以的!以這些技術為主體不但成本極高,理論上也是沒有前途的!還是儘快懸崖勒馬吧!對我來說,ML、DL與CNN真的只是我技術邊緣的配角,不依賴它們反而成為我研發影像辨識的優勢!