網路城邦
上一篇 回創作列表 下一篇  字體:
辨識單一影像中的多個車牌?OK的啦!
2017/03/10 06:07:31瀏覽1360|回應0|推薦0

常被問到我的車牌辨識核心可不可以「同時」辨識影像中的多個車牌?這個問題在早期以較低畫素(640X480320X240)為辨識基礎的類比式攝影機時代是不存在的!因為要看清楚車牌,一個小畫面裡連「一輛」完整的車都塞不下!頂多就是一個車頭或是車屁股罷了,如下圖,哪有可能同時在畫面中出現兩三張車牌?

但是現在可是百萬畫素的時代了!畫面同時照到兩三輛車已經是常事,那麼車牌辨識系統會怎麼反應呢?會不會只辨識出一個車牌之後就打包回家了?如果需要每一個車牌都辨識出來時怎麼辦?是不是需要額外的處理程序?譬如辨識出一張車牌後將它「擦掉」,再繼續辨識其他的車牌?

下面一張照片中原本就有兩輛車,我再多貼一張車牌局部影像,假裝有三輛車在單一影像中的極端狀況,以此作個示範。我的辨識核心可以「一次」全部找到三個車牌,使用時間也不會比找到單一車牌多三倍,事實上是多出約兩成多(2030%)的時間而已。怎麼作到的?就看下面的幾張連環圖片了!

先是作有效的二值化變成黑白影像,接著畫輪廓,再接著篩選掉大部分不可是字元的輪廓目標,最後一張圖上已經只剩下幾十個目標,我再從這些目標中排列組合找到車牌。一般狀況下,預設沒有超過一個車牌的話,為了節省一點時間,我真的是找到一個車牌就結案了!以此例來說,就只會找到「5K-6780」車牌。

但是如果我「堅持」下去,找到5K-6780後將這幾個目標排除(擦掉),在剩餘目標群中嘗試找下一組車牌字元,當然很快會找到第二組,接著第三組,當然再找下去總會開始找不到車牌,那時當然就結案了!因為我找第二三組車牌時並不需要從頭處理整張圖,所以時間很節省。

其實在辨識道路上或進出停車場的車輛時,即使畫面中同時出現兩輛車,也不需要急著在一張照片中就將所有車牌全部辨識出來的!除非辨識的速度太慢,前一張照片中兩車都在,下一張就兩車都走了!正常情況下車輛都是「魚貫」通過的!每輛車都有擔綱當主角的機會。所以我會勸說這類應用的客戶,根本不需要在意辨識核心能不能同時辨識多車車牌,每輛車都一定會被辨識到的!硬要讓辨識核心辨識多車只會浪費較多時間讓程式空轉,會慢個10-20%的時間。

但是有一種使用情竟是所謂的「在席監看」,就是監視器同時監視停在幾個車位上的車子,整個畫面基本上是不動的,而且真的會同時有兩三台車出現,如果每次辨識都是有找到車牌就結案,那一定會永遠看不到第二與第三名!那不就是永遠不改選的萬年國會了?此時當然就必須有辨識多個車牌的能力了!而且這種應用情架下,辨識速度需求就很低,計算慢一點點根本無所謂。

上面已經證明我的核心有辨識多張車牌的能力,但畢竟還是會多花一點點時間,目前我這個功能是可以切換的選項,通常還是只辨識一張就結案換下一張的!如果客戶需要作在席監看使用時,這個功能才會被打開。最多多少張呢?理論上可以抓到沒有目標可以組合成車牌為止,下面是故意貼出來的五個車牌影像測試:

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

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