網路城邦
上一篇 回創作列表 下一篇  字體:
影像辨識不會只是影像辨識
2017/06/30 09:41:18瀏覽1030|回應0|推薦5

手邊的一個案子要辨識機車的車牌,因為諸多環境的限制因素,合作夥伴說影像品質暫時沒辦法更好了!如果只用我「養尊處優」,已經習慣非常清晰影像的停車場辨識核心來辨識這種品質的影像當然錯誤很多,成功率應該只有六七成,大家可以看看上面的第二張圖,我用影像辨識技術很努力地勾勒出來的車牌字元,看起來還是破破爛爛的!通常最左與最右的字會很容易被漏掉,字元與字元,字元與貼紙或螺絲釘之間的沾連更是常態。

以影像辨識的邏輯來說,我必須找到差不多大小的成排目標,但是如果影像這麼模糊時,勾畫出來的目標大小就很不一致了!怎麼辦呢?此時幫助我的並不是更複雜精緻的影像辨識技術,所謂巧婦難為無米之炊,模糊就模糊了,如果貼紙真的跟字貼成一塊,或拍出來的影像兩者之間根本就沒有間隙,你再厲害的演算法也割不出完整的字元。

這個時候其實我用到的資訊主要是車牌的格式,如果六個字我只抓到四個正確的,我至少知道整個車牌中字元的高度應該是多少?如果我知道機車車牌不是六碼就是七碼,那麼太少字的應該就是有漏字了!是不是中間某字因為沾到螺絲釘被排除了呢?此時用字距判斷就很有效,中間漏的字就用左右邊可靠的字高硬切原圖那個區域出來強迫辨識。

如果某字看起來太胖就給他分割連體嬰,如果補完切完算一算還是少字,就強迫往左右邊看看,找到一些區域特徵,判斷「看起來」哪邊比較可能有漏字,然後根據標準字體大小「硬切」一個區塊出來辨識!甚至左右都切出來辨識,看看哪邊比較像是符合度較高的字元?

甚至機車車牌的格式不是七碼的「3-4」就是六碼的「3-3」!如果你找到一個五字組合像是「2-3」結構,你猜我會到哪一邊找到漏掉的字?其實這只是列舉一部份外部資訊的參考使用,我的程式裡面還用到很多其他的非影像辨識的周邊參考資訊,譬如組出來的車牌應該有一段全部都是數字,七碼機車頭一字元幾乎都是AM之類的資訊,能用得盡量用。挑剔的讀者會問那重機怎麼辦?別擔心可以用顏色區分。

知道嗎?最後我在一段影片中篩出來的16輛機車,影像品質如圖一,辨識結果是全對的!當然樣本數還不多,但預期這種品質的「機車」應該能成功辨識九成以上,如果影像再調清楚一些,辨識綠大於95%是很有把握的!

但是因為我用到太多機車車牌的限制條件來推算補救缺漏字的車牌,所以這個辨識核心變成機車專用的了!譬如當他看到一般汽車常見的2-4結構的辨識結果就會很努力地去左邊多找一個可能的字,湊成3-4的架構,因為機車根本不會有2-4這種車牌嘛!

這就是我說的客製化囉!限定只辨識機車,讓我可以比較能糾正影像模糊造成的錯誤,所以我說「影像辨識不會只是影像辨識」,需要有豐富的常識與靈活的腦袋看到很多非影像辨識的可用資源。

( 心情隨筆工作職場 )
回應 推薦文章 列印 加入我的文摘
上一篇 回創作列表 下一篇

引用
引用網址:https://classic-blog.udn.com/article/trackback.jsp?uid=yccsonar&aid=105488885