董紅斌,劉洋英杰,付強(qiáng)
哈爾濱工程大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院, 黑龍江 哈爾濱 150001
隨著物聯(lián)網(wǎng)技術(shù)的不斷發(fā)展與壯大,車輛在生活中逐漸與物聯(lián)網(wǎng)進(jìn)行融合。城市與郊外車輛數(shù)量逐漸增多,車輛實(shí)時(shí)定位、跨域跟蹤等功能已成為公安管理的重要組成部分。目前,大多數(shù)地區(qū)的車輛識(shí)別主要是通過攝像頭識(shí)別車牌。然而,在實(shí)際環(huán)境中,尤其在偏遠(yuǎn)區(qū)域,大量的攝像機(jī)清晰度低、處理速度慢。由于功耗原因,無法在終端上得到計(jì)算,需要傳回云端進(jìn)行計(jì)算,在極端天氣條件下邊緣設(shè)備抗干擾能力弱、傳輸速度慢、圖像質(zhì)量差,導(dǎo)致云端計(jì)算準(zhǔn)確率下降,反應(yīng)速度降低。
SNN是神經(jīng)網(wǎng)絡(luò)領(lǐng)域的一個(gè)重要分支,在計(jì)算機(jī)領(lǐng)域中發(fā)揮著重要作用,如場(chǎng)景分類[1]、圖像分類[2]、語音識(shí)別[3]等。Fu等[4]提出了一種先進(jìn)的模式分類方法,即差分進(jìn)化脈沖神經(jīng)網(wǎng)絡(luò)(differential evolving spiking neural network,DESNN)。在另一項(xiàng)研究中,F(xiàn)u等[5]設(shè)計(jì)了一個(gè)分層脈沖神經(jīng)網(wǎng)絡(luò)(spiking neural network,SNN),包括卷積層和池化層,并根據(jù)靈長(zhǎng)類大腦的機(jī)制,提出了由興奮性神經(jīng)元和抑制性神經(jīng)元組成的SNN,同時(shí)使用取決于突觸后的脈沖到達(dá)等級(jí)的時(shí)間編碼(rank order)方式對(duì)輸入模式進(jìn)行編碼,以確定特定模式的輸入脈沖優(yōu)先級(jí)。在卷積層中使用脈沖時(shí)間依 賴 可 塑 性 ( spike timing dependent plasticity,STDP)學(xué)習(xí)規(guī)則,以無監(jiān)督學(xué)習(xí)方式提取視覺特征。在目標(biāo)檢測(cè)方面,Kim等[6]在研究中首次應(yīng)用了SNN,其將SNN與目標(biāo)檢測(cè)相結(jié)合的研究具有重要意義。車輛重識(shí)別作為目標(biāo)檢測(cè)的一個(gè)子任務(wù),不同于目標(biāo)檢測(cè),其目的是在不同的監(jiān)控場(chǎng)景中查找同一輛車。將SNN融合到應(yīng)用中也是一個(gè)重要的研究方向。
在改進(jìn)車輛重識(shí)別算法性能的過程中,通過大量實(shí)驗(yàn)后發(fā)現(xiàn),注意力機(jī)制在圖像領(lǐng)域效果極佳,尤其是對(duì)輸入圖像進(jìn)行特征的提取過程作用重大。注意力機(jī)制在計(jì)算機(jī)視覺領(lǐng)域有著廣泛的應(yīng)用。目前,許多學(xué)者將注意力機(jī)制與行人重識(shí)別和車輛重識(shí)別相結(jié)合。因此,我們希望將脈沖神經(jīng)網(wǎng)絡(luò)集成到車輛重識(shí)別算法中的同時(shí),利用注意力機(jī)制對(duì)脈沖神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化,提高算法的分類能力。伴隨著邊緣計(jì)算的不斷發(fā)展,邊緣設(shè)備間互相可以組成網(wǎng)絡(luò)。在由攝像頭組成的邊緣網(wǎng)絡(luò)中進(jìn)行車輛重識(shí)別時(shí),1輛車被攝像頭所捕捉后將數(shù)據(jù)發(fā)送給其他邊緣設(shè)備,然后其他邊緣設(shè)備將數(shù)據(jù)進(jìn)行重識(shí)別計(jì)算,而不是返回云端計(jì)算,進(jìn)而減少計(jì)算時(shí)間與傳輸時(shí)間。在邊緣設(shè)備進(jìn)行計(jì)算后得到重識(shí)別結(jié)果,并及時(shí)在邊緣設(shè)備上進(jìn)行響應(yīng),如警報(bào)、呼叫附近服務(wù)臺(tái)等,從而明顯減少了響應(yīng)時(shí)間。
針對(duì)車輛重識(shí)別算法的研究主要是通過度量學(xué)習(xí)、車輛外觀信息以及時(shí)空信息來研究車輛重識(shí)別算法。Liu等[7]利用車輛外觀信息和融合車牌匹配進(jìn)行車輛重識(shí)別研究。Wu等[8]通過時(shí)空信息的約束,顯著提高了車輛重識(shí)別算法指標(biāo)。Bai等[9]在度量學(xué)習(xí)方面調(diào)整了backbone中的損失函數(shù),改進(jìn)了算法。
在車輛重識(shí)別算法的研究中,網(wǎng)絡(luò)結(jié)構(gòu)是一個(gè)重要的研究方向。Hsieh等[10]提出了一種基于興趣點(diǎn)及其相應(yīng)對(duì)稱點(diǎn)以確定其感興趣區(qū)域(region of interest,ROI)的方法,無需使用任何具有運(yùn)動(dòng)功能的車輛重識(shí)別算法,并提出了一種新穎的補(bǔ)丁匹配(PatchMatch)網(wǎng)絡(luò),以極高的精度細(xì)化最終結(jié)果。Mai等[11]采用暹羅卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),以車牌和車輛外觀為輸入,提出了一種用于車輛重識(shí)別任務(wù)的神經(jīng)網(wǎng)絡(luò)。Chao等[12]提出了一種基于深度學(xué)習(xí)的車輛重識(shí)別方法,該方法利用兩分支復(fù)合深度網(wǎng)絡(luò)(Multi-DNN)融合暹羅神經(jīng)網(wǎng)絡(luò)來融合顏色、模型和在擋風(fēng)玻璃和地圖上粘貼的標(biāo)記的分類輸出,將它們轉(zhuǎn)換為歐幾里得空間,其中距離可以直接用于衡量任意兩輛車的相似度。為實(shí)現(xiàn)這一目標(biāo),該研究提出了一種基于經(jīng)典卷積神經(jīng)網(wǎng)絡(luò)(Alex-net)的車輛顏色識(shí)別方法、一種基于深度卷積網(wǎng)絡(luò)(visual geometry group network,VGG)的車型識(shí)別方法和一種基于加速區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(faster region-CNN,F(xiàn)aster R-CNN)的粘貼標(biāo)記檢測(cè)識(shí)別方法。Wu等[13]提出了一種新穎的綜合細(xì)節(jié)細(xì)化網(wǎng)絡(luò)(comprehensive detail refinement network,CDRNet),提出了從車輛圖像中學(xué)習(xí)魯棒和多樣化的特征。該算法包含全局注意力模塊、細(xì)節(jié)模塊和局部特征細(xì)化模塊3個(gè)模塊。全局注意力模塊提取關(guān)鍵的全局特征,而細(xì)節(jié)和局部細(xì)化模塊檢索重要的次要特征。Liu等[14]通過實(shí)驗(yàn),提出了車輛重識(shí)別框架。該框架基于深度神經(jīng)網(wǎng)絡(luò),其漸進(jìn)式車輛重識(shí) 別 算 法 ( progressive and multimodal vehicle reidentification,PROVID)對(duì)視覺特征、車牌、攝像頭位置和上下文信息利用更加充分。
車輛重識(shí)別算法的訓(xùn)練流程是:在輸入圖像后,算法對(duì)圖像進(jìn)行預(yù)先處理;隨后將處理后得到的圖像傳輸?shù)骄W(wǎng)絡(luò)中,進(jìn)行計(jì)算和訓(xùn)練損失函數(shù)的操作,目的是增加類之間的距離,減少類內(nèi)的距離。圖1是訓(xùn)練流程,描述了文中算法的訓(xùn)練過程。模型被訓(xùn)練后,可以測(cè)試輸入圖像。測(cè)試過程是將圖像輸入網(wǎng)絡(luò)進(jìn)行計(jì)算,計(jì)算得到的特征圖的相似度(主要是余弦距離),通過排序得到結(jié)果。圖2是測(cè)試流程,描述了文中算法的測(cè)試過程。
圖1 車輛重識(shí)別訓(xùn)練流程
圖2 車輛重識(shí)別測(cè)試流程
SNN被稱為第三代人工神經(jīng)網(wǎng)絡(luò),是受大腦等脈沖信號(hào)處理系統(tǒng)的啟發(fā)而構(gòu)建的。大腦具有高智能和低功耗的優(yōu)點(diǎn),通過參考大腦中的脈沖結(jié)構(gòu),SNN可以在保持低功耗的同時(shí)實(shí)現(xiàn)與人工神經(jīng)網(wǎng)絡(luò)(artificial neural network,ANN)接近的性能。但是在SNN上訓(xùn)練面向ANN的數(shù)據(jù)時(shí)發(fā)現(xiàn),SNN模擬更接近現(xiàn)實(shí)的神經(jīng)元,實(shí)值像素圖像不適合SNN。此外,還需要考慮時(shí)間信息的影響,單個(gè)神經(jīng)元模型[15]必須計(jì)算簡(jiǎn)單,擁有多種可變的放電方式。通過該方法可以模擬真實(shí)研究中的生物神經(jīng)元。當(dāng)神經(jīng)元被信號(hào)激活的情況下,該神經(jīng)元會(huì)產(chǎn)生1個(gè)信號(hào)。神經(jīng)元通過將該信號(hào)傳遞給其他神經(jīng)元,來實(shí)現(xiàn)改變膜電位的目的。
在脈沖神經(jīng)網(wǎng)絡(luò)中,脈沖神經(jīng)元的當(dāng)前激活情況通常被認(rèn)為是當(dāng)前狀態(tài)。該水平通常會(huì)通過建模的方式生成為微分方程。當(dāng)對(duì)脈沖神經(jīng)元進(jìn)行脈沖輸入操作時(shí),其輸入的脈沖會(huì)將電流增加1個(gè)短暫的間隙時(shí)間,然后逐漸下降。有許多編碼方法將這些輸出脈沖序列轉(zhuǎn)換為實(shí)際數(shù)字,這些編碼方法同時(shí)考慮了脈沖頻率和脈沖間隔時(shí)間。在動(dòng)態(tài)的脈沖神經(jīng)網(wǎng)絡(luò)中,神經(jīng)元與深度神經(jīng)網(wǎng)絡(luò)不同。脈沖神經(jīng)元并不是在每次迭代計(jì)算過程中都被激活。相對(duì)的,脈沖神經(jīng)元是在其膜電位達(dá)到閾值時(shí)有激活情況。
脈沖神經(jīng)網(wǎng)絡(luò)接近現(xiàn)實(shí),尤其是在構(gòu)造模擬神經(jīng)元更,并且脈沖神經(jīng)元在計(jì)算過程中對(duì)時(shí)間信息所產(chǎn)生的影響進(jìn)行了計(jì)算與考慮。在Izhikevich[16]的經(jīng)典實(shí)驗(yàn)中,當(dāng)1個(gè)神經(jīng)元被激活時(shí),它會(huì)產(chǎn)生1個(gè)信號(hào)傳遞給其他神經(jīng)元,以增加或減少其膜電位。
圖3[17]為脈沖神經(jīng)原電位轉(zhuǎn)換過程。在SNN中,神經(jīng)元的行為被描述為充電、放電和復(fù)位3個(gè)過程,對(duì)應(yīng)于圖3中的3種顏色。膜電位H輸入X到脈沖神經(jīng)元。在輸入后膜電位產(chǎn)生變化,隨后進(jìn)行充電過程。在進(jìn)行充電過程后,膜電位H產(chǎn)生新的變化,隨后生成脈沖S,并在此之后進(jìn)行放電過程。最后,膜電位在釋放脈沖后變化到V,從H和S到V的轉(zhuǎn)換是一個(gè)復(fù)位過程。
圖3 神經(jīng)元充電、放電和復(fù)位過程的研究
圖3中X(t)是時(shí)間t的輸入,H(t)是時(shí)間t充電后的膜電位,S(t)是時(shí)間t釋放的脈沖,V(t)是時(shí)間t釋放脈沖后的膜電位。在0時(shí)刻時(shí),X傳輸進(jìn)入脈沖神經(jīng)網(wǎng)絡(luò)的脈沖神經(jīng)元中,神經(jīng)元充電,V(0)進(jìn)行變化,隨后神經(jīng)元放電并重置為默認(rèn)膜電位,并為下一個(gè)1時(shí)刻脈沖做好準(zhǔn)備。圖3中的充電方程定義為
不同的神經(jīng)元有不同的充電方程。充電方程將描述閾下動(dòng)態(tài)的微分方程轉(zhuǎn)換為差分方程。當(dāng)考慮到將神經(jīng)元膜電位中的離子通過膜擴(kuò)散的“泄漏”項(xiàng)反映在方程中,此神經(jīng)元被定義為L(zhǎng)IFNode(leaky integration-and-fire)。跟據(jù)圖3 可以得到其充電方程定義為
式中:Vreset為重置電壓, τm為膜電位時(shí)間常數(shù)。在神經(jīng)元的計(jì)算過程(動(dòng)力學(xué)方程)的描述中可以發(fā)現(xiàn),放電過程中的放電方程是不可微分的。放電方程定義為
式中: Θ 為一個(gè)生成二進(jìn)制脈沖的階躍函數(shù),Vthreshold為閾值電壓。復(fù)位方程定義為
式中Vreset為重置電壓。式(1)表示了脈沖神經(jīng)元在經(jīng)過放電后電位歸位的過程。
IFNode(integration-and-fire)是研究中最早的脈沖神經(jīng)元模型[18?19]。在該模型中,細(xì)胞的表現(xiàn)被認(rèn)為是通過對(duì)細(xì)胞膜進(jìn)行充電來控制的,不考慮將神經(jīng)元膜電位中的離子通過膜擴(kuò)散的“泄漏”項(xiàng)反映在方程中。
式中:I(t)為刺激電流,C為細(xì)胞膜電容。
在實(shí)際情況中,很多圖像質(zhì)量較差,圖像中存在大量噪聲。這是終端設(shè)備在極端天氣下不穩(wěn)定造成的,很難在短時(shí)間內(nèi)大規(guī)模優(yōu)化終端設(shè)備。在Deng等[20]的研究中發(fā)現(xiàn)SNN更適合處理非實(shí)值像素二值圖像,如N-MNIST數(shù)據(jù)集和DVS-CIFAR10,它們使用動(dòng)態(tài)視覺傳感器(dynamic vision sensor,DVS)進(jìn)行掃描每個(gè)數(shù)據(jù)集。從靜態(tài)數(shù)據(jù)集中的圖像轉(zhuǎn)換而來的脈沖事件格式數(shù)據(jù)會(huì)在圖像中產(chǎn)生動(dòng)態(tài)模糊。實(shí)驗(yàn)表明,真實(shí)圖像不適合由SNN處理,而虛擬圖像更適合由SNN計(jì)算。相比之下,模糊圖像更接近于不真實(shí)的圖像。當(dāng)將幀圖像轉(zhuǎn)換為具有非實(shí)值像素的二值圖像時(shí),模糊幀圖像轉(zhuǎn)換后生成的非實(shí)值像素圖像更適合于脈沖神經(jīng)網(wǎng)絡(luò)的計(jì)算,可以讓更多的神經(jīng)元受到刺激和釋放反應(yīng)。
在注意力機(jī)制被提出后,注意力機(jī)制在計(jì)算機(jī)領(lǐng)域得到了廣泛的應(yīng)用。在Dong等[21]的研究中提出了一種基于注意力機(jī)制的協(xié)同過濾系統(tǒng),并設(shè)計(jì)了特征主題模型以從評(píng)論文本中提取項(xiàng)目的特征。注意力機(jī)制已廣泛應(yīng)用于行人識(shí)別和車輛重識(shí)別任務(wù)。在Pirazh[22]的研究中,將注意力機(jī)制集成到車輛重識(shí)別任務(wù)中,提出了一種雙向自適應(yīng)注意力(adaptive attention for vehicle reidentification,AAVER)模型,作用是通過全局外觀路徑捕捉車輛的宏觀特征,通過使用方向條件對(duì)路徑信息進(jìn)行約束,通過該方式的部分外觀形狀進(jìn)行學(xué)習(xí),隨后對(duì)區(qū)域性的不同的特征進(jìn)行捕捉,即把注意力集中在最有用的信息關(guān)鍵點(diǎn)上。
本文使用的注意力機(jī)制是空間通道注意力機(jī)制[23](convolutional block attention module,CBAM)。CBAM廣泛應(yīng)用于計(jì)算機(jī)視覺領(lǐng)域。在Zhang等[24]的研究中就設(shè)計(jì)了一種基于稠密連接網(wǎng)絡(luò)(densely connected networks,DenseNet)模型和 CBAM 模塊的遙感圖像算法。將CBAM與任意卷積神經(jīng)網(wǎng)絡(luò)一起疊加使用,其不僅不會(huì)對(duì)結(jié)構(gòu)產(chǎn)生額外的負(fù)擔(dān),反而在訓(xùn)練過程實(shí)現(xiàn)了端到端的效果,對(duì)分類任務(wù)有顯著的效果。本文將其融合到算法中,以最大限度地減少脈沖神經(jīng)元在提取特征時(shí)的開銷,并且在將SNN設(shè)計(jì)為卷積模塊后,使用CBAM模塊處理脈沖卷積神經(jīng)網(wǎng)絡(luò)效果極佳。同時(shí),CBAM模塊中面向通道的注意力機(jī)制對(duì)針對(duì)SNN的通道歸一化優(yōu)化效果影響不大。綜上所述,使用CBAM對(duì)SNN有極好的效果。
加入CBAM模塊后,整體算法網(wǎng)絡(luò)結(jié)構(gòu)如圖4所示。
圖4 算法網(wǎng)絡(luò)結(jié)構(gòu)
在本文中數(shù)據(jù)集使用是開源數(shù)據(jù)集VeRi776[25]。VeRi776 包含 776 輛汽車的 50 000 多張圖像。數(shù)據(jù)集圖像是在現(xiàn)實(shí)世界采集得到的。采集過程中,通過約束監(jiān)控場(chǎng)景進(jìn)行捕獲,同時(shí)進(jìn)行了預(yù)先屬性的標(biāo)記。屬性分類很多,如邊框BBox、品牌、顏色和類型等。每輛車由不同數(shù)目攝像頭(約2~18個(gè))分別采集。不同采集條件可以分為視角、光照、分辨率和遮擋的不同等。同時(shí)數(shù)據(jù)集標(biāo)注了大量的車牌信息如邊框BBox、車牌號(hào)等。除此以外數(shù)據(jù)集包括了大量的攝像機(jī)時(shí)空信息,比如拍攝的時(shí)間戳、相鄰攝像機(jī)之間的距離等。
為了模擬模糊場(chǎng)景,對(duì)數(shù)據(jù)集進(jìn)行模糊處理。使用運(yùn)動(dòng)模糊、高斯噪聲、椒鹽噪聲等模糊方法后,實(shí)驗(yàn)表明算法對(duì)加入單一類型噪聲的模糊場(chǎng)景處理效果穩(wěn)定;加入2種以上的噪聲后,算法對(duì)其處理效果較差。因此,選擇運(yùn)動(dòng)模糊作為增加噪聲方法。
實(shí)驗(yàn)中使用的實(shí)驗(yàn)平臺(tái)為Zhu[26]搭建的AICity2020-VOC-ReID實(shí)驗(yàn)平臺(tái)。該平臺(tái)在NVIDIA AICity Challenge 2020 的車輛重識(shí)別賽道排名第2,無需使用任何其他數(shù)據(jù)和注釋,針對(duì)車輛本身信息進(jìn)行計(jì)算。在VeRi776數(shù)據(jù)集上,其性能也優(yōu)于當(dāng)前最先進(jìn)的方法。
在脈沖神經(jīng)網(wǎng)絡(luò)部分,本文采用了北京大學(xué)信息科學(xué)與技術(shù)學(xué)院數(shù)字媒體研究所多媒體學(xué)習(xí)小組和鵬城實(shí)驗(yàn)室共同開發(fā)的Spiking Jelly框架[17]。Spiking Jelly是一種基于 PyTorch的框架,使用PyTorch作為自動(dòng)微分后端,使用C++和CUDA擴(kuò)展來增強(qiáng)性能,同時(shí)支持CPU和GPU。該框架包含數(shù)據(jù)集、可視化和深度學(xué)習(xí)3個(gè)模塊。目前,整體項(xiàng)目主要由北京大學(xué)媒體學(xué)習(xí)小組和鵬城實(shí)驗(yàn)室人工智能中心管理。
根據(jù)該框架的研究,在卷積過程中使用IFNode的效果更好,本文還使用了其他優(yōu)化SNN的方法,如在脈沖神經(jīng)網(wǎng)絡(luò)中加入通道歸一化操作[6]等。
實(shí)驗(yàn)中發(fā)現(xiàn),在主干網(wǎng)絡(luò)中串行加入SNN會(huì)顯著降低算法的效果。原因可能是SNN的串行添加將向計(jì)算后獲得的特征映射添加噪聲。這是因?yàn)镾NN從圖像中提取模糊特征并丟棄清晰特征,但模糊場(chǎng)景的特征映射和清晰場(chǎng)景的特征共存,而這對(duì)車輛重識(shí)別算法極為不利。因此,該算法采用并行結(jié)構(gòu)將SNN并行融合到算法中。融合后,該算法在VeRi776數(shù)據(jù)集上得到的Rank-1指標(biāo)為89.7%,在處理清晰圖像時(shí)僅下降了7.1%。這個(gè)結(jié)果是可以接受的,因?yàn)槊}沖神經(jīng)網(wǎng)絡(luò)在處理清晰圖像方面不如人工神經(jīng)網(wǎng)絡(luò)有效。但根據(jù)研究[15]顯示,除了功耗優(yōu)勢(shì)外,脈沖神經(jīng)網(wǎng)絡(luò)在模糊情況下的效果可以與人工神經(jīng)網(wǎng)絡(luò)進(jìn)行比較。實(shí)驗(yàn)中使用了預(yù)熱機(jī)制,初始學(xué)習(xí)率為3.50×10?4,統(tǒng)一訓(xùn)練 250 個(gè)迭代次數(shù)(epoch)。接下來,在模糊條件下,將串行結(jié)構(gòu)和并行結(jié)構(gòu)與Baseline進(jìn)行比較。
損失函數(shù)的訓(xùn)練圖如圖5所示,效果比較如表1所示。如圖5所示,SNN串行結(jié)構(gòu)損失函數(shù)的收斂效果較差,在模糊情況下振蕩。如表1所示,與baseline相比,加入串行SNN結(jié)構(gòu)后,Rank-1降低了10.4%,mAP降低了16.7%。然而,在添加并行SNN結(jié)構(gòu)后,Rank-1降低了2.0%,mAP降低了5.6%。SNN并行結(jié)構(gòu)與baseline之間的mAP和Rank-1指標(biāo)差異在預(yù)期范圍內(nèi)??梢钥闯觯⑿蠸NN在收斂性和網(wǎng)絡(luò)訓(xùn)練性能方面優(yōu)于串行SNN。加入并行結(jié)構(gòu)后,訓(xùn)練時(shí)間增加,收斂速度減慢。但是,與串行結(jié)構(gòu)相比,并行結(jié)構(gòu)的收斂效果更好,精度也會(huì)大大提高。
圖5 Baseline和增加串行結(jié)構(gòu)和并行結(jié)構(gòu)的損失函數(shù)訓(xùn)練圖
表1 baseline 與添加串行結(jié)構(gòu)和并行結(jié)構(gòu) baseline 比較%
在添加CBAM模塊后,我們進(jìn)行了消融實(shí)驗(yàn),以驗(yàn)證CBAM模塊對(duì)SNN具有更好的適應(yīng)性。損失函數(shù)的訓(xùn)練圖如圖6所示,效果比較如表2所示。
表2 比較 baseline、SNN 和 CBAM 模塊的消融效果 %
圖6 baseline、SNN 和 CBAM 消融實(shí)驗(yàn)中損失函數(shù)訓(xùn)練圖
圖6顯示了添加SNN后算法的收斂效果變差。這是因?yàn)樵赟NN的并行訓(xùn)練過程中,需要額外計(jì)算每個(gè)神經(jīng)元充電和放電的復(fù)位過程。在添加CBAM后收斂速度變慢,但整體收斂效果變好。
如表2所示,將CBAM添加到baseline后,Rank-1提升2.2%,mAP提升5.4%。然而,在使用SNN時(shí)將CBAM添加到Baseline后,Rank-1提升2.7%,mAP提升7.9%??梢钥闯觯珻BAM模塊添加到使用SNN的baseline中,相比于將CBAM添加到baseline時(shí),在Rank-1和mAP指標(biāo)方面提升更明顯,證明了SNN比ANN更適合使用CBAM。在Rank-1和mAP指標(biāo)中,添加SNN后,Baseline和具有CBAM的Baseline的準(zhǔn)確性降低在預(yù)期范圍內(nèi)。與清晰情景相比,模糊情景中的指標(biāo)下降幅度減小。這也證明了SNN與基于ANN的Baseline相比,在處理模糊場(chǎng)景時(shí)的性能差異小于在處理清晰場(chǎng)景時(shí)的性能差異。
本文提出了一種融合SNN和CBAM的車輛重識(shí)別模型。融合SNN后,車輛重識(shí)別算法可以保持較低的功耗,并且在性能上縮小了與ANN的差距。CBAM模塊則進(jìn)一步提高了車輛重識(shí)別算法的重識(shí)別效果。實(shí)驗(yàn)結(jié)果表明,將SNN融合到車輛重識(shí)別算法中后,對(duì)算法效果的影響是可以接受的,CBAM對(duì)SNN的影響是很好的。同時(shí),文中算法需要在某些方面進(jìn)行改進(jìn),以便在靈活性方面獲得更好的性能,例如損失函數(shù)的收斂性。今后,我們將針對(duì)模糊場(chǎng)景優(yōu)化損失函數(shù)的收斂性,并設(shè)計(jì)完全基于SNN的車輛重識(shí)別算法,以SNN取代整個(gè)網(wǎng)絡(luò)。