999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于輕量化YOLOv4的生豬目標檢測算法

2022-01-10 07:45:04余秋冬
中國農業大學學報 2022年1期
關鍵詞:檢測模型

余秋冬 楊 明 袁 紅 梁 坤

(1.天津城建大學 計算機與信息工程學院,天津 300384;2.天津職業技術師范大學 信息技術工程學院,天津 300350;3.天津農學院 計算機與信息工程學院,天津 300384)

群養豬環境下實現生豬快速準確的檢測,對行為分析,生豬計數以及豬舍智能巡檢投料機器人的開發至關重要。近年來受到非洲豬瘟的影響,實現養殖過程智能化,盡量減少人與生豬之間的接觸勢在必行。準確有效的目標檢測算法能夠實現目標的自動計數,同時也是生豬行為分析和養殖決策的基礎。

隨著人工智能技術的發展,基于圖像和視頻的生豬目標檢測算法成為研究熱點。Yu利用顏色特征及紋理特征對生豬進行個體檢測。謝雙云等提出了一種融合高斯混合模型(GMM)和圖像粒化的運動生豬目標檢測算法,克服了GMM在提取緩慢運動及靜止目標效果不佳的缺陷,但檢測精度較依賴粒化閾值的大小,采用人工選定參數很難滿足不同時刻的豬舍環境條件。上述方法雖能完成生豬目標提取,但準確性和穩健性不足,同時特征提取方法依賴于人工觀察設計和高精度圖像分割,難以滿足實時性的要求。

目前深度學習相關技術在生豬養殖中應用廣泛,在生豬目標檢測領域,Zheng等首次將深度學習模型用于提取生豬目標,Zhang等發現SSD在多只生豬檢測中表現出最佳的精度與速度平衡。宋偉先提出了改進ResNet模型,有效提高了生豬個體檢測的準確率。劉巖等首先利用生豬圖像的二值化規范梯度特征訓練SVM模型得到高質量候選區域,再對CNN模型進行分類訓練。已有研究將改進的Faster R-CNN目標檢測算法應用在多個生豬目標的檢測中,其中文獻[14]中對生豬目標檢測的準確率達到96.7%,文獻[16]中對生豬目標檢測的均值平均精度達到90%。但上述研究均需要在豬舍頂部架設圖像采集設備,檢測結果較依賴于高性能的圖像采集和處理設備,對養殖環境的要求較高。目前我國仍存在大量散養戶,養殖環境與養殖戶條件并不能支撐高性能設備的應用。同時上述算法存在以下問題:1)模型較大,參數較多,從而導致實時性不足,限制了模型在嵌入式移動終端上的部署和應用;2)在實際養殖環境下準確率難以保證;3)實驗數據的問題,由于實驗環境下與實際養殖環境下采集的數據集有一定差距,模型泛化能力無法保證。因此研究適合移動端設備的輕量化目標檢測模型,實現群養豬環境下個體的準確檢測,對智能化養殖技術的研發和推廣起到促進作用。目前在農業方面,輕量化網絡已經應用到果園障礙物檢測,群體種鴨蛋授精信息,蘋果以及蘋果花的檢測中,但尚未有針對生豬檢測的研究。

為了解決模型大,耗時長的問題,基于輕量化模型思想,結合YOLOv4目標檢測算法速度快,精度高的優點,本研究擬采用MobileNetV3作為主干特征提取網絡,以期在保證檢測準確率的情況下提高檢測速度,為模型在嵌入式移動終端上的部署和應用提供條件。

1 材料與方法

1.1 數據集采集

為了符合實際生產需求,本研究所采用的圖像均在實際養殖場環境下拍攝。圖像采集自正邦集團江西省吉安市某代養場,該養殖場共32個大舍,平均每舍包含12欄,于2021年3月5日—3月11日,分別在上午、下午以及夜間拍攝。通過對圖像篩選,去除模糊、拍攝不全等圖像,最終從獲取的圖像中選取其中15個欄位內中的1 000張圖片作為原始數據集。為了保證模型的泛化能力,以不同視角和不同遮擋程度拍攝圖像,增加數據集的普適性。

1.2 數據集制作

本研究訓練模型采用PASCAL VOC數據集格式,使用LabelImg標注工具對每張圖片中生豬目標所在區域進行手工標注矩形框,標注區域為生豬在任意姿態下最小的外接矩形,得到XML文件用于訓練。標注圖像后,隨機挑選圖像進行數據增強擴充數據集,擴充后數據集為2 272張,數據增強方式見表1。數據集劃分訓練集、驗證集和測試集,其中訓練集1 900張,驗證集144張,測試集228張。

表1 數據增強方法

Table 1 Data enhancement methods

方法Method選取圖片數量或具體操作Thenumberofpicturesorconcreteoperations垂直翻轉Verticalflip隨機選取50%的圖片。鏡像翻轉Mirrorflip隨機選取50%的圖片。調整亮度Adjustbrightness隨機選取20%的圖片,將像素值乘0.5~1.5。高斯模糊Gaussianblur隨機選取20%的圖片,σ=(0,3),σ為正態分布的標準偏差。仿射變換Affine隨機選取10%的圖片,將圖像尺寸放縮率設置為80%~90%。

2 輕量化生豬目標檢測算法

2.1 YOLOv4目標檢測算法

YOLOv4算法將目標檢測看作一個端到端的回歸問題,輸入圖像直接計算分類結果和對象的位置坐標,得到最終結果,檢測精度和速度較其他算法有了一定提高,其結構見圖1(a)。該算法包括用于提取特征的主干網絡(Backbone)、用于特征融合的頸部網絡(Neck)和用于分類和回歸的檢測頭(Head)3部分。YOLOv4算法是在YOLOv3的基礎上,對主干特征提取網絡,特征融合網絡、激活函數,損失函數等進行了優化,使YOLOv4算法在速度和精度之間達到了最優的平衡。YOLOv4將特征提取網絡替換為CSPDarknet53,激活函數替換為Mish激活函數,在降低計算量的同時保證了算法的準確率。在頸部網絡中,將YOLOv3采用的特征金字塔網絡(Feature pyramid network,FPN)改為包含空間金字塔池化(Spatial pyramid pooling,SPP)模塊(圖1(b))的路徑增強網絡(Path aggregation network,PANet)模塊。SPP模塊通過最大池化的方式,將輸入特征圖轉化為不同尺度的特征圖,然后將不同尺度的特征圖與原特征圖進行Concat操作拼接并輸出,有利于擴大卷積的感受野。檢測部分延用了YOLOv3中的檢測頭。并在訓練過程中使用了Mosaic數據增強、Label smoothing平滑,CIOU損失函數,學習率余弦退火衰減等訓練技巧,提高了模型的準確率。

圖1 YOLOv4網絡結構圖

2.2 改進的YOLOv4生豬目標檢測算法

雖然YOLOv4目標檢測算法在精度和速度已經達到了較優平衡,但其主干特征提取網絡CSPDarknet53使用了大量堆疊的殘差結構,導致其在提取特征過程中需計算的參數量巨大,耗時較長,難以嵌入到移動端設備,限制了其在農業中的進一步應用。因此研究輕量化模型對其在農業中的應用和發展有著重要的意義。本研究在YOLOv4目標檢測算法的基礎上,使用去掉分類以及輸出層的MobileNetV3網絡替換原有的特征提取網絡CSPDarknet53網絡。為進一步減少參數量,使用深度可分離卷積替換頸部網絡中的部分普通卷積。改進后的整體網絡結構如圖2所示。

圖2 輕量化生豬目標檢測算法整體結構

MobileNetV3包括MobileNetV3-Large和MobileNetV3-Small這2種結構,在檢測任務中由于MobileNetV3-Large與MobileNetV3-Small在精度相同的情況下,速度提升了25%,因此本研究選取MobileNetV3-Large作為基礎網絡。由去掉分類和輸出層的MobileNetV3網絡組成改進后的主干特征提取網絡,包括7個逆殘差模塊(Inverse residual block,IRB)和8個引入注意力機制的逆殘差模塊(SE inverted residual convolution blocks,SEIRB),具體結構參數見表2。頸部網絡和預測頭仍采用YOLOv4原結構中的SPP+PAN+YOLO Head結構,使用深度可分離卷積替代原有PANet結構中的普通卷積。

表2 特征提取網絡參數

Table 2 Feature extraction network parameters

輸入Input具體操作Operator通道數/個No.ofchannels激活函數Activationfunction步長Stride輸出Output416×416×3Conv2d16H-Swish2416×416×3208×208×16IRB,3×316ReLU1208×208×16208×208×16IRB,3×324ReLU2104×104×24104×104×24IRB,3×324ReLU1104×104×24104×104×24SEIRB,5×540ReLU252×52×4052×52×40SEIRB,5×540ReLU152×52×4052×52×40SEIRB,5×540ReLU152×52×4052×52×40IRB,3×380H-Swish226×26×8026×26×80IRB,3×380H-Swish126×26×8026×26×80IRB,3×380H-Swish126×26×8026×26×80IRB,3×380H-Swish126×26×8026×26×80SEIRB,3×380H-Swish126×26×11226×26×112SEIRB,3×3112H-Swish126×26×11226×26×112SEIRB,5×5112H-Swish113×13×16013×13×160SEIRB,5×5160H-Swish113×13×16013×13×160SEIRB,5×5160H-Swish213×13×16013×13×160Conv2d,1×1960H-Swish113×13×960

注:輸入和輸出為圖片尺寸乘通道數,其中圖片尺寸單位為像素,通道數單位為個;IRB為逆殘差模塊,SEIRB 為引入注意力機制的逆殘差模塊,Conv2D為卷積操作,1×1、3×3、5×5為卷積核大小。

Note: Input and Output are the sizes of the picture multiplied by the number of channels.The unit of the size of picture is pixel, and the unit of channels is the number.IRB is inverse residual block.SEIRB is SE inverted residual convolution blocks,Conv2D is the convolution operation.1×1, 3×3 and 5×5 are the sizes of convolution kernel.

2

.

2

.

1

K

-

means

++

目標框優化

YOLOv4算法預設了9個目標框(Anchor box),分別用于76×76、38×38、19×19這3個不同尺度的 YOLO 檢測頭預測出目標的邊界框(Bounding box)。這些 Anchor box 是在PASCAL VOC 數據集上通過邊框聚類得到,包含了人、飛機、牛羊,鳥類等尺度差別較大的目標,針對本研究的生豬目標檢測數據集,使用預設的Anchor box 會使得檢測頭計算交并比(IOU)時篩選不出合適的Bounding box,嚴重影響模型的性能。因此為提高Bounding box 的檢出率,本研究首先使用K-means++算法針對數據集中目標大小進行邊界框聚類分析。在本研究的數據集上得到的Anchor box寬和高為(42,40),(51,102),(80,59),(82,141),(104,232),(129,84),(171,146),(196,294),(334,226),單位為像素。

2

.

2

.

2

深度可分離卷積

Howard等在2017 年提出了專門用于嵌入式移動設備的輕量化模型 MobileNetV1,使用深度可分離卷積(Depthwise separable convolution,Conv-dw)代替標準卷積(圖3),并將激活函數替換為ReLU6,可以讓模型更早地學到稀疏特征。ReLU6函數公式為:

M和N分別為輸入和輸出的通道數;Dw和Dh為輸入數據的長和寬;D′w和D′h為輸出數據的長和寬;Dk為卷積核大小。

Y

=min(max(feature,0),6)

(1)

式中:

Y

為ReLU6函數輸出;feature為輸入特征。標準卷積的過程(圖3(a))是將各通道的輸入特征圖與相應的卷積核做卷積操作后相加再輸出特征。傳統標準卷積操作的計算量

n

為:

n

=

D

·

D

·

M

·

N

·

D

·

D

(2)

深度可分離卷積(圖3(b))把傳統卷積中的一步卷積操作分為1個 3×3 的深度卷積(Depthwise convolution,Dw)和1個 1×1 的逐點卷積(Pointwise convolution,Pw)2步操作,其卷積操作計算量

n

為:

n

=

D

·

D

·

M

·

D

·

D

+

M

·

N

·

D

·

D

(3)

二者之間的計算量比值為:

(4)

利用深度可分離卷積后,計算量和參數會減少為原來的 1/4 左右,顯著地減少模型大小,提高檢測速度。

2

.

2

.

3

逆殘差模塊

MobileNetV1中引入了寬度因子和分辨率因子,容易導致丟失大量特征,同時網絡前向傳播過程中由于 ReLU 激活函數的存在,在提取低維特征時會破壞其非線性,導致網絡在訓練過程中存在線性瓶頸。因此Sandler等結合深度可分離卷積,通過先使用1×1的卷積升維,再通過深度卷積后使用一個逐點卷積降維的操作有效地豐富了特征數量,同時使用 ReLU6 代替 ReLU激活,提升了網絡的穩健性。為進一步縮減網絡模型大小,提升檢測速度,Howard等在MobileNetV3 網絡中引入了注意力機制模塊改進逆殘差模塊(Inverted residual blocks with SE, SEIRB),并使用 H-Swish 函數作為激活函數。H-Swish函數的計算公式為:

(5)

式中:

x

為H-Swish函數輸入。

本研究模型的主干網絡由具有SE模塊和不具有SE模塊的逆殘差模塊(圖4)組成。

圖4 逆殘差模塊

3 模型訓練與結果分析

3.1 試驗環境

生豬目標檢測模型實驗使用PyTorch框架搭建網絡,并在工作站中訓練。工作站配置為intel(R)Xeon(R)Gold 5222型號 CPU,顯存11GB的GeForce RTX 2080 TI型號GPU,搭載Centos8.2系統,python版本3.6.8,深度學習平臺PyTorch-gpu=1.7,安裝CUDA10.1版本和Cudnn 7.6.0版本的深度學習加速庫。

3.2 模型訓練

模型輸入圖像尺寸為416像素×416像素。訓練參數為:批處理大小為16,共迭代訓練350次,動量0.9,初始學習率0.001,衰減系數為0.9。

3.3 結果分析

3

.

3

.

1

評價指標本研究中檢測評價的指標包括平均精度(Average precision,AP)、準確率(Precision,

P

)、召回率(Recall,

R

)、調和均值

F

、檢測速度和占用內存。

P

R

F

的計算式分別為:

(6)

(7)

(8)

式中:TP(True positive)為將豬只正確檢測為生豬目標的數量;FP(False positive)為將其他目標錯檢為生豬目標的數量;FN(False negative)為生豬目標漏檢的數量;

F

為準確率與召回率之間的調和均值,該值越逼近于1表示模型優化的越好。根據準確率

P

和召回率

R

繪制

P

-

R

曲線,與坐標軸間的面積即為AP值。

3

.

3

.

2

測試結果及分析

迭代訓練300次后,每一代保存一次模型參數。圖5為本研究算法的loss曲線,可以看出,模型在第10代迅速收斂,并在第200代維持在較低水平。

圖5 本研究算法損失值曲線

將本研究算法與近些年具有優勢的算法進行對比,包括YOLOv4算法,YOLOv4-tiny算法,CenterNet算法以及RetinaNet算法。上述算法用相同的數據集和訓練參數進行訓練,5種模型檢測結果見表3。可見,本研究算法在進行生豬目標檢測時與YOLOv4算法相比在準確率上提高了0.06%,召回率提高了2.94%,調和均值提高了0.01,平均精度提高了3.67%;由于改進過后結構中使用了大量深度可分離卷積結構,使得模型大小以及檢測速度有了大幅度提升,大小壓縮為YOLOv4算法的1/5,檢測速度提高11幀/s。與CenterNet和RetinaNet相比,在準確率、召回率、調和均值和平均精度方面分別提高了1.92%,10.01%;25.43%,0.26%;0.16,0.05;9.87%,0.29%。模型大小壓縮為CenterNet和RetinaNet的約2/5。與YOLOv4-tiny相比,雖然在模型大小以及檢測速度上并不優于YOLOv4-tiny,但在準確率、召回率、調和均值、平均精度方面均有了較大的提升,分別提高了3.26%、16.6%、0.11、10.21%。試驗表明本研究改進后的算法在準確率和檢測速度具有更優的平衡;雖然模型大小是YOLOv4-tiny的2倍,但53.7MB仍可以滿足實際生產需求。在檢測速度方面,本研究算法檢測一張圖片在CPU環境下需要0.4 s,在GPU環境下僅需要0.01 s,足以滿足實際生產需求。

表3 5種模型對生豬目標檢測數據集的檢測結果

Table 3 The results of five models detected on pigs object detection dataset

模型Model準確率/%Precision召回率/%Recall調和均值Harmonicmean平均精度/%Averageprecision檢測速度/(幀/s)Detectionspeed占用內存/MBConsumememory改進的YOLOv4ImprovedYOLOv496.8591.750.9494.676253.7YOLOv496.7988.810.9391.0051244.0YOLOv4-tiny93.5975.150.8384.4620122.4CenterNet94.9366.320.7884.8092124.0RetinaNet86.8491.490.8994.3843138.0

分別用5種模型對測試集中的圖片進行測試,結果表明在密度較低數量較少的情況下,與本研究算法相比,YOLOv4算法的檢測結果在部分檢測框的準確性略低,而YOLOv4-tiny,CenterNet和RetinaNet算法均會出現漏檢以及誤檢的情況。在高密度、堆疊嚴重等情況下,本研究算法仍然有較好的檢測結果,這是由于本研究算法中使用了注意力機制,提高了對生豬目標的檢測性能。圖6示出隨機選取1張圖片的測試結果。

圖6 5種模型對生豬目標檢測數據集的檢測結果

為了驗證不同密度下改進后模型的檢測能力,額外準備150張不同于數據集的圖片,其中包括50張低密度平視拍攝的圖片,50張低密度俯視拍攝的圖片,50張高密度的圖片,結果表明在低密度以及在高密度但遮擋不嚴重條件下,檢測效果較好,可以準確的檢測出生豬目標,實現對生豬目標的計數。圖7示出隨機選取1張圖片的測試結果。

圖7 3種不同視角和密度情況對對生豬目標檢測數據集的檢測結果

4 結 論

本研究將改進的輕量化YOLOv4目標檢測算法用于群養豬環境下生豬目標的檢測,將去除分類層和輸出層MobileNetV3網絡作為特征提取網絡,并在網絡中使用深度可分離卷積替代PANet中的普通卷積。改進后模型大小和計算量僅為YOLOv4算法的1/5,模型更加輕量化,利于農業嵌入式設備的部署。在處理速度上,檢測1張圖片在CPU環境下需要0.4 s,在GPU環境下僅需要0.01 s,足以滿足實際生產需求。

根據實際養殖環境與條件,制作了生豬目標檢測數據集用于改進前后YOLOv4目標檢測算法的訓練和測試,并分別選取了目前在速度與精度達到較優水平的YOLOv4-tiny,CenterNet以及RetinaNet算法進行對比實驗。結果表明,改進后的模型具有較高的準確率和實時性,準確率、召回率、調和均值和平均精度分別達到了96.85%、91.75%、0.94和94.67%,檢測速度達到了62幀/s,模型大小為53.7 MB。本研究算法與YOLOv4算法相比在保證精度的前提下,大大減少了模型參數量,增強了實時性。本研究算法適用于實際豬場環境下的生豬目標檢測,滿足智能飼養機器人的實際應用場景。

猜你喜歡
檢測模型
一半模型
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
“幾何圖形”檢測題
“角”檢測題
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
3D打印中的模型分割與打包
小波變換在PCB缺陷檢測中的應用
主站蜘蛛池模板: 国产后式a一视频| 欧美三級片黃色三級片黃色1| 91国语视频| 亚洲国产理论片在线播放| 亚洲成a人片77777在线播放| 久久精品视频亚洲| 国产91视频免费| 影音先锋丝袜制服| 亚洲无码一区在线观看| 青青久久91| 国产免费久久精品44| 18禁色诱爆乳网站| 国产精品亚洲综合久久小说| 国产成人无码久久久久毛片| 九九精品在线观看| 亚洲国产日韩视频观看| 久久久久国色AV免费观看性色| 波多野结衣二区| 毛片在线播放a| 亚洲欧美在线精品一区二区| 无码AV高清毛片中国一级毛片| 一边摸一边做爽的视频17国产| 日本国产在线| 久久精品国产精品一区二区| 亚洲日韩AV无码一区二区三区人| 亚洲一区精品视频在线| a毛片在线播放| 亚洲成a∧人片在线观看无码| 国产精品视频白浆免费视频| 欧美A级V片在线观看| 国产成人亚洲无码淙合青草| 91午夜福利在线观看精品| 亚洲欧美精品一中文字幕| 99在线视频精品| 色婷婷啪啪| 狠狠色噜噜狠狠狠狠奇米777| 国产成人精品一区二区| 9cao视频精品| 黄色网址手机国内免费在线观看| 欧美午夜理伦三级在线观看| 色综合中文| 午夜免费视频网站| 亚洲浓毛av| 国产你懂得| 久久黄色免费电影| 99精品免费在线| 国产又色又刺激高潮免费看| 国产精品免费电影| 天天色天天操综合网| 99ri精品视频在线观看播放| 97亚洲色综久久精品| 狠狠色综合久久狠狠色综合| 一级毛片基地| 国产一区在线视频观看| 中文无码伦av中文字幕| 成人午夜天| 国产成人精品高清不卡在线| 人妻丰满熟妇AV无码区| 99久久精品免费视频| 久久久久亚洲Av片无码观看| 天天综合网站| 国产网站一区二区三区| 99国产精品一区二区| 久久美女精品国产精品亚洲| 一级片一区| 国产午夜福利片在线观看| 无码精油按摩潮喷在线播放| 经典三级久久| 亚洲国产精品不卡在线| 国产毛片网站| 日韩国产欧美精品在线| 国产91导航| 精品久久国产综合精麻豆| 小说 亚洲 无码 精品| 免费无码又爽又黄又刺激网站| 狼友av永久网站免费观看| 亚洲视频四区| 免费人欧美成又黄又爽的视频| 97在线碰| 丝袜无码一区二区三区| 欧美午夜理伦三级在线观看| 91视频国产高清|