内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

目標(biāo)檢測(cè)算法——YOLOV7——詳解-創(chuàng)新互聯(lián)

1、主要貢獻(xiàn)

?主要是現(xiàn)有的一些trick的集合以及模塊重參化和動(dòng)態(tài)標(biāo)簽分配策略,最終在 5 FPS 到 160 FPS 范圍內(nèi)的速度和準(zhǔn)確度都超過(guò)了所有已知的目標(biāo)檢測(cè)器。

創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括儀征網(wǎng)站建設(shè)、儀征網(wǎng)站制作、儀征網(wǎng)頁(yè)制作以及儀征網(wǎng)絡(luò)營(yíng)銷策劃等。多年來(lái),我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,儀征網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到儀征省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

?當(dāng)前目標(biāo)檢測(cè)主要的優(yōu)化方向:更快更強(qiáng)的網(wǎng)絡(luò)架構(gòu);更有效的特征集成方法;更準(zhǔn)確的檢測(cè)方法;更精確的損失函數(shù);更有效的標(biāo)簽分配方法;更有效的訓(xùn)練方法。

2、主要思路

?按照論文,目前模型精度和推理性能比較均衡的是yolov7 模型(對(duì)應(yīng)的開(kāi)源git版本為0.1版)。根據(jù)源碼+導(dǎo)出的onnx文件+“張大刀”等的網(wǎng)絡(luò)圖(修改了其中目前我認(rèn)為的一些bug,增加一些細(xì)節(jié))。重新繪制了yoloV7 0.1版本的非常詳盡網(wǎng)絡(luò)結(jié)構(gòu)。注意:

?1)其中的特征圖結(jié)果維度注釋是按照箭頭的流方向,不是固定的上下方向。

?2)輸入輸出僅僅是指當(dāng)前模塊的輸入輸出,整體需要根據(jù)流方向累乘計(jì)算最終的結(jié)果。

?3)該模型版本沒(méi)有輔助訓(xùn)練頭。

? 整體上和YOLOV5是相似的,主要是網(wǎng)絡(luò)結(jié)構(gòu)的內(nèi)部組件的更換(涉及一些新的sota的設(shè)計(jì)思想)、輔助訓(xùn)練頭、標(biāo)簽分配思想等。整體預(yù)處理、loss等可參考yolov5:?目標(biāo)檢測(cè)算法——YOLOV5_TigerZ*的博客-博客_目標(biāo)檢測(cè)yolov5

?

3、具體細(xì)節(jié) ?? ?1)input

?整體復(fù)用YOLOV5的預(yù)處理方式和相關(guān)源碼,唯一需要注意的是,官方主要是在640*640和1280*1280這樣的相對(duì)較大的圖片上進(jìn)行的訓(xùn)練和測(cè)試。

?具體參考我的另一篇YOLOV5博客中的 “具體細(xì)節(jié)” ->‘input’ 章節(jié)即可。目標(biāo)檢測(cè)算法——YOLOV5_TigerZ*的博客-博客_目標(biāo)檢測(cè)yolov5

?2)backbone

?主要是使用ELAN(該版本模型并沒(méi)有使用論文里提到的最復(fù)雜的E-ELAN結(jié)構(gòu)) 和 MP 結(jié)構(gòu)。該版本模型的激活函數(shù)使用的是Silu。

? 詳細(xì)可以參考源碼的?cfg/training/yolov7.yaml 文件 +?models/yolo.py 文件 + 使用?export.py?導(dǎo)出onnx 結(jié)構(gòu)使用 netron等軟件來(lái)梳理。

?a.ELAN結(jié)構(gòu)

?通過(guò)控制最短最長(zhǎng)的梯度路徑,更深的網(wǎng)絡(luò)可以有效地學(xué)習(xí)和收斂。作者提出ELAN結(jié)構(gòu)?;贓LAN設(shè)計(jì)的E-ELAN 用expand、shuffle、merge cardinality來(lái)實(shí)現(xiàn)在不破壞原有梯度路徑的情況下不斷增強(qiáng)網(wǎng)絡(luò)學(xué)習(xí)能力的能力。(PS:該版本模型以及E6E網(wǎng)友反饋均未實(shí)現(xiàn)E-ELAN),論文中相關(guān)的圖如下,其中的cross stage connection 其實(shí)就是1*1卷積:

? 簡(jiǎn)化如下:

?

?

b.MP 結(jié)構(gòu)

?個(gè)人認(rèn)為這是一個(gè)相對(duì)雞賊的結(jié)構(gòu),之前下采樣我們通常最開(kāi)始使用maxpooling,之后大家又都選用stride = 2的3*3卷積。這里作者充分發(fā)揮:“小孩子才做選擇,大人都要”的原則,同時(shí)使用了max pooling 和 stride=2的conv。 ?需要注意backbone中的MP前后通道數(shù)是不變的。

?

3)neck & head

?檢測(cè)頭整體結(jié)構(gòu)和YOLOV5類似,仍然是anchor based 結(jié)構(gòu),仍然沒(méi)有使用YOLOX 和YOLOV6 的解耦頭(分類和檢測(cè))思路,這一點(diǎn)目前不太理解,后續(xù)有精力可以魔改一下。主要是使用了:

? *SPPCSPC結(jié)構(gòu)

? *ELAN-W(我自己命名非官方名字,因?yàn)榛旧虾虴LAN類似,但是又不是論文中的E-ELAN)

? *MP 結(jié)構(gòu)(和backbone參數(shù)不同)

? *比較流行的重參數(shù)化結(jié)構(gòu)Rep結(jié)構(gòu)

? 以上參見(jiàn)本篇博客中的“主要思路”中的整體圖,里面就有可視化的這些部件,可以非常直觀的理解這些結(jié)構(gòu)。詳細(xì)可以參考源碼的?cfg/training/yolov7.yaml 文件 +?models/yolo.py 文件 + 使用?export.py?導(dǎo)出onnx 結(jié)構(gòu)使用 netron等軟件來(lái)梳理。

4)loss function

??主要分帶和不帶輔助訓(xùn)練頭兩種,對(duì)應(yīng)的訓(xùn)練腳本是train.py 和 train_aux.py。

?不帶輔助訓(xùn)練頭(分損失函數(shù)和匹配策略兩部分討論)。

?損失函數(shù)

?整體和YOLOV5 保持一致,分為坐標(biāo)損失、目標(biāo)置信度損失(GT就是訓(xùn)練階段的普通iou)和分類損失三部分。其中目標(biāo)置信度損失和分類損失采用BCEWithLogitsLoss(帶log的二值交叉熵?fù)p失),坐標(biāo)損失采用CIoU損失。詳細(xì)參見(jiàn)utils/loss.py 里面的 ComputeLossOTA 函數(shù) 配合 配置文件里的各部分的權(quán)重設(shè)置。

? 匹配策略

? 主要是參考了YOLOV5 和YOLOV6使用的當(dāng)下比較火的simOTA.

? S1.訓(xùn)練前,會(huì)基于訓(xùn)練集中g(shù)t框,通過(guò)k-means聚類算法,先驗(yàn)獲得9個(gè)從小到大排列的anchor框。(可選)

? S2.將每個(gè)gt與9個(gè)anchor匹配:Yolov5為分別計(jì)算它與9種anchor的寬與寬的比值(較大的寬除以較小的寬,比值大于1,下面的高同樣操作)、高與高的比值,在寬比值、高比值這2個(gè)比值中,取大的一個(gè)比值,若這個(gè)比值小于設(shè)定的比值閾值,這個(gè)anchor的預(yù)測(cè)框就被稱為正樣本。一個(gè)gt可能與幾個(gè)anchor均能匹配上(此時(shí)大9個(gè))。所以一個(gè)gt可能在不同的網(wǎng)絡(luò)層上做預(yù)測(cè)訓(xùn)練,大大增加了正樣本的數(shù)量,當(dāng)然也會(huì)出現(xiàn)gt與所有anchor都匹配不上的情況,這樣gt就會(huì)被當(dāng)成背景,不參與訓(xùn)練,說(shuō)明anchor框尺寸設(shè)計(jì)的不好。

? S3.擴(kuò)充正樣本。根據(jù)gt框的中心位置,將最近的2個(gè)鄰域網(wǎng)格也作為預(yù)測(cè)網(wǎng)格,也即一個(gè)groundtruth框可以由3個(gè)網(wǎng)格來(lái)預(yù)測(cè);可以發(fā)現(xiàn)粗略估計(jì)正樣本數(shù)相比前yolo系列,增加了三倍(此時(shí)大27個(gè)匹配)。圖下圖淺黃色區(qū)域,其中實(shí)線是YOLO的真實(shí)網(wǎng)格,虛線是將一個(gè)網(wǎng)格四等分,如這個(gè)例子中,GT的中心在右下虛線網(wǎng)格,則擴(kuò)充右和下真實(shí)網(wǎng)格也作為正樣本。

? S4.獲取與當(dāng)前gt有top10大iou的prediction結(jié)果。將這top10 (5-15之間均可,并不敏感)iou進(jìn)行sum,就為當(dāng)前gt的k。k最小取1。

? S5.根據(jù)損失函數(shù)計(jì)算每個(gè)GT和候選anchor損失(前期會(huì)加大分類損失權(quán)重,后面減低分類損失權(quán)重,如1:5->1:3),并保留損失最小的前K個(gè)。

? S6.去掉同一個(gè)anchor被分配到多個(gè)GT的情況。

?

? 帶輔助訓(xùn)練頭(分損失函數(shù)和匹配策略兩部分討論)。

?論文中,將負(fù)責(zé)最終輸出的Head為lead Head,將用于輔助訓(xùn)練的Head稱為auxiliary Head。本博客不重點(diǎn)討論,原因是論文中后面的結(jié)構(gòu)實(shí)驗(yàn)實(shí)現(xiàn)提升比較有限(0.3個(gè)點(diǎn)),具體可以看原文。

?

? 一些細(xì)節(jié):其loss函數(shù)和不帶輔助頭相同,加權(quán)系數(shù)不能過(guò)大(aux head loss 和lead head loss 按照0.25:1的比例),否則會(huì)導(dǎo)致lead head出來(lái)的結(jié)果精度變低。匹配策略和上面的不帶輔助頭(只有l(wèi)ead head)只有很少不同,其中輔助頭:

? *lead head中每個(gè)網(wǎng)格與gt如果匹配上,附加周邊兩個(gè)網(wǎng)格,而aux head附加4個(gè)網(wǎng)格(如上面導(dǎo)數(shù)第二幅圖,匹配到淺黃+橘黃共5個(gè)網(wǎng)格)。

? *lead head中將top10個(gè)樣本iou求和取整,而aux head中取top20。

??aux head更關(guān)注于recall,而lead head從aux head中精準(zhǔn)篩選出樣本。

? 需要注意依照yolov5中的中心點(diǎn)回歸方式,僅能將圖中紅色特征grid,預(yù)測(cè)在圖中紅色+藍(lán)色區(qū)域(實(shí)線組成的網(wǎng)格代表著特征圖grid,虛線代表著一個(gè)grid分成了4個(gè)象限),是根本無(wú)法將中心點(diǎn)預(yù)測(cè)到gt處(藍(lán)色點(diǎn))!而該紅色特征grid在訓(xùn)練時(shí)是會(huì)作為正樣本的。在aux head中,模型也并沒(méi)有針對(duì)這種情況對(duì)回歸方式作出更改。所以其實(shí)在aux head中,即使被分配為正樣本的區(qū)域,經(jīng)過(guò)不斷的學(xué)習(xí),可能仍然無(wú)法完全擬合至效果特別好。

?

5)trics

概述:ELAN設(shè)計(jì)思想、MP降維組件、Rep結(jié)構(gòu)的思考、正負(fù)樣本匹配策略、輔助訓(xùn)練頭

6)inference

測(cè)試階段(非訓(xùn)練階段)過(guò)程

4、結(jié)果

參考連接

1、yolov7 網(wǎng)絡(luò)架構(gòu)深度解析_所向披靡的張大刀的博客-博客

2、https://d246810g2000.medium.com/%E6%9C%80%E6%96%B0%E7%9A%84%E7%89%A9%E4%BB%B6%E5%81%B5%E6%B8%AC%E7%8E%8B%E8%80%85-yolov7-%E4%BB%8B%E7%B4%B9-206c6adf2e69

3、【yolov7系列二】正負(fù)樣本分配策略_所向披靡的張大刀的博客-博客+

4、https://arxiv.org/pdf/2207.02696.pdf

5、深入淺出 Yolo 系列之 Yolov7 基礎(chǔ)網(wǎng)絡(luò)結(jié)構(gòu)詳解 - 知乎

6、理解yolov7網(wǎng)絡(luò)結(jié)構(gòu)_athrunsunny的博客-博客

7、Yolov7算法卷土重來(lái),精度速度超越所有Yolo算法,Yolov4作者全新力作!

8、深入淺出Yolov7之正負(fù)樣本分配策略

9、yolov7正負(fù)樣本分配詳解 - 知乎

10、極市開(kāi)發(fā)者平臺(tái)-計(jì)算機(jī)視覺(jué)算法開(kāi)發(fā)落地平臺(tái)

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧

分享標(biāo)題:目標(biāo)檢測(cè)算法——YOLOV7——詳解-創(chuàng)新互聯(lián)
標(biāo)題鏈接:http://www.rwnh.cn/article22/dcepcc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開(kāi)發(fā)、網(wǎng)站收錄網(wǎng)站制作、小程序開(kāi)發(fā)、電子商務(wù)、網(wǎng)站導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

微信小程序開(kāi)發(fā)
阿拉善左旗| 洱源县| 定西市| 常熟市| 古交市| 南充市| 河北省| 元谋县| 翁牛特旗| 娄底市| 烟台市| 贵德县| 通河县| 绥棱县| 禄劝| 井研县| 深泽县| 阿克苏市| 北辰区| 铜梁县| 福贡县| 柘城县| 区。| 仲巴县| 海宁市| 阳新县| 内江市| 柳河县| 绥江县| 信丰县| 门头沟区| 景德镇市| 渭南市| 靖边县| 禄丰县| 宜都市| 海城市| 永嘉县| 察隅县| 武汉市| 石景山区|