想辨識出自然情境的車牌,絕對是精密複雜但合理的過程! - 鄉下老師 - udn部落格
鄉下老師
作家:鄉下老師
文章分類
    Top
    想辨識出自然情境的車牌,絕對是精密複雜但合理的過程!
    2025/12/20 15:39:04
    瀏覽:275
    迴響:0
    推薦:4
    引用0

    簡單清晰端正的車牌影像,你用OpenCV組裝的簡易架構程式就可以辨識!但是對於較歪斜模糊有雜訊的車牌影像,這種程度的軟體當然毫無用處!所以從「能辨識」到「辨識得好」是一段漫漫長路!我就辛苦地走了超過十年!這也是大家會有必要買專業車牌辨識軟體的原因!

    進入了手機時代,我們必須知道像上面這種影像是很常會出現的!如果把它們歸類為「例外」?那你的車牌辨識軟體可辨識範圍就太小了!你應該不好意思自誇AI的!因為豔陽下你也不想蹲下身子還要替車牌遮陽或打光之後再拍,站在車頭輕鬆拿手機往下拍出來的影像就是這樣的!

    因為可能的狀況實在太多了!所以我的車牌辨識內建的辨識流程絕對不是只有一個!事實上是有五個!各自有其特色,有些利於辨識較暗車牌,有些利於辨識較模糊車牌,有些利於辨識強反光的車牌等等。車牌簡單清晰時當然每個程序答案都會一樣,但車牌狀況較差時每種程序是有可能答案不一的!

    此時困難的事情,就是如何在多個不同答案中選出最可能正確的答案?這就是一個連深度學習都很難學會的複雜推理過程。以上例來說,左邊兩圖表示兩種程序(甲乙案)分別辨識出答案是:ARX-7952ARX-952!我們當然可以看出前者是對的,後者可能因為7字較模糊沒有辨識出來所以漏字了!

    但是我們的基本評分標準是字模比對時的符合度,乙案因為忽略了比較模糊的7字,平均的符合度90反而高於甲案的89!所以我們應該選擇錯誤的乙案嗎?當然不行!但是你該如何替正確的甲案說話?不能只靠人的直覺偏袒!因為這個軟體執行時你不會在旁邊幫它的!你必須給它一個合理的邏輯判斷程序!

    照機器學習或深度學習的說法,就是需要先蒐集大量的類似資料,先標記目視辨識的正確答案,然後跑模型訓練,讓模型可以聰明到做出這麼精巧細緻還很正確的判斷!大家可以想像這是多麼耗時費力又幾乎不可能做到的幻想?但是我可以不必這麼麻煩就能幫我的軟體建立出聰明合理的判斷能力!

    請看上圖右的完整方案辨識結果,90分的乙案被扣分為85分了!89分的甲案就順利勝出了!重點是我扣分的理由是甚麼?這個理由合理嗎?是不是經得起科學的檢驗?就像立法院立法一樣,只要合情合理也真的可以解決問題,就不會被質疑反對!但是如果你是用深度學習的工作流程,就沒辦法這麼簡單有彈性的操作了!

    其實我的邏輯很簡單很明確:如圖中已被扭正的車牌子影像,依照車牌格式規範,它們之間的字距應該是非常接近的!只有被「-」號分隔的兩字略寬,但也絕對不到正常字距的兩倍!我將辨識成功的幾個字元目標間距都算出來,漏掉7字的兩字間距就會很明顯太大到超過兩倍正常間距!乙案因此「缺點」被扣個五分就非常合理了!事實上扣更多分或直接刪除都行的!只是擔心如果沒有更佳答案時,軟體會毫無反應怪怪的,所以讓其實錯的答案也可以以低分的答案方式呈現而已!

    這就是我的車牌辨識軟體精密運作細節的一個具體剪影了!所以如果客戶回饋某個案例辨識錯誤,我可以很快地分析所有流程,糾正不合理的參數流程,或是加上糾正錯誤的合理新流程,我的優化調整到升級更新都可以在半小時內完成!如果真的做不到的辨識,我也可以很具體地跟客戶解釋原因!真的只要客戶Line我,通常不到一小時就有回應,軟體已經優化更新了!

    這就是使用與不使用MLDLCNN技術的一個極大差異了!如果你的軟體是用深度學習訓練出來的,為何辨識對?為何辨識會錯?你都無法清楚掌握的!即使可以猜到原因也無法立即修改程式解決問題,只能重新整理資料再費事重新訓練一次!還未必可以針對解決特定案例的辨識異常?那就是售後服務的大災難了!所以我總是被客戶讚爆!那些號稱AI的影像辨識總是被罵到爆

    看懂這些細節後,如果你想買影像辨識產品時,還敢買那些號稱AI,使用ML、DL與CNN的嗎?他們其實很可憐的!大家也不要回饋錯誤去為難那些工程師了!因為連他們自己都不知道努力上班是在研究甚麼實際內容?只是不知而行的在整理資料跑模型而已!就像問IC無塵室裡的低階員工IC設計的錯誤原因一樣!他們不懂的!還好我的工作方式有尊嚴多了!任何狀況我總是可以像個科學家一樣跟客戶解釋得很清楚

    回應

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