網路城邦
上一篇 回創作列表 下一篇  字體:
為什麼我的軟體有「夜視」的功能?
2023/02/03 05:19:24瀏覽1608|回應0|推薦9

以一般人眼的識別能力來說,這張影像當然是太暗了!但是我的軟體似乎「無視」這種障礙?照樣很快地在大約0.1秒的時間內,就正確辨識出91萬畫素影像中的車牌!我有暗藏甚麼「AI」密技嗎?如我一向堅持的態度與說法:我不搞神祕的!我是老師,我直接告訴你!

同樣一張影像我拿到PhotoShop軟體中,做一點簡單的影像處理,車牌就會清晰到對任何人來說都不難辨識了!原理很簡單,原本正常影像亮度的分布範圍是0-255灰階的話,整張影像偏暗時,分布範圍可能就只侷限於0-50了?如果我把亮度50當作255顯示呢?把各個亮度都按比例變亮呢?那麼很暗的影像看起來也會變得對比強烈看得很清楚了!

那是不是表示我的軟體會做這些影像對比增強的處理呢?如果我要先做這種處理再辨識目標的話,那可忙了!首先我必須偵測整個影像的亮度概略平均值,才知道要怎麼調整亮度。要將91萬畫素的影像每個畫素亮度都做計算改成新的亮度值,那要花多少時間啊?怎麼可能還保持0.1秒的高速辨識效率呢?

所謂的「秘訣」其實大家都可以理解的!就是我根本沒做影像增強處理,也根本不需要做!因為重點是車牌字元的黑色與背景的白色「能否分辨」!不管影像多暗或多亮,只要字元與其背景有足夠的亮度差異我就可以切割出字元了!正常影像中這個差值可能是100多個灰階,昏暗影像中可能只是10個灰階,但是都沒關係,我即使將對比增強10倍,二值化的決策結果還是一樣的!如下圖。

既然我不必做任何影像處理,當然時間就很節省!換言之,如上圖的二值化結果,不管我做或不做影像對比增強處理,結果都是一樣的!這就是我的「秘訣」了!我極少必須做影像增強處理之後再進行辨識的!我也不必像CNN一樣需要用甚麼矩陣(卷積)掃描全圖好多次,所以辨識速度當然很快了!

這也說明了人眼與電腦辨識之間的一個差異,人眼面對的是類比資料,太暗的影像會讓我們很難看出明暗的對比界限,電腦辨識軟體時,面對的則是已經數位化的影像資料,即使很暗(或曝光過度很亮),只要亮度對比足夠分辨出字元與背景,我們就可以「看出」目標字元了!

有點像打撲克牌比大小,或許一般人的感覺上10點對上2點是大勝,3點對上2點則是險勝!但是以電腦程式的觀點,贏就是贏了!10:2或3:2辨識的結果都會完全一樣的!所以不必再驚訝我的夜視功能了!很容易懂的!跟甚麼夜視鏡、紅外線或影像增強處理都沒關係的!只是二值化原理的聰明使用而已。

影像辨識絕對可以這麼直覺簡單做出來的!你還是喜歡用CNN或DL嗎?我只能說那是你死腦筋,因為實務上99%的情況下其實是沒必要的!你只會被累死,效果還未必比較好!建議你先你用傳統的影像辨識方法處理問題,如果真的搞不定時再考慮用CNN吧?那是成本極高而且效果很不確定的方向。

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

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