中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

怎么做網(wǎng)站賺錢的動(dòng)漫網(wǎng)站b站推廣網(wǎng)站2023

怎么做網(wǎng)站賺錢的動(dòng)漫網(wǎng)站,b站推廣網(wǎng)站2023,個(gè)人主頁(yè)模板設(shè)計(jì),如何把jQuery特效做網(wǎng)站背景代碼下載: 基于全局注意力的改進(jìn)YOLOv7-AC的水下場(chǎng)景目標(biāo)檢測(cè)系統(tǒng).zip資源-CSDN文庫(kù) 1.研究的背景 水下場(chǎng)景目標(biāo)檢測(cè)是水下機(jī)器人、水下無(wú)人機(jī)和水下監(jiān)控等領(lǐng)域中的重要任務(wù)之一。然而,由于水下環(huán)境的復(fù)雜性和特殊性,水下目標(biāo)檢測(cè)面臨著許多挑…

代碼下載:

基于全局注意力的改進(jìn)YOLOv7-AC的水下場(chǎng)景目標(biāo)檢測(cè)系統(tǒng).zip資源-CSDN文庫(kù)

1.研究的背景

水下場(chǎng)景目標(biāo)檢測(cè)是水下機(jī)器人、水下無(wú)人機(jī)和水下監(jiān)控等領(lǐng)域中的重要任務(wù)之一。然而,由于水下環(huán)境的復(fù)雜性和特殊性,水下目標(biāo)檢測(cè)面臨著許多挑戰(zhàn),如光線衰減、水下散射、水下噪聲等。因此,開發(fā)一種高效準(zhǔn)確的水下場(chǎng)景目標(biāo)檢測(cè)系統(tǒng)對(duì)于提高水下任務(wù)的執(zhí)行效果和水下資源的利用效率具有重要意義。

目前,基于深度學(xué)習(xí)的目標(biāo)檢測(cè)方法在陸地場(chǎng)景中取得了顯著的成果,如YOLO (You Only Look Once)、Faster R-CNN (Region-based Convolutional Neural Networks)等。然而,這些方法在水下場(chǎng)景中的應(yīng)用受到了一些限制。首先,由于水下環(huán)境的特殊性,水下圖像的質(zhì)量較差,包含大量的噪聲和模糊。其次,水下目標(biāo)的外觀和形狀與陸地目標(biāo)存在較大差異,傳統(tǒng)的目標(biāo)檢測(cè)算法往往難以準(zhǔn)確地檢測(cè)水下目標(biāo)。因此,需要針對(duì)水下場(chǎng)景的特點(diǎn)進(jìn)行改進(jìn)和優(yōu)化,以提高水下目標(biāo)檢測(cè)的準(zhǔn)確性和魯棒性。

全局注意力機(jī)制是一種有效的注意力機(jī)制,可以幫助模型在輸入圖像的不同區(qū)域上分配不同的注意力權(quán)重。在目標(biāo)檢測(cè)任務(wù)中,全局注意力機(jī)制可以幫助模型更好地關(guān)注目標(biāo)區(qū)域,提高目標(biāo)檢測(cè)的準(zhǔn)確性。因此,將全局注意力機(jī)制引入到水下場(chǎng)景目標(biāo)檢測(cè)系統(tǒng)中,可以有效地提高水下目標(biāo)檢測(cè)的性能。

本研究的主要目標(biāo)是基于全局注意力的改進(jìn)YOLOv7-AC的水下場(chǎng)景目標(biāo)檢測(cè)系統(tǒng)。YOLOv7-AC是一種基于YOLOv3的改進(jìn)版本,具有更高的檢測(cè)精度和更快的檢測(cè)速度。通過引入全局注意力機(jī)制,我們希望進(jìn)一步提高YOLOv7-AC在水下場(chǎng)景中的目標(biāo)檢測(cè)性能。具體來(lái)說(shuō),我們將探索如何設(shè)計(jì)和訓(xùn)練一個(gè)全局注意力模塊,以捕捉水下目標(biāo)的關(guān)鍵特征,并將其集成到Y(jié)OLOv7-AC中。我們還將研究如何優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù)設(shè)置,以提高水下目標(biāo)檢測(cè)的準(zhǔn)確性和魯棒性。?

image.png

2.研究的意義

  1. 提高水下目標(biāo)檢測(cè)的準(zhǔn)確性:通過引入全局注意力機(jī)制,我們可以使模型更加關(guān)注水下目標(biāo)區(qū)域,提高目標(biāo)檢測(cè)的準(zhǔn)確性。這對(duì)于水下機(jī)器人、水下無(wú)人機(jī)等任務(wù)的執(zhí)行效果具有重要意義。

  2. 提高水下目標(biāo)檢測(cè)的魯棒性:水下環(huán)境的復(fù)雜性和特殊性使得水下目標(biāo)檢測(cè)面臨著許多挑戰(zhàn)。通過優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù)設(shè)置,我們可以提高水下目標(biāo)檢測(cè)的魯棒性,使其在不同的水下環(huán)境中都能夠穩(wěn)定地工作。

  3. 推動(dòng)水下任務(wù)的發(fā)展:水下任務(wù)的發(fā)展需要高效準(zhǔn)確的水下目標(biāo)檢測(cè)系統(tǒng)作為基礎(chǔ)。本研究的成果可以為水下任務(wù)的執(zhí)行提供有力支持,推動(dòng)水下任務(wù)的發(fā)展和應(yīng)用。

總之,基于全局注意力的改進(jìn)YOLOv7-AC的水下場(chǎng)景目標(biāo)檢測(cè)系統(tǒng)具有重要的研究背景和意義。通過引入全局注意力機(jī)制和優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu),我們可以提高水下目標(biāo)檢測(cè)的準(zhǔn)確性和魯棒性,為水下任務(wù)的執(zhí)行提供有力支持。這對(duì)于提高水下任務(wù)的執(zhí)行效果和水下資源的利用效率具有重要意義。

3.圖片演示

2.png

3.png

4.png

5.核心代碼講解

5.1 fit.py
class CBS(nn.Module):""" Convolution -> BatchNorm -> SiLU """def __init__(self, in_channels, out_channels, kernel_size, stride):super(CBS, self).__init__()self.layer = nn.Sequential(nn.Conv2d(in_channels, out_channels, kernel_size, stride, padding=kernel_size // 2),nn.BatchNorm2d(out_channels),nn.SiLU())def forward(self, x):return self.layer(x)class MP1(nn.Module):""" MP1 block """def __init__(self, in_channels):super(MP1, self).__init__()# Upper branchself.maxpool = nn.MaxPool2d(kernel_size=2, stride=2)self.cbs_upper = CBS(in_channels, in_channels // 2, 1, 1)# Lower branchself.cbs_lower1 = CBS(in_channels, in_channels // 2, 1, 1)self.cbs_lower2 = CBS(in_channels // 2, in_channels // 2, 3, 2)def forward(self, x):# Upper branchx_upper = self.maxpool(x)x_upper = self.cbs_upper(x_upper)# Lower branchx_lower = self.cbs_lower1(x)x_lower = self.cbs_lower2(x_lower)# Concatenatereturn torch.cat([x_upper, x_lower], dim=1)class MP2(nn.Module):""" MP2 block, similar to MP1 but with different output channels """def __init__(self, in_channels):super(MP2, self).__init__()# Upper branchself.maxpool = nn.MaxPool2d(kernel_size=2, stride=2)self.cbs_upper = CBS(in_channels, in_channels, 1, 1)# Lower branchself.cbs_lower1 = CBS(in_channels, in_channels, 1, 1)self.cbs_lower2 = CBS(in_channels, in_channels, 3, 2)def forward(self, x):# Upper branchx_upper = self.maxpool(x)x_upper = self.cbs_upper(x_upper)# Lower branchx_lower = self.cbs_lower1(x)x_lower = self.cbs_lower2(x_lower)# Concatenatereturn torch.cat([x_upper, x_lower], dim=1)......

封裝的類為CBS、MP1MP2,它們分別表示卷積、批歸一化和SiLU激活函數(shù)的組合、MP1塊和MP2塊。

CBS類包含一個(gè)序列模塊,其中包含一個(gè)卷積層、一個(gè)批歸一化層和一個(gè)SiLU激活函數(shù)。它的forward方法將輸入x傳遞給這個(gè)序列模塊,并返回輸出。

MP1類表示MP1塊,它包含一個(gè)上分支和一個(gè)下分支。上分支包括一個(gè)最大池化層和一個(gè)CBS模塊,下分支包括兩個(gè)CBS模塊。它的forward方法將輸入x分別傳遞給上分支和下分支,并將它們的輸出在通道維度上進(jìn)行拼接后返回。

MP2類表示MP2塊,它與MP1塊類似,但輸出通道數(shù)不同。它的forward方法與MP1塊的forward方法相同。

這些類封裝了卷積、批歸一化和激活函數(shù)的組合以及MP1和MP2塊的功能,可以在模型中使用它們來(lái)構(gòu)建更復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)。

該工程中的fit.py文件定義了兩個(gè)模塊類CBS和MP1,以及一個(gè)類MP2。其中,CBS類是一個(gè)卷積、批歸一化和SiLU激活函數(shù)的組合模塊,用于構(gòu)建卷積層。MP1類是一個(gè)MP1塊,包含了上下兩個(gè)分支,上分支是一個(gè)最大池化層和一個(gè)CBS模塊,下分支是兩個(gè)CBS模塊。MP2類與MP1類類似,但輸出通道數(shù)不同。這些模塊類都繼承自nn.Module類,并實(shí)現(xiàn)了forward方法來(lái)定義前向傳播過程。整個(gè)文件的功能是定義了一些用于構(gòu)建神經(jīng)網(wǎng)絡(luò)的模塊。

5.2 GAM.py
class ChannelAttention(nn.Module):""" Channel Attention Submodule for GAM """def __init__(self, in_channels):super(ChannelAttention, self).__init__()self.mlp = nn.Sequential(nn.Linear(in_channels, in_channels // 2),nn.SiLU(),nn.Linear(in_channels // 2, in_channels),nn.Sigmoid())def forward(self, x):avg_pool = torch.mean(x, dim=[2, 3])return self.mlp(avg_pool).unsqueeze(2).unsqueeze(3) * xclass SpatialAttention(nn.Module):""" Spatial Attention Submodule for GAM """def __init__(self, in_channels, out_channels):super(SpatialAttention, self).__init__()self.conv = nn.Sequential(nn.Conv2d(in_channels, out_channels, kernel_size=3, stride=1, padding=1),nn.SiLU(),nn.Conv2d(out_channels, 1, kernel_size=3, stride=1, padding=1),nn.Sigmoid())def forward(self, x):return self.conv(x) * xclass GAM(nn.Module):""" Global Attention Module (GAM) """def __init__(self, in_channels):super(GAM, self).__init__()self.channel_attention = ChannelAttention(in_channels)self.spatial_attention = SpatialAttention(in_channels, in_channels // 2)def forward(self, x):x = self.channel_attention(x)x = self.spatial_attention(x)return x

這個(gè)程序文件是一個(gè)實(shí)現(xiàn)了全局注意力模塊(GAM)的神經(jīng)網(wǎng)絡(luò)模型。它包含了三個(gè)子模塊:通道注意力(ChannelAttention)、空間注意力(SpatialAttention)和全局注意力模塊(GAM)。

通道注意力子模塊(ChannelAttention)接收輸入的通道數(shù),并通過一個(gè)多層感知機(jī)(MLP)來(lái)計(jì)算通道注意力權(quán)重。MLP包含兩個(gè)線性層和激活函數(shù),最后輸出一個(gè)sigmoid函數(shù)作為注意力權(quán)重。通道注意力子模塊的前向傳播過程中,首先對(duì)輸入進(jìn)行平均池化操作,然后通過MLP計(jì)算通道注意力權(quán)重,并將其與輸入相乘得到輸出。

空間注意力子模塊(SpatialAttention)接收輸入的通道數(shù)和輸出的通道數(shù),并通過兩個(gè)卷積層來(lái)計(jì)算空間注意力權(quán)重。卷積層的核大小為3x3,步長(zhǎng)為1,填充為1。卷積層的激活函數(shù)為SiLU(Sigmoid Linear Unit)??臻g注意力子模塊的前向傳播過程中,首先通過兩個(gè)卷積層計(jì)算空間注意力權(quán)重,然后將其與輸入相乘得到輸出。

全局注意力模塊(GAM)接收輸入的通道數(shù),并包含了通道注意力子模塊和空間注意力子模塊。在前向傳播過程中,首先通過通道注意力子模塊計(jì)算通道注意力權(quán)重,然后通過空間注意力子模塊計(jì)算空間注意力權(quán)重,最后將兩者相乘得到輸出。

總的來(lái)說(shuō),這個(gè)程序文件實(shí)現(xiàn)了一個(gè)全局注意力模塊(GAM),用于增強(qiáng)神經(jīng)網(wǎng)絡(luò)模型的表示能力。

5.3 models\common.py
class CBS(nn.Module):""" Convolution -> BatchNorm -> SiLU """def __init__(self, in_channels, out_channels, kernel_size, stride):super(CBS, self).__init__()self.layer = nn.Sequential(nn.Conv2d(in_channels, out_channels, kernel_size, stride, padding=kernel_size // 2),nn.BatchNorm2d(out_channels),nn.SiLU())def forward(self, x):return self.layer(x)class MP1(nn.Module):""" MP1 block """def __init__(self, in_channels):super(MP1, self).__init__()# Upper branchself.maxpool = nn.MaxPool2d(kernel_size=2, stride=2)self.cbs_upper = CBS(in_channels, in_channels // 2, 1, 1)# Lower branchself.cbs_lower1 = CBS(in_channels, in_channels // 2, 1, 1)self.cbs_lower2 = CBS(in_channels // 2, in_channels // 2, 3, 2)def forward(self, x):# Upper branchx_upper = self.maxpool(x)x_upper = self.cbs_upper(x_upper)# Lower branchx_lower = self.cbs_lower1(x)x_lower = self.cbs_lower2(x_lower)# Concatenatereturn torch.cat([x_upper, x_lower], dim=1)class MP2(nn.Module):""" MP2 block, similar to MP1 but with different output channels """def __init__(self, in_channels):super(MP2, self).__init__()# Upper branchself.maxpool = nn.MaxPool2d(kernel_size=2, stride=2)self.cbs_upper = CBS(in_channels, in_channels, 1, 1)# Lower branchself.cbs_lower1 = CBS(in_channels, in_channels, 1, 1)self.cbs_lower2 = CBS(in_channels, in_channels, 3, 2)def forward(self, x):# Upper branchx_upper = self.maxpool(x)x_upper = self.cbs_upper(x_upper)# Lower branchx_lower = self.cbs_lower1(x)x_lower = self.cbs_lower2(x_lower)# Concatenatereturn torch.cat([x_upper, x_lower], dim=1)class ChannelAttention(nn.Module):""" Channel Attention Submodule for GAM """def __init__(self, in_channels):super(ChannelAttention, self).__init__()self.mlp = nn.Sequential(nn.Linear(in_channels, in_channels // 2),nn.SiLU(),nn.Linear(in_channels // 2, in_channels),nn.Sigmoid())def forward(self, x):avg_pool = torch.mean(x, dim=[2, 3])return self.mlp(avg_pool).unsqueeze(2).unsqueeze(3) * xclass SpatialAttention(nn.Module):""" Spatial Attention Submodule for GAM """def __init__(self, in_channels, out_channels):super(SpatialAttention, self).__init__()self.conv = nn.Sequential(nn.Conv2d(in_channels, out_channels, kernel_size=3, stride=1, padding=1),nn.SiLU(),nn.Conv2d(out_channels, 1, kernel_size=3, stride=1, padding=1),nn.Sigmoid())def forward(self, x):return self.conv(x) * xclass GAM(nn.Module):""" Global Attention Module (GAM) """def __init__(self, in_channels):super(GAM, self).__init__()self.channel_attention = ChannelAttention(in_channels)self.spatial_attention = SpatialAttention(in_channels, in_channels // 2)def forward(self, x):x = self.channel_attention(x)x = self.spatial_attention(x)return x......

這個(gè)程序文件是一個(gè)YOLOv7模型的實(shí)現(xiàn),用于目標(biāo)檢測(cè)任務(wù)。文件中定義了一些常用的模塊和函數(shù),包括卷積、批歸一化、激活函數(shù)等。其中還定義了一些特殊的模塊,如MP1、MP2、GAM等,用于構(gòu)建YOLOv7模型的不同部分。整個(gè)程序文件的結(jié)構(gòu)比較清晰,代碼邏輯也比較簡(jiǎn)單易懂。

6.系統(tǒng)整體結(jié)構(gòu)

整體功能和構(gòu)架概述:

該項(xiàng)目是一個(gè)基于全局注意力的改進(jìn)YOLOv7-AC的水下場(chǎng)景目標(biāo)檢測(cè)系統(tǒng)。它使用PyTorch框架實(shí)現(xiàn)了一個(gè)完整的目標(biāo)檢測(cè)系統(tǒng),包括模型的構(gòu)建、訓(xùn)練、推理和可視化等功能。

整個(gè)項(xiàng)目的構(gòu)架可以分為以下幾個(gè)部分:

  1. 模型相關(guān):包括模型的定義和模型相關(guān)的輔助函數(shù)和類,如卷積、批歸一化、激活函數(shù)等模塊的定義,以及YOLOv7模型的各個(gè)部分的定義和組合。

  2. 工具相關(guān):包括一些常用的工具函數(shù)和類,如數(shù)據(jù)加載器的創(chuàng)建、損失函數(shù)的計(jì)算、模型的保存和加載等。

  3. 訓(xùn)練相關(guān):包括訓(xùn)練腳本和訓(xùn)練過程中需要的輔助函數(shù)和類,如訓(xùn)練函數(shù)的定義、模型的優(yōu)化器的選擇和配置、訓(xùn)練指標(biāo)的計(jì)算等。

  4. 用戶界面相關(guān):包括一個(gè)基于PyQt5的GUI界面,用于選擇圖片或視頻文件進(jìn)行目標(biāo)檢測(cè),并顯示檢測(cè)結(jié)果。

  5. 其他輔助文件:包括一些輔助功能的實(shí)現(xiàn),如激活函數(shù)、數(shù)據(jù)增強(qiáng)、自動(dòng)錨框生成、自動(dòng)批處理大小等。

下面是每個(gè)文件的功能整理:

文件路徑功能概述
fit.py定義了卷積、批歸一化和激活函數(shù)的組合模塊類
GAM.py實(shí)現(xiàn)了全局注意力模塊的神經(jīng)網(wǎng)絡(luò)模型
torch_utils.py包含了一些常用的函數(shù)和類,如設(shè)備選擇、時(shí)間同步、模型性能測(cè)量等
train.py用于訓(xùn)練模型的腳本,包括訓(xùn)練函數(shù)和一些輔助函數(shù)和類
ui.py基于PyQt5的GUI界面,用于選擇文件和顯示檢測(cè)結(jié)果
models\common.py定義了一些常用的模塊和函數(shù),用于構(gòu)建YOLOv7模型
models\experimental.py包含了一些實(shí)驗(yàn)性的模塊和函數(shù)
models\tf.py包含了一些與TensorFlow相關(guān)的模塊和函數(shù)
models\yolo.py定義了YOLO模型的相關(guān)類
models_init_.py空文件
tools\activations.py定義了一些激活函數(shù)
tools\augmentations.py定義了一些數(shù)據(jù)增強(qiáng)函數(shù)
tools\autoanchor.py定義了自動(dòng)錨框生成的函數(shù)
tools\autobatch.py定義了自動(dòng)批處理大小的函數(shù)
tools\callbacks.py定義了一些回調(diào)函數(shù)
tools\datasets.py定義了數(shù)據(jù)加載器的創(chuàng)建函數(shù)
tools\downloads.py定義了一些用于下載數(shù)據(jù)集和權(quán)重的函數(shù)
tools\general.py定義了一些通用的輔助函數(shù)
tools\loss.py定義了一些損失函數(shù)
tools\metrics.py定義了一些評(píng)估指標(biāo)的計(jì)算函數(shù)
tools\plots.py定義了一些繪圖函數(shù)
tools\torch_utils.py定義了一些與PyTorch相關(guān)的輔助函數(shù)
tools_init_.py空文件
tools\aws\resume.py定義了一些用于AWS訓(xùn)練恢復(fù)的函數(shù)
tools\aws_init_.py空文件
tools\flask_rest_api\example_request.py定義了一些用于Flask REST API的示例請(qǐng)求函數(shù)
tools\flask_rest_api\restapi.py定義了Flask REST API的相關(guān)類和函數(shù)
tools\loggers_init_.py空文件
tools\loggers\wandb\log_dataset.py定義了用于記錄數(shù)據(jù)集的類
tools\loggers\wandb\sweep.py定義了用于記錄超參數(shù)搜索的類
tools\loggers\wandb\wandb_utils.py定義了一些與WandB日志記錄相關(guān)的輔助函數(shù)
tools\loggers\wandb_init_.py空文件
utils\activations.py定義了一些激活函數(shù)
utils\augmentations.py定義了一些數(shù)據(jù)增強(qiáng)函數(shù)
utils\autoanchor.py定義了自動(dòng)錨框生成的函數(shù)
utils\autobatch.py定義了自動(dòng)批處理大小的函數(shù)
utils\callbacks.py定義了一些回調(diào)函數(shù)
utils\datasets.py定義了數(shù)據(jù)加載器的創(chuàng)建函數(shù)
utils\downloads.py定義了一些用于下載數(shù)據(jù)集和權(quán)重的函數(shù)
utils\general.py定義了一些通用的輔助函數(shù)
utils\loss.py定義了一些損失函數(shù)
utils\metrics.py定義了一些評(píng)估指標(biāo)的計(jì)算函數(shù)
utils\plots.py定義了一些繪圖函數(shù)
utils\torch_utils.py定義了一些與PyTorch相關(guān)的輔助函數(shù)
utils_init_.py空文件
utils\aws\resume.py定義了一些用于AWS訓(xùn)練恢復(fù)的函數(shù)
utils\aws_init_.py空文件
utils\flask_rest_api\example_request.py定義了一些用于Flask REST API的示例請(qǐng)求函數(shù)
utils\flask_rest_api\restapi.py定義了Flask REST API的相關(guān)類和函數(shù)
utils\loggers_init_.py空文件
utils\loggers\wandb\log_dataset.py定義了用于記錄數(shù)據(jù)集的類
utils\loggers\wandb\sweep.py定義了用于記錄超參數(shù)搜索的類
utils\loggers\wandb\wandb_utils.py定義了一些與WandB日志記錄相關(guān)的輔助函數(shù)

7.YOLOv7簡(jiǎn)介

YOLOv7 模型 [ 2 ],由 Chien-Yao Wang 和 Alexey Bochkovskiy 等人開發(fā)。到2022年,集成E-ELAN(擴(kuò)展高效層聚合網(wǎng)絡(luò))[ 1 ]、基于級(jí)聯(lián)模型的模型縮放[ 2 ]和模型重新參數(shù)化[ 3 ]等策略,以在檢測(cè)效率和精度之間實(shí)現(xiàn)良好的平衡。如圖所示,YOLOv7網(wǎng)絡(luò)由四個(gè)不同的模塊組成:輸入模塊、Backbone網(wǎng)絡(luò)、Head網(wǎng)絡(luò)和預(yù)測(cè)網(wǎng)絡(luò)。?

?輸入模塊:YOLOv7模型的預(yù)處理階段采用了鑲嵌和混合數(shù)據(jù)增強(qiáng)技術(shù),并利用YOLOv5建立的自適應(yīng)錨框計(jì)算方法,保證輸入的彩色圖像統(tǒng)一縮放到640×640尺寸,從而滿足骨干網(wǎng)絡(luò)輸入大小的要求。 骨干網(wǎng)絡(luò):YOLOv7網(wǎng)絡(luò)由三個(gè)主要組件組成:CBS、E-ELAN和MP1。CBS模塊由卷積、批量歸一化和SiLU激活函數(shù)組成。E-ELAN模塊保持了原有的ELAN設(shè)計(jì)架構(gòu),通過引導(dǎo)不同的特征組計(jì)算塊學(xué)習(xí)更多樣的特征來(lái)增強(qiáng)網(wǎng)絡(luò)的學(xué)習(xí)能力,保留原有的梯度路徑。MP1由CBS和MaxPool組成,分為上下分支。上分支使用 MaxPool 將圖像的長(zhǎng)度和寬度減半,并使用具有 128 個(gè)輸出通道的 CBS 將圖像通道減半。下分支通過具有 1 × 1 核和步長(zhǎng)的 CBS 將圖像通道減半,通過 3 × 3 核和 2 × 2 步長(zhǎng)的 CBS 將圖像長(zhǎng)和寬減半,最后通過串聯(lián)(Cat)操作。MaxPool提取小局部區(qū)域的最大值信息,而CBS提取小局部區(qū)域的所有值信息,從而提高網(wǎng)絡(luò)的特征提取能力。 Head網(wǎng)絡(luò):YOLOv7的Head網(wǎng)絡(luò)采用特征金字塔網(wǎng)絡(luò)(FPN)架構(gòu),采用PANet設(shè)計(jì)。該網(wǎng)絡(luò)包含多個(gè)卷積、批量歸一化和 SiLU 激活 (CBS) 塊,并引入了空間金字塔池化和卷積空間金字塔池化 (Sppcspc) 結(jié)構(gòu)、擴(kuò)展高效層聚合網(wǎng)絡(luò) (E-ELAN) 和 MaxPool -2(MP2)。Sppcspc 結(jié)構(gòu)通過在空間金字塔池化 (SPP) 結(jié)構(gòu)中結(jié)合卷積空間金字塔 (CSP) 結(jié)構(gòu),以及幫助優(yōu)化和特征提取的大剩余邊緣,改善了網(wǎng)絡(luò)的感知場(chǎng)。ELAN-H層是基于E-ELAN的多個(gè)特征層的融合,進(jìn)一步增強(qiáng)了特征提取。MP2 塊具有與 MP1 塊類似的結(jié)構(gòu),只是輸出通道的數(shù)量略有修改。 預(yù)測(cè)網(wǎng)絡(luò):YOLOv7的預(yù)測(cè)網(wǎng)絡(luò)采用Rep結(jié)構(gòu)來(lái)調(diào)整頭部網(wǎng)絡(luò)輸出的特征的圖像通道數(shù),然后應(yīng)用1×1卷積來(lái)預(yù)測(cè)置信度、類別和錨框。Rep 結(jié)構(gòu)受 RepVGG [ 44 ] 的啟發(fā),引入了特殊的殘差設(shè)計(jì)來(lái)幫助訓(xùn)練過程。這種獨(dú)特的殘差結(jié)構(gòu)在實(shí)際預(yù)測(cè)中可以簡(jiǎn)化為簡(jiǎn)單的卷積,從而在不犧牲其預(yù)測(cè)性能的情況下降低網(wǎng)絡(luò)復(fù)雜性。

8.改進(jìn)模塊

GAM

注意力機(jī)制是一種通過為神經(jīng)網(wǎng)絡(luò)中輸入的各個(gè)部分分配不同的權(quán)重來(lái)改進(jìn)復(fù)雜上下文中特征提取的方法。這種方法使模型能夠?qū)W⒂谙嚓P(guān)信息并忽略不相關(guān)信息,從而提高性能。注意力機(jī)制的例子包括像素注意力、通道注意力和多階注意力[ 5 ]。 GAM [ 9 ]可以通過減少信息分散和放大全局交互表示來(lái)提高深度神經(jīng)網(wǎng)絡(luò)的性能。 GAM 包含通道注意力子模塊和空間注意力子模塊。通道注意力子模塊被設(shè)計(jì)為三維變換,使其能夠保留輸入的三維信息。接下來(lái)是兩層的多層感知(MLP),用于放大通道空間中的維度間依賴性,從而使網(wǎng)絡(luò)能夠?qū)W⒂趫D像中更有意義的前景區(qū)域。 空間注意力子模塊包含兩個(gè)卷積層,可以有效地整合空間信息,使網(wǎng)絡(luò)能夠?qū)W⒂趫D像中上下文重要的區(qū)域。

ResNet-ACmix 模塊

谷歌大腦研究團(tuán)隊(duì)將ResNet-ACmix模塊引入YOLOv7的Backbone組件中,有效地保留了提取的特征信息的一致性。該模塊基于ResNet[8]的瓶頸結(jié)構(gòu),其中3×3卷積被ACmix模塊替代,能夠自適應(yīng)聚焦不同區(qū)域并捕獲更多信息特征,如圖所示。輸入分為主輸入和殘余輸入,這有助于防止信息丟失,同時(shí)減少參數(shù)數(shù)量和計(jì)算要求。ResNet-ACmix模塊使網(wǎng)絡(luò)能夠獲得更深的深度而不會(huì)遇到梯度消失,并且學(xué)習(xí)結(jié)果對(duì)網(wǎng)絡(luò)權(quán)重的波動(dòng)更加敏感。?

AC-E-ELAN模塊

AAAI對(duì)YOLOv7的E-ELAN組件提出的改進(jìn)是基于先進(jìn)的ELAN架構(gòu)[ 4 ]。與傳統(tǒng)ELAN網(wǎng)絡(luò)不同,擴(kuò)展E-ELAN采用擴(kuò)展、洗牌和合并基數(shù)方法,能夠在不破壞原始梯度流的情況下不斷增強(qiáng)網(wǎng)絡(luò)的學(xué)習(xí)能力,從而提高參數(shù)利用率和計(jì)算效率。YOLOv7中E-ELAN組件的特征提取模塊通過合并RepVgg架構(gòu)中的殘差結(jié)構(gòu)(即1×1卷積分支和跳躍連接分支)得到了進(jìn)一步改進(jìn)。這導(dǎo)致了AC-E-ELAN結(jié)構(gòu)的發(fā)展,如圖3所示,它集成了由3×3卷積塊組成的ACmixBlock,ACmixBlock之間具有跳躍連接和1×1卷積結(jié)構(gòu)。這種組合使網(wǎng)絡(luò)能夠受益于多分支模型訓(xùn)練期間獲得的豐富特征以及從單路徑模型獲得的快速、內(nèi)存高效的推理。?

image.png

10.參考文獻(xiàn)


  1. Zhou, X.; Ding, W.; Jin, W. Microwave-assisted extraction of lipids, carotenoids, and other compounds from marine resources. In?Innovative and Emerging Technologies in the Bio-Marine Food Sector; Academic Press: Cambridge, MA, USA, 2022; pp. 375–394. [Google Scholar]
  2. Liu, Y.; Anderlini, E.; Wang, S.; Ma, S.; Ding, Z. Ocean explorations using autonomy: Technologies, strategies and applications. In?Offshore Robotics; Springer: Singapore, 2022; Volume I, pp. 35–58. [Google Scholar]
  3. Ghafoor, H.; Noh, Y. An overview of next-generation underwater target detection and tracking: An integrated underwater architecture.?IEEE Access?2019,?7, 98841–98853. [Google Scholar] [CrossRef]
  4. Liu, K.; Liang, Y. Enhancement of underwater optical images based on background light estimation and improved adaptive transmission fusion.?Opt. Express?2021,?29, 28307. [Google Scholar] [CrossRef]
  5. Shi, J.; Zhuo, X.; Zhang, C.; Bian, Y.X.; Shen, H. Research on key technologies of underwater target detection. In?Seventh Symposium on Novel Photoelectronic Detection Technology and Applications; SPIE: Kunming, China, 2021; Volume 11763, pp. 1128–1137. [Google Scholar]
  6. Zhang, W.; Sun, W. Research on small moving target detection algorithm based on complex scene.?J. Phys. Conf. Ser.?2021,?1738, 012093. [Google Scholar] [CrossRef]
  7. Fu, H.; Song, G.; Wang, Y. Improved YOLOv4 marine target detection combined with CBAM.?Symmetry?2021,?13, 623. [Google Scholar] [CrossRef]
  8. Samantaray, S.; Deotale, R.; Chowdhary, C.L. Lane detection using sliding window for intelligent ground vehicle challenge. In?Innovative Data Communication Technologies and Application: Proceedings of ICIDCA 2020; Springer: Singapore, 2021; pp. 871–881. [Google Scholar]
  9. Bakheet, S.; Al-Hamadi, A. A framework for instantaneous driver drowsiness detection based on improved HOG features and na?ve Bayesian classification.?Brain Sci.?2021,?11, 240. [Google Scholar] [CrossRef]
  10. Bellavia, F. SIFT matching by context exposed.?IEEE Trans. Pattern Anal. Mach. Intell.?2022,?45, 2445–2457. [Google Scholar] [CrossRef] [PubMed]
http://www.risenshineclean.com/news/45299.html

相關(guān)文章:

  • 如何讓廣域網(wǎng)訪問利用公網(wǎng)ip和本地服務(wù)器建設(shè)的網(wǎng)站營(yíng)銷app
  • 網(wǎng)站角色管理系統(tǒng)旅游seo整站優(yōu)化
  • 素材網(wǎng)站下載怎么做競(jìng)價(jià)托管
  • 做電影網(wǎng)站侵權(quán)網(wǎng)絡(luò)維護(hù)培訓(xùn)班
  • 河北盤古做的網(wǎng)站用的什么服務(wù)器seo網(wǎng)站運(yùn)營(yíng)
  • 江西省城鄉(xiāng)建設(shè)培訓(xùn)網(wǎng)官方網(wǎng)站長(zhǎng)沙的seo網(wǎng)絡(luò)公司
  • asp.net c 網(wǎng)站開發(fā)廣州疫情最新數(shù)據(jù)
  • 西安網(wǎng)站建設(shè)電話咨詢?cè)诰€網(wǎng)絡(luò)培訓(xùn)平臺(tái)
  • 哪里有微信網(wǎng)站建設(shè)生豬價(jià)格今日豬價(jià)
  • 可以做360度全景圖的網(wǎng)站打開百度網(wǎng)站
  • wordpress菜單文章優(yōu)化英語(yǔ)
  • 建筑電工證查詢網(wǎng)站四川疫情最新情況
  • 廣告公司微網(wǎng)站建設(shè)域名解析ip
  • 深圳快速seo排名優(yōu)化關(guān)鍵詞優(yōu)化排名工具
  • 工業(yè)和信息化部官網(wǎng)合肥seo網(wǎng)站排名
  • 嘉興網(wǎng)站制作網(wǎng)站建設(shè)網(wǎng)站推廣的主要方式
  • 自助下單網(wǎng)站鐵力seo
  • 武漢網(wǎng)站建設(shè)招聘客服珠海優(yōu)化seo
  • 軟件班級(jí)網(wǎng)站建設(shè)今日騰訊新聞最新消息
  • 深圳網(wǎng)站建設(shè)公司佰達(dá)推客平臺(tái)
  • 優(yōu)化型網(wǎng)站建設(shè)廈門網(wǎng)站優(yōu)化
  • 百度怎樣做網(wǎng)站寧波seo排名方案優(yōu)化公司
  • 一個(gè)虛擬主機(jī)可以做兩個(gè)網(wǎng)站吧發(fā)布信息的免費(fèi)平臺(tái)有哪些
  • 電腦網(wǎng)站策劃書交換鏈接營(yíng)銷成功案例
  • 請(qǐng)別人做網(wǎng)站如何交付產(chǎn)品軟文
  • 國(guó)外有沒有網(wǎng)站是做潘多拉的貴州seo技術(shù)培訓(xùn)
  • 榮耀手機(jī)價(jià)格表大全一覽泉州seo外包
  • 微信鏈圖片轉(zhuǎn)換wordpress鹽城seo優(yōu)化
  • 做公司網(wǎng)站的尺寸一般是多大零基礎(chǔ)學(xué)seo要多久
  • 網(wǎng)站滾動(dòng)圖片效果怎么做seo排名策略