吳志偉,高 達(dá),劉慧賢,張佳歡
(1. 中國鐵道科學(xué)研究院集團(tuán)有限公司 電子計(jì)算技術(shù)研究所,北京 100081; 2. 中國鐵道科學(xué)研究院集團(tuán)有限公司 國家鐵路智能運(yùn)輸系統(tǒng)工程技術(shù)研究中心,北京 100081)
近年來,我國鐵路貨物運(yùn)輸持續(xù)保持高位運(yùn)行,對(duì)貨運(yùn)列車進(jìn)行編組及號(hào)碼核對(duì)是提升貨運(yùn)效率的一項(xiàng)有效措施。鐵路貨車車號(hào)是指鐵路運(yùn)輸中用于標(biāo)識(shí)貨車的編號(hào),通常由字母和數(shù)字組成,可以用來標(biāo)識(shí)貨車的所有者、類型、用途等信息,在鐵路運(yùn)輸系統(tǒng)中具有重要意義,可用于跟蹤貨物在鐵路運(yùn)輸過程中的位置和狀態(tài)[1],并為物流管理提供重要信息[2-3]。目前,大多數(shù)鐵路系統(tǒng)使用射頻識(shí)別(RFID)技術(shù)來實(shí)現(xiàn)車號(hào)的自動(dòng)識(shí)別[4],這種方法能夠快速精確識(shí)別車號(hào),但需在貨車上安裝額外的硬件,增加成本。隨著人工智能技術(shù)的發(fā)展,基于計(jì)算機(jī)視覺的號(hào)碼識(shí)別方法因其高準(zhǔn)確率、低硬件成本的特點(diǎn),受到了越來越多的關(guān)注[5-6]。相比RFID,視覺識(shí)別方法實(shí)現(xiàn)簡(jiǎn)單,通常不需要額外的硬件設(shè)備,維護(hù)也可以通過軟件更新的方式,節(jié)約了成本和預(yù)算[7-8]。
目前,基于計(jì)算機(jī)視覺技術(shù)的號(hào)碼識(shí)別方法在鐵路運(yùn)輸?shù)膽?yīng)用場(chǎng)景下取得了一定進(jìn)展,包括通過使用聚類算法改進(jìn)設(shè)計(jì)、改進(jìn)邊緣檢測(cè),結(jié)合先驗(yàn)知識(shí),采用神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)車號(hào)單字識(shí)別,利用二值圖像對(duì)號(hào)碼識(shí)別優(yōu)化等[9-10]。在此基礎(chǔ)上,結(jié)合鐵路貨運(yùn)站場(chǎng)作業(yè)的現(xiàn)實(shí)情況,基于深度學(xué)習(xí)算法,設(shè)計(jì)實(shí)現(xiàn)鐵路貨車的多類別號(hào)碼識(shí)別方法,以更好實(shí)現(xiàn)對(duì)多類別號(hào)碼識(shí)別功能。
在鐵路貨運(yùn)站場(chǎng)中,貨車的號(hào)碼識(shí)別中面臨許多挑戰(zhàn)。由于長時(shí)間工作暴露在戶外復(fù)雜環(huán)境,貨車車號(hào)容易臟污和損壞,可能導(dǎo)致一些字符難以識(shí)別;受自然條件影響,現(xiàn)場(chǎng)拍攝的圖像可能存在對(duì)比度低、模糊和過度曝光等現(xiàn)象[11];噴涂號(hào)碼的載體多樣,存在不同箱型或采用不同噴涂方式。
針對(duì)以上問題,提出一種基于深度學(xué)習(xí)的鐵路貨車多類別號(hào)碼識(shí)別方法,鐵路貨車車號(hào)識(shí)別流程如圖1 所示。該方法通過攝像機(jī)等設(shè)備采集車輛圖片或視頻,然后使用計(jì)算機(jī)視覺技術(shù)進(jìn)行號(hào)碼識(shí)別,方法流程包括圖像預(yù)處理,使用改進(jìn)的Faster R-CNN 網(wǎng)絡(luò)進(jìn)行車號(hào)檢測(cè),并利用卷積循環(huán)神經(jīng)網(wǎng)絡(luò)(Convolution Recurrent Neural Network,CRNN)進(jìn)行車號(hào)識(shí)別。
圖1 鐵路貨車車號(hào)識(shí)別流程Fig.1 Number recognition process of railway freight cars
(1)在圖像預(yù)處理階段,采用基于顏色特征的圖像預(yù)處理方法,強(qiáng)化號(hào)碼區(qū)域的對(duì)比度,減弱號(hào)牌磨損對(duì)識(shí)別效果的影響。
(2)在車號(hào)檢測(cè)階段,主要利用Faster R-CNN為基本框架,F(xiàn)aster R-CNN 是一種常用的目標(biāo)檢測(cè)算法,它通過使用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)對(duì)圖像進(jìn)行特征提取,然后使用區(qū)域建議網(wǎng)絡(luò)(Region Proposal Network,RPN)生成候選區(qū)域,最后使用這些候選區(qū)域來預(yù)測(cè)目標(biāo)的位置和類別。車號(hào)檢測(cè)中以Faster R-CNN 為基本框架,通過減少網(wǎng)絡(luò)參數(shù)量,強(qiáng)化目標(biāo)車號(hào)區(qū)域特征,多尺度訓(xùn)練策略,以及空間姿態(tài)糾正網(wǎng)絡(luò),提升網(wǎng)絡(luò)的訓(xùn)練效率和檢測(cè)準(zhǔn)確率。
(3)在車號(hào)識(shí)別階段,將檢測(cè)出的號(hào)碼圖像輸入到CRNN 網(wǎng)絡(luò)中進(jìn)行車號(hào)的精準(zhǔn)識(shí)別,其中CRNN網(wǎng)絡(luò)是一種序列識(shí)別模型,可以用于識(shí)別圖像中的文本。
鐵路貨車運(yùn)行條件復(fù)雜,惡劣的運(yùn)行環(huán)境及貨物的裝卸對(duì)于車廂的磨損往往會(huì)造成車號(hào)字符顏色淡化,會(huì)對(duì)目標(biāo)區(qū)域的檢測(cè)造成不利影響。圖像預(yù)處理是指對(duì)圖像進(jìn)行處理以便更好地進(jìn)行圖像識(shí)別的一系列操作。在貨車車號(hào)識(shí)別中,基于顏色特征的圖像預(yù)處理可以用來降低背景干擾,并突出車號(hào)區(qū)域的對(duì)比度,從而提高后續(xù)車號(hào)檢測(cè)和識(shí)別的準(zhǔn)確性。輸入圖像通常是彩色的,即使用RGB 三通道表示的圖像。預(yù)處理流程如圖2所示。
圖2 預(yù)處理流程Fig.2 Pretreatment process
(1)圖像灰度化處理。將采集到的RGB 彩色圖像轉(zhuǎn)換為灰度圖像,灰度圖中每個(gè)像素的值表示該像素在灰度級(jí)別上的亮度,降低圖像復(fù)雜度,突出圖像亮度特征?;叶然梢酝ㄟ^平均法、加權(quán)平均法等方法實(shí)現(xiàn)。
(2)濾波降噪。實(shí)際采集的圖像會(huì)受到大量噪聲的影響,為了使圖像平滑可以采用濾波的方法來對(duì)圖像進(jìn)行增強(qiáng)。因此,在二值化后采用濾波降噪,常用的濾波降噪方法包括均值濾波、中值濾波和高斯濾波等。
(3)圖像二值化處理。將灰度圖像轉(zhuǎn)換為二值圖像。二值化的目的是將圖像中的復(fù)雜細(xì)節(jié)信息轉(zhuǎn)換為簡(jiǎn)單的黑白像素信息,增強(qiáng)圖像對(duì)比度,將前景與背景分離,使得形態(tài)學(xué)操作更加高效和準(zhǔn)確。二值化可以使用全局二值化、局部二值化等方法實(shí)現(xiàn)。
(4)形態(tài)學(xué)降噪與增強(qiáng)。由于二值化處理會(huì)使得圖像中出現(xiàn)一些孤立的噪點(diǎn)或細(xì)小的區(qū)域,因此需要先進(jìn)行形態(tài)學(xué)降噪處理,再進(jìn)行后續(xù)的字符定位。在鐵路貨車車號(hào)識(shí)別中,采用開運(yùn)算和閉運(yùn)算,可以有效地去除車號(hào)周圍的雜亂噪聲和保留車號(hào)區(qū)域的整體形狀。
圖像預(yù)處理具體流程內(nèi)各階段的方法對(duì)比如表1所示。根據(jù)表1 分析,設(shè)計(jì)圖像預(yù)處理具體方法步驟如圖3所示。
表1 圖像預(yù)處理具體流程內(nèi)各階段的方法對(duì)比Table 1 Comparison of methods used in different stages of the specific process for image preprocessing
圖3 預(yù)處理具體方法步驟Fig.3 Preprocessing specific methods and steps
Faster R-CNN 是一種高效地用于目標(biāo)檢測(cè)的深度學(xué)習(xí)網(wǎng)絡(luò),由Ren 等人于2015 年提出,并在隨后的工作中不斷改進(jìn)。Faster R-CNN 網(wǎng)絡(luò)由2 個(gè)主要部分組成:RPN 網(wǎng)絡(luò)、分類和位置回歸子網(wǎng)絡(luò)。RPN 網(wǎng)絡(luò)通過CNN 網(wǎng)絡(luò)提取圖像的特征,然后通過全卷積層產(chǎn)生大量的候選區(qū)域,每個(gè)候選區(qū)域都是由1 個(gè)矩形框來表示。分類和位置回歸子網(wǎng)絡(luò),則使用這些候選區(qū)域,通過CNN 網(wǎng)絡(luò)預(yù)測(cè)每個(gè)候選區(qū)域的類別和位置。最終,F(xiàn)aster R-CNN 網(wǎng)絡(luò)會(huì)輸出每個(gè)候選區(qū)域的類別和位置信息。
Faster R-CNN在通用目標(biāo)檢測(cè)領(lǐng)域取得了優(yōu)異的表現(xiàn),但是在應(yīng)用于鐵路貨車車號(hào)區(qū)域檢測(cè)時(shí),該模型并不能直接達(dá)到理想的效果,存在以下問題:①Faster R-CNN網(wǎng)絡(luò)的參數(shù)過多,導(dǎo)致實(shí)時(shí)性不足,檢測(cè)識(shí)別速度較慢;②鐵路貨車圖像數(shù)據(jù)量小,缺乏充足的樣本進(jìn)行模型訓(xùn)練和測(cè)試;③對(duì)鐵路貨車號(hào)碼在不同姿態(tài)下的變形情況不敏感,漏識(shí)別和誤識(shí)別率較高。因此,為了提高Faster R-CNN網(wǎng)絡(luò)檢測(cè)的速度和準(zhǔn)確率,設(shè)計(jì)字符檢測(cè)整體網(wǎng)絡(luò)架構(gòu)如圖4所示,對(duì)Faster R-CNN網(wǎng)絡(luò)做出深度可分離卷積、前景特征強(qiáng)化及多尺度訓(xùn)練策略、空間姿態(tài)糾正網(wǎng)絡(luò)等方面改進(jìn)。
圖4 字符檢測(cè)整體網(wǎng)絡(luò)架構(gòu)Fig.4 Overall network architecture of character detection
為了同時(shí)滿足鐵路貨車車號(hào)識(shí)別的實(shí)時(shí)性和精度要求,在VGG-16 特征提取網(wǎng)絡(luò)的基礎(chǔ)上引入了深度可分離卷積的思想[13],構(gòu)建輕量級(jí)的特征提取網(wǎng)絡(luò)。這樣可以減少網(wǎng)絡(luò)的運(yùn)算參數(shù),從而提高識(shí)別的效率。深度可分離卷積框架如圖5 所示,對(duì)于標(biāo)準(zhǔn)卷積層來說,每個(gè)輸入通道都使用一個(gè)特定的卷積核進(jìn)行卷積運(yùn)算,并將所有通道的卷積結(jié)果求和得到最終輸出,而深度可分離卷積與標(biāo)準(zhǔn)卷積層不同,它核心思想是將一個(gè)標(biāo)準(zhǔn)的卷積核分解為多個(gè)小卷積核,每個(gè)小卷積核負(fù)責(zé)處理輸入圖像的一個(gè)特定的通道,在并行計(jì)算中更快地提取圖像的特征,從而加速深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練和推理過程。
圖5 深度可分離卷積框架Fig.5 Deep separable convolution framework
前景特征強(qiáng)化如圖6 所示,在模型訓(xùn)練時(shí),對(duì)圖像預(yù)處理后,為了減少標(biāo)注框內(nèi)背景區(qū)域?qū)δ繕?biāo)特征提取的影響,采取保留車號(hào)字符及其周圍若干像素區(qū)域的像素不變,而將標(biāo)注框內(nèi)的背景區(qū)域像素置零,這樣就可以更加專注于對(duì)目標(biāo)特征的學(xué)習(xí)。
圖6 前景特征強(qiáng)化Fig.6 Enhanced foreground features
多尺度訓(xùn)練策略是一種訓(xùn)練機(jī)器學(xué)習(xí)模型的策略,為了提高改進(jìn)的Faster R-CNN 網(wǎng)絡(luò)模型的泛化能力,通過訓(xùn)練模型來識(shí)別不同尺度的數(shù)據(jù),讓模型在處理各種尺度的輸入時(shí)都能表現(xiàn)出良好的性能。具體而言,給定圖像的短邊尺度分別是480 px,600 px,750 px,800 px,850 px,920 px,鎖定圖像寬高比對(duì)數(shù)據(jù)集進(jìn)行尺寸調(diào)整。在每批次訓(xùn)練迭代開始前,重新隨機(jī)更換上述尺度集中的一個(gè)尺度,然后將該尺度作為輸入給網(wǎng)絡(luò)進(jìn)行訓(xùn)練。這種策略可以幫助模型更好地應(yīng)對(duì)多尺度的輸入,從而更高效地處理不同輸入的鐵路貨車車號(hào)目標(biāo)定位。
為了應(yīng)對(duì)鐵路貨車號(hào)碼在不同姿態(tài)下的變形情況,設(shè)計(jì)并引入了一個(gè)空間姿態(tài)糾正網(wǎng)絡(luò)。空間姿態(tài)糾正網(wǎng)絡(luò)如圖7 所示,該網(wǎng)絡(luò)主要由3 部分組成:定位網(wǎng)絡(luò)、格點(diǎn)生成器、采樣器。定位網(wǎng)絡(luò)根據(jù)輸入特征圖生成空間糾正參數(shù)θ,格點(diǎn)生成器根據(jù)糾正參數(shù)θ得到糾正后像素點(diǎn)與原始像素點(diǎn)的對(duì)應(yīng)關(guān)系,采樣器則生成糾正后的特征圖。通過采用這種方法,可以更好地處理不同姿態(tài)下鐵路貨車號(hào)碼的變形問題。
圖7 空間姿態(tài)糾正網(wǎng)絡(luò)Fig.7 Space attitude correction network
CRNN 網(wǎng)絡(luò)是一種神經(jīng)網(wǎng)絡(luò)架構(gòu),它結(jié)合了CNN 和循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)的優(yōu)勢(shì),通常用于手寫文本識(shí)別、機(jī)打文本識(shí)別和自然圖像的光學(xué)字符識(shí)別(Optical Character Recognition,OCR)等任務(wù)。
卷積字符識(shí)別整體網(wǎng)絡(luò)架構(gòu)如圖8所示。CRNN的核心思想是認(rèn)為字符識(shí)別本質(zhì)上是對(duì)序列的預(yù)測(cè)方法,CRNN的體系結(jié)構(gòu)通常包括3個(gè)模塊:卷積層、循環(huán)層和輸出層。卷積層主要是CNN特征提取器,從輸入圖像中提取視覺特征信息;循環(huán)層的RNN序列模型選用BLSTM,將CNN提取的特征作為輸入,并產(chǎn)生一系列隱藏狀態(tài),以捕獲特征之間的時(shí)間依賴性;輸出層通常由一個(gè)具有SoftMax激活函數(shù)的全連接層組成,用于預(yù)測(cè)可能的輸出字符或單詞的概率分布。
圖8 卷積字符識(shí)別整體網(wǎng)絡(luò)架構(gòu)Fig.8 The overall architecture of the Convolutional Character Recognition Network
對(duì)于鐵路貨車車號(hào)識(shí)別模型的訓(xùn)練,使用預(yù)訓(xùn)練的模型來節(jié)省訓(xùn)練時(shí)間,并獲得較好的初始性能,使模型具有較好的泛化能力。在通用車牌數(shù)據(jù)集CCPD 上預(yù)訓(xùn)練Faster R-CNN+CRNN 模型,以獲得較好的泛化能力,然后在自構(gòu)建的鐵路貨車數(shù)據(jù)集上進(jìn)行微調(diào)使其能夠更好地適應(yīng)鐵路貨車車號(hào)識(shí)別任務(wù)。
(1)CCPD數(shù)據(jù)集。CCPD數(shù)據(jù)集是一個(gè)用于車牌識(shí)別研究的數(shù)據(jù)集[14],該數(shù)據(jù)集是采集人員在合肥停車場(chǎng)采集、手工標(biāo)注得來,采集時(shí)間在7:30—22:00 之間。且拍攝車牌照片的環(huán)境復(fù)雜多變,包括雨天、雪天、傾斜、模糊等。CCPD數(shù)據(jù)集包含將近30萬張圖片、圖片尺寸為720×1 160×3 channels,共包含8 種類型圖片。
(2)鐵路貨車車號(hào)數(shù)據(jù)集。構(gòu)建鐵路貨車車號(hào)識(shí)別任務(wù)數(shù)據(jù)集,對(duì)采集的鐵路貨車圖像經(jīng)過了多種處理,包括顏色變換、添加噪聲、旋轉(zhuǎn)、縮放等,對(duì)數(shù)據(jù)進(jìn)行擴(kuò)充[15]。數(shù)據(jù)集中的圖像已經(jīng)進(jìn)行了人工標(biāo)注,即在圖像中標(biāo)出了車號(hào)的位置和字符信息,鐵路貨車車號(hào)數(shù)據(jù)集中不同車型圖片數(shù)量情況如表2 所示,共有2 300 張包括平車、棚車、罐車在內(nèi)的貨車車號(hào)圖像,其中1 900 張圖片用于號(hào)碼識(shí)別方法訓(xùn)練,380張圖片用于號(hào)碼識(shí)別方法測(cè)試。
表2 鐵路貨車車號(hào)數(shù)據(jù)集中不同車型圖片數(shù)量情況 張Tab.2 Number of pictures of different vehicle models of railway freight car number dataset
(1)評(píng)價(jià)指標(biāo)。評(píng)價(jià)指標(biāo)是衡量模型性能和效果的重要標(biāo)準(zhǔn)。選用的評(píng)價(jià)指標(biāo)包括召回率、精確率、F1 分?jǐn)?shù)等。其中召回率和精確率是二分類問題中常用的評(píng)價(jià)指標(biāo),用于衡量分類器的性能和準(zhǔn)確性;F1 分?jǐn)?shù)是綜合考慮召回率和精確率的評(píng)價(jià)指標(biāo),可以更全面地評(píng)估分類器的性能。
召回率(Recall)表示模型正確預(yù)測(cè)的正例數(shù)量占所有正例的數(shù)量的比例,召回率越高,說明模型在識(shí)別正例方面的表現(xiàn)越好,其計(jì)算公式為
式中:Recall表示召回率。
精確率(Precision)表示模型預(yù)測(cè)的正例數(shù)量占模型所有預(yù)測(cè)的類別數(shù)量的比例,精確率越高,說明模型在識(shí)別正例方面的表現(xiàn)越好,其計(jì)算公式為
式中:Precision表示精確率。
F1 分?jǐn)?shù)(F1 Score)是精確率和召回率的調(diào)和平均值,可以用來衡量模型的總體性能。F1 Score 計(jì)算公式為
式中:F1Score表示F1分?jǐn)?shù)。
準(zhǔn)確率(ACC)是模型預(yù)測(cè)正確的類別數(shù)量占模型總預(yù)測(cè)數(shù)量的比例,準(zhǔn)確率越高,說明模型在識(shí)別類別方面的表現(xiàn)越好,其計(jì)算公式為
式中:ACC表示準(zhǔn)確率。
損失值(Loss)表示預(yù)測(cè)與實(shí)際數(shù)據(jù)的差距程度,Loss 越小,模型就越準(zhǔn)確。采用負(fù)對(duì)數(shù)似然損失函數(shù),計(jì)算公式為
式中:Loss表示損失值;X表示輸入樣本;Y表示X的標(biāo)簽;D表示數(shù)據(jù)集。
(2)車號(hào)檢測(cè)結(jié)果分析。車號(hào)檢測(cè)模型對(duì)比如表3 所示,對(duì)比2 種車號(hào)檢測(cè)模型在測(cè)試過程中的召回率、精確率、F1分?jǐn)?shù)和處理時(shí)間,可以看出,研究選用的Faster R-CNN+CRNN 模型檢測(cè)方法具有較高的召回率和準(zhǔn)確率,并且在F1分?jǐn)?shù)上和處理時(shí)間上優(yōu)于Faster R-CNN。這表明,該車號(hào)檢測(cè)網(wǎng)絡(luò)具有較高的檢測(cè)準(zhǔn)確率和較快的檢測(cè)速度。
表3 車號(hào)檢測(cè)模型對(duì)比Tab.3 Comparision of train No. test models
(3)號(hào)碼識(shí)別結(jié)果分析。號(hào)碼識(shí)別測(cè)試損失值和準(zhǔn)確率如圖9 所示,可以看出,在大約50 輪迭代后,模型的準(zhǔn)確率達(dá)到了0.954 0,平均損失降至了0.027。此外,模型的平均識(shí)別速度為20.24 張/s。這表明,該號(hào)碼識(shí)別網(wǎng)絡(luò)在訓(xùn)練過程中已經(jīng)達(dá)到了收斂,并且具有較高的識(shí)別準(zhǔn)確率和較快的識(shí)別速度。號(hào)碼識(shí)別效果如圖10所示。
圖9 號(hào)碼識(shí)別測(cè)試損失值和準(zhǔn)確率Fig.9 Loss and ACC of number recognition model
圖10 號(hào)碼識(shí)別效果Fig.10 Number recognition effect
提出一種基于深度學(xué)習(xí)的鐵路貨車號(hào)碼識(shí)別方法,旨在解決鐵路貨運(yùn)站場(chǎng)中的多類別號(hào)牌精準(zhǔn)識(shí)別問題,該方法運(yùn)用圖像預(yù)處理、使用改進(jìn)的Faster R-CNN 網(wǎng)絡(luò)進(jìn)行車號(hào)檢測(cè)、使用CRNN 網(wǎng)絡(luò)進(jìn)行車號(hào)識(shí)別。實(shí)驗(yàn)選取公開數(shù)據(jù)集CCPD 對(duì)深度學(xué)習(xí)模型進(jìn)行預(yù)訓(xùn)練,再通過目標(biāo)鐵路貨車數(shù)據(jù)集對(duì)模型進(jìn)行精準(zhǔn)微調(diào),實(shí)驗(yàn)結(jié)果表明,提出的方法對(duì)多種類別號(hào)牌有較高的識(shí)別準(zhǔn)確率,在噴涂磨損、光照不足等多種不良條件下均能保持良好的性能。經(jīng)過進(jìn)一步訓(xùn)練和驗(yàn)證,本研究方法也可用于集裝箱箱號(hào)、汽車車牌號(hào)的識(shí)別,未來可在識(shí)別方法應(yīng)用廣度上進(jìn)行進(jìn)一步探索研究。