国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

YOLOv7-tiny網絡結構圖及yaml文件 詳細備注

這篇具有很好參考價值的文章主要介紹了YOLOv7-tiny網絡結構圖及yaml文件 詳細備注。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

整體網絡結構圖

YOLOv7-tiny網絡結構圖及yaml文件 詳細備注

yolov7-tiny.yaml

# parameters
nc: 80  # number of classes
depth_multiple: 1.0  # model depth multiple
width_multiple: 1.0  # layer channel multiple

# anchors
anchors:
  - [10,13, 16,30, 33,23]  # P3/8
  - [30,61, 62,45, 59,119]  # P4/16
  - [116,90, 156,198, 373,326]  # P5/32

# yolov7-tiny backbone
backbone:
  # [from, number, module, args] ch_out, k=1, s=1, p=None, g=1, act=True
  [[-1, 1, Conv, [32, 3, 2, None, 1, nn.LeakyReLU(0.1)]],  # 0-P1/2  
  
   [-1, 1, Conv, [64, 3, 2, None, 1, nn.LeakyReLU(0.1)]],  # 1-P2/4    
   
   [-1, 1, Conv, [32, 1, 1, None, 1, nn.LeakyReLU(0.1)]],  #MCB
   [-2, 1, Conv, [32, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [32, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [32, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [[-1, -2, -3, -4], 1, Concat, [1]],
   [-1, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],  # 7
   
   [-1, 1, MP, []],  # 8-P3/8
   [-1, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-2, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [64, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [64, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [[-1, -2, -3, -4], 1, Concat, [1]],
   [-1, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]],  # 14
   
   [-1, 1, MP, []],  # 15-P4/16
   [-1, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-2, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [128, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [128, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [[-1, -2, -3, -4], 1, Concat, [1]],
   [-1, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]],  # 21
   
   [-1, 1, MP, []],  # 22-P5/32
   [-1, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-2, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [256, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [256, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [[-1, -2, -3, -4], 1, Concat, [1]],
   [-1, 1, Conv, [512, 1, 1, None, 1, nn.LeakyReLU(0.1)]],  # 28
  ]

# yolov7-tiny head
head:
  #SPPCSP
  [[-1, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-2, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, SP, [5]],
   [-2, 1, SP, [9]],
   [-3, 1, SP, [13]],
   [[-1, -2, -3, -4], 1, Concat, [1]],
   [-1, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [[-1, -7], 1, Concat, [1]],
   [-1, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]],  # 37
  
   [-1, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, nn.Upsample, [None, 2, 'nearest']],
   [21, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]], # route backbone P4
   [[-1, -2], 1, Concat, [1]],
   
   [-1, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-2, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [64, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [64, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [[-1, -2, -3, -4], 1, Concat, [1]],
   [-1, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]],  # 47
  
   [-1, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, nn.Upsample, [None, 2, 'nearest']],
   [14, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]], # route backbone P3
   [[-1, -2], 1, Concat, [1]],
   
   [-1, 1, Conv, [32, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-2, 1, Conv, [32, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [32, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [32, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [[-1, -2, -3, -4], 1, Concat, [1]],
   [-1, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],  # 57
   
   [-1, 1, Conv, [128, 3, 2, None, 1, nn.LeakyReLU(0.1)]],
   [[-1, 47], 1, Concat, [1]],
   
   [-1, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-2, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [64, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [64, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [[-1, -2, -3, -4], 1, Concat, [1]],
   [-1, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]],  # 65
   
   [-1, 1, Conv, [256, 3, 2, None, 1, nn.LeakyReLU(0.1)]],
   [[-1, 37], 1, Concat, [1]],
   
   [-1, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-2, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [128, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [128, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [[-1, -2, -3, -4], 1, Concat, [1]],
   [-1, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]],  # 73
      
   [57, 1, Conv, [128, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [65, 1, Conv, [256, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [73, 1, Conv, [512, 3, 1, None, 1, nn.LeakyReLU(0.1)]],

   [[74,75,76], 1, IDetect, [nc, anchors]],   # Detect(P3, P4, P5)
  ]

組件模塊

MX

池化層,默認表示兩倍下采樣,

class MP(nn.Module):
    def __init__(self, k=2):
        super(MP, self).__init__()
        self.m = nn.MaxPool2d(kernel_size=k, stride=k)

    def forward(self, x):
        return self.m(x)
   [-1, 1, MP, []],  # 8-P3/8

CBL

就是表示Conv+BN+LeakyReLU
[-1, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]]

class Conv(nn.Module):
    # Standard convolution
    def __init__(self, c1, c2, k=1, s=1, p=None, g=1, act=True):  # ch_in, ch_out, kernel, stride, padding, groups
        super(Conv, self).__init__()
        self.conv = nn.Conv2d(c1, c2, k, s, autopad(k, p), groups=g, bias=False)
        self.bn = nn.BatchNorm2d(c2)
        self.act = nn.SiLU() if act is True else (act if isinstance(act, nn.Module) else nn.Identity())

    def forward(self, x):
        return self.act(self.bn(self.conv(x)))

    def fuseforward(self, x):
        return self.act(self.conv(x))

SPPCSP

結構圖

YOLOv7-tiny網絡結構圖及yaml文件 詳細備注

yaml

yaml文件中如下表示,直接看最后一層輸出通道數,尺寸不會變化,SP模塊默認設置卷積Pading為卷積核的一半大小

  #SPPCSP
  [[-1, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]], #20*20*256
   [-2, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]], #20*20*256
   [-1, 1, SP, [5]],
   [-2, 1, SP, [9]],
   [-3, 1, SP, [13]],
   [[-1, -2, -3, -4], 1, Concat, [1]],                         #20*20*512
   [-1, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]],     #20*20*256
   [[-1, -7], 1, Concat, [1]],                                 #20*20*512
   [-1, 1, Conv, [256, 1, 1, None, 1, nn.LeakyReLU(0.1)]],#20  #20*20*256

構建代碼

yaml文件中的SP表示如下

# i+2p-k
class SP(nn.Module):
    def __init__(self, k=3, s=1):
        super(SP, self).__init__()
        self.m = nn.MaxPool2d(kernel_size=k, stride=s, padding=k // 2)

    def forward(self, x):
        return self.m(x)

MCB

結構圖

YOLOv7-tiny網絡結構圖及yaml文件 詳細備注

yaml文件表示

直接看最后一層輸出的通道數看Concat后變化,

   [-1, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],               #40*40*64
   [-2, 1, Conv, [64, 1, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [64, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [-1, 1, Conv, [64, 3, 1, None, 1, nn.LeakyReLU(0.1)]],
   [[-1, -2, -3, -4], 1, Concat, [1]],
   [-1, 1, Conv, [128, 1, 1, None, 1, nn.LeakyReLU(0.1)]],  # 30       #40*40*128

common.py代碼

通過Conv函數構建即可

參考

yolov7-tiny網絡結構圖
https://blog.csdn.net/weixin_51346544/article/details/129322706文章來源地址http://www.zghlxwxcb.cn/news/detail-436729.html

到了這里,關于YOLOv7-tiny網絡結構圖及yaml文件 詳細備注的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • yolov7-tiny結合mobilenetV3(降參提速)

    yolov7-tiny結合mobilenetV3(降參提速)

    在各處看到關于yolo的魔改都是基于yolov5版本的,于是借鑒學習一下用在yolov7-tiny版本上,做一下學習記錄。 1、配置yaml文件 2、配置common.py 把以下代碼添加至/models/common.py中即可 3、去yolo.py中加載添加的類 找到parse_model中最長那一段,加入所添加的h_sigmoid, h_swish,SELayer,c

    2024年02月16日
    瀏覽(24)
  • 關于Yolov7-tiny模型瘦身(param、FLOPs)碎碎念

    關于Yolov7-tiny模型瘦身(param、FLOPs)碎碎念

    優(yōu)于模型落地需要,yolov7-tiny版本的參數量(Param)為6.2M,FLOPs在輸入為320*320下為3.46G,想著還能不能再進行減少這兩者或其中之一(精度方面還未做效果驗證)。 于是翻遍了github,沒有關于v7的剪枝方法,替換backbone也大部分是基于yolov5s的,眼花繚亂中看到y(tǒng)olov7的github官方作者的

    2024年02月05日
    瀏覽(28)
  • YOLOv5源碼中的參數超詳細解析(2)— 配置文件yolov5s.yaml(包括源碼+網絡結構圖)

    YOLOv5源碼中的參數超詳細解析(2)— 配置文件yolov5s.yaml(包括源碼+網絡結構圖)

    前言: Hello大家好,我是小哥談。 配置文件yolov5s.yaml在YOLOv5模型訓練過程中發(fā)揮著至關重要的作用,屬于初學者必知必會的文件!在YOLOv5-6.0版本源碼中,配置了5種不同大小的網絡模型,分別是YOLOv5n、YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x,其中YOLOv5n是網絡深度和寬度最小但檢測速度

    2024年02月08日
    瀏覽(29)
  • yolov5-計算fps(新加入:4. 記錄運行B導yolov7-tiny后計算fps的方法)

    yolov5-計算fps(新加入:4. 記錄運行B導yolov7-tiny后計算fps的方法)

    參考自:睿智的目標檢測21——如何調用攝像頭進行目標檢測 FPS簡單來理解就是圖像的 刷新頻率 ,也就是 每秒多少幀 假設目標檢測網絡處理1幀要0.02s,此時FPS就是50 #---------------------------分割線-------------------------------- # 也就是說在計算FPS的時候,會強調 每秒 、 每張 。因

    2024年02月11日
    瀏覽(25)
  • 深度學習 yolov5等結構圖

    深度學習 yolov5等結構圖

    今天整理文件時看到自己之前用PPT畫的一些結構圖,可能也許會有人用得上,就上傳上來吧哈哈哈別說這些圖畫起來還挺費時的,放上PPT版鏈接可以根據自己的需求更改。 如果有時間的話還是自己動手畫一畫,畫的過程也可以加深對網絡結構的理解。 PPT版網盤鏈接:提取碼

    2023年04月24日
    瀏覽(25)
  • YOLOv5/v7 引入 最新 BiFusion Neck | 附詳細結構圖

    YOLOv5/v7 引入 最新 BiFusion Neck | 附詳細結構圖

    YOLO 社區(qū)自前兩次發(fā)布以來一直情緒高漲!隨著中國農歷新年2023兔年的到來,美團對YOLOv6進行了許多新的網絡架構和訓練方案改進。此版本標識為 YOLOv6 v3.0。對于性能,YOLOv6-N在COCO數據集上的AP為37.5%,通過NVIDIA Tesla T4 GPU測試的吞吐量為1187 FPS。YOLOv6-S以484 FPS的速度得到了超過

    2024年02月05日
    瀏覽(119)
  • 如何設計神經網絡結構,visio畫神經網絡結構圖

    如何設計神經網絡結構,visio畫神經網絡結構圖

    大概試了一下用visio繪制這個圖,除了最左面的變形圖片外其余基本可以實現(那個圖可以考慮用其它圖像處理軟件比如Photoshop生成后插入visio),visio中主要用到的圖形可以在更多形狀-常規(guī)-具有透視效果的塊中找到塊圖形,拖入繪圖區(qū)后拉動透視角度調節(jié)的小紅點進行調整

    2024年01月16日
    瀏覽(23)
  • word可以畫神經網絡圖嗎,如何畫神經網絡結構圖

    word可以畫神經網絡圖嗎,如何畫神經網絡結構圖

    大概試了一下用visio繪制這個圖,除了最左面的變形圖片外其余基本可以實現(那個圖可以考慮用其它圖像處理軟件比如Photoshop生成后插入visio),visio中主要用到的圖形可以在更多形狀-常規(guī)-具有透視效果的塊中找到塊圖形,拖入繪圖區(qū)后拉動透視角度調節(jié)的小紅點進行調整

    2024年02月15日
    瀏覽(26)
  • 改進YOLOv8 | 即插即用篇 | C2F模塊增加注意力機制 | 附詳細結構圖 計算機視覺

    摘要: 本文針對目標檢測算法YOLOv8進行改進,通過在C2F模塊中引入注意力機制,提高目標的定位和分類性能。文章首先介紹了YOLOv8的基本原理和結構,然后詳細闡述了注意力機制的原理和作用,并對修改后的C2F模塊結構進行了說明。最后,給出了實驗結果和源代碼。 引言 目

    2024年02月04日
    瀏覽(677)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包