1.車牌檢測和識別項目介紹
車牌的檢測和識別的應(yīng)用非常廣泛,比如交通違章車牌追蹤,小區(qū)或地下車庫門禁。在對車牌識別和檢測的過程中,因為車牌往往是規(guī)整的矩形,長寬比相對固定,色調(diào)紋理相對固定,常用的方法有:基于形狀、基于色調(diào)、基于紋理、基于文字特征等方法,近年來隨著深度學(xué)習(xí)的發(fā)展也會使用目標(biāo)檢測的一些深度學(xué)習(xí)方法。該項目主要的流程如下圖所示:
1.輸入原始圖片,通過二值化,邊緣檢測,和基于色調(diào)的顏色微調(diào)等辦法檢測出原圖中的車牌號的位置;
2.把檢測到的車牌(ROI)裁剪,為車牌號的識別做準(zhǔn)備;
3.基于裁剪的車牌號,使用直方圖的波峰波谷分割裁剪的車牌號(如上圖中的第3步)
4.訓(xùn)練機(jī)器學(xué)習(xí)模型做車牌識別,這里訓(xùn)練了2個SVM,一個SVM用來識別省份簡稱(如 魯),另一個SVM用來識別字母和數(shù)字。
5.通過PyQt5把整個算法封裝成GUI程序,并打包發(fā)布安裝軟件。
2.項目代碼解析
下圖描述了整個項目的代碼結(jié)構(gòu),可以訪問https://github.com/DataXujing/vehicle-license-plate-recognition 查看,其結(jié)構(gòu)如下:
3.項目演示
可以通過訪問項目地址 ( https://github.com/DataXujing/vehicle-license-plate-recognition )查看整個應(yīng)用,或者訪問安裝程序下載地址 (https://pan.baidu.com/s/1IazbGFLlQkb8BQmK_EAeRA 提取碼:v103 )安裝安裝程序進(jìn)行測試,這里展示一些識別結(jié)果和測試視頻:
4.TODO
目前識別的效果針對于某些場景下仍然很不理想,技術(shù)層面上的主要原因有兩個,一個是車牌檢測算法并沒有檢測到車牌(這主要是檢測算法的問題),可以嘗試一些目標(biāo)檢測的算法,比如Faster R-CNN(速度可能慢一些),YOLO系列, SSD系列等的經(jīng)典的目標(biāo)檢測算法,然后做矯正或進(jìn)一步的區(qū)域篩選;另一個原因是是在識別算法上,本次我們僅是基于少量的訓(xùn)練數(shù)據(jù)訓(xùn)練了SVM,可以嘗試增加訓(xùn)練集并把模型替換成一些更復(fù)雜的機(jī)器學(xué)習(xí)模型如XGBoost,LightGBM,CatBoost等模型或使用CNN訓(xùn)練一個多分類的深度學(xué)習(xí)模型, 亦或者是直接考慮一些基于Attention的CNN-RNN架構(gòu)的OCR識別模型。
-
python
+關(guān)注
關(guān)注
54文章
4759瀏覽量
84294 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5439瀏覽量
120794
發(fā)布評論請先 登錄
相關(guān)推薦
評論