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

        ?

        基于YOLOv5的試管檢測算法

        2022-06-16 03:29:04任克勤陶青川
        現(xiàn)代計算機 2022年7期
        關(guān)鍵詞:深度特征檢測

        任克勤,陶青川

        (四川大學(xué)電子信息學(xué)院,成都 610065)

        0 引言

        試管是一種重要的通用醫(yī)療器具,新冠疫情帶來的大批量檢測需求,對試管批量檢測自動化提出了要求,部分檢測任務(wù)如計數(shù)、分類等機械、枯燥,耗費人工且易出錯,計算機視覺的快速發(fā)展使得基于機器視覺的檢測方法替代人工成為可能。試管批處理的第一步是從試管架上識別單根試管,然后再進行后續(xù)檢測項目。傳統(tǒng)方法主要通過濾波失真矯正、邊緣檢測、模板匹配等來識別試管,其抗干擾能力和泛化能力都較弱。基于卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)識別算法通過對數(shù)據(jù)集的學(xué)習(xí)可以很好地提取目標(biāo)的特征,但現(xiàn)有的目標(biāo)識別算法存在模型大、檢測速度慢,實際部署需要GPU 導(dǎo)致硬件成本高的問題,需要做輕量化改進,減少模型大小,以適應(yīng)在嵌入式設(shè)備上運行。

        1 主流目標(biāo)檢測網(wǎng)絡(luò)介紹

        當(dāng)前的目標(biāo)檢測任務(wù)主要基于卷積神經(jīng)網(wǎng)絡(luò)CNN,卷積神經(jīng)網(wǎng)絡(luò)被證明能夠很好地提取圖像的特征,目標(biāo)檢測算法也主要分為一階段和二階段目標(biāo)檢測器兩種。一階段目標(biāo)檢測器直接在圖中找出要檢測的目標(biāo)的定位和類別,如YOLO 系列、RetinaNet、SSD 等。二階段目標(biāo)檢測器的第一階段先選出候選框,第二階段進行分類,識別候選框中的目標(biāo)類別,如RCNN、SPPNet、Faster RCNN 等。一階段目標(biāo)檢測器將圖片直接網(wǎng)格化,物體中心所在的網(wǎng)格負責(zé)對該物體進行檢測,因此檢測速度快。二階段目標(biāo)檢測器需要在圖片上進行搜索,然后再進行分類和回歸,檢測精度高,不容易出現(xiàn)漏檢,但檢測速度不及一階段的目標(biāo)檢測器,同時還面臨著正負樣本失衡的問題。一般在算法的選擇上,速度仍然是個硬指標(biāo),一階段目標(biāo)檢測器在添加FPN、注意力等機制的改進下,其檢測精度也能與二階段檢測器相媲美,同時一階段目標(biāo)檢測器的模型通常更小,適于嵌入式硬件環(huán)境中使用。

        1.1 YOLOv5的網(wǎng)絡(luò)結(jié)構(gòu)

        一個一階段的目標(biāo)檢測網(wǎng)絡(luò)由三個組件構(gòu)成,如圖1所示:backbone、neck和head,backbone 是一個卷積神經(jīng)網(wǎng)絡(luò),對輸入的圖片提取特征;neck 通常使用SSD 或者FPN 等方法對特征圖進行混合或者組合,形成一些更為復(fù)雜的特征;head 用于對圖像特征進行預(yù)測,生成邊界框并預(yù)測類別。

        圖1 YOLOv5網(wǎng)絡(luò)結(jié)構(gòu)

        YOLOv5 中 的backbone 主 要 包 含F(xiàn)ocus、CBL、C3 和SPP 等層。Focus 是將圖片先切片再按照通道維度進行拼接,最后通過卷積運算,將圖片的長和寬均變?yōu)樵瓉淼囊话?,通道?shù)變?yōu)樵瓉淼?倍;CBL操作其實由三個操作組合而成:Conv、BN 和SiLU 激活函數(shù);C3 層包含了若干個殘差結(jié)構(gòu),解決網(wǎng)絡(luò)梯度信息重復(fù)的問題,既減少了參數(shù)量又加強了網(wǎng)絡(luò)的特征融合能力;SPP是一個空間金字塔池化操作,輸出特征圖具備滿足特定數(shù)目的通道,避免了RCNN對候選框進行裁剪和縮放帶來的信息丟失和扭曲。YOLOv5 的neck 與YOLOv4類似,采用了FPN+PAN 的結(jié)構(gòu),將高層特征通過上采樣與低層特征相融合,既保留了高分辨率下具有較高空間信息的特征又保留了低分辨率下具有豐富語義信息的特征。YOLOv5的檢測層提供了兩種優(yōu)化方式:Adam 和SGD,默認使用Adam 優(yōu)化。YOLOv5 定義的損失包含三個部分,分別是CIoU 損失、交叉熵損失和分類損失,它們之和作為反向傳播的損失。

        數(shù)據(jù)增強方法同YOLOv4 一樣,采用了Mosaic方法,將多張圖像進行隨機縮放、裁剪、排列之后進行拼接,豐富了檢測目標(biāo)的背景,以便網(wǎng)絡(luò)能從一張增強后的圖像中學(xué)習(xí)到更多的特征。

        YOLOv5 在公開數(shù)據(jù)集上有著一流的表現(xiàn),模型的特征提取和預(yù)測能力都得到了認可,但其最小的模型文件都是十幾兆級別的大小,參數(shù)量依然很大,難以直接在嵌入式設(shè)備上運行,因此,需要對其進行輕量化改進。

        2 改進算法

        本文使用ShuffleNetV2構(gòu)建YOLOV5s 的主干網(wǎng)絡(luò),替換原有的DarkNet53網(wǎng)絡(luò),同時減少原YOLOv5 中檢測頭的通道數(shù)量、減少參數(shù)量、加快檢測速度;并在主干網(wǎng)的最后一層添加SA注意力機制,將SA 機制中通道注意力的全局平均池化改為最大池化,以便更好地保留最明顯的目標(biāo)特征。

        2.1 使用ShuffleNetV2網(wǎng)絡(luò)構(gòu)建主干網(wǎng)

        ShuffleNetV2 降低了深度網(wǎng)絡(luò)的計算量。作者通過大量實驗和論證,提出了影響高效網(wǎng)絡(luò)架構(gòu)的4個發(fā)現(xiàn),分別是“同等網(wǎng)絡(luò)深度減少內(nèi)存訪問代價”、“過量使用組卷積會增加內(nèi)存訪問代價”、“網(wǎng)絡(luò)碎片化會降低并行度”、“元素級操作的開銷不可忽視”,并根據(jù)這4 個發(fā)現(xiàn)提出了ShuffleNetV2 網(wǎng)絡(luò),其主要有三個亮點。一是使用channel shuffle:具體做法是先將輸入特征圖在通道維度分成兩個分支,將兩個分支分別進行卷積運算,之后再做拼接,輸出通道數(shù)與輸入通道數(shù)相同,最后進行channel shuffle,使各分支間的信息得以交流。這樣做既可以降低分組卷積的運算量,又避免了單純使用可以降低分組帶來的各組只學(xué)習(xí)到組內(nèi)特征的局限;二是將shuffleNetV1中1*1 的組卷積改為普通卷積,因為之前的channel split 就相當(dāng)于做了分組,并且減少使用組卷積也降低了計算量;三是將一個分支上的普通卷積改為深度可分離卷積,大幅減少計算量。

        圖2 ShuffleNetV2的stage模塊

        深度可分離卷積,如圖3 所示,最早在Xception和MobileNet中開始使用,它將普通卷積分為一個深度可分離卷積和一個1*1的點卷積,對于一個輸入通道數(shù)為,輸出通道數(shù)為,特征圖大小為D,卷積核大小為D的標(biāo)準(zhǔn)卷積,計算開銷為:

        圖3 深度可分離卷積

        標(biāo)準(zhǔn)卷積操作具有基于卷積核過濾特征并組合特征以產(chǎn)生新表示的效果,深度可分離卷積將過濾和組合操作分別由一個深度卷積和點卷積完成,深度卷積對每個輸入通道使用單個過濾器,跟著一個點卷積,使用一個1*1 卷積構(gòu)建深度層輸出的線性組合,在每一層后面都使用了BN 和ReLU 激活。對每個通道都使用單個過濾器的深度卷積可以寫做:

        深度卷積過濾了通道,后續(xù)再跟一個1*1卷積將深度卷積的輸出線性組合,從而生成新的特征,加上該1*1卷積之后,深度可分離卷積的計算開銷為:

        由此減少計算量:

        本文使用ShuffleNetV2 來構(gòu)建主干網(wǎng)絡(luò),一方面其使用的深度可分離卷積相較于普通卷積的參數(shù)量減少,同時其網(wǎng)絡(luò)的層數(shù)也少于YOLOv5 原網(wǎng)絡(luò)使用的Darknet53,這樣減少的參數(shù)量就很可觀,模型大小也被大幅壓縮了。

        原YOLOv5的檢測頭中輸出通道數(shù)量分別為256、512 和1024,考慮到試管類別少、特征簡單,原網(wǎng)絡(luò)的檢測頭輸出通道數(shù)量有著大量冗余特征,于是減少通道數(shù)量。經(jīng)過實驗測試,三個檢測頭都輸出256個通道時,能在大幅減少參數(shù)量的同時起到較好的檢測效果。

        2.2 添加混合注意力機制

        注意力機制可以理解為對輸入的不同區(qū)域賦予不同的權(quán)重,進而有側(cè)重地進行特征選擇或者區(qū)域選擇,同時減少計算量。Hu 等提出了通道注意力機制,將輸入映射之后通過一個Squeeze 操作,該操作跨空間維度聚合特征圖來生成一個通道描述符,再將該描述符通過一個Excitation 操作,用自門控機制產(chǎn)生每個通道調(diào)制權(quán)重的集合,最后將這些權(quán)重應(yīng)用到映射得到的特征圖上生成SE 模塊的輸出。Woo 等將通道注意力串聯(lián)起來,與ResNet 結(jié)構(gòu)組合后很好地提高了SE 的性能。其空間注意力模塊是將輸入特征圖同時通過平均池化和最大池化兩個操作,將兩個結(jié)果再通過一個帶隱含層的多層感知機,生成通道注意力圖。其空間注意力模塊沿通道軸施加平均池化和最大池化操作,并將結(jié)果拼接起來,再將這個拼接的特征圖通過一個卷積層,得到空間注意力圖。

        然后,再通過一個全連接層強化表達,最后使用sigmoid 激化:

        其中,∈R,用來表示尺度縮放和平移的兩個參數(shù)。

        空間注意力模塊使用GN(group norm)來獲得空間統(tǒng)計數(shù)據(jù),再通過一個全連接層來強化表達,最后通過sigmoid 激活,得到空間注意力圖:

        F′F′做拼接,得到的注意力圖的通道數(shù)與原子特征通道數(shù)相同。

        對所有的子特征都進行上述操作后,將所有結(jié)果聚合,再做channel shuffle,具體做法是先對特征圖做分組卷積得到多個子特征圖,但是這些子特征圖可能各自表征了局部通道的信息,為了獲得更具全局性的信息,將多個子特征圖的特征沿著通道維度進行組合,使得每個組都包含其他組的特征信息,讓組間信息沿著通道維度充分交流,然后再通過一個分組卷積,從各組中提取特征,得到最終的注意力圖。改進后的模型如圖4 所示。其中,SA 模塊如圖5所示。

        圖4 改進后的網(wǎng)絡(luò)結(jié)構(gòu)

        圖5 混合注意力機制

        3 實驗結(jié)果與分析

        3.1 實驗平臺

        訓(xùn)練所用硬件平臺配置為Intel(R)Core(TM)i5-6500 CPU @3.2 GHz,Nvidia GeForce GTX 1080Ti 11GB GPU,8 G 內(nèi)存的服務(wù)器,采用Ubuntu 20.04 操作系統(tǒng),CUDA11.4,Python 3.7。

        3.2 實驗數(shù)據(jù)集

        本文使用的是自建數(shù)據(jù)集,包含3 類目標(biāo):“長試管”、“短試管”和“蓋帽”,總共11534張圖片,為了增強學(xué)習(xí)到的模型的泛化能力,采用不同光照、試管架、拍攝距離、背景和角度,每次對多根試管進行拍攝,得到數(shù)據(jù)集,示例見圖6。

        圖6 自建數(shù)據(jù)集

        圖像大小為547×364,送入網(wǎng)絡(luò)后會先調(diào)整大小為640×640再進行訓(xùn)練。

        3.3 評價指標(biāo)

        本文采用目標(biāo)檢測模型常用的評價指標(biāo):召回率(Recall)、(mean average precision)、模型大小以及檢測速度。

        召回率等于網(wǎng)絡(luò)正確識別為正例的樣本個數(shù)占總正例樣本個數(shù)的比例。為各類別的平均值,其值等于(precision-recall)曲線下的面積,其中為,為,計算如下:

        檢測速度定義為每秒處理圖像的幀數(shù)(frame per second,F(xiàn)PS)。

        3.4 模型訓(xùn)練

        訓(xùn)練輪次為200,批大小為8,采用YOLOv5s官方的預(yù)訓(xùn)練權(quán)重,將11534張圖片按照8∶1∶1的比例進行隨機劃分,分別生成訓(xùn)練集、驗證集和測試集。因為通過前期訓(xùn)練發(fā)現(xiàn)loss收斂很快,所以統(tǒng)一 采用epoch 為100,batch-size 為8,圖片大小固定為640×640,線程數(shù)為8。

        3.5 結(jié)果分析

        將改進后的網(wǎng)絡(luò)與原始YOLOv5s 網(wǎng)絡(luò)以及YOLOv4 網(wǎng)絡(luò)進行對比,檢測結(jié)果如圖7 所示。統(tǒng)計結(jié)果見表1。

        表1 對比實驗結(jié)果

        圖7 各模型檢測結(jié)果

        可以看出,在YOLOv5 網(wǎng)絡(luò)中添加了SA 注意力機制之后,在增加一定參數(shù)量的情況下,模型的召回率有了0.8%的提高,而、和模型大小幾乎沒有變化;若單獨使用ShuffleNet來構(gòu)建YOLOv5s的主干網(wǎng),可以顯著降低參數(shù)量和模型大小,有了67.6%的提高,在召回率、則沒有明顯下降,說明對于試管檢測任務(wù)來說,輕量級的ShuffleNetV2 的特征提取能力已經(jīng)足夠;若將ShuffleNetV2 作為主干網(wǎng)再添加SA 注意力機制,則在原YOLOv5 網(wǎng)絡(luò)上有了89.9%的提高,有1.9%的提高,參數(shù)量只有原來的6.2%,模型大小只有原來的7.6%,在、、參數(shù)量和模型大小四個指標(biāo)上達到最優(yōu),代價只是召回率較原YOLOv5s網(wǎng)絡(luò)有1.6%的下降。說明對YOLOv5 網(wǎng)絡(luò)的輕量化改進是成功的。

        4 結(jié)語

        本文針對試管檢測任務(wù),對YOLOv5網(wǎng)絡(luò)進行輕量化改進:使用ShuffleNetV2 構(gòu)建YOLOv5的主干網(wǎng),減少檢測頭的通道數(shù),并添加混合注意力機制。在自建數(shù)據(jù)集上實驗證明,該改進在少量精度損失下,大大減少了模型大小,加快了檢測速度。該改進網(wǎng)絡(luò)在模型大小、檢測速度和精度上取得了較好的平衡,利于在嵌入式設(shè)備上運行。

        猜你喜歡
        深度特征檢測
        “不等式”檢測題
        “一元一次不等式”檢測題
        “一元一次不等式組”檢測題
        深度理解一元一次方程
        如何表達“特征”
        不忠誠的四個特征
        深度觀察
        深度觀察
        深度觀察
        抓住特征巧觀察
        亚洲色欲在线播放一区| 日本一区二区免费在线看| 亚洲性无码av中文字幕| 免费无遮挡禁18污污网站| 亚洲最新偷拍网站| 欧美巨大xxxx做受中文字幕| 丝袜av乱码字幕三级人妻| 久久久久国色av免费观看性色| 亚洲av纯肉无码精品动漫| 亚洲色图综合免费视频| 国产精品丝袜美女久久| 精品国产日韩无 影视| 中文字幕一区二区人妻性色av| 日本中国内射bbxx| 天天干成人网| 无码精品人妻一区二区三区98| 国产三级不卡视频在线观看| 亚洲av无码久久| 护士奶头又白又大又好摸视频| 亚洲AV一二三四区四色婷婷| 日韩亚洲午夜精品一区二区三区| 岛国熟女精品一区二区三区| 骚片av蜜桃精品一区| jjzz日本护士| 中文片内射在线视频播放| 人妖一区二区三区在线| 日韩精品极品视频在线观看免费 | 久久噜噜噜| 青青草视频在线播放81| 成熟的女人毛茸茸色视频| 午夜亚洲av日韩av无码大全| av人摸人人人澡人人超碰小说| 538在线视频| 成人一区二区人妻少妇| 亚洲码国产精品高潮在线 | 亚洲精品v欧洲精品v日韩精品| 91热这里只有精品| av资源在线永久免费观看| 亚洲av无码专区国产乱码4se| 人人狠狠综合久久亚洲| 亚洲性无码av在线|