街景字符識別1-街景字符編碼SVHN

The Street View House Numbers (SVHN) Dataset是街景字符的數據集。該數據集用於modern-day map making。街景字符轉錄是字符序列識別問題。針對圖片序列識別問題傳統思路是定位、分割、識別,現在可以採用定長字符分類識別、CRNN不定長字符識別等方法。

問題描述:

  1. 零基礎入門CV賽事- 街景字符編碼識別要求選手識別圖片中所有的字符,爲了降低比賽難度,官方提供了訓練集、驗證集和測試集中所有字符的位置框。
  • 訓練集數據包括3W張照片,驗證集數據包括1W張照片,每張照片包括顏色圖像和對應的編碼類別和具體位置
  • 測試集A包括4W張照片,測試集B包括4W張照片
  • JSON標註中給出了訓練數據每張圖片對應的編碼標籤,和具體的字符框的位置(訓練集、測試集和驗證集都給出字符位置)。
  1. 另,圖片中不僅包含字符序列,還有門框等干擾信息,爲了提高準確率可根據JSON標註提供的數字框位置裁剪圖片,如:
    在這裏插入圖片描述在這裏插入圖片描述
  2. 另,由於街景字符對應門牌編號,字符串序列的任意錯誤直接導致地圖導航錯誤,因此街景字符識別以整體識別準確率爲評價指標,整體準確率越高則模型性能越佳。
    在這裏插入圖片描述

解決方案:

定長字符識別之多分類解決方案

Google2014年的論文《Multi-digit Number Recognition from Street View Imagery using Deep Convolutional Neural Networks》提出了基於深度卷積神經網絡的定長字符分類識別方法。
圖片中的字符串序列長度不定但不超過5個字符,可以將賽題抽象爲一個定長字符識別問題,待識別字符序列爲LXXXXX,其中

  • 每個X的取值範圍爲[0,1,2,3,4,5,6,7,8,9,空字符]
  • L代表字符串非空字符長度,取值範圍[0,1,2,3,4,5,’>5’]
    在這裏插入圖片描述定長字符識別的一種解決方案是直接對編碼圖片進行多分類操作(Multi-CNN):
  • 模型的輸入是1281283128*128*3的圖片,經過一系列的CNN層進行特徵提取,變成了一個含有4096個特徵的向量H
  • 根據這4096個特徵,分別經過6個Softmax層,分別對各個字符串進行分類(分別對5個X字符進行11個類別的分類以及1個L字符進行6個類別的分類。)
  • 將6個分類loss求和訓練即可。
    這種方法思路簡單,模型僅包含卷積層和全連接層,模型收斂快;但這種思路是將每個字符單獨進行分類的,所以沒有考慮到字符與字符之間的關係【這個主要存在於相關聯的words字符識別中,數字間不知道有啥關聯,難道第一個字符串代表長度,與後面位數的字符串存在關聯?】,在精度上有一些欠缺。

不定長字符識別解決方案

CRNN+CTC字符識別模型可以解決不定長的字符識別問題。CRNN模型包括去除全連接層的CNN提取輸入圖像的Convolutional feature maps,深層雙向LSTM網絡繼續提取序列特徵,最後將RNN輸出做softmax後,爲字符輸出。後面CTC的改進看不懂【CRNN+CTC更看不懂…
CRNN

檢測再識別解決方案

此種思路需要構建字符檢測模型,再對字符進行識別。物體檢測模型參考SSD或者YOLOFaster RCNN來完成。

參考

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章