網路城邦
上一篇 回創作列表 下一篇   字體:
即使是九死一生的艱難辨識,也不必以高運算量為代價的!
2026/07/20 10:08:47瀏覽423|回應0|推薦17

這張模糊的影像能夠正確辨識成功讓我十分振奮!因為我的舊版是會花上近700毫秒還是無法辨識黯然認輸的!為何會花那麼多時間?原因是舊版碰到失敗時的主要對策是改用不同的二值化策略,升降二值化門檻,或先對灰階圖做銳利化處理等等。總之都要回到辨識流程起點的二值化步驟再來一次!舊版的單一辨識流程就需要一百多毫秒,五六個策略都試過無效才認輸,當然就是六七百毫秒了!

這個策略潛藏的最大問題是:如果是一張根本沒有車牌,或是模糊到根本無法辨識的案例就會卡關太久!比正常辨識時間多上好幾倍!如果是不趕時間的靜態影像後處理還好,一張影像辨識幾秒鐘都沒人抗議!但是用在需要趕時間盡量快速辨識的動態辨識軟體上,如車載車牌辨識就不妙了!會大幅拖慢整體速度的!所以我的動態軟體通常限制只用一個最佳的二值化策略

這次改版我就很想徹底解決這個沉痾!我希望把多二值化策略簡化到最多只用兩個!很有趣的是:這種狀況很像原始的CNN架構因為不知道目標的實際大小!所以做Convolution特徵矩陣掃描時必須用好幾種尺度掃描好幾次!那實在是太慢太浪費運算量了!所以才會逼出所謂的YOLO(You Only Look Once)技術,就是只用一個矩陣尺度掃描全圖一次!希望可以用較少的計算量達到多次掃描的目的!

我的作法當然會降低極端模糊狀況的辨識率的!如何在簡化的架構下救回更多邊緣模糊的案例呢?就是更大量使用CNN的特徵矩陣搜尋概念幫忙了!如上案例就是使用更少的初始線索,事實上只有找到一個清楚可以辨識的字元7,但是根據這個7做出更大膽的假設推理,以此字為模板在周邊搜索出所有可能存在的字元

因為這是依附在主流程上的例外處理步驟,所以銷耗時間有限!就像是進行更多更精緻的微創手術,避免大開刀需要做的很多麻煩工作一樣!效果其實比我預期得還好!所以此例才能超越舊版,真的辨識出正確的答案!更重要的是時間只需88毫秒!徹底擺脫了舊版只要碰到難辨識的案例必然會拖很久的弊病!

可以看出我和那些崇尚使用CNNDL的AI專家們思考方向是很不一樣的!他們面對計算量爆表時的態度是傾向找到更多週邊設備來分散與消化這些計算量!所謂的邊緣運算GPU的輔助機制就應運而生了!但這並不是真正好的釜底抽薪之計!如果可以從精進演算法本身的角度切入,專注研究如何用更少的計算量達到一樣或更高的目標,那當然會更有價值與意義!

這就是我一直堅持,也真的不斷落地實踐有成的重要影像辨識理念了!我不會做虛假膚淺膨風的廣告!我認為我的辨識產品真的比較好時,我就會這樣跟大家說清楚講明白我是怎麼作到的?因為這些都是事實,所以真金不怕火煉!如果你有需要用卻不太相信我的軟體真的那麼強?我可以讓你免費試用一個月的!

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

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