不記得是幾月份了,king總接了一個私活,就是要求從地圖查詢的那些網站上獲取到地圖下來,然後 識別出地圖中的地名。需求很簡單的目標也很明確。king總貌似用了一個星期左右的時間就完成了。在此 佩服一下。
在此前我已經對圖像很有興趣,但是一直沒有機會練手,現在就king總上面的需求,我也來試試識別 地圖上的地名。
大概的思路如下:
把彩色的地圖圖像變換成灰度圖像,對灰度圖像進行二值化,去掉一些噪點,然後分割出單獨的地名 塊,把地名塊分割成單個中文字,得到這些中文字之後,利用BP神經網絡進行訓練以及後續的識別。關於 神經網絡的相關資料可以參考我的《人工神經網絡(Artificial Neural Netwroks)筆記》。
當然,因為常用的漢字就那麼幾千個,完全可以利用圖像的相似度來識別圖像中的文字,准確率也挺 高的,但是面對未知的文字也就無能為力了。。。當然這裡應用的神經網絡面對完全未知的樣本也是只能 無能為力,但是單純利用圖像的相似度的話,速度太慢了,畢竟每一個待識別的文字都需要遍歷一次樣本 集。神經網絡一下子就出來了。(識別的時候,兩層的BP神經網絡的時間復雜度是多少呢?和什麼有關呢 ?)
好了,下面是看看效果
原始圖像