国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于關(guān)鍵點(diǎn)的實(shí)驗(yàn)鼠視覺檢測研究①

2020-12-28 02:37王明陽王江濤
關(guān)鍵詞:實(shí)驗(yàn)鼠中心點(diǎn)損失

王明陽, 王江濤,b,*, 劉 琛

(a.淮北師范大學(xué)物理與電子信息學(xué)院;b.淮北師范大學(xué)信息學(xué)院;安徽 淮北 235000)

0 引 言

在生命科學(xué)、醫(yī)學(xué)等領(lǐng)域中實(shí)驗(yàn)鼠一直扮演著不可或缺的角色,比如在生物醫(yī)學(xué)研究中實(shí)驗(yàn)鼠主要用于藥物評價(jià)和毒性實(shí)驗(yàn)等。實(shí)驗(yàn)鼠是醫(yī)藥等科學(xué)研究必備的實(shí)驗(yàn)動物,使用程度較高,使用范圍較廣,為避免人工記錄造成的實(shí)驗(yàn)誤差與人力的大量投入,通過計(jì)算機(jī)對實(shí)驗(yàn)鼠進(jìn)行檢測,分析視頻記錄,給實(shí)驗(yàn)者提供更精準(zhǔn)和詳細(xì)的實(shí)驗(yàn)鼠運(yùn)動信息具有重要的應(yīng)用價(jià)值和廣闊的應(yīng)用前景[1]。實(shí)驗(yàn)鼠的研究可能需要在多個(gè)場景與多種環(huán)境下進(jìn)行,復(fù)雜的環(huán)境使得在檢測實(shí)驗(yàn)鼠時(shí)有諸多的難點(diǎn),比如實(shí)驗(yàn)鼠的遮擋問題或?qū)嶒?yàn)鼠的伸展性與多動性等都會給實(shí)驗(yàn)鼠的目標(biāo)檢測帶來挑戰(zhàn)。

隨著深度學(xué)習(xí)的興起,目標(biāo)檢測領(lǐng)域?qū)崿F(xiàn)了突破性的發(fā)展,基于深度學(xué)習(xí)的目標(biāo)檢測算法已成為該領(lǐng)域中非常重要的一類算法,主要分為兩類,一類是以RCNN[2]為代表的基于Region Proposal的目標(biāo)檢測算法[3],包括 Fast-RCNN[4],F(xiàn)aster-RCNN[5],R-FCN[6]和Mask R-CNN[7]等,這類算法屬于Two-stage算法,實(shí)時(shí)性低但準(zhǔn)確率高;以YOLO[8]為代表的基于回歸的目標(biāo)檢測算法[9],包括SSD[10]等,這類算法屬于One-stage算法,實(shí)時(shí)性高但準(zhǔn)確率較低,與傳統(tǒng)的目標(biāo)檢測算法相比,基于深度學(xué)習(xí)的目標(biāo)檢測算法的準(zhǔn)確性和實(shí)時(shí)性都有了極大的提高。在基于anchor box的目標(biāo)檢測算法被廣泛使用的同時(shí),一種新的目標(biāo)檢測算法逐漸出現(xiàn)在人們的視野中,基于關(guān)鍵點(diǎn)的目標(biāo)檢測算法以其獨(dú)特的思想越來越受到人們的關(guān)注,主要有CornerNet[11]、ExtremeNet[12]和CenterNet[13]等,基于關(guān)鍵點(diǎn)的目標(biāo)檢測算法不再需要anchor機(jī)制,是目標(biāo)檢測領(lǐng)域的一種新思想。

由于在應(yīng)對檢測實(shí)驗(yàn)鼠這種單目標(biāo)時(shí),原網(wǎng)絡(luò)的訓(xùn)練時(shí)間長,算法復(fù)雜度高,無法用于真正的實(shí)驗(yàn)環(huán)境中,而且在檢測實(shí)驗(yàn)鼠目標(biāo)時(shí),因目標(biāo)本身較小,如果卷積層數(shù)過多會導(dǎo)致目標(biāo)容易丟失一部分特征信息,針對上述問題,本文提出了改進(jìn)CenterNet的目標(biāo)檢測方法,該方法重新設(shè)計(jì)了主干網(wǎng)絡(luò)并且在網(wǎng)絡(luò)結(jié)構(gòu)中加入注意力機(jī)制,最后在實(shí)驗(yàn)鼠數(shù)據(jù)集上對改進(jìn)后的網(wǎng)絡(luò)進(jìn)行訓(xùn)練和驗(yàn)證。

1 CenterNet算法介紹

CenterNet算法是由Zhou X等人提出,網(wǎng)絡(luò)的中心思想是預(yù)測目標(biāo)的中心點(diǎn),通過中心點(diǎn)再回歸目標(biāo)的其他屬性,例如尺寸、3D位置等。CenterNet的輸入圖像經(jīng)過Backbone Network(Hourglass Network or Resnet or DLA-34)生成Center heatmap、中心點(diǎn)偏置和目標(biāo)的寬高信息,目標(biāo)的寬高信息由每個(gè)峰值點(diǎn)周圍的圖像特征信息得到,再通過中心點(diǎn)偏置來修正中心點(diǎn)位置,不需要NMS(非極大值抑制)后處理。CenterNet的檢測性能可以在MS COCO數(shù)據(jù)集上達(dá)到45.1%的AP值。圖1網(wǎng)絡(luò)結(jié)構(gòu)中的Backbone Network以ResNet為例。

圖1 網(wǎng)絡(luò)總體框架

由圖1可知,網(wǎng)絡(luò)的輸入圖片的分辨率為384×384,經(jīng)過layer1的4層卷積層,再經(jīng)過layer2、layer3和layer4的帶有殘差塊的卷積層,得到分辨率為12×12的特征圖,這時(shí)再經(jīng)過Deconv layer進(jìn)行上采樣,得到分辨率為96×96的特征圖,最后經(jīng)過卷積層分別得到Center heatmap、中心點(diǎn)偏置和目標(biāo)的寬高信息。

2 輕量化CenterNet算法改進(jìn)

2.1 簡化CenterNet網(wǎng)絡(luò)

圖1所示的網(wǎng)絡(luò)結(jié)構(gòu)與原網(wǎng)絡(luò)結(jié)構(gòu)中的其它主干網(wǎng)絡(luò)(Hourglass Network和DLA-34)相比,網(wǎng)絡(luò)層數(shù)相對較淺,網(wǎng)絡(luò)的參數(shù)量與計(jì)算的復(fù)雜度相對較低,但是在面對檢測實(shí)驗(yàn)鼠這樣一個(gè)單一且相對簡單的目標(biāo)檢測任務(wù)時(shí),此網(wǎng)絡(luò)還是較顯冗余,因此,本文在原網(wǎng)絡(luò)結(jié)構(gòu)基礎(chǔ)上重構(gòu)主干網(wǎng)絡(luò),減少網(wǎng)絡(luò)的計(jì)算復(fù)雜度,并且為了在淺層網(wǎng)絡(luò)下也能保證模型的準(zhǔn)確率,在網(wǎng)絡(luò)中添加SENet注意力模塊。

本文按照CenterNet的網(wǎng)絡(luò)框架重新組構(gòu)了主干網(wǎng)絡(luò),如圖2所示,考慮到網(wǎng)絡(luò)深度對檢測效果的影響,理論上來說,在一定范圍內(nèi)網(wǎng)絡(luò)層數(shù)越多,深度越深,準(zhǔn)確率就會越高,但網(wǎng)絡(luò)深度在達(dá)到一個(gè)閾值后,雖然準(zhǔn)確率還在增加,但增加的非常緩慢,而網(wǎng)絡(luò)的參數(shù)量卻一直在上升,并且要符合原網(wǎng)絡(luò)4倍下采樣的要求,因此,在綜合考慮并且實(shí)驗(yàn)驗(yàn)證下,本文所改進(jìn)的主干網(wǎng)絡(luò)選用9層卷積層和1層池化層,在此改進(jìn)結(jié)構(gòu)下,模型在保證準(zhǔn)確率的同時(shí),最大限度的簡化了模型的結(jié)構(gòu)。

圖1與圖2進(jìn)行相比,圖2中簡化的網(wǎng)絡(luò)結(jié)構(gòu)舍棄了圖1中原網(wǎng)絡(luò)的殘差結(jié)構(gòu)和上采樣層,將網(wǎng)絡(luò)壓縮到9層卷積層和1層池化層,減少了網(wǎng)絡(luò)的參數(shù)量與計(jì)算量。

圖2 簡化的CenterNet結(jié)構(gòu)

2.2 SENet注意力模塊

SENet(Squeeze-and-Excitation Networks)[14]是ImageNet2017的冠軍模型,SENet模型參數(shù)少,復(fù)雜度低,并且在一定程度上減少了模型的錯(cuò)誤率,模型結(jié)構(gòu)如圖3所示,SENet主要由Squeeze和Excitation兩部分組成,可以獲得更大的感受區(qū)域面積和不同重要性的特征通道。在網(wǎng)絡(luò)結(jié)構(gòu)中,使用SENet注意力模塊可以得到具有不同權(quán)值的特征通道,根據(jù)這些帶權(quán)值的特征通道可以抑制某些無效的特征信息,避免了特征圖信息以同等的重要性作為下一層的輸入,可以提高網(wǎng)絡(luò)模型學(xué)習(xí)的效率。

圖3 SENet結(jié)構(gòu)圖

2.3 改進(jìn)的網(wǎng)絡(luò)結(jié)構(gòu)

改進(jìn)后網(wǎng)絡(luò)結(jié)構(gòu)如圖4所示,輸入圖片大小為384×384,網(wǎng)絡(luò)通過4倍下采樣得到Heatmap、中心點(diǎn)偏置(x和y)和目標(biāo)預(yù)測的寬與高,經(jīng)過SENet注意力模塊賦予通道的不同權(quán)值,并將此輸出作為下一層的輸入,更有利于網(wǎng)絡(luò)學(xué)習(xí)實(shí)驗(yàn)鼠的特征,提高網(wǎng)絡(luò)的準(zhǔn)確率。

圖4 改進(jìn)后的網(wǎng)絡(luò)架構(gòu)

由圖4可知,改進(jìn)后的網(wǎng)絡(luò)結(jié)構(gòu)有9層卷積層、1層池化層和SENet注意力模塊,通道注意力模塊放在maxpool層之后,卷積層之前,將注意力模型產(chǎn)生的具有不同權(quán)值的特征通道作為輸入再進(jìn)行卷積,進(jìn)一步提升對檢測有用的特征,并相應(yīng)抑制對當(dāng)前任務(wù)作用小的特征。

2.4 損失函數(shù)

損失函數(shù)由三部分組成,分別是中心點(diǎn)預(yù)測的損失函數(shù)、中心點(diǎn)偏置損失函數(shù)和目標(biāo)的寬高損失函數(shù)。

中心點(diǎn)預(yù)測的損失函數(shù)采用Focal Loss,公式(1)為Focal Loss損失函數(shù)的具體形式:

Lk=-

(1)

在上式中,α=2與β=4為設(shè)置的超參數(shù),N為圖像中的關(guān)鍵點(diǎn)數(shù)量,其中Yxyc高斯核函數(shù)生成的熱點(diǎn)圖,此處的損失函數(shù)可以抑制訓(xùn)練過程中簡單樣本的訓(xùn)練比重,增加困難樣本的訓(xùn)練比重,有利于網(wǎng)絡(luò)更好的學(xué)習(xí)。

中心點(diǎn)偏置損失采用L1損失函數(shù),公式(2)為L1損失函數(shù)的具體形式:

(2)

目標(biāo)大小的損失函數(shù)也使用L1損失函數(shù),公式(3)為目標(biāo)大小的損失函數(shù):

(3)

整體的損失函數(shù)為目標(biāo)中心點(diǎn)損失、中心點(diǎn)偏置損失和目標(biāo)大小損失的和,公式(4)為整體的損失函數(shù)形式:

L=Lk+λsizeLsize+λoffLoff

(4)

其中λsize=0.1,λoff=1。

3 實(shí)驗(yàn)結(jié)果與分析

3.1 實(shí)驗(yàn)環(huán)境與數(shù)據(jù)集

本次實(shí)驗(yàn)在Linux操作系統(tǒng)Ubuntu16.04 LTS上完成,在基于Pytorch框架上搭建網(wǎng)絡(luò),其中Pytorch版本為0.4.1,開發(fā)語言為Python 3.6,GPU型號為GTX1660Ti,顯存為6G,batch_size為32。

實(shí)驗(yàn)數(shù)據(jù)采用實(shí)驗(yàn)鼠數(shù)據(jù)集,為避免訓(xùn)練時(shí)網(wǎng)絡(luò)出現(xiàn)過擬合現(xiàn)象,本算法選用多種場景下實(shí)驗(yàn)鼠的多種狀態(tài)作為數(shù)據(jù)集,并且在訓(xùn)練時(shí)會隨機(jī)進(jìn)行翻轉(zhuǎn)或裁剪等操作,提高了訓(xùn)練樣本的數(shù)據(jù)量,同時(shí)提高了模型的魯棒性。

3.2 訓(xùn)練數(shù)據(jù)分析

訓(xùn)練時(shí)中心點(diǎn)的Heatmap由圖5表示,熱點(diǎn)圖由高斯核函數(shù)生成,取值范圍為[0,1],其中1代表目標(biāo)的中心點(diǎn),Heatmap是在下采樣之后生成的,原圖像分辨率為320×240,進(jìn)行訓(xùn)練的圖片分辨率為384×384,Heatmap的分辨率為96×96。

圖5 Heatmap示例圖

在網(wǎng)絡(luò)模型訓(xùn)練的過程中,學(xué)習(xí)率持續(xù)過大會導(dǎo)致模型無法收斂,達(dá)不到一個(gè)最佳效果,一般來說,模型的學(xué)習(xí)率要先大后小,因此,在本實(shí)驗(yàn)中,根據(jù)訓(xùn)練的輪數(shù)進(jìn)行更換學(xué)習(xí)率,學(xué)習(xí)率的曲線如圖6所示:

圖6 學(xué)習(xí)率曲線

訓(xùn)練過程中記錄了各個(gè)損失函數(shù)的Loss值曲線,包括中心點(diǎn)損失、中心點(diǎn)偏置損失、目標(biāo)寬高損失以及整體損失,其中橫坐標(biāo)為訓(xùn)練的輪數(shù),縱坐標(biāo)為具體損失函數(shù)數(shù)值,各種損失的Loss值曲線如圖7所示:

圖7 損失函數(shù)曲線

由圖7中的各損失函數(shù)的曲線可以看到在訓(xùn)練到70輪左右時(shí),損失函數(shù)迅速減少,后面損失函數(shù)逐漸趨于穩(wěn)定。

3.3 實(shí)驗(yàn)效果

圖8為實(shí)驗(yàn)鼠圖片經(jīng)過改進(jìn)后并且完成訓(xùn)練的模型所產(chǎn)生的相關(guān)熱點(diǎn)圖與實(shí)驗(yàn)效果圖,具體如下圖所示:

圖8 相關(guān)熱點(diǎn)圖與效果圖

其中上圖中a圖的分辨率為320×240,b圖的分辨率為384×384,為網(wǎng)絡(luò)的輸入圖片分辨率,c圖為網(wǎng)絡(luò)產(chǎn)生的熱點(diǎn)圖,可以看到圖中的高亮部分即為預(yù)測出的實(shí)驗(yàn)鼠的中心點(diǎn),d圖為網(wǎng)絡(luò)最終檢測效果圖。

圖9為原網(wǎng)絡(luò)與改進(jìn)后的網(wǎng)絡(luò)檢測實(shí)驗(yàn)鼠圖片的對比,下圖為對比效果圖,其中左圖為原網(wǎng)絡(luò)檢測結(jié)果,右圖為改進(jìn)后網(wǎng)絡(luò)的檢測結(jié)果,可以看出改進(jìn)后的網(wǎng)絡(luò)具有更好的檢測效果。

圖9 效果對比展示圖

3.4 測試結(jié)果

為表明重構(gòu)后網(wǎng)絡(luò)的可行性與有效性,本文也在SSD和YOLOV3網(wǎng)絡(luò)下訓(xùn)練了相同的實(shí)驗(yàn)鼠數(shù)據(jù)集,得到了不同的網(wǎng)絡(luò)模型,并在相同的測試集下進(jìn)行測試,下表為不同網(wǎng)絡(luò)下的模型權(quán)重文件大小與AP值的比較:

表1 不同模型在實(shí)驗(yàn)鼠數(shù)據(jù)集上的數(shù)據(jù)比較

從上表中網(wǎng)絡(luò)模型權(quán)重文件的大小來看,重構(gòu)后的網(wǎng)絡(luò)模型權(quán)重文件大小相比原網(wǎng)絡(luò)減少了近13倍,而且重構(gòu)出的網(wǎng)絡(luò)在實(shí)驗(yàn)鼠數(shù)據(jù)集上的AP值相比于SSD、YOLOV3和原網(wǎng)絡(luò)三者都要高,表明了本文中檢測實(shí)驗(yàn)鼠方法的可行性和有效性。

表2為SENet注意力模塊對重構(gòu)網(wǎng)絡(luò)的影響,主要通過模型權(quán)重文件的大小與在實(shí)驗(yàn)鼠測試集上的AP值進(jìn)行比較,具體數(shù)據(jù)如下表所示:

表2 SENet注意力模塊對模型的影響

由上表可知,因?yàn)镾ENet注意力模塊是一個(gè)輕量級的模塊,新增參數(shù)和計(jì)算量小,因此是否加入SENet注意力模塊對網(wǎng)絡(luò)模型權(quán)重文件的大小幾乎沒有什么影響,但SENet注意力模塊的加入使得AP值增加了2.4%,提高了模型的準(zhǔn)確率。

4 結(jié) 論

在研究CenterNet網(wǎng)絡(luò)基礎(chǔ)上,重新設(shè)計(jì)了主干網(wǎng)絡(luò)用來提取目標(biāo)特征信息,在減少主干網(wǎng)絡(luò)層數(shù)的前提下,為增加網(wǎng)絡(luò)模型的準(zhǔn)確率,添加SENet注意力模塊,通過實(shí)驗(yàn)驗(yàn)證,表明了該改進(jìn)網(wǎng)絡(luò)既減少了網(wǎng)絡(luò)的參數(shù)量和計(jì)算的復(fù)雜度,并且提升了模型的準(zhǔn)確率。

猜你喜歡
實(shí)驗(yàn)鼠中心點(diǎn)損失
胖胖損失了多少元
一種基于標(biāo)準(zhǔn)差的K-medoids聚類算法
Scratch 3.9更新了什么?
吃夜宵可能讓人越來越笨
如何設(shè)置造型中心點(diǎn)?
玉米抽穗前倒伏怎么辦?怎么減少損失?
愛吃咸與基因有關(guān)
合成氣味可讓老鼠恐懼
菜燒好了應(yīng)該盡量馬上吃
尋找視覺中心點(diǎn)
辛集市| 嘉祥县| 西乌| 天全县| 从化市| 福州市| 贵德县| 桦川县| 阿克陶县| 乐至县| 新晃| 和林格尔县| 晴隆县| 共和县| 永吉县| 苏尼特左旗| 济阳县| 十堰市| 炎陵县| 德兴市| 方城县| 郁南县| 荆门市| 仁化县| 泰宁县| 吴桥县| 阿克陶县| 岳池县| 中山市| 任丘市| 阳新县| 滦平县| 威海市| 天等县| 霍城县| 郓城县| 榆中县| 佛学| 张家川| 安塞县| 大渡口区|