亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于YOLO-v3模型壓縮的衛(wèi)星圖像船只實時檢測

        2020-11-05 03:18:04陳科峻
        液晶與顯示 2020年11期
        關鍵詞:檢測模型

        陳科峻, 張 葉

        ( 1. 中國科學院 長春光學精密機械與物理研究所 應用光學國家重點實驗室,吉林 長春 130033;2. 中國科學院大學, 北京 100049)

        1 引 言

        隨著海上運輸業(yè)的快速發(fā)展,海上遇難船只搜救、船舶避撞、非法捕魚、非法貨運船只的管控等任務,對海上船只精確定位與識別技術有著廣泛的需求和重要的現實意義[1]。因此,從環(huán)境保護機構到國家政府當局,許多組織對海上船只進行更密切的監(jiān)視。隨著衛(wèi)星技術的日益成熟和衛(wèi)星航空成像精度的日益提高,衛(wèi)星圖像中包含的信息多樣,利用衛(wèi)星圖像進行海上船只的檢測受到了廣泛的關注。然而,視點、旋轉、背景等多種因素變化的影響使得衛(wèi)星圖像船只檢測任務依然存在嚴峻的挑戰(zhàn)。

        目前,國內外研究人員對圖像船艦目標檢測做了大量的相關研究。文獻[2]通過分析遙感圖像中的明暗像素的關聯(lián)參數對船只進行目標檢測,實現圖像中明暗場景的快速識別與分離。然而基于傳統(tǒng)特征提取的方法進行目標檢測往往精度不高。由于海洋表面微波散射情況復雜,傳統(tǒng)船艦檢測算法能力有限。文獻[3]針對以上問題,通過分辨率歸一化制作混合的訓練樣本數據集,基于Faster-RCNN[4]的框架下,構建了一個3層卷積神經網絡的船艦檢測算法,取得了較好的檢測效果。但基于Faster-RCNN的船艦檢測算法模型復雜度較高,檢測速度難以達到實時性檢測的要求。近年來,隨著基于深度學習的目標檢測技術的發(fā)展,YOLO(you only look once)[5]作為一個兼顧了檢測速度和檢測精度的算法被廣泛應用于日常的目標檢測任務中。文獻[6]提出基于YOLO 的車流量檢測方法,可以較好地對混合車流中的車輛進行跟蹤和統(tǒng)計。但基于原始YOLO算法的目標檢測模型參數量較大,對嵌入式設備計算性能要求較高。文獻[7]提出了一種基于改進 YOLO模型的艦船目標識別方法。通過精簡原始模型的卷積層,減少模型的參數量。同時在訓練過程中引入遷移學習的概念,防止模型過擬合,達到減少計算資源開銷的目的。但該方法主要針對大型船艦的目標檢測,對于衛(wèi)星圖像中的小目標船艦檢測效果不理想?;诙说蕉嘶貧w的YOLO-v3[8]網絡在YOLO算法的基礎上進行改進,在保證快速檢測的同時,也達到了較高的檢測精度,使得基于深度學習的目標檢測算法的落地應用成為可能。

        本文將YOLO-v3目標檢測網絡應用于衛(wèi)星圖像船艦目標檢測任務中。針對輸入圖像中船艦的外形特點,構建圖像金字塔對訓練輸入圖像進行多尺度變換,豐富原始圖像的特征。由于YOLO-v3的初始錨點框[9](anchor)的尺寸是針對VOC[10]等數據集計算設計得到的,并不適用于文本的衛(wèi)星船艦圖像數據集。本文采用K-means(K均值)聚類算法的改進版K-means++算法進行初始錨點框數量和尺寸大小的聚類,構建出適合船艦數據集的船艦目標檢測網絡結構。最后,為了能夠將模型應用于嵌入式設備中,對訓練好的模型進行模型剪枝,將模型中冗余的通道進行裁剪,減少模型的參數量,提高了模型的檢測速度。

        2 圖像船艦檢測原理

        2.1 多尺度金字塔圖像

        針對船艦的圖像特征,本文采用多尺度金字塔圖像作為模型訓練的輸入。本文受到文獻[11]的啟發(fā),采用高斯金字塔與拉普拉斯金字塔相結合的方式,先采用高斯金字塔對圖像進行下采樣以獲得新的圖像,用拉普拉斯金字塔對圖像進行上采樣重建獲得新樣本。

        2.1.1 高斯金字塔

        對于大小為w×h的圖像I,高斯金字塔Gi由I的幾個分辨率減小的高斯圖像Ii組成。Ii的尺度計算公式如下:

        (1)

        式中,i= (0,1,...,j)代表金字塔的級數。

        圖像Gi通過高斯函數生成的卷積核進行卷積。公式如下:

        (2)

        式中,m,n代表原圖像的尺度,L代表金字塔的層級,w代表窗口函數。

        2.1.2 拉普拉斯金字塔

        拉普拉斯金字塔由高斯金字塔計算得來,公式如下:

        Li=Gi-up(Gi)?g5×5,

        (3)

        式中,Gi表示第i層的圖像,而up操作表示上采樣。 ?表示卷積運算,g5×5表示5×5的高斯卷積核。最終得到的圖像金字塔效果圖如圖1所示。

        圖1 多尺度圖像金字塔Fig.1 Multi-scale image pyramid

        2.2 YOLO-v3目標檢測原理

        YOLO-v3算法將目標區(qū)域檢測與物體類別預測看作回歸問題。YOLO-v3算法的特征提取網絡為Darknet53。Darknet53包含52個卷積層,用于對圖像進行特征提取,為了防止深層網絡訓練過程中發(fā)生模型退化,YOLO-v3借鑒了ResNet[12]的做法,在層與層之間進行了鏈路的連接。最后一層為1個全連接層。YOLO-v3通過單個神經網絡,即可實現對圖像中目標的定位和分類。Darknet-53網絡結構如圖2所示。

        圖2 Darknet53網絡結構

        Darknet-53網絡對圖像進行了5次下采樣,每次采樣的步長為2。其中卷積模塊的結構如圖3。

        圖3 Darknet53網絡結構Fig.3 Module of Darknet53 convolution set

        YOLO-v3算法假設目標散落在圖像中各個區(qū)域,因此將圖像劃分為多個子區(qū)域。接著對各個區(qū)域預測多個錨點框( Bounding Box ),并求出每個邊框的置信度(Confidence)。置信度分數的大小,反映了錨點框內存在目標物體的準確程度。置信度定義如下式:

        (4)

        式中,Pr ( Object )表示錨點框中存在目標圖像的概率大小。IoU表示預測的目標框與真實的標注框之間的交并比,IoU的計算公式如下:

        (5)

        式中,C代表預測出物體的邊界框,G代表實際標注的物體邊界框(Ground Truth)。

        2.3 初始錨點框聚類算法

        常見的目標檢測算法中,需要預先對初始的錨點框(Anchor)進行設定。錨點框與檢測目標的契合度對目標檢測算法的精度產生極大影響。針對衛(wèi)星圖像船艦的形狀特征,本文采用聚類算法對YOLO-v3的錨點框進行初始化設定。

        理想的聚類距離度量標準應該是計算誤差與錨點框尺寸大小沒有太大的關系,因此定義IoU距離作為聚類算法距離的度量。IoU距離如式(6)所示:

        dIoU(box,centroid)=1-IoU(box,centroid),

        (6)

        式中, IoU( box, centroid )表示某一錨點框box與聚類中心錨點框的IoU,dIoU即代表計算得到的IoU距離。

        本文采用K-means++聚類方法對YOLO-v3的初始錨點框進行聚類。傳統(tǒng)的K-means 算法通過隨機初始化的方式選定初始聚類中心,往往容易陷入局部最優(yōu),得到的聚類結果無法反映真實的數據分布情況。K-means++聚類算法在K-means算法基礎上進行了改進。具體計算步驟如下:

        (1)在數據集中隨機初始化選擇1個點作為第一個簇的中心點;

        (2)計算數據集中各個樣本點到每個已知的簇中心的距離D(x);

        (3)定義概率Px表示每個樣本被選為下一個簇的中心的概率:

        (7)

        (4)重復(2),(3)步驟,直至確定出K個聚類中心;

        (5)將第(4)步得到的K個聚類中心作為初始聚類中心點,代入傳統(tǒng)的K-means算法中,得到最終的聚類中心點。

        從K-means++算法的計算過程可以看出,聚類中心的初始化以距離作為依據,和當前聚類中心距離較大的點,屬于當前類的概率則比較小,因此有更大的可能性被選為新的聚類中心,聚類中心的初始化更為合理。

        3 基于YOLO-v3的模型剪枝

        圖像船艦檢測任務的模型往往被部署在計算能力有限的設備上,對模型的檢測時間和模型的參數量大小有著嚴格的要求。因而本文對原始的模型進行模型剪枝壓縮。

        模型剪枝是模型壓縮的常用方法,對深度神經網絡的稠密連接引入稀疏性,通過將“不重要”的權值直接置零來減少非零權值數量。典型的模型剪枝方法包含4個步驟[13]:(1)分析預訓練模型中每一個神經元的重要程度;(2)剔除模型中對模型推理激活程度較低的神經元;(3)微調模型,提高修剪后模型的精度;(4)對微調后的模型進行測試,確定修剪后的模型是否滿足要求。模型剪枝的流程如圖4所示。

        圖4 模型剪枝流程圖Fig.4 Flow chart of model pruning

        3.1 稀疏訓練

        對YOLO-v3模型進行壓縮,需要對訓練好的模型進行稀疏化訓練。稀疏訓練的目的即在模型訓練過程鑒別重要性較低的通道,以便于對重要性較低的通道進行裁剪。由于YOLO-v3網絡的每個卷積層后面都有一個批歸一化層來加速網絡收斂和改進泛化性能。本文將批歸一化層(Batch Normalization)[14]中的尺度因子作為通道重要性的指標,并對這些尺度因子計算L1范數并融入損失函數中訓練,得到每個通道的重要性分數[15]。應用于精簡基于卷積神經網絡(CNN)的圖像分類器,可以顯著地減小模型參數量。

        批歸一化層的更新過程如下。求解上一層輸出數據的均值和標準差:

        (8)

        (9)

        (10)

        式中,ε是為了避免分母為0而加入的一個趨近于0的值。經過對上面歸一化處理得到的數據進行重構即可得到:

        (11)

        式中,γ和β是可以學習的參數,用于將歸一化后的數據分布進行還原。

        本文將γ值作為通道重要性的衡量標準,對每一個通道的γ值計算L1范數,具體計算公式如下:

        (12)

        最終模型訓練的損失函數在YOLO-v3的損失函數基礎上增加了對γ的正則化項:

        (13)

        式中,lossyolo表示YOLO-v3的損失函數,α表示懲罰項。

        3.2 模型剪枝

        4 實驗與結果分析

        4.1 數據集準備

        基于深度學習的目標檢測往往需要大量的數據用于模型的訓練。為了檢驗本文方法的有效性,本文采集到網絡上的船艦圖像數據集[16],該數據集通過衛(wèi)星進行圖像采集。衛(wèi)星船艦數據集分辨率大小為768×768像素,對圖像進行了標注。最終得到精確標注的5 000張衛(wèi)星船艦圖像用于模型的訓練。部分圖像樣例如圖5所示。

        圖5 衛(wèi)星船艦圖像樣例Fig.5 Example of satellite ship images

        4.2 錨點框聚類

        本文對標注好的數據樣本進行聚類,預先選好的錨點框聚類個數為k∈(1,…,10)。為了對比不同的聚類算法對模型的影響,在保證各訓練參數固定的情況下,分別采用K-means和K-means++對錨點框進行聚類。表1為不同聚類算法下的部分錨點框聚類尺寸。

        表1 初始錨點框聚類結果Tab.1 Results of initial candidate box clustering

        為了評價不同聚類算法的性能,采用平均準確率(mAP)作為評價指標,從整體上反映了目標定位算法的精度。平均準確率綜合了檢測模型的精確率(Precious)和召回率(Recall):

        (14)

        (15)

        (16)

        式中:TP表示真正例,FP表示假正例,FN表示假負例,Pre表示精確率,Rec表示召回率。不同個數的錨點框下驗證集的平均準確率如圖6所示。

        圖6 不同聚類算法結果比較Fig.6 Results of different clustering algorithms

        從圖6可以看出,采用K-means++進行錨點框度量可以提高目標檢測算法的定位精度。所得到的最高平均準確率高于采用K-means進行聚類所得到的最高平均準確率。當錨點框個數為6時,所得到的驗證集的平均定位精度最高,為78.54%。相比于原始的YOLO-v3采用的9個錨點框,更少的錨點框可以提高模型的訓練速度,減少模型的推斷時間。

        4.3 模型訓練

        對模型進行訓練的實驗系統(tǒng)環(huán)境為ubuntu16.04,基于Pytorch深度學習框架,顯卡為NVIDIA 1660 Ti。本文對模型進行了2 000次迭代訓練,初始學習率為0.001,采用動量梯度下降法,設置momentun為0.9。將原始YOLO-v3的初始錨點框替換成經過本文聚類之后得到的錨點框。模型訓練過程損失曲線如圖7所示。

        圖7 基礎訓練損失變化曲線Fig.7 Loss curve of basic training

        從圖7可以看出,經過2 000步的迭代訓練,模型已經趨近于收斂,最終的損失穩(wěn)定在0.665。

        4.4 模型壓縮

        模型剪枝之前需要對模型進行稀疏訓練,將批歸一化層中的尺度因子作為衡量通道重要性的指標。實驗中將稀疏訓練的懲罰因子α分別設置為0.01,0.001,0.000 1。稀疏訓練后的尺度因子分布直方圖如圖8所示。

        原始模型的批歸一化層因子γ近似于均值為1的正態(tài)分布。從尺度因子分布直方圖可以看出,對模型稀疏訓練的結果可以使得通道重要性較低的通道γ值壓縮至接近于0,因此可以將γ值接近于0的通道進行裁剪。本文采用不同的懲罰因子對模型進行300個Epoch的稀疏訓練,稀疏訓練的損失曲線如圖9所示。

        (a)α=0.01

        (b)α=0.001

        圖9 不同懲罰因子稀疏訓練損失曲線Fig.9 Loss curve of sparsity training with different penalty factor

        表2 剪枝前后模型參數對比

        4.5 實驗結果分析

        通過對批歸一化層中尺度因子大小接近于0的通道進行裁剪,剪枝后的模型參數量下降為原始模型的0.15倍,模型檢測的平均準確率下降了4.13%。為了提高剪枝后模型的精度,采用微調的方式,對剪枝后的模型進行100個Epochs的微調訓練,最終模型的平均檢測精度穩(wěn)定在77.31%,接近原始模型的精度。

        為了驗證本文衛(wèi)星圖像船艦檢測方法的有效性,本文設置了對比實驗,分別采用YOLO-v3,Faster R-CNN,SSD,R-FCN等常見目標檢測算法對衛(wèi)星圖像船艦數據集進行檢測。在同一臺服務器上對以上各算法進行測試,測試輸入圖片大小為768×768像素。表3為各個算法的檢測耗時與平均檢測精度對比。

        表3 各算法檢測結果對比

        從實驗結果可以看出,本文模型的mAP達到了77.31%,在與其他檢測模型檢測精度相當的情況下,檢測速度縮短到12 ms/張,模型參數量大小僅為原始YOLO-v3模型參數量的8.5%,對計算資源消耗更少,達到了實時性的目標檢測要求。

        5 結 論

        本文針對衛(wèi)星圖像船艦檢測問題,通過對訓練圖像進行多尺度金字塔變換,達到對模型進行多尺度訓練的目的,提高了模型的特征提取能力。同時,采用K-means++聚類算法選定初始錨點框的個數和尺寸,提高了YOLO-v3模型的定位精度。接著對YOLO-v3目標檢測模型進行模型剪枝。實驗結果表明,本文的方法在保證檢測精度的同時,減小了模型的參數量,檢測時間由原來的30 ms/張縮短至12 ms/張,模型大小由原來的238.9 M縮小至21.5 M。滿足了衛(wèi)星、無人機等移動小算力設備的實時目標檢測需求,為嵌入式目標檢測算法的應用提供了參考依據。

        猜你喜歡
        檢測模型
        一半模型
        “不等式”檢測題
        “一元一次不等式”檢測題
        “一元一次不等式組”檢測題
        “幾何圖形”檢測題
        “角”檢測題
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權M-估計的漸近分布
        3D打印中的模型分割與打包
        小波變換在PCB缺陷檢測中的應用
        九九精品无码专区免费| 国产一区二区三区四区三区| gv天堂gv无码男同在线观看| 国产成人精品日本亚洲18| 完整在线视频免费黄片| 日韩中文字幕熟女人妻| 亚洲色图片区| 国产又黄又猛又粗又爽的a片动漫 亚洲精品毛片一区二区三区 | www插插插无码视频网站| 在线视频日韩精品三区| 国产一区二区视频免费在线观看| 超级碰碰色偷偷免费视频| 欧美视频久久久| 日韩精品久久不卡中文字幕| 日韩女同精品av在线观看| 中出人妻中文字幕无码| 国产成人AV无码精品无毒| 玖玖资源网站最新网站| 红桃av一区二区三区在线无码av| 先锋影音av最新资源| 99久久国产综合精品女乱人伦| 午夜视频在线观看日本| 隔壁老王国产在线精品| 久久无码高潮喷水| 精品国产爱在线观看| 91成人黄色蘑菇视频| 国产av麻豆mag剧集| 欧美国产高清| 亚洲成在人网站天堂日本| 国产精品麻豆va在线播放| 无码久久精品国产亚洲av影片| 精品亚洲一区二区99| 亚洲av高清一区二区在线观看 | 免费超爽大片黄| 伊人影院综合在线| 国产在线精彩自拍视频| 男吃奶玩乳尖高潮视频| 狼色精品人妻在线视频| 亚洲国产成人久久综合三区| 国产日产在线视频一区| 尤物视频在线观看|