行人属性数据集pa100k_基于InceptionV3的多数据集联合训练的行人外观属性识别方法与流程...
本發(fā)明涉及模式識別技術(shù)、智能監(jiān)控技術(shù)等領(lǐng)域,具體的說,是基于Inception V3的多數(shù)據(jù)集聯(lián)合訓(xùn)練的行人外觀屬性識別方法。
背景技術(shù):
近年來,視頻監(jiān)控系統(tǒng)已經(jīng)被廣泛應(yīng)用于安防領(lǐng)域。安防人員通過合理的攝像頭布局,實現(xiàn)對目標(biāo)監(jiān)控場景的全覆蓋,通過全天候?qū)δ繕?biāo)區(qū)域的監(jiān)控,能夠有效控制犯罪活動,來保證公眾的人身安全。計算機(jī)技術(shù)的飛速發(fā)展,大大促進(jìn)了視頻監(jiān)控系統(tǒng)智能化,提高了獲取視頻信息的效率。人體相關(guān)信息是監(jiān)控場景下應(yīng)該重點關(guān)注的信息。通過對監(jiān)控場景下人流流量的統(tǒng)計分析,可以對公共安全技術(shù)情況進(jìn)行合理的預(yù)測,從而有效防止意外事故的發(fā)生。隨著計算機(jī)視覺技術(shù)的進(jìn)一步發(fā)展,人們迫切希望對檢測到的人體提取更多有用的信息,例如性別特征、年齡特征、外觀特征等,這些人體相關(guān)的特征具有廣泛的應(yīng)用。在安防領(lǐng)域,利用性別特征、年齡特征、外觀特征等可以快速鎖定特定人群,定位目標(biāo)位置,從而可以進(jìn)一步進(jìn)行實現(xiàn)目標(biāo)檢索或者行人重識別等功能。
當(dāng)前對人體外觀屬性的識別主要分為兩大領(lǐng)域,分別是基于人臉圖像的屬性識別和基于全身圖像的屬性識別。
人臉識別最典型的特征臉?biāo)惴?#xff0c;是通過使用K-L變換進(jìn)行人臉識別。在將年齡估計作為分類模式的研究中,Dehshibi等人提取人臉圖像的紋理特征和面部形狀特征,基于人工神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,從而實現(xiàn)對人臉圖像進(jìn)行年齡段的分類。Gao等人把年齡段分為嬰兒、小孩、成年、老年,然后通過Gabor濾波器提取人臉圖像特征,結(jié)合SVM分類器進(jìn)行年齡屬性識別。Takimoto等人使用BP神經(jīng)網(wǎng)絡(luò),他們使用三層的BP神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練和分類,除了提取形狀和紋理特征外,Takimoto等人還加入了顏色特征,進(jìn)一步提高了性別分類的準(zhǔn)確性。
使用面部圖像進(jìn)行人體外觀屬性的識別已經(jīng)具有極高的識別精度,然而在監(jiān)控場景下,清晰人臉的圖像很難獲取。因此,基于面部圖像的屬性識別算法并不適用于真實的監(jiān)控場景下。近年來,已經(jīng)有許多科研人員開始關(guān)注使用視頻監(jiān)控中的全身圖像進(jìn)行人體外觀屬性的識別,并且取得了重大的進(jìn)展。
傳統(tǒng)的基于人體的屬性識別的研究主要基于預(yù)先設(shè)計(手工設(shè)計)的特征提取器,提取特征向量例如HOG、BIF等,這種方法的局限在于,手工設(shè)計特征的過程比較復(fù)雜,并且特征的表達(dá)能力不足,造成準(zhǔn)確率低下。
隨著深度學(xué)習(xí)的不斷發(fā)展,研究人員開始嘗試使用卷積神經(jīng)網(wǎng)絡(luò)的方法提取深度特征作為表征人體外觀屬性的特征,并且取得了突破性的進(jìn)展。公開號為CN107862300A的專利公開了“一種基于卷積神經(jīng)網(wǎng)絡(luò)的監(jiān)控場景下行人屬性識別方法”,但所使用的卷積神經(jīng)網(wǎng)絡(luò)比較簡單,難以應(yīng)對行人外觀屬性識別這類復(fù)雜的識別任務(wù),另外由于公開的行人外觀數(shù)據(jù)集都比較小,難以在單個數(shù)據(jù)集上充分訓(xùn)練行人外觀屬性識別卷積神經(jīng)網(wǎng)絡(luò)。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于提供基于Inception V3的多數(shù)據(jù)集聯(lián)合訓(xùn)練的行人外觀屬性識別方法,解決現(xiàn)有基于深度學(xué)習(xí)的行人外觀屬性識別方法在監(jiān)控場景下易受光照、遮擋、目標(biāo)姿態(tài)變化和圖像清晰度等因素影響,泛化能力較差的問題,能夠?qū)崿F(xiàn)目標(biāo)監(jiān)控場景下的行人屬性準(zhǔn)確識別,并且只需要極少的目標(biāo)場景數(shù)據(jù)即可實現(xiàn)。
本發(fā)明通過下述技術(shù)方案實現(xiàn):基于Inception V3的多數(shù)據(jù)集聯(lián)合訓(xùn)練的行人外觀屬性識別方法,包括以下步驟:
1)獲取含有行人的監(jiān)控視頻片段,對行人圖像進(jìn)行預(yù)處理;
2)構(gòu)建新的Inception V3卷積神經(jīng)網(wǎng)絡(luò)模型;
3)改進(jìn)logistic loss損失函數(shù);
4)輸入多個公開數(shù)據(jù)集數(shù)據(jù),進(jìn)行訓(xùn)練,得到行人外觀屬性識別模型;
5)利用所得行人外觀屬性識別模型進(jìn)行實際場景下的識別。
進(jìn)一步的為更好地實現(xiàn)本發(fā)明,特別采用下述設(shè)置方式:所述步驟1)包括以下具體步驟:
1.1)將截取的視頻幀按照規(guī)定的圖片命名方式(例如:111.jpg,數(shù)字代表是第幾張圖像)進(jìn)行命名,保存到指定位置;
1.2)對所有的圖片文件進(jìn)行外觀屬性標(biāo)注,形成數(shù)據(jù)集;每一張行人圖片上的行人屬性都是二進(jìn)制屬性,如果擁有這項屬性,則對應(yīng)的這項標(biāo)簽值為1;如果沒有,則標(biāo)簽值為0,例如圖片上行人戴眼鏡,則對應(yīng)戴眼鏡這項標(biāo)簽值為1;
1.3)將數(shù)據(jù)集分成兩部分,分別為訓(xùn)練集、驗證集,訓(xùn)練集用于訓(xùn)練模型,驗證集用于測試模型效果,不參與訓(xùn)練,其中,訓(xùn)練集占總圖片數(shù)量的70~90%,測試集占總圖片數(shù)量的10~30%;優(yōu)選的訓(xùn)練集占總圖片數(shù)量的80%,測試集占總圖片數(shù)量的20%。
進(jìn)一步的為更好地實現(xiàn)本發(fā)明,特別采用下述設(shè)置方式:所述新的Inception V3卷積神經(jīng)網(wǎng)絡(luò)模型包括5個卷積層、11個block結(jié)構(gòu)及4個并列的全連接層;所述卷積層和block結(jié)構(gòu)用于自動提取行人屬性特征;全連接層用于組合屬性特征,獲取對應(yīng)屬性分?jǐn)?shù)。
進(jìn)一步的為更好地實現(xiàn)本發(fā)明,特別采用下述設(shè)置方式:所述步驟3)具體為:將每個全連接層后皆加一個loss函數(shù),最后計算所有l(wèi)oss之和,來進(jìn)行多數(shù)據(jù)集聯(lián)合訓(xùn)練。
進(jìn)一步的為更好地實現(xiàn)本發(fā)明,特別采用下述設(shè)置方式:所述loss函數(shù)為:
其中N表示訓(xùn)練時每次送入的圖片數(shù)量,C為行人對應(yīng)的外觀屬性數(shù)量,每個行人圖片表示為xn,對應(yīng)經(jīng)過網(wǎng)絡(luò)計算的輸出為Vn,對應(yīng)的標(biāo)簽向量為yn,每個標(biāo)簽向量對應(yīng)的屬性值為yn,i,i∈[1,2,...,C],如果yn,i=1表明這個訓(xùn)練樣本xn有這個屬性,如果yn,i=0表明這個訓(xùn)練樣本xn沒有這個屬性;Sn,i表示這個樣本xn的第i個屬性的得分高低,Sn,i∈[0,1],yn,i是真實屬性標(biāo)簽,表示行人樣本xn有沒有第i個屬性。
進(jìn)一步的為更好地實現(xiàn)本發(fā)明,特別采用下述設(shè)置方式:所述步驟4)包括以下具體步驟:
4.1)訓(xùn)練之前,準(zhǔn)備大于6G顯存的GPU和linux系統(tǒng)環(huán)境,搭建pytorch環(huán)境;
4.2)設(shè)置模型訓(xùn)練的優(yōu)化方式,優(yōu)選的采用動量梯度下降法進(jìn)行模型訓(xùn)練的優(yōu)化,此方法相較于傳統(tǒng)的梯度學(xué)習(xí)法,有著更快的下降速度和自適應(yīng)學(xué)習(xí)速率,不用手動矯正學(xué)習(xí)率;
4.3)設(shè)置模型訓(xùn)練的圖片預(yù)處理方式,合適的圖片預(yù)處理方式能夠擴(kuò)大數(shù)據(jù)集的大小,使得模型的泛化能力更強;
4.4)設(shè)置模型的基礎(chǔ)學(xué)習(xí)率、動量權(quán)重以及最大迭代次數(shù),在最大迭代次數(shù)下,不斷迭代學(xué)習(xí),直到損失函數(shù)值不再下降,模型收斂,保存模型參數(shù);
4.5)完成訓(xùn)練,得到行人外觀屬性識別模型。
進(jìn)一步的為更好地實現(xiàn)本發(fā)明,特別采用下述設(shè)置方式:所述步驟4.3)包括以下具體步驟:
4.3.1)改變圖片的亮度、對比度和飽和度;
4.3.2)經(jīng)過步驟4.3.1)后,將圖片進(jìn)行隨機(jī)的水平翻轉(zhuǎn);
4.3.3)經(jīng)步驟4.3.2)后,將圖片最短邊縮放到150像素,長邊按照1:3的比例縮放到450像素,這樣圖片中的行人不會失真;
4.3.4)經(jīng)步驟4.3.3)后,縮放的圖片不進(jìn)行裁剪,直接送入網(wǎng)絡(luò)進(jìn)行訓(xùn)練,這樣會保證行人的任何部位不會被裁剪掉,從而導(dǎo)致模型預(yù)測更加準(zhǔn)確。
進(jìn)一步的為更好地實現(xiàn)本發(fā)明,特別采用下述設(shè)置方式:所述步驟4)在進(jìn)行訓(xùn)練時,將模型在多個公開數(shù)據(jù)集上進(jìn)行訓(xùn)練。
進(jìn)一步的為更好地實現(xiàn)本發(fā)明,特別采用下述設(shè)置方式:在所述步驟1)之前還包括選擇公開數(shù)據(jù)集,所述公開數(shù)據(jù)集采用PEdesTrian Attribute(PETA)數(shù)據(jù)集或/和a Richly Annotated Pedestrian(RAP)數(shù)據(jù)集或/和a new large-scale pedestrian attribute(PA100K)數(shù)據(jù)集。
本發(fā)明所公開的行人外觀屬性識別方法包括:挑選大型公開數(shù)據(jù)集;獲取含有行人的監(jiān)控視頻片段,對行人圖像進(jìn)行預(yù)處理;構(gòu)建Inception V3卷積神經(jīng)網(wǎng)絡(luò)模型并改進(jìn)Inception V3模型和loss函數(shù),構(gòu)建適合多數(shù)據(jù)集聯(lián)合訓(xùn)練新的Inception V3模型;輸入多個公開數(shù)據(jù)集數(shù)據(jù),進(jìn)行訓(xùn)練,最后利用所得模型進(jìn)行識別。
具體步驟分為:
(1)選擇公開數(shù)據(jù)集,選用PEdesTrian Attribute(PETA)數(shù)據(jù)集和/或a Richly Annotated Pedestrian(RAP)數(shù)據(jù)集和/或a new large-scale pedestrian attribute(PA100K)數(shù)據(jù)集,其中PETA數(shù)據(jù)集包含19000張圖片,61個二分類行人屬性;RAP數(shù)據(jù)集包含41585張圖片,包含72個行人屬性;PA100K包含100000張圖片,包含26個行人屬性;
在步驟(1)中,選取的公開數(shù)據(jù)集需要數(shù)據(jù)量比較大、行人外觀屬性貼近我們目標(biāo)數(shù)據(jù)集的公開數(shù)據(jù)集,否則無法提升我們模型在目標(biāo)數(shù)據(jù)集的效果。
(2)獲取含有行人的監(jiān)控視頻,并截取視頻幀,構(gòu)建目標(biāo)場景下的行人外觀屬性數(shù)據(jù)集;
在步驟(2)中,獲取的行人的監(jiān)控視頻需要提取出視頻幀,并統(tǒng)一命名,隨后對圖片進(jìn)行行人外觀屬性標(biāo)注。
(3)選擇深度卷積神經(jīng)網(wǎng)絡(luò)模型,使用經(jīng)過改進(jìn)的Inception V3卷積神經(jīng)網(wǎng)絡(luò)模型作為實驗?zāi)P?#xff1b;
(4)改進(jìn)logistic loss損失函數(shù),使之能夠進(jìn)行多屬性分類和多數(shù)據(jù)集聯(lián)合訓(xùn)練;
改進(jìn)的logistic loss損失函數(shù),使之從只能進(jìn)行單屬性分類到能夠進(jìn)行多屬性分類,并進(jìn)一步改進(jìn),來滿足多數(shù)據(jù)集聯(lián)合訓(xùn)練。
(5)將行人外觀屬性的公開數(shù)據(jù)集和目標(biāo)數(shù)據(jù)集分割成訓(xùn)練數(shù)據(jù)集和測試數(shù)據(jù)集,將訓(xùn)練數(shù)據(jù)集輸入到改進(jìn)的Inception V3卷積神經(jīng)模型中進(jìn)行訓(xùn)練,得到行人外觀屬性識別模型。
在步驟(5)中,訓(xùn)練過程具體如下:
訓(xùn)練過程分為模型訓(xùn)練和模型驗證兩個部分。
模型訓(xùn)練分為讀取數(shù)據(jù)和訓(xùn)練兩部分。讀取數(shù)據(jù)是改進(jìn)的Inception v3模型通過改進(jìn)的logistic loss損失函數(shù)從本地磁盤讀入預(yù)處理后的訓(xùn)練數(shù)據(jù)集(輸入模型進(jìn)行訓(xùn)練的圖片需要進(jìn)行數(shù)據(jù)預(yù)處理,需要把圖片進(jìn)行長寬比和大小調(diào)整、鏡像翻轉(zhuǎn)、添加噪聲等預(yù)處理,再進(jìn)行訓(xùn)練)。訓(xùn)練則是改進(jìn)的Inception V3模型利用訓(xùn)練數(shù)據(jù)來調(diào)整參數(shù),降低改進(jìn)的logistic loss函數(shù)值,并將改進(jìn)的Inception V3模型同時在多個數(shù)據(jù)集上進(jìn)行訓(xùn)練,在每個數(shù)據(jù)集上訓(xùn)練一個周期,讓模型參數(shù)適應(yīng)多個數(shù)據(jù)集,這樣1)能夠擴(kuò)充數(shù)據(jù)集的大小,使得模型不僅僅利用目標(biāo)數(shù)據(jù)集的數(shù)據(jù),而且還利用了幾個公開數(shù)據(jù)集的數(shù)據(jù);2)能夠使得模型的泛化能力更好,不會在單一數(shù)據(jù)集上過擬合,從而導(dǎo)致模型的實際效果下降。
每訓(xùn)練一定周期后,需要進(jìn)行一次模型驗證,即將預(yù)處理后的驗證數(shù)據(jù)集從磁盤讀入內(nèi)存,改進(jìn)的Inception V3模型利用已經(jīng)學(xué)習(xí)到的參數(shù)進(jìn)行驗證數(shù)據(jù)集的預(yù)測,最終統(tǒng)計正確率來進(jìn)行模型參數(shù)的評估。
直到模型參數(shù)在模型驗證時獲得最高正確率,即認(rèn)為完成訓(xùn)練,此時保存模型的結(jié)構(gòu)和模型參數(shù)到磁盤。
(6)利用得到的行人外觀屬性識別模型進(jìn)行實際場景下的識別。
本發(fā)明與現(xiàn)有技術(shù)相比,具有以下優(yōu)點及有益效果:
(1)本發(fā)明從兩個方面來設(shè)計行人外觀屬性識別算法:一方面,利用行人外觀屬性的相關(guān)性,例如白色頭發(fā)的行人更有可能是老年人,來優(yōu)化行人外觀屬性識別的正確率。另一方面,結(jié)合多個公開數(shù)據(jù)集,進(jìn)行聯(lián)合訓(xùn)練,既解決目標(biāo)場景下數(shù)據(jù)不足的問題;又可以獲得更適應(yīng)實際場景下的行人外觀屬性神經(jīng)網(wǎng)絡(luò)。
(2)本發(fā)明考慮到實際情況,常見的數(shù)據(jù)預(yù)處理操作會將圖片比例改變到1:1和裁剪訓(xùn)練數(shù)據(jù),這樣會造成行人外觀屬性的丟失,導(dǎo)致模型預(yù)測錯誤,本發(fā)明將訓(xùn)練圖片長寬比改變比例到3:1,使得圖片更加符合普通行人的外觀,不至于圖片失真,并且不進(jìn)行圖片裁剪。
(3)本發(fā)明改進(jìn)logistics loss函數(shù),使之能夠適應(yīng)多屬性分類和多數(shù)據(jù)集聯(lián)合訓(xùn)練,使得模型能夠預(yù)測多種行人外觀屬性,滿足實際需求,并且由于使用了多個公開數(shù)據(jù)集的訓(xùn)練數(shù)據(jù),使得模型只需要極少的目標(biāo)場景下的訓(xùn)練數(shù)據(jù),就可以實現(xiàn)在目標(biāo)場景下的準(zhǔn)確識別,極大的提升了模型的效果和泛化能力。
(4)本發(fā)明采用多數(shù)據(jù)集聯(lián)合訓(xùn)練方法,來獲得適用于實際場景下的行人外觀屬性識別網(wǎng)絡(luò)。
附圖說明
圖1為本發(fā)明的總體流程圖。
圖2為多個監(jiān)控攝像頭下模式識別效果圖。
圖3為block結(jié)構(gòu)示意圖。
其中,在圖2中,圖片右邊文字為行人外觀屬性識別結(jié)果。
具體實施方式
下面結(jié)合實施例對本發(fā)明作進(jìn)一步地詳細(xì)說明,但本發(fā)明的實施方式不限于此。
為使本發(fā)明實施方式的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施方式中的附圖,對本發(fā)明實施方式中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施方式是本發(fā)明一部分實施方式,而不是全部的實施方式。基于本發(fā)明中的實施方式,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施方式,都屬于本發(fā)明保護(hù)的范圍。因此,以下對在附圖中提供的本發(fā)明的實施方式的詳細(xì)描述并非旨在限制要求保護(hù)的本發(fā)明的范圍,而是僅僅表示本發(fā)明的選定實施方式?;诒景l(fā)明中的實施方式,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施方式,都屬于本發(fā)明保護(hù)的范圍。
實施例1:
本發(fā)明設(shè)計出基于Inception V3的多數(shù)據(jù)集聯(lián)合訓(xùn)練的行人外觀屬性識別方法,解決現(xiàn)有基于深度學(xué)習(xí)的行人外觀屬性識別方法在監(jiān)控場景下易受光照、遮擋、目標(biāo)姿態(tài)變化和圖像清晰度等因素影響,泛化能力較差的問題,能夠?qū)崿F(xiàn)目標(biāo)監(jiān)控場景下的行人屬性準(zhǔn)確識別,并且只需要極少的目標(biāo)場景數(shù)據(jù)即可實現(xiàn),特別采用下述設(shè)置方式:包括以下步驟:
1)獲取含有行人的監(jiān)控視頻片段,對行人圖像進(jìn)行預(yù)處理;
2)構(gòu)建新的Inception V3卷積神經(jīng)網(wǎng)絡(luò)模型;
3)改進(jìn)logistic loss損失函數(shù);
4)輸入多個公開數(shù)據(jù)集數(shù)據(jù),進(jìn)行訓(xùn)練,得到行人外觀屬性識別模型;
5)利用所得行人外觀屬性識別模型進(jìn)行實際場景下的識別。
實施例2:
本實施例是在上述實施例的基礎(chǔ)上進(jìn)一步優(yōu)化,進(jìn)一步的為更好地實現(xiàn)本發(fā)明,特別采用下述設(shè)置方式:所述步驟1)包括以下具體步驟:
1.1)將截取的視頻幀按照規(guī)定的圖片命名方式(例如:111.jpg,數(shù)字代表是第幾張圖像)進(jìn)行命名,保存到指定位置;
1.2)對所有的圖片文件進(jìn)行外觀屬性標(biāo)注,形成數(shù)據(jù)集;每一張行人圖片上的行人屬性都是二進(jìn)制屬性,如果擁有這項屬性,則對應(yīng)的這項標(biāo)簽值為1;如果沒有,則標(biāo)簽值為0,例如圖片上行人戴眼鏡,則對應(yīng)戴眼鏡這項標(biāo)簽值為1;
1.3)將數(shù)據(jù)集分成兩部分,分別為訓(xùn)練集、驗證集,訓(xùn)練集用于訓(xùn)練模型,驗證集用于測試模型效果,不參與訓(xùn)練,其中,訓(xùn)練集占總圖片數(shù)量的70~90%,測試集占總圖片數(shù)量的10~30%;優(yōu)選的訓(xùn)練集占總圖片數(shù)量的80%,測試集占總圖片數(shù)量的20%。
實施例3:
本實施例是在上述任一實施例的基礎(chǔ)上進(jìn)一步優(yōu)化,進(jìn)一步的為更好地實現(xiàn)本發(fā)明,特別采用下述設(shè)置方式:所述新的Inception V3卷積神經(jīng)網(wǎng)絡(luò)模型包括5個卷積層、11個block結(jié)構(gòu)及4個并列的全連接層;所述卷積層和block結(jié)構(gòu)用于自動提取行人屬性特征;全連接層用于組合屬性特征,獲取對應(yīng)屬性分?jǐn)?shù)。
實施例4:
本實施例是在上述任一實施例的基礎(chǔ)上進(jìn)一步優(yōu)化,進(jìn)一步的為更好地實現(xiàn)本發(fā)明,特別采用下述設(shè)置方式:所述步驟3)具體為:將每個全連接層后皆加一個loss函數(shù),最后計算所有l(wèi)oss之和,來進(jìn)行多數(shù)據(jù)集聯(lián)合訓(xùn)練。
實施例5:
本實施例是在上述任一實施例的基礎(chǔ)上進(jìn)一步優(yōu)化,進(jìn)一步的為更好地實現(xiàn)本發(fā)明,特別采用下述設(shè)置方式:所述loss函數(shù)為:
其中N表示訓(xùn)練時每次送入的圖片數(shù)量,C為行人對應(yīng)的外觀屬性數(shù)量,每個行人圖片表示為xn,對應(yīng)經(jīng)過網(wǎng)絡(luò)計算的輸出為Vn,對應(yīng)的標(biāo)簽向量為yn,每個標(biāo)簽向量對應(yīng)的屬性值為yn,i,i∈[1,2,...,C],如果yn,i=1表明這個訓(xùn)練樣本xn有這個屬性,如果yn,i=0表明這個訓(xùn)練樣本xn沒有這個屬性;Sn,i表示這個樣本xn的第i個屬性的得分高低,Sn,i∈[0,1],yn,i是真實屬性標(biāo)簽,表示行人樣本xn有沒有第i個屬性。
實施例6:
本實施例是在上述任一實施例的基礎(chǔ)上進(jìn)一步優(yōu)化,進(jìn)一步的為更好地實現(xiàn)本發(fā)明,特別采用下述設(shè)置方式:所述步驟4)包括以下具體步驟:
4.1)訓(xùn)練之前,準(zhǔn)備大于6G顯存的GPU和linux系統(tǒng)環(huán)境,搭建pytorch環(huán)境;
4.2)設(shè)置模型訓(xùn)練的優(yōu)化方式,優(yōu)選的采用動量梯度下降法進(jìn)行模型訓(xùn)練的優(yōu)化,此方法相較于傳統(tǒng)的梯度學(xué)習(xí)法,有著更快的下降速度和自適應(yīng)學(xué)習(xí)速率,不用手動矯正學(xué)習(xí)率;
4.3)設(shè)置模型訓(xùn)練的圖片預(yù)處理方式,合適的圖片預(yù)處理方式能夠擴(kuò)大數(shù)據(jù)集的大小,使得模型的泛化能力更強;
4.4)設(shè)置模型的基礎(chǔ)學(xué)習(xí)率、動量權(quán)重以及最大迭代次數(shù),在最大迭代次數(shù)下,不斷迭代學(xué)習(xí),直到損失函數(shù)值不再下降,模型收斂,保存模型參數(shù);
4.5)完成訓(xùn)練,得到行人外觀屬性識別模型。
實施例7:
本實施例是在上述任一實施例的基礎(chǔ)上進(jìn)一步優(yōu)化,進(jìn)一步的為更好地實現(xiàn)本發(fā)明,特別采用下述設(shè)置方式:所述步驟4.3)包括以下具體步驟:
4.3.1)改變圖片的亮度、對比度和飽和度;
4.3.2)經(jīng)過步驟4.3.1)后,將圖片進(jìn)行隨機(jī)的水平翻轉(zhuǎn);
4.3.3)經(jīng)步驟4.3.2)后,將圖片最短邊縮放到150像素,長邊按照1:3的比例縮放到450像素,這樣圖片中的行人不會失真;
4.3.4)經(jīng)步驟4.3.3)后,縮放的圖片不進(jìn)行裁剪,直接送入網(wǎng)絡(luò)進(jìn)行訓(xùn)練,這樣會保證行人的任何部位不會被裁剪掉,從而導(dǎo)致模型預(yù)測更加準(zhǔn)確。
實施例8:
本實施例是在上述任一實施例的基礎(chǔ)上進(jìn)一步優(yōu)化,進(jìn)一步的為更好地實現(xiàn)本發(fā)明,特別采用下述設(shè)置方式:所述步驟4)在進(jìn)行訓(xùn)練時,將模型在多個公開數(shù)據(jù)集上進(jìn)行訓(xùn)練。
實施例9:
本實施例是在上述任一實施例的基礎(chǔ)上進(jìn)一步優(yōu)化,進(jìn)一步的為更好地實現(xiàn)本發(fā)明,特別采用下述設(shè)置方式:在所述步驟1)之前還包括選擇公開數(shù)據(jù)集,所述公開數(shù)據(jù)集采用PEdesTrian Attribute(PETA)數(shù)據(jù)集或/和a Richly Annotated Pedestrian(RAP)數(shù)據(jù)集或/和a new large-scale pedestrian attribute(PA100K)數(shù)據(jù)集。
實施例10:
本實施例是在上述任一實施例的基礎(chǔ)上進(jìn)一步優(yōu)化,基于Inception V3的多數(shù)據(jù)集聯(lián)合訓(xùn)練的行人外觀屬性識別方法,本實例是在Ubuntu 14.04系統(tǒng)下完成的,并搭建了Python2.7的實驗環(huán)境,使用的深度學(xué)習(xí)庫為Pytorch 0.4,使用的顯卡為GTX 1080Ti 11G顯存顯卡和32G內(nèi)存。該實例所提供的基于Inception V3的多數(shù)據(jù)集聯(lián)合訓(xùn)練的行人外觀屬性識別方法,包括以下步驟:
包括:
(1)挑選和目標(biāo)場景下需要的行人外觀屬性相似的公開數(shù)據(jù)集,要求公開數(shù)據(jù)集的數(shù)據(jù)量較大,因此基于目標(biāo)場景,挑選PEdesTrian Attribute(PETA)數(shù)據(jù)集、a Richly Annotated Pedestrian(RAP)數(shù)據(jù)集、a new large-scale pedestrian attribute(PA100K)數(shù)據(jù)集;
(2)獲取含有行人的監(jiān)控視頻,并截取視頻幀,構(gòu)建目標(biāo)場景下的行人外觀屬性數(shù)據(jù)集,包括以下子步驟:
(2-1)將截取的視頻幀按照規(guī)定的圖片命名方式進(jìn)行命名,保存到指定位置;
(2-2)對所有的圖片文件進(jìn)行外觀屬性標(biāo)注:每一張行人圖片上的行人屬性都是二進(jìn)制屬性,如果擁有這項屬性,則對應(yīng)的這項標(biāo)簽值為1;如果沒有,則標(biāo)簽值為0,例如圖片上行人戴眼鏡,則對應(yīng)戴眼鏡這項標(biāo)簽值為1;
(2-3)將數(shù)據(jù)集分成兩部分,分別為訓(xùn)練集、驗證集,訓(xùn)練集用于訓(xùn)練模型,驗證集用于測試模型效果,不參與訓(xùn)練,其中,訓(xùn)練集占總圖片數(shù)量的80%,測試集占總圖片數(shù)量的20%。
(3)選擇深度卷積神經(jīng)網(wǎng)絡(luò)模型,使用Inception V3卷積神經(jīng)網(wǎng)絡(luò)模型作為實驗?zāi)P?#xff0c;在該步驟中的現(xiàn)有的Inception V3模型結(jié)構(gòu)復(fù)雜,包括5個卷積層、11個block結(jié)構(gòu)以及1個全連接層,而本發(fā)明為在此基礎(chǔ)上,添加了3個并列的全連接層,形成新的Inception V3卷積神經(jīng)網(wǎng)絡(luò)模型,用于在多個數(shù)據(jù)集上進(jìn)行聯(lián)合訓(xùn)練,卷積層和block結(jié)構(gòu)用于自動提取行人屬性特征,全連接層用于組合屬性特征,獲取對應(yīng)屬性分?jǐn)?shù),block結(jié)構(gòu)如圖3所示;
(4)改進(jìn)logistic損失函數(shù),使之能夠進(jìn)行多屬性分類和多數(shù)據(jù)集聯(lián)合訓(xùn)練,具體的每個全連接層后都加一個loss函數(shù),最后計算所有l(wèi)oss之和,來進(jìn)行多數(shù)據(jù)集聯(lián)合訓(xùn)練。其中的loss函數(shù)為:
其中N表示訓(xùn)練時每次送入的圖片數(shù)量,C為行人對應(yīng)的外觀屬性數(shù)量,每個行人圖片表示為xn,對應(yīng)經(jīng)過網(wǎng)絡(luò)計算的輸出為Vn,對應(yīng)的標(biāo)簽向量為yn,每個標(biāo)簽向量對應(yīng)的屬性值為yn,i,i∈[1,2,...,C],如果yn,i=1表明這個訓(xùn)練樣本xn有這個屬性,如果yn,i=0表明這個訓(xùn)練樣本xn沒有這個屬性;Sn,i表示這個樣本xn的第i個屬性的得分高低,Sn,i∈[0,1],yn,i是真實屬性標(biāo)簽,表示行人樣本xn有沒有第i個屬性。
(5)將行人外觀屬性的公開數(shù)據(jù)集和目標(biāo)數(shù)據(jù)集分割成訓(xùn)練數(shù)據(jù)集和測試數(shù)據(jù)集,將訓(xùn)練數(shù)據(jù)集輸入到InceptionV3卷積神經(jīng)模型中進(jìn)行訓(xùn)練,得到行人外觀屬性識別模型;具體包括以下子步驟:
(5-1)訓(xùn)練之前,準(zhǔn)備大于6G顯存的GPU和linux系統(tǒng)環(huán)境,搭建pytorch環(huán)境;
(5-2)設(shè)置模型訓(xùn)練的優(yōu)化方式,優(yōu)選選擇動量梯度下降法,此方法相較于傳統(tǒng)的梯度學(xué)習(xí)法,有著更快的下降速度和自適應(yīng)學(xué)習(xí)速率,不用手動矯正學(xué)習(xí)率;
(5-3)設(shè)置模型訓(xùn)練的圖片預(yù)處理方式,合適的圖片預(yù)處理方式能夠擴(kuò)大數(shù)據(jù)集的大小,使得模型的泛化能力更強,其中,圖片預(yù)處理流程為首先改變圖片的亮度、對比度和飽和度,再將圖片進(jìn)行隨機(jī)的水平翻轉(zhuǎn),隨后將圖片最短邊縮放到150像素,長邊按照1:3的比例縮放到450像素,這樣圖片中的行人不會失真,最后縮放的圖片不進(jìn)行裁剪,直接送入網(wǎng)絡(luò)進(jìn)行訓(xùn)練,這樣會保證行人的任何部位不會被裁剪掉,從而導(dǎo)致模型預(yù)測更加準(zhǔn)確;
(5-4)設(shè)置模型的基礎(chǔ)學(xué)習(xí)率、動量權(quán)重以及最大迭代次數(shù),在最大迭代次數(shù)下,不斷迭代學(xué)習(xí),直到損失函數(shù)值不再下降,模型收斂,保存模型參數(shù);
(5-5)完成訓(xùn)練,得到行人外觀屬性識別模型。
以上所述,僅是本發(fā)明的較佳實施例,并非對本發(fā)明做任何形式上的限制,凡是依據(jù)本發(fā)明的技術(shù)實質(zhì)對以上實施例所作的任何簡單修改、等同變化,均落入本發(fā)明的保護(hù)范圍之內(nèi)。
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的行人属性数据集pa100k_基于InceptionV3的多数据集联合训练的行人外观属性识别方法与流程...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sc openscmanager 失败
- 下一篇: 读模式与写模式