Unet車牌分割,矯正







向AI轉型的程序員都關注了這個號👇👇👇python

人工智能大數據與深度學習  公衆號:datayx程序員



1.車牌定位

首先貼一下圖像分割的效果圖:web


咱們能夠經過圖像分割算法對一張輸入圖片進行分割,分割後的圖形實際上是對原圖中的區域進行的分類標註,例如這裏咱們能夠將原圖標註爲2類,一類就是車牌區域,還有一類就是無關的背景區域。說到標註圖形就不得不說labelme了,咱們能夠在cmd界面經過命令 pip install labelme 進行labelme庫的安裝,安裝結束在cmd界面輸入labelme便可打開lablem軟件的標註界面以下:面試





1. 點擊OpenDir ,選擇咱們準備好的車輛數據集(注意:必定要先把圖片全都resize爲訓練時所需的大小,再進行標註。咱們知道圖片數據的範圍是0-255,背景爲黑色0,車牌區域爲255,咱們須要的是標註好的圖片即img_mask中值只有{0,255}這2種,若是咱們不先resize,標註完再resize會致使一個大問題,就是數據的值並非二類,會出現{0,1,10,248,251,255}等相似的多值問題,我在以前就遇到這樣的問題,不得已又從新標註了300多張圖)算法

2. 點擊左上角File—>將Save Automatically勾選上,點擊Change Output Dir選擇保存路徑,我這裏是在桌面D:/desktop/下新建了一個文件夾命名爲labelme,在labelm文件夾中新建了一個json文件夾用於保存咱們標註的json數據,這裏咱們Change Output Dir的保存路徑就選它,還新建了一個data文件夾用於存放後續轉換的圖片數據,而待標註圖片在pic文件中,存放的都是resize好的512×512的圖片,命名格式最好像我這樣json






3. 準備好上述一切就能夠開始標註了,點擊軟件左側的   這是畫任意多邊形的按鈕,鼠標左鍵點擊進行標註,最後雙擊鼠標左鍵會鎖定標註區域,出現以下圖界面,第一次標註需輸入名稱,後續標註就自動顯示了,點擊ok後標註的線條變爲紅色,同時json文件夾也會相應保存和pic名字對應的json文件:flask





4. 所有標註結束後,使用以下代碼將json數據提取出來並保存到train_image和train_label文件夾中,u-net部分的數據集我一共標註了1200多張,最終效果很棒,達到了定位的效果。瀏覽器


標註好的u-net訓練圖片就準備好了,分別在train_image和train_label文件夾中,一併放在unet_datasets文件夾內,以下圖所示:
微信




接下來是u-net模型搭建和訓練,使用tensorflow的keras實現,貼一下我訓練u-net用的代碼:網絡




代碼 ,模型 獲取方式

關注微信公衆號 datayx  而後回覆 unet 便可獲取。

AI項目體驗地址 https://loveai.tech



2.車牌矯正


訓練u-net獲得unet.h5

u-net分割和cv2矯正的代碼


上述代碼關鍵部分是要獲取車牌四邊形的四個頂點,一開始只使用cont中座標到外接矩形四個端點的距離,發現對於傾斜度很高的車牌效果可能不佳,見下圖,能夠觀察到,計算獲得的4個黃色座標中,左右有2個黃色點並不處在四邊形的頂點位置,這樣矯正效果大打折扣,同時也會影響後續的識別效果



發現上述問題後,我又想了個方法就是加入了上述的point_to_line_distance函數,即還計算座標點到上下兩條邊的距離,並添加了權重,通過調整權重設置爲0.975倍的點線距離,0.025點到端點距離時總體效果較佳,最終矯正效果以下圖:



矯正效果大大改善後,識別率也將大大提升。

最終運行後上述代碼後,提取的license文件夾中的車牌圖以下:






閱讀過本文的人還看了如下文章:


TensorFlow 2.0深度學習案例實戰


基於40萬表格數據集TableBank,用MaskRCNN作表格檢測


《基於深度學習的天然語言處理》中/英PDF


Deep Learning 中文版第一版-周志華團隊


【全套視頻課】最全的目標檢測算法系列講解,通俗易懂!


《美團機器學習實踐》_美團算法團隊.pdf


《深度學習入門:基於Python的理論與實現》高清中文PDF+源碼


特徵提取與圖像處理(第二版).pdf


python就業班學習視頻,從入門到實戰項目


2019最新《PyTorch天然語言處理》英、中文版PDF+源碼


《21個項目玩轉深度學習:基於TensorFlow的實踐詳解》完整版PDF+附書代碼


《深度學習之pytorch》pdf+附書源碼


PyTorch深度學習快速實戰入門《pytorch-handbook》


【下載】豆瓣評分8.1,《機器學習實戰:基於Scikit-Learn和TensorFlow》


《Python數據分析與挖掘實戰》PDF+完整源碼


汽車行業完整知識圖譜項目實戰視頻(全23課)


李沐大神開源《動手學深度學習》,加州伯克利深度學習(2019春)教材


筆記、代碼清晰易懂!李航《統計學習方法》最新資源全套!


《神經網絡與深度學習》最新2018版中英PDF+源碼


將機器學習模型部署爲REST API


FashionAI服裝屬性標籤圖像識別Top1-5方案分享


重要開源!CNN-RNN-CTC 實現手寫漢字識別


yolo3 檢測出圖像中的不規則漢字


一樣是機器學習算法工程師,你的面試爲何過不了?


前海徵信大數據算法:風險機率預測


【Keras】完整實現‘交通標誌’分類、‘票據’分類兩個項目,讓你掌握深度學習圖像分類


VGG16遷移學習,實現醫學圖像識別分類工程項目


特徵工程(一)


特徵工程(二) :文本數據的展開、過濾和分塊


特徵工程(三):特徵縮放,從詞袋到 TF-IDF


特徵工程(四): 類別特徵


特徵工程(五): PCA 降維


特徵工程(六): 非線性特徵提取和模型堆疊


特徵工程(七):圖像特徵提取和深度學習


如何利用全新的決策樹集成級聯結構gcForest作特徵工程並打分?


Machine Learning Yearning 中文翻譯稿


螞蟻金服2018秋招-算法工程師(共四面)經過


全球AI挑戰-場景分類的比賽源碼(多模型融合)


斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)


python+flask搭建CNN在線識別手寫中文網站


中科院Kaggle全球文本匹配競賽華人第1名團隊-深度學習與特徵工程



不斷更新資源

深度學習、機器學習、數據分析、python

 搜索公衆號添加: datayx  



機大數據技術與機器學習工程

 搜索公衆號添加: datanlp

長按圖片,識別二維碼



本文分享自微信公衆號 - 機器學習AI算法工程(datayx)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。

相關文章
相關標籤/搜索