概述
基于深度學(xué)習(xí)的車(chē)牌識(shí)別,其中,車(chē)輛檢測(cè)網(wǎng)絡(luò)直接使用YOLO偵測(cè)。而后,才是使用網(wǎng)絡(luò)偵測(cè)車(chē)牌與識(shí)別車(chē)牌號(hào)。
車(chē)牌的偵測(cè)網(wǎng)絡(luò),采用的是resnet18,網(wǎng)絡(luò)輸出檢測(cè)邊框的仿射變換矩陣,可檢測(cè)任意形狀的四邊形。
車(chē)牌號(hào)序列模型,采用Resnet18+transformer模型,直接輸出車(chē)牌號(hào)序列。
數(shù)據(jù)集上,車(chē)牌檢測(cè)使用CCPD 2019數(shù)據(jù)集,在訓(xùn)練檢測(cè)模型的時(shí)候,會(huì)使用程序生成虛假的車(chē)牌,覆蓋于數(shù)據(jù)集圖片上,來(lái)加強(qiáng)檢測(cè)的能力。
車(chē)牌號(hào)的序列識(shí)別,直接使用程序生成的車(chē)牌圖片訓(xùn)練,并佐以適當(dāng)?shù)膱D像增強(qiáng)手段。模型的訓(xùn)練直接采用端到端的訓(xùn)練方式,輸入圖片,直接輸出車(chē)牌號(hào)序列,損失采用CTCLoss。
一、網(wǎng)絡(luò)模型
1、車(chē)牌的偵測(cè)網(wǎng)絡(luò)模型:
網(wǎng)絡(luò)代碼定義如下:
該網(wǎng)絡(luò),相當(dāng)于直接對(duì)圖片劃分cell,即在16X16的格子中,偵測(cè)車(chē)牌,輸出的為該車(chē)牌邊框的反射變換矩陣。
2、車(chē)牌號(hào)的序列識(shí)別網(wǎng)絡(luò):
車(chē)牌號(hào)序列識(shí)別的主干網(wǎng)絡(luò):采用的是ResNet18+transformer,其中有ResNet18完成對(duì)圖片的編碼工作,再由transformer解碼為對(duì)應(yīng)的字符。
網(wǎng)絡(luò)代碼定義如下:
其中的Block類(lèi)的代碼如下:
位置編碼的代碼如下:
Block類(lèi)使用的自注意力代碼如下:
二、數(shù)據(jù)加載
1、車(chē)牌號(hào)的數(shù)據(jù)加載
同過(guò)程序生成一組車(chē)牌號(hào):
再通過(guò)數(shù)據(jù)增強(qiáng),
主要包括:
三、訓(xùn)練
分別訓(xùn)練即可
其中,偵測(cè)網(wǎng)絡(luò)的損失計(jì)算,如下:
偵測(cè)網(wǎng)絡(luò)輸出的反射變換矩陣,但對(duì)車(chē)牌位置的標(biāo)簽給的是四個(gè)角點(diǎn)的位置,所以需要響應(yīng)轉(zhuǎn)換后,做損失。其中,該cell是否有目標(biāo),使用CrossEntropyLoss,而對(duì)車(chē)牌位置損失,采用的則是L1Loss。
四、推理
1、偵測(cè)網(wǎng)絡(luò)的推理
按照一般偵測(cè)網(wǎng)絡(luò),推理即可。只是,多了一步將反射變換矩陣轉(zhuǎn)換為邊框位置的計(jì)算。
另外,在YOLO偵測(cè)到得測(cè)量圖片傳入該級(jí)進(jìn)行車(chē)牌檢測(cè)的時(shí)候,會(huì)做一步操作。代碼見(jiàn)下,將車(chē)輛檢測(cè)框的圖片扣出,然后resize到長(zhǎng)寬均為16的整數(shù)倍。
2、序列檢測(cè)網(wǎng)絡(luò)的推理
對(duì)網(wǎng)絡(luò)輸出的序列,進(jìn)行去重操作即可,如間隔標(biāo)識(shí)符為“*”時(shí):
完整代碼
https://github.com/HibikiJie/LicensePlate
審核編輯:陳陳
-
檢測(cè)系統(tǒng)
+關(guān)注
關(guān)注
3文章
974瀏覽量
43873 -
檢測(cè)識(shí)別
+關(guān)注
關(guān)注
0文章
9瀏覽量
7304 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5560瀏覽量
122746
原文標(biāo)題:基于深度學(xué)習(xí)的車(chē)牌檢測(cè)識(shí)別(Pytorch)(ResNet +Transformer)
文章出處:【微信號(hào):vision263com,微信公眾號(hào):新機(jī)器視覺(jué)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
【超值干貨】 揭秘車(chē)牌識(shí)別算法
Nanopi深度學(xué)習(xí)之路(1)深度學(xué)習(xí)框架分析
【HarmonyOS HiSpark AI Camera】基于深度學(xué)習(xí)的目標(biāo)檢測(cè)系統(tǒng)設(shè)計(jì)
基于深度學(xué)習(xí)的異常檢測(cè)的研究方法
射頻系統(tǒng)的深度學(xué)習(xí)【回映分享】
基于深度學(xué)習(xí)和3D圖像處理的精密加工件外觀缺陷檢測(cè)系統(tǒng)
什么是深度學(xué)習(xí)?使用FPGA進(jìn)行深度學(xué)習(xí)的好處?
【KV260視覺(jué)入門(mén)套件試用體驗(yàn)】六、VITis AI車(chē)牌檢測(cè)&車(chē)牌識(shí)別
如何使用深度學(xué)習(xí)進(jìn)行視頻行人目標(biāo)檢測(cè)

如何使用Python應(yīng)用軟件實(shí)現(xiàn)車(chē)牌檢測(cè)和識(shí)別
OpenCV使用深度學(xué)習(xí)做邊緣檢測(cè)的流程

車(chē)牌檢測(cè)系統(tǒng)

評(píng)論