本發(fā)明涉及數(shù)據(jù)處理的技術(shù)領(lǐng)域,特別涉及一種基于深度學(xué)習(xí)的車牌分類方法及系統(tǒng)。
背景技術(shù):
目前,保險公司在相關(guān)車險業(yè)務(wù)(例如,車險理賠業(yè)務(wù))中,會獲取大量的理賠車輛照片,保險公司為了有效管理理賠車輛照片,通常的做法是采用人工方式確定出各個理賠車輛照片中相關(guān)車輛的用途(例如,貨車用途、警務(wù)用途、私家車用途、軍務(wù)用途等),然后根據(jù)車輛的用途對理賠車輛照片進(jìn)行人工分類,這種做法不僅會耗費大量的人力物力,而且容易出錯。
技術(shù)實現(xiàn)要素:
鑒于以上內(nèi)容,有必要提供一種基于深度學(xué)習(xí)的車牌分類方法及系統(tǒng),其能準(zhǔn)確自動識別出照片中的車輛用途,并能準(zhǔn)確分類,提高了準(zhǔn)確率及工作效率。
一種基于深度學(xué)習(xí)的車牌分類方法,應(yīng)用于電子裝置中,所述方法包括:
獲取終端設(shè)備發(fā)送的至少一張照片;
對獲取的至少一張照片進(jìn)行預(yù)處理以使得預(yù)處理后的所述至少一張照片與預(yù)先訓(xùn)練的識別模型的輸入?yún)?shù)匹配;及
將預(yù)處理后的所述至少一張照片輸入預(yù)先訓(xùn)練的識別模型中,利用預(yù)先訓(xùn)練的識別模型識別所述至少一張照片對應(yīng)的車輛用途信息,并將所述至少一張照片對應(yīng)的車輛用途信息發(fā)送給終端設(shè)備。
優(yōu)選地,所述方法還包括:
提供車輛用途識別操作界面,所述車輛用途識別操作界面顯示在所述終端設(shè)備上,所述車輛用途識別操作界面包括單張照片識別控件和多張照片識別控件;及
接收用戶通過所述單張照片識別控件向所述電子裝置發(fā)出的識別單張照片中的車牌對應(yīng)的車輛用途的指令;或
接收用戶通過所述多張照片識別控件向所述電子裝置發(fā)出的識別多張照片中的車牌對應(yīng)的車輛用途的指令。
優(yōu)選地,所述對獲取的至少一張照片進(jìn)行預(yù)處理以使得預(yù)處理后的所述至少一張照片與預(yù)先訓(xùn)練的識別模型的輸入?yún)?shù)匹配包括:
對所述至少一張照片進(jìn)行白化處理以過濾照片中的噪聲像素,白化處理后的各個照片的像素均值為0且像素方差為1;
調(diào)整白化處理后的各個照片的尺寸。
優(yōu)選地,所述預(yù)先訓(xùn)練的識別模型為訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型,所述深度卷積神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練過程主要包括:
獲取預(yù)設(shè)數(shù)量的包含車牌信息的照片樣本;
根據(jù)獲取的照片樣本中的車牌信息對應(yīng)的車輛用途,對獲取的照片樣本按照車輛用途進(jìn)行分類得到至少一個照片類別;
對每個照片類別中各個照片樣本進(jìn)行白化處理,并調(diào)整白化處理后的各個照片樣本的尺寸,再旋轉(zhuǎn)調(diào)整后的各個照片樣本得到每個照片類別下的照片樣本集合;
從每個照片類別下的照片樣本集合中獲取每個照片類別下的待訓(xùn)練照片樣本集合及每個照片類別下的待校驗照片樣本集合;
將每個照片類別下的待訓(xùn)練照片樣本集合的照片樣本依次輸入所述深度卷積神經(jīng)網(wǎng)絡(luò)模型,利用預(yù)設(shè)的訓(xùn)練算法訓(xùn)練用于根據(jù)車牌信息識別車輛用途的深度卷積神經(jīng)網(wǎng)絡(luò)模型,并利用每個照片類別下的待校驗照片樣本集合的照片樣本校驗訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型。
優(yōu)選地,所述方法還包括:
當(dāng)所述至少一張照片是多張照片時,根據(jù)所述至少一張照片對應(yīng)的車輛用途,對所述至少一張照片進(jìn)行分類,將對應(yīng)同一個車輛用途的照片分類到同一個照片類別中,將對應(yīng)不同的車輛用途的照片分為不同的照片類別。
一種基于深度學(xué)習(xí)的車牌分類系統(tǒng),運行于電子裝置中,所述系統(tǒng)包括:
獲取模塊,用于獲取終端設(shè)備發(fā)送的至少一張照片;
預(yù)處理模塊,用于對至少一張照片進(jìn)行預(yù)處理以使得預(yù)處理后的所述至少一張照片與預(yù)先訓(xùn)練的識別模型的輸入?yún)?shù)匹配;及
識別模塊,用于將預(yù)處理后的所述至少一張照片輸入預(yù)先訓(xùn)練的識別模型中,利用預(yù)先訓(xùn)練的識別模型識別所述至少一張照片對應(yīng)的車輛用途信息,并將所述至少一張照片對應(yīng)的車輛用途信息發(fā)送給終端設(shè)備。
優(yōu)選地,所述系統(tǒng)還包括:
提供模塊,用于提供車輛用途識別操作界面,所述車輛用途識別操作界面顯示在所述終端設(shè)備上,所述車輛用途識別操作界面包括單張照片識別控件和多張照片識別控件;及
所述獲取模塊還用于接收用戶通過所述單張照片識別控件向所述電子裝置發(fā)出的識別單張照片中的車牌對應(yīng)的車輛用途的指令;或
所述獲取模塊還用于接收用戶通過所述多張照片識別控件向所述電子裝置發(fā)出的識別多張照片中的車牌對應(yīng)的車輛用途的指令。
優(yōu)選地,所述對獲取的至少一張照片進(jìn)行預(yù)處理以使得預(yù)處理后的所述至少一張照片與預(yù)先訓(xùn)練的識別模型的輸入?yún)?shù)匹配包括:
對所述至少一張照片進(jìn)行白化處理以過濾照片中的噪聲像素,白化處理后的各個照片的像素均值為0且像素方差為1;
調(diào)整白化處理后的各個照片的尺寸。
優(yōu)選地,所述預(yù)先訓(xùn)練的識別模型為訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型,所述深度卷積神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練過程主要包括:
獲取預(yù)設(shè)數(shù)量的包含車牌信息的照片樣本;
根據(jù)獲取的照片樣本中的車牌信息對應(yīng)的車輛用途,對獲取的照片樣本按照車輛用途進(jìn)行分類得到至少一個照片類別;
對每個照片類別中各個照片樣本進(jìn)行白化處理,并調(diào)整白化處理后的各個照片樣本的尺寸,再旋轉(zhuǎn)調(diào)整后的各個照片樣本得到每個照片類別下的照片樣本集合;
從每個照片類別下的照片樣本集合中獲取每個照片類別下的待訓(xùn)練照片樣本集合及每個照片類別下的待校驗照片樣本集合;
將每個照片類別下的待訓(xùn)練照片樣本集合的照片樣本依次輸入所述深度卷積神經(jīng)網(wǎng)絡(luò)模型,利用預(yù)設(shè)的訓(xùn)練算法訓(xùn)練用于根據(jù)車牌信息識別車輛用途的深度卷積神經(jīng)網(wǎng)絡(luò)模型,并利用每個照片類別下的待校驗照片樣本集合的照片樣本校驗訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型。
優(yōu)選地,所述系統(tǒng)還包括:
分類模塊,用于當(dāng)所述至少一張照片是多張照片時,根據(jù)所述至少一張照片對應(yīng)的車輛用途,對所述至少一張照片進(jìn)行分類,將對應(yīng)同一個車輛用途的照片分類到同一個照片類別中,將對應(yīng)不同的車輛用途的照片分為不同的照片類別。
由上述技術(shù)方案可知,本發(fā)明先利用預(yù)設(shè)的算法訓(xùn)練用于根據(jù)車牌信息識別車輛用途的識別模型得到預(yù)先訓(xùn)練的識別模型。然后將各個照片輸入預(yù)先訓(xùn)練的識別模型中,利用預(yù)先訓(xùn)練的識別模型識別各個照片對應(yīng)的車輛用途信息,并將各個照片對應(yīng)的車輛用途信息發(fā)送給終端設(shè)備,并能根據(jù)各個照片對應(yīng)的車輛用途信息將同一車輛用途的照片分類到一個類別中。本發(fā)明能準(zhǔn)確自動識別出照片中的車輛用途,并能準(zhǔn)確分類,提高了準(zhǔn)確率及工作效率。
附圖說明
圖1是本發(fā)明實現(xiàn)基于深度學(xué)習(xí)的車牌分類方法的較佳實施例的應(yīng)用環(huán)境示意圖。
圖2是本發(fā)明基于深度學(xué)習(xí)的車牌分類方法較佳實施例的實施流程圖。
圖3是本發(fā)明深度卷積神經(jīng)網(wǎng)絡(luò)模型的模型架構(gòu)示意圖。
圖4是本發(fā)明基于深度學(xué)習(xí)的車牌分類系統(tǒng)的功能模塊圖。
具體實施方式
參閱圖1所示,是本發(fā)明實現(xiàn)基于深度學(xué)習(xí)的車牌分類方法的較佳實施例的應(yīng)用環(huán)境示意圖。所述應(yīng)用環(huán)境示意圖包括電子裝置1、終端設(shè)備2。所述電子裝置1可以與所述終端設(shè)備2進(jìn)行數(shù)據(jù)交互。所述電子裝置1包括基于深度學(xué)習(xí)的車牌分類系統(tǒng)10(以下簡稱“分類系統(tǒng)”)、存儲設(shè)備11及處理設(shè)備12等。在其他實施例中,所述電子裝置1還可以包括其他元件,而并不限于圖1所示。
所述電子裝置1是一種能夠按照事先設(shè)定或者存儲的指令,自動進(jìn)行數(shù)值計算和/或信息處理的設(shè)備。所述電子裝置1可以是計算機(jī)、也可以是單個網(wǎng)絡(luò)服務(wù)器、多個網(wǎng)絡(luò)服務(wù)器組成的服務(wù)器組或者基于云計算的由大量主機(jī)或者網(wǎng)絡(luò)服務(wù)器構(gòu)成的云,其中云計算是分布式計算的一種,由一群松散耦合的計算機(jī)集組成的一個超級虛擬計算機(jī)。
所述終端設(shè)備2包括,但不限于,任何一種可與用戶通過鍵盤、鼠標(biāo)、遙控器、觸摸板或者聲控設(shè)備等方式進(jìn)行人機(jī)交互的電子產(chǎn)品,例如,個人計算機(jī)、平板電腦、智能手機(jī)、個人數(shù)字助理(Personal Digital Assistant,PDA),游戲機(jī)、交互式網(wǎng)絡(luò)電視(Internet Protocol Television,IPTV)、智能式穿戴式設(shè)備等。其中,所述用戶設(shè)備及網(wǎng)絡(luò)設(shè)備所處的網(wǎng)絡(luò)包括但不限于互聯(lián)網(wǎng)、廣域網(wǎng)、城域網(wǎng)、局域網(wǎng)、虛擬專用網(wǎng)絡(luò)(Virtual Private Network,VPN)等。
所述分類系統(tǒng)10先利用預(yù)設(shè)的算法訓(xùn)練用于根據(jù)車牌信息識別車輛用途的識別模型得到預(yù)先訓(xùn)練的識別模型。然后將各個照片輸入預(yù)先訓(xùn)練的識別模型中,利用預(yù)先訓(xùn)練的識別模型識別各個照片對應(yīng)的車輛用途信息,并將各個照片對應(yīng)的車輛用途信息發(fā)送給終端設(shè)備2,并能根據(jù)各個照片對應(yīng)的車輛用途信息將同一車輛用途的照片分類到一個類別中。本發(fā)明能準(zhǔn)確自動識別出照片中的車輛用途,并能準(zhǔn)確分類,提高了準(zhǔn)確率及工作效率。
所述存儲設(shè)備11用于存儲分類系統(tǒng)10的各個程序段的程序代碼。所述存儲設(shè)備11可以是一個或者多個非易失性存儲器,如ROM、EPROM或Flash Memory(快閃存儲器)等。
所述處理設(shè)備12可以由一個或者多個微處理器、數(shù)字處理器組成。
如圖2所示,是本發(fā)明基于深度學(xué)習(xí)的車牌分類方法較佳實施例的實施流程圖。本實施例基于深度學(xué)習(xí)的車牌分類方法并不限于流程圖中所示步驟,此外流程圖中所示步驟中,某些步驟可以省略、步驟之間的順序可以改變。
S10,獲取終端設(shè)備2發(fā)送的至少一張照片。
在本實施例中,提供車輛用途識別操作界面,所述車輛用途識別操作界面顯示在終端設(shè)備2上。終端設(shè)備2響應(yīng)用戶的操作,顯示所述車輛用途識別操作界面。例如,終端設(shè)備2通過瀏覽器系統(tǒng)訪問電子裝置1,電子裝置1將所述車輛用途識別操作界面發(fā)送給所述瀏覽器系統(tǒng)進(jìn)行顯示?;蛘?,所述分類系統(tǒng)10對應(yīng)一個客戶端系統(tǒng),所述客戶端系統(tǒng)安裝于所述終端設(shè)備2中。終端設(shè)備2的客戶端系統(tǒng)運行后生成并顯示所述車輛用途識別操作界面。
所述車輛用途識別操作界面包括單張照片識別控件和多張照片識別控件。用戶通過所述單張照片識別控件可以向電子裝置1發(fā)出識別單張照片中的車牌對應(yīng)的車輛用途的指令,并上傳一張照片。用戶通過所述多張照片識別控件可以向電子裝置1發(fā)出識別多張照片中的車牌對應(yīng)的車輛用途的指令,并上傳多張照片。
S11,對獲取的至少一張照片進(jìn)行預(yù)處理以使得預(yù)處理后的所述至少一張照片與預(yù)先訓(xùn)練的識別模型的輸入?yún)?shù)匹配。
在本實施例中,所述至少一張照片可能是一張照片或者多張照片。所述對獲取的至少一張照片進(jìn)行預(yù)處理以使得預(yù)處理后的所述至少一張照片與預(yù)先訓(xùn)練的識別模型的輸入?yún)?shù)匹配包括:
(1)對所述至少一張照片進(jìn)行白化處理以過濾照片中的噪聲像素,白化處理后的各個照片的像素均值為0且像素方差為1。
在其他實施例中,也可以采用濾波器對所述至少一張照片進(jìn)行過濾照片中的噪聲像素,例如高斯低通濾波、平均濾波器、高斯濾波器等等。
(2)調(diào)整白化處理后的各個照片的尺寸。
在本實施例中,調(diào)整后的各個照片的尺寸與所述預(yù)先訓(xùn)練的識別模型的輸入維度相同。所述輸入維度即為圖片的尺寸,例如尺寸大小為256×256。當(dāng)所述白化處理后的各個照片的尺寸大于所述預(yù)先訓(xùn)練的識別模型的輸入維度時,對所述白化處理后的各個照片進(jìn)行縮放。當(dāng)所述白化處理后的各個照片的尺寸小于所述預(yù)先訓(xùn)練的識別模型的輸入維度時,對所述白化處理后的各個照片進(jìn)行放大。
在本實施例中,所述預(yù)先訓(xùn)練的識別模型為訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型。所述深度卷積神經(jīng)網(wǎng)絡(luò)模型由1個輸入層、20個卷積層、6個池化層、3個隱含層、1個分類層構(gòu)成。所述深度卷積神經(jīng)網(wǎng)絡(luò)模型的模型架構(gòu)如圖3所示,其中,Conv a-b(例如,Conv 3-64)表示該層卷積核的維度為a×a,該層卷積核的個數(shù)為b;Maxpool2表示所述池化層的池化核的維度為2×2;FC-c(例如,F(xiàn)C-6)表示該隱含層(即:完全連接層)有c個輸出節(jié)點;Soft-max表示該分類層使用Soft-max分類器對輸入圖像進(jìn)行分類。
在本實施例中,利用照片樣本進(jìn)行訓(xùn)練學(xué)習(xí)得到訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型。將照片輸入所述訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型中就能準(zhǔn)確自動地得到照片中車輛的用途。一般情況下,照片樣本的規(guī)模越大,所述訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型的識別率越高。
在本實施例中,所述深度卷積神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練過程主要包括:
(1)獲取預(yù)設(shè)數(shù)量(例如,50萬張)的包含車牌信息的照片樣本。所述車牌信息包括車輛的車牌號等等。例如警務(wù)用途的車牌號上有“警”字,軍務(wù)用途的車牌號上有“軍”字等等。
(2)根據(jù)獲取的照片樣本中的車牌信息對應(yīng)的車輛用途,對獲取的照片樣本按照車輛用途進(jìn)行分類得到至少一個照片類別。
在本實施例中,所述車輛用途包括,但不限于,貨車用途、警務(wù)用途、私家車用途、軍務(wù)用途。則所述照片類別包括,但不限于,貨車用途照片類別、警務(wù)用途照片類別、私家車用途照片類別、軍務(wù)用途照片類別。
在本實施例中,將對應(yīng)同一個車輛用途的照片樣本分類到同一個照片類別中,將對應(yīng)不同的車輛用途的照片樣本分為不同的照片類別。
(3)對每個照片類別中各個照片樣本進(jìn)行白化處理,并調(diào)整白化處理后的各個照片樣本的尺寸,再旋轉(zhuǎn)調(diào)整后的各個照片樣本得到每個照片類別下的照片樣本集合。
在本實施例中,每個照片類別下的照片樣本集合的獲取方式具體通過以下實現(xiàn):
對每個照片類別中各個照片樣本做白化處理,使白化處理后的照片樣本的像素均值為0且方差為1,以過濾照片樣本中的噪聲像素。在其他實施例中,也可以采用濾波器對所述至少一張照片進(jìn)行過濾照片中的噪聲像素,例如高斯低通濾波、平均濾波器、高斯濾波器等等。
調(diào)整白化處理后的各個照片樣本的尺寸,調(diào)整后的各個照片樣本的尺寸與所述深度卷積神經(jīng)網(wǎng)絡(luò)模型的輸入維度相同。所述輸入維度即為圖片的尺寸,例如尺寸大小為256×256。
對每個照片類別中各個照片樣本,按預(yù)設(shè)的旋轉(zhuǎn)角度間隔(例如,30度角度)旋轉(zhuǎn)各個照片樣本,并對旋轉(zhuǎn)后的照片樣本按對應(yīng)角度進(jìn)行透視變化處理,得到各個照片樣本在各個旋轉(zhuǎn)角度的照片樣本集合,從而得到每個照片類別下的照片樣本集合。
(4)從每個照片類別下的照片樣本集合中獲取每個照片類別下的待訓(xùn)練照片樣本集合及每個照片類別下的待校驗照片樣本集合。
在本實施例中,從每一個照片類別下的照片樣本集合中,提取第一預(yù)設(shè)比例(例如,70%)的照片樣本集合作為每個照片類別下的待訓(xùn)練照片樣本集合,并將每一個照片類別下的提取剩余的照片樣本集合作為每個照片類別下的待校驗照片樣本集合。
(5)將每個照片類別下的待訓(xùn)練照片樣本集合的照片樣本依次輸入所述深度卷積神經(jīng)網(wǎng)絡(luò)模型,利用預(yù)設(shè)的訓(xùn)練算法訓(xùn)練用于根據(jù)車牌信息識別車輛用途的深度卷積神經(jīng)網(wǎng)絡(luò)模型,并利用每個照片類別下的待校驗照片樣本集合的照片樣本校驗訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型。
在本實施例中,利用每個照片類別下的待校驗的照片樣本集合的照片樣本校驗訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型,若訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型的識別準(zhǔn)確率大于或等于預(yù)設(shè)閾值(例如,95%),則訓(xùn)練完成,后續(xù)利用訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型能準(zhǔn)備識別出某一張照片中車輛用途。
若訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型的識別準(zhǔn)確率小于預(yù)設(shè)閾值(例如,95%),則發(fā)出提醒信息,提醒用戶增加包含車牌信息的照片樣本數(shù)量重新按照上述步驟(1)-(5)訓(xùn)練所述深度卷積神經(jīng)網(wǎng)絡(luò)模型。
在本實施例中,深度卷積神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練的原理揭露如下:
所述深度卷積神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練采用第三開源庫(Convolutional Architecture for Fast Feature Embedding,Caffe)自帶的Cifar10數(shù)據(jù)分類任務(wù)的參數(shù)。Caffe是一個清晰、高效的深度學(xué)習(xí)框架的開源庫,能夠自主地從數(shù)據(jù)上學(xué)到有用的特征,特別是對于一些圖像等。Cifar10是Caffe中一個數(shù)據(jù)庫。
在本實施例中,所述預(yù)設(shè)的訓(xùn)練算法為自適應(yīng)矩估計算法(adaptive moment estimation,Adam)。Adam算法是一種基于隨機(jī)優(yōu)化的算法,它在基于momentum(即學(xué)習(xí)勢能,又稱為“矩”)的隨機(jī)梯度下降(Stochastic gradient descent,SGD)算法基礎(chǔ)上做了改進(jìn)。通過自適應(yīng)地對momentum項進(jìn)行估計,以加快達(dá)到模型訓(xùn)練的目標(biāo)。
深度卷積神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練過程始終以最小化分類誤差為目標(biāo)。給定數(shù)據(jù)集D,在訓(xùn)練的過程中需要優(yōu)化的目標(biāo)函數(shù)為對數(shù)據(jù)集中的每個樣本進(jìn)行分類的平均誤差L(m)。
其中fM(Dj)是數(shù)據(jù)集中第j個樣本的分類誤差,M表示分類模型;λΓ(M)是規(guī)約項,λ是規(guī)約權(quán)重控制規(guī)約化程度,Γ(M)是規(guī)約函數(shù),用于控制如何對誤差函數(shù)進(jìn)行規(guī)約化,|N|表示數(shù)據(jù)集總的樣本數(shù)目。由于實際中數(shù)據(jù)集可以包含的很大規(guī)模的樣本,因此我們使用樣本子集來估計原數(shù)據(jù)集的平均誤,即
其中|n|表示采樣的子集的樣本數(shù)量。模型在前項傳播中會產(chǎn)生誤差,然后后向傳播錯誤梯度規(guī)約梯度以更新模型參數(shù)。不同于通常的基于SGD+BP的優(yōu)化算法。該算法的更新步驟如下:
其中,表示目標(biāo)函數(shù)的梯度,mt和vt分別是在時序為t時目標(biāo)函數(shù)的梯度的一階矩(均值)及二階矩(偏方差)的估計,α1表示一階矩對應(yīng)的衰減速率,α2表示二階矩對應(yīng)的衰減速率,ε為預(yù)設(shè)常數(shù),α表示步長,t表示時序timestep,或者迭代次數(shù),M表示分類模型,i表示第i個樣本。
在訓(xùn)練的過程中,其中α1,α2,ε這三個參數(shù)分別取它們的默認(rèn)值:0.9,0.999,和10-8。通過借助Adam算法在優(yōu)化過程中的平滑性以及快速收斂的能力,在收集樣本數(shù)據(jù)集較小的情況下也能使模型很快收斂并且取得理想的分類準(zhǔn)確度。
S12,將預(yù)處理后的所述至少一張照片輸入預(yù)先訓(xùn)練的識別模型中,利用預(yù)先訓(xùn)練的識別模型識別所述至少一張照片對應(yīng)的車輛用途信息,并將所述至少一張照片對應(yīng)的車輛用途信息發(fā)送給終端設(shè)備2。
在本實施例中,根據(jù)上述訓(xùn)練所述預(yù)先訓(xùn)練的識別模型的原理可知,所述預(yù)先訓(xùn)練的識別模型根據(jù)車牌信息識別車輛用途,因此,將預(yù)處理后的所述至少一張照片作為所述預(yù)先訓(xùn)練的識別模型的輸入,就能準(zhǔn)確識別出所述至少一張照片對應(yīng)的車輛用途信息。
在本實施例中,若所述至少一張照片是單張照片,則將所述單張照片對應(yīng)的車輛用途信息發(fā)送給所述終端設(shè)備2。若所述至少一張照片是多張照片,則將每張照片的名稱,及與每張照片對應(yīng)的車輛用途信息發(fā)送給所述終端設(shè)備2。
在其他實施例中,還包括:當(dāng)所述至少一張照片是多張照片時,根據(jù)所述至少一張照片對應(yīng)的車輛用途,對所述至少一張照片進(jìn)行分類。
在本實施例中,所述車輛用途包括,但不限于,貨車用途、警務(wù)用途、私家車用途、軍務(wù)用途。則所述照片類別包括,但不限于,貨車用途照片類別、警務(wù)用途照片類別、私家車用途照片類別、軍務(wù)用途照片類別。
在本實施例中,將對應(yīng)同一個車輛用途的照片分類到同一個照片類別中,將對應(yīng)不同的車輛用途的照片分為不同的照片類別,并將分類后的照片類別及各個照片類別中各個照片的名稱及各個照片對應(yīng)的車輛用途信息發(fā)送給所述終端設(shè)備2。
如圖4所示,所述分類系統(tǒng)10的程序代碼根據(jù)其不同的功能,可以劃分為多個功能模塊。本實施例中,所述分類系統(tǒng)10可以包括獲取模塊100、提供模塊101、預(yù)處理模塊102、訓(xùn)練模塊103、識別模塊104及分類模塊105。將在以下實施例中具體詳敘述各個模塊的功能。
獲取模塊100,用于獲取終端設(shè)備2發(fā)送的至少一張照片。
在本實施例中,提供模塊101,用于提供車輛用途識別操作界面,所述車輛用途識別操作界面顯示在終端設(shè)備2上。終端設(shè)備2響應(yīng)用戶的操作,顯示所述車輛用途識別操作界面。例如,終端設(shè)備2通過瀏覽器系統(tǒng)訪問電子裝置1,電子裝置1將所述車輛用途識別操作界面發(fā)送給所述瀏覽器系統(tǒng)進(jìn)行顯示?;蛘?,所述分類系統(tǒng)10對應(yīng)一個客戶端系統(tǒng),所述客戶端系統(tǒng)安裝于所述終端設(shè)備2中。終端設(shè)備2的客戶端系統(tǒng)運行后生成并顯示所述車輛用途識別操作界面。
所述車輛用途識別操作界面包括單張照片識別控件和多張照片識別控件。用戶通過所述單張照片識別控件可以向電子裝置1發(fā)出識別單張照片中的車牌對應(yīng)的車輛用途的指令,并上傳一張照片。用戶通過所述多張照片識別控件可以向電子裝置1發(fā),所述獲取模塊100獲取所述識別單張照片中的車牌對應(yīng)的車輛用途的指令,并接收該張照片出識別多張照片中的車牌對應(yīng)的車輛用途的指令,并上傳多張照片,所述獲取模塊100獲取識別多張照片中的車牌對應(yīng)的車輛用途的指令,并接收所述多張照片。
預(yù)處理模塊102,用于對獲取的至少一張照片進(jìn)行預(yù)處理以使得預(yù)處理后的所述至少一張照片與預(yù)先訓(xùn)練的識別模型的輸入?yún)?shù)匹配。
在本實施例中,所述至少一張照片可能是一張照片或者多張照片。所述預(yù)處理模塊102對獲取的至少一張照片進(jìn)行預(yù)處理以使得預(yù)處理后的所述至少一張照片與預(yù)先訓(xùn)練的識別模型的輸入?yún)?shù)匹配包括:
(1)對所述至少一張照片進(jìn)行白化處理以過濾照片中的噪聲像素,白化處理后的各個照片的像素均值為0且像素方差為1。
在其他實施例中,也可以采用濾波器對所述至少一張照片進(jìn)行過濾照片中的噪聲像素,例如高斯低通濾波、平均濾波器、高斯濾波器等等。
(2)調(diào)整白化處理后的各個照片的尺寸。
在本實施例中,調(diào)整后的各個照片的尺寸與所述預(yù)先訓(xùn)練的識別模型的輸入維度相同。所述輸入維度即為圖片的尺寸,例如尺寸大小為256×256。當(dāng)所述白化處理后的各個照片的尺寸大于所述預(yù)先訓(xùn)練的識別模型的輸入維度時,對所述白化處理后的各個照片進(jìn)行縮放。當(dāng)所述白化處理后的各個照片的尺寸小于所述預(yù)先訓(xùn)練的識別模型的輸入維度時,對所述白化處理后的各個照片進(jìn)行放大。
在本實施例中,所述預(yù)先訓(xùn)練的識別模型為訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型。所述深度卷積神經(jīng)網(wǎng)絡(luò)模型由1個輸入層、20個卷積層、6個池化層、3個隱含層、1個分類層構(gòu)成。所述深度卷積神經(jīng)網(wǎng)絡(luò)模型的模型架構(gòu)如圖3所示,其中,Conv a-b(例如,Conv 3-64)表示該層卷積核的維度為a×a,該層卷積核的個數(shù)為b;Maxpool2表示所述池化層的池化核的維度為2×2;FC-c(例如,F(xiàn)C-6)表示該隱含層(即:完全連接層)有c個輸出節(jié)點;Soft-max表示該分類層使用Soft-max分類器對輸入圖像進(jìn)行分類。
在本實施例中,訓(xùn)練模塊103,用于利用照片樣本進(jìn)行訓(xùn)練學(xué)習(xí)得到訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型。將照片輸入所述訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型中就能準(zhǔn)確自動地得到照片中車輛的用途。一般情況下,照片樣本的規(guī)模越大,所述訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型的識別率越高。
在本實施例中,所述訓(xùn)練模塊103訓(xùn)練所述深度卷積神經(jīng)網(wǎng)絡(luò)模型的過程主要包括:
(1)獲取預(yù)設(shè)數(shù)量(例如,50萬張)的包含車牌信息的照片樣本。所述車牌信息包括車輛的車牌號等等。例如警務(wù)用途的車牌號上有“警”字,軍務(wù)用途的車牌號上有“軍”字等等。
(2)根據(jù)獲取的照片樣本中的車牌信息對應(yīng)的車輛用途,對獲取的照片樣本按照車輛用途進(jìn)行分類得到至少一個照片類別。
在本實施例中,所述車輛用途包括,但不限于,貨車用途、警務(wù)用途、私家車用途、軍務(wù)用途。則所述照片類別包括,但不限于,貨車用途照片類別、警務(wù)用途照片類別、私家車用途照片類別、軍務(wù)用途照片類別。
在本實施例中,將對應(yīng)同一個車輛用途的照片樣本分類到同一個照片類別中,將對應(yīng)不同的車輛用途的照片樣本分為不同的照片類別。
(3)對每個照片類別中各個照片樣本進(jìn)行白化處理,并調(diào)整白化處理后的各個照片樣本的尺寸,再旋轉(zhuǎn)調(diào)整后的各個照片樣本得到每個照片類別下的照片樣本集合。
在本實施例中,每個照片類別下的照片樣本集合的獲取方式具體通過以下實現(xiàn):
對每個照片類別中各個照片樣本做白化處理,使白化處理后的照片樣本的像素均值為0且方差為1,以過濾照片樣本中的噪聲像素。在其他實施例中,也可以采用濾波器對所述至少一張照片進(jìn)行過濾照片中的噪聲像素,例如高斯低通濾波、平均濾波器、高斯濾波器等等。
調(diào)整白化處理后的各個照片樣本的尺寸,調(diào)整后的各個照片樣本的尺寸與所述深度卷積神經(jīng)網(wǎng)絡(luò)模型的輸入維度相同。所述輸入維度即為圖片的尺寸,例如尺寸大小為256×256。
對每個照片類別中各個照片樣本,按預(yù)設(shè)的旋轉(zhuǎn)角度間隔(例如,30度角度)旋轉(zhuǎn)各個照片樣本,并對旋轉(zhuǎn)后的照片樣本按對應(yīng)角度進(jìn)行透視變化處理,得到各個照片樣本在各個旋轉(zhuǎn)角度的照片樣本集合,從而得到每個照片類別下的照片樣本集合。
(4)從每個照片類別下的照片樣本集合中獲取每個照片類別下的待訓(xùn)練照片樣本集合及每個照片類別下的待校驗照片樣本集合。
在本實施例中,從每一個照片類別下的照片樣本集合中,提取第一預(yù)設(shè)比例(例如,70%)的照片樣本集合作為每個照片類別下的待訓(xùn)練照片樣本集合,并將每一個照片類別下的提取剩余的照片樣本集合作為每個照片類別下的待校驗照片樣本集合。
(5)將每個照片類別下的待訓(xùn)練照片樣本集合的照片樣本依次輸入所述深度卷積神經(jīng)網(wǎng)絡(luò)模型,利用預(yù)設(shè)的訓(xùn)練算法訓(xùn)練用于根據(jù)車牌信息識別車輛用途的深度卷積神經(jīng)網(wǎng)絡(luò)模型,并利用每個照片類別下的待校驗照片樣本集合的照片樣本校驗訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型。
在本實施例中,利用每個照片類別下的待校驗的照片樣本集合的照片樣本校驗訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型,若訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型的識別準(zhǔn)確率大于或等于預(yù)設(shè)閾值(例如,95%),則訓(xùn)練完成,后續(xù)利用訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型能準(zhǔn)備識別出某一張照片中車輛用途。
若訓(xùn)練后的深度卷積神經(jīng)網(wǎng)絡(luò)模型的識別準(zhǔn)確率小于預(yù)設(shè)閾值(例如,95%),則發(fā)出提醒信息,提醒用戶增加包含車牌信息的照片樣本數(shù)量重新按照上述步驟(1)-(5)訓(xùn)練所述深度卷積神經(jīng)網(wǎng)絡(luò)模型。
在本實施例中,深度卷積神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練的原理揭露如下:
所述深度卷積神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練采用第三開源庫(Convolutional Architecture for Fast Feature Embedding,Caffe)自帶的Cifar10數(shù)據(jù)分類任務(wù)的參數(shù)。Caffe是一個清晰、高效的深度學(xué)習(xí)框架的開源庫,能夠自主地從數(shù)據(jù)上學(xué)到有用的特征。特別是對于一些圖像等。Cifar10是Caffe中一個數(shù)據(jù)庫。
在本實施例中,所述預(yù)設(shè)的訓(xùn)練算法為自適應(yīng)矩估計算法(adaptive moment estimation,Adam)。Adam算法是一種基于隨機(jī)優(yōu)化的算法,它在基于momentum(即學(xué)習(xí)勢能,又稱為“矩”)的隨機(jī)梯度下降(Stochastic gradient descent,SGD)算法基礎(chǔ)上做了改進(jìn)。通過自適應(yīng)地對momentum項進(jìn)行估計,以加快達(dá)到模型訓(xùn)練的目標(biāo)。
深度卷積神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練過程始終以最小化分類誤差為目標(biāo)。給定數(shù)據(jù)集D,在訓(xùn)練的過程中需要優(yōu)化的目標(biāo)函數(shù)為對數(shù)據(jù)集中的每個樣本進(jìn)行分類的平均誤差L(m)。
其中fM(Dj)是數(shù)據(jù)集中第j個樣本的分類誤差,M表示分類模型;λΓ(M)是規(guī)約項,λ是規(guī)約權(quán)重控制規(guī)約化程度,Γ(M)是規(guī)約函數(shù),用于控制如何對誤差函數(shù)進(jìn)行規(guī)約化,|N|表示數(shù)據(jù)集總的樣本數(shù)目。由于實際中數(shù)據(jù)集可以包含的很大規(guī)模的樣本,因此我們使用樣本子集來估計原數(shù)據(jù)集的平均誤,即
其中|n|表示采樣的子集的樣本數(shù)量。模型在前項傳播中會產(chǎn)生誤差,然后后向傳播錯誤梯度規(guī)約梯度以更新模型參數(shù)。不同于通常的基于SGD+BP的優(yōu)化算法。該算法的更新步驟如下:
其中,表示目標(biāo)函數(shù)的梯度,mt和vt分別是在時序為t時目標(biāo)函數(shù)的梯度的一階矩(均值)和二階矩(偏方差)的估計,α1表示一階矩對應(yīng)的衰減速率,α2表示二階矩對應(yīng)的衰減速率,ε為預(yù)設(shè)常數(shù),α表示步長,t表示時序timestep,或者迭代次數(shù),M表示分類模型,i表示第i個樣本。
在訓(xùn)練的過程中,其中α1,α2,ε這三個參數(shù)分別取它們的默認(rèn)值:0.9,0.999,和10-8。通過借助Adam算法在優(yōu)化過程中的平滑性以及快速收斂的能力,在收集樣本數(shù)據(jù)集較小的情況下也能使模型很快收斂并且取得理想的分類準(zhǔn)確度。
識別模塊104,用于將預(yù)處理后的所述至少一張照片輸入預(yù)先訓(xùn)練的識別模型中,利用預(yù)先訓(xùn)練的識別模型識別所述至少一張照片對應(yīng)的車輛用途信息,并將所述至少一張照片對應(yīng)的車輛用途信息發(fā)送給終端設(shè)備2。
在本實施例中,根據(jù)上述訓(xùn)練所述預(yù)先訓(xùn)練的識別模型的原理可知,所述預(yù)先訓(xùn)練的識別模型根據(jù)車牌信息識別車輛用途,因此,將預(yù)處理后的所述至少一張照片作為所述預(yù)先訓(xùn)練的識別模型的輸入,就能準(zhǔn)確識別出所述至少一張照片對應(yīng)的車輛用途信息。
在本實施例中,若所述至少一張照片是單張照片,所述識別模塊104將所述單張照片對應(yīng)的車輛用途信息發(fā)送給所述終端設(shè)備2。若所述至少一張照片是多張照片,則所述識別模塊104將每張照片的名稱,及與每張照片對應(yīng)的車輛用途信息發(fā)送給所述終端設(shè)備2。
在其他實施例中,分類模塊105,用于當(dāng)所述至少一張照片是多張照片時,根據(jù)所述至少一張照片對應(yīng)的車輛用途,對所述至少一張照片進(jìn)行分類。
在本實施例中,所述車輛用途包括,但不限于,貨車用途、警務(wù)用途、私家車用途、軍務(wù)用途。則所述照片類別包括,但不限于,貨車用途照片類別、警務(wù)用途照片類別、私家車用途照片類別、軍務(wù)用途照片類別。
在本實施例中,將對應(yīng)同一個車輛用途的照片分類到同一個照片類別中,將對應(yīng)不同的車輛用途的照片分為不同的照片類別,并將分類后的照片類別及各個照片類別中各個照片的名稱及各個照片對應(yīng)的車輛用途信息發(fā)送給所述終端設(shè)備2。
另外,在本發(fā)明各個實施例中的各功能模塊可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元可以采用硬件的形式實現(xiàn),也可以采用硬件加軟件功能模塊的形式實現(xiàn)。
對本領(lǐng)域技術(shù)人員而言,顯然本發(fā)明不限于上述示范性實施例的細(xì)節(jié),而且在不背離本發(fā)明的精神或基本特征的情況下,能夠以其他的具體形式實現(xiàn)本發(fā)明。因此,無論哪一點來看,均應(yīng)將實施例看作是示范性的,而且是非限制性的,本發(fā)明的范圍由所附權(quán)利要求而不是上述說明限定,因此旨在將落在權(quán)利要求的等同要件的含義和范圍內(nèi)的所有變化涵括在本發(fā)明內(nèi)。不應(yīng)將權(quán)利要求中的任何附關(guān)聯(lián)圖標(biāo)記視為限制所涉及的權(quán)利要求。此外,顯然“包括”一詞不排除其他單元或者步驟,單數(shù)不排除復(fù)數(shù)。系統(tǒng)權(quán)利要求中陳述的多個單元或裝置也可以由一個單元或者裝置通過軟件或者硬件來實現(xiàn)?!暗谝弧?,“第二”(如果存在)等詞語用來表示名稱,而不是表示任何特定的順序。
最后所應(yīng)說明的是,以上實施例僅用以說明本發(fā)明的技術(shù)方案而非限制,盡管參照較佳實施例對本發(fā)明進(jìn)行了詳細(xì)說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對本發(fā)明的技術(shù)方案進(jìn)行修改或等同替換,而不脫離本發(fā)明技術(shù)方案的精神和范圍。