位置: IT常识 - 正文

目标检测算法——YOLOv5/v7/v8改进结合即插即用的动态卷积ODConv(小目标涨点神器)(运动目标检测算法)

编辑:rootadmin
目标检测算法——YOLOv5/v7/v8改进结合即插即用的动态卷积ODConv(小目标涨点神器)

💖💖>>>加勒比海带,QQ2479200884<<<💖💖🍀🍀>>>【YOLO魔法搭配&论文投稿咨询】<<<🍀🍀✨✨>>>学习交流 | 温澜潮生 | 合作共赢 | 共同进步<<<✨✨📚📚>>>人工智能 | 计算机视觉 | 深度学习Tricks | 第一时间送达<<<📚📚ICLR2022  助力YOLO | 动态卷积ODConv:大幅提升小目标检测能力!!论文题目:Omni-Dimensional Dynamic Convolution论文链接:https://openreview.net/forum?id=DmpCfq6Mg39

推荐整理分享目标检测算法——YOLOv5/v7/v8改进结合即插即用的动态卷积ODConv(小目标涨点神器)(运动目标检测算法),希望有所帮助,仅作参考,欢迎阅读内容。

目标检测算法——YOLOv5/v7/v8改进结合即插即用的动态卷积ODConv(小目标涨点神器)(运动目标检测算法)

文章相关热门搜索词:3d目标检测算法,目标检测算法的主要目的是找到图像中用户感兴趣的,目标检测算法有哪些,目标检测算法排名,SSD目标检测算法,目标检测算法排名,目标检测算法排名,目标检测算法有哪些,内容如对您有帮助,希望把文章链接给更多的朋友!

作者将CondConv中一个维度上的动态特性进行了扩展,同时了考虑了空域、输入通道、输出通道等维度上的动态性,故称之为全维度动态卷积。ODConv通过并行策略采用多维注意力机制沿核空间的四个维度学习互补性注意力。

作为一种“即插即用”的操作,它可以轻易的嵌入到现有CNN网络中。ImageNet分类与COCO检测任务上的实验验证了所提ODConv的优异性:即可提升大模型的性能,又可提升轻量型模型的性能,实乃万金油是也!值得一提的是,受益于其改进的特征提取能力,ODConv搭配一个卷积核时仍可取得与现有多核动态卷积相当甚至更优的性能。

一、ODConv网络结构

二、ODConv相关代码import torchimport torch.nn as nnimport torch.nn.functional as Fimport torch.autogradclass Attention(nn.Module): def __init__(self, in_planes, out_planes, kernel_size, groups=1, reduction=0.0625, kernel_num=4, min_channel=16): super(Attention, self).__init__() attention_channel = max(int(in_planes * reduction), min_channel) self.kernel_size = kernel_size self.kernel_num = kernel_num self.temperature = 1.0 self.avgpool = nn.AdaptiveAvgPool2d(1) self.fc = nn.Conv2d(in_planes, attention_channel, 1, bias=False) self.bn = nn.BatchNorm2d(attention_channel) self.relu = nn.ReLU(inplace=True) self.channel_fc = nn.Conv2d(attention_channel, in_planes, 1, bias=True) self.func_channel = self.get_channel_attention if in_planes == groups and in_planes == out_planes: # depth-wise convolution self.func_filter = self.skip else: self.filter_fc = nn.Conv2d(attention_channel, out_planes, 1, bias=True) self.func_filter = self.get_filter_attention if kernel_size == 1: # point-wise convolution self.func_spatial = self.skip else: self.spatial_fc = nn.Conv2d(attention_channel, kernel_size * kernel_size, 1, bias=True) self.func_spatial = self.get_spatial_attention if kernel_num == 1: self.func_kernel = self.skip else: self.kernel_fc = nn.Conv2d(attention_channel, kernel_num, 1, bias=True) self.func_kernel = self.get_kernel_attention self._initialize_weights() def _initialize_weights(self): for m in self.modules(): if isinstance(m, nn.Conv2d): nn.init.kaiming_normal_(m.weight, mode='fan_out', nonlinearity='relu') if m.bias is not None: nn.init.constant_(m.bias, 0) if isinstance(m, nn.BatchNorm2d): nn.init.constant_(m.weight, 1) nn.init.constant_(m.bias, 0) def update_temperature(self, temperature): self.temperature = temperature @staticmethod def skip(_): return 1.0 def get_channel_attention(self, x): channel_attention = torch.sigmoid(self.channel_fc(x).view(x.size(0), -1, 1, 1) / self.temperature) return channel_attention def get_filter_attention(self, x): filter_attention = torch.sigmoid(self.filter_fc(x).view(x.size(0), -1, 1, 1) / self.temperature) return filter_attention def get_spatial_attention(self, x): spatial_attention = self.spatial_fc(x).view(x.size(0), 1, 1, 1, self.kernel_size, self.kernel_size) spatial_attention = torch.sigmoid(spatial_attention / self.temperature) return spatial_attention def get_kernel_attention(self, x): kernel_attention = self.kernel_fc(x).view(x.size(0), -1, 1, 1, 1, 1) kernel_attention = F.softmax(kernel_attention / self.temperature, dim=1) return kernel_attention def forward(self, x): x = self.avgpool(x) x = self.fc(x) x = self.bn(x) x = self.relu(x) return self.func_channel(x), self.func_filter(x), self.func_spatial(x), self.func_kernel(x)class ODConv2d(nn.Module): def __init__(self, in_planes, out_planes, kernel_size, stride=1, padding=0, dilation=1, groups=1, reduction=0.0625, kernel_num=4): super(ODConv2d, self).__init__() self.in_planes = in_planes self.out_planes = out_planes self.kernel_size = kernel_size self.stride = stride self.padding = padding self.dilation = dilation self.groups = groups self.kernel_num = kernel_num self.attention = Attention(in_planes, out_planes, kernel_size, groups=groups, reduction=reduction, kernel_num=kernel_num) self.weight = nn.Parameter(torch.randn(kernel_num, out_planes, in_planes//groups, kernel_size, kernel_size), requires_grad=True) self._initialize_weights() if self.kernel_size == 1 and self.kernel_num == 1: self._forward_impl = self._forward_impl_pw1x else: self._forward_impl = self._forward_impl_common def _initialize_weights(self): for i in range(self.kernel_num): nn.init.kaiming_normal_(self.weight[i], mode='fan_out', nonlinearity='relu') def update_temperature(self, temperature): self.attention.update_temperature(temperature) def _forward_impl_common(self, x): # Multiplying channel attention (or filter attention) to weights and feature maps are equivalent, # while we observe that when using the latter method the models will run faster with less gpu memory cost. channel_attention, filter_attention, spatial_attention, kernel_attention = self.attention(x) batch_size, in_planes, height, width = x.size() x = x * channel_attention x = x.reshape(1, -1, height, width) aggregate_weight = spatial_attention * kernel_attention * self.weight.unsqueeze(dim=0) aggregate_weight = torch.sum(aggregate_weight, dim=1).view( [-1, self.in_planes // self.groups, self.kernel_size, self.kernel_size]) output = F.conv2d(x, weight=aggregate_weight, bias=None, stride=self.stride, padding=self.padding, dilation=self.dilation, groups=self.groups * batch_size) output = output.view(batch_size, self.out_planes, output.size(-2), output.size(-1)) output = output * filter_attention return output def _forward_impl_pw1x(self, x): channel_attention, filter_attention, spatial_attention, kernel_attention = self.attention(x) x = x * channel_attention output = F.conv2d(x, weight=self.weight.squeeze(dim=0), bias=None, stride=self.stride, padding=self.padding, dilation=self.dilation, groups=self.groups) output = output * filter_attention return output def forward(self, x): return self._forward_impl(x)三、实验对比结果

🚀🏆🍀【算法创新&算法训练&论文投稿】相关链接👇👇👇✨【YOLO创新算法尝新系列】✨🏂 美团出品 | YOLOv6 v3.0 is Coming(超越YOLOv7、v8)🏂 官方正品 | Ultralytics YOLOv8算法来啦(尖端SOTA模型)🏂 改进YOLOv5/YOLOv7——魔改YOLOv5/YOLOv7提升检测精度(涨点必备)————————————🌴【重磅干货来袭】🎄————————————🚀一、主干网络改进(持续更新中)🎄🎈1.目标检测算法——YOLOv5/YOLOv7改进之结合ConvNeXt结构(纯卷积|超越Swin)2.目标检测算法——YOLOv5/YOLOv7改进之结合MobileOne结构(高性能骨干|仅需1ms)3.目标检测算法——YOLOv5/YOLOv7改进之结合Swin Transformer V2(涨点神器)4.目标检测算法——YOLOv5/YOLOv7改进结合BotNet(Transformer)5.目标检测算法——YOLOv5/YOLOv7改进之GSConv+Slim Neck(优化成本)6.目标检测算法——YOLOv5/YOLOv7改进结合新神经网络算子Involution(CVPR 2021)7.目标检测算法——YOLOv7改进|增加小目标检测层8.目标检测算法——YOLOv5改进|增加小目标检测层🌴 持续更新中……🚀二、轻量化网络(持续更新中)🎄🎈1.目标检测算法——YOLOv5/YOLOv7改进之结合​RepVGG(速度飙升)2.目标检测算法——YOLOv5/YOLOv7改进之结合​PP-LCNet(轻量级CPU网络)3.目标检测算法——YOLOv5/YOLOv7改进之结合轻量化网络MobileNetV3(降参提速)4.目标检测算法——YOLOv5/YOLOv7改进|结合轻量型网络ShuffleNetV25.目标检测算法——YOLOv5/YOLOv7改进结合轻量型Ghost模块🌴 持续更新中……🚀三、注意力机制(持续更新中)🎄🎈1.目标检测算法——YOLOv5改进之结合CBAM注意力机制2.目标检测算法——YOLOv7改进之结合CBAM注意力机制3.目标检测算法——YOLOv5/YOLOv7之结合CA注意力机制4.目标检测算法——YOLOv5/YOLOv7改进之结合ECA注意力机制5.目标检测算法——YOLOv5/YOLOv7改进之结合NAMAttention(提升涨点)6.目标检测算法——YOLOv5/YOLOv7改进之结合GAMAttention7.目标检测算法——YOLOv5/YOLOv7改进之结合无参注意力SimAM(涨点神器)8.目标检测算法——YOLOv5/YOLOv7改进之结合Criss-Cross Attention9.​目标检测算法——YOLOv5/YOLOv7改进之结合​SOCA(单幅图像超分辨率)🌴 持续更新中……🚀四、检测头部改进(持续更新中)🎄🎈1.魔改YOLOv5/v7高阶版(魔法搭配+创新组合)——改进之结合解耦头Decoupled_Detect2.目标检测算法——YOLOv5/YOLOv7改进结合涨点Trick之ASFF(自适应空间特征融合)🌴 持续更新中……🚀五、空间金字塔池化(持续更新中)🎄🎈1.目标检测算法——YOLOv5/YOLOv7改进之结合​ASPP(空洞空间卷积池化金字塔)2.目标检测算法——YOLOv5/YOLOv7改进之结合特征提取网络RFBNet(涨点明显)🌴 持续更新中……🚀六、损失函数及NMS改进(持续更新中)🎄🎈1.目标检测算法——YOLOv5/YOLOv7改进|将IOU Loss替换为EIOU Loss2.目标检测算法——助力涨点 | YOLOv5改进结合Alpha-IoU3.目标检测算法——YOLOv5/YOLOv7改进之结合SIoU4.目标检测算法——YOLOv5将NMS替换为DIoU-NMS🌴 持续更新中……🚀七、其他创新改进项目(持续更新中)🎄🎈1.手把手教你搭建属于自己的PyQt5-YOLOv5目标检测平台(保姆级教程)2.YOLO算法改进之结合GradCAM可视化热力图(附详细教程)3.目标检测算法——YOLOv5/YOLOv7改进之结合SPD-Conv(低分辨率图像和小目标涨点明显)4.目标检测算法——YOLOv5/YOLOv7改进之更换FReLU激活函数5.目标检测算法——YOLOv5/YOLOv7改进之结合BiFPN🌴 持续更新中……🚀八、算法训练相关项目(持续更新中)🎄🎈1.目标检测算法——YOLOv7训练自己的数据集(保姆级教程)2.人工智能前沿——玩转OpenAI语音机器人ChatGPT(中文版)3.深度学习之语义分割算法(入门学习)4.知识经验分享——YOLOv5-6.0训练出错及解决方法(RuntimeError)5.目标检测算法——将xml格式转换为YOLOv5格式txt6.目标检测算法——YOLOv5/YOLOv7如何改变bbox检测框的粗细大小7.人工智能前沿——6款AI绘画生成工具8.YOLOv5结合人体姿态估计9.超越YOLOv5,0.7M超轻量,又好又快(PP-YOLOE&PP-PicoDet)10.目标检测算法——收藏|小目标检测的定义(一)11.目标检测算法——收藏|小目标检测难点分析(二)12.目标检测算法——收藏|小目标检测解决方案(三)🌴 持续更新中……🚀九、数据资源相关项目(持续更新中)🎄🎈1.目标检测算法——小目标检测相关数据集(附下载链接)2.目标检测算法——3D公共数据集汇总(附下载链接)3.目标检测算法——3D公共数据集汇总 2(附下载链接)4.目标检测算法——行人检测&人群计数数据集汇总(附下载链接)5.目标检测算法——遥感影像数据集资源汇总(附下载链接)6.目标检测算法——自动驾驶开源数据集汇总(附下载链接)7.目标检测算法——自动驾驶开源数据集汇总 2(附下载链接)8.目标检测算法——图像分类开源数据集汇总(附下载链接)9.目标检测算法——医学图像开源数据集汇总(附下载链接)10.目标检测算法——工业缺陷数据集汇总1(附下载链接)11.目标检测算法——工业缺陷数据集汇总2(附下载链接)12.目标检测算法——垃圾分类数据集汇总(附下载链接)13.目标检测算法——人脸识别数据集汇总(附下载链接)14.目标检测算法——安全帽识别数据集(附下载链接)15.目标检测算法——人体姿态估计数据集汇总(附下载链接)16.目标检测算法——人体姿态估计数据集汇总 2(附下载链接)17.目标检测算法——车辆牌照识别数据集汇总(附下载链接)18.目标检测算法——车辆牌照识别数据集汇总 2(附下载链接)19.收藏 | 机器学习公共数据集集锦(附下载链接)20.目标检测算法——图像分割数据集汇总(附下载链接)21.目标检测算法——图像分割数据集汇总 2(附下载链接)22.收藏 | 自然语言处理(NLP)数据集汇总(附下载链接)23.自然语言处理(NLP)数据集汇总 2(附下载链接)24.自然语言处理(NLP)数据集汇总 3(附下载链接)25.自然语言处理(NLP)数据集汇总 4(附下载链接)🌴 持续更新中……🚀十、论文投稿相关项目(持续更新中)🎄🎈1.论文投稿指南——收藏|SCI论文投稿注意事项(提高命中率)2.论文投稿指南——收藏|SCI论文怎么投?(Accepted)3.论文投稿指南——收藏|SCI写作投稿发表全流程4.论文投稿指南——收藏|如何选择SCI期刊(含选刊必备神器)5.论文投稿指南——SCI选刊6.论文投稿指南——SCI投稿各阶段邮件模板7.人工智能前沿——深度学习热门领域(确定选题及研究方向)8.人工智能前沿——2022年最流行的十大AI技术9.人工智能前沿——未来AI技术的五大应用领域10.人工智能前沿——无人自动驾驶技术11.人工智能前沿——AI技术在医疗领域的应用12.人工智能前沿——随需应变的未来大脑13.目标检测算法——深度学习知识简要普及14.目标检测算法——10种深度学习框架介绍15.目标检测算法——为什么我选择PyTorch?16.知识经验分享——超全激活函数解析(数学原理+优缺点)17.知识经验分享——卷积神经网络(CNN)18.海带软件分享——Office 2021全家桶安装教程(附报错解决方法)19.海带软件分享——日常办公学习软件分享(收藏)20.论文投稿指南——计算机视觉 (Computer Vision) 顶会归纳21.论文投稿指南——中文核心期刊22.论文投稿指南——计算机领域核心期刊23.论文投稿指南——中文核心期刊推荐(计算机技术)24.论文投稿指南——中文核心期刊推荐(计算机技术2)25.论文投稿指南——中文核心期刊推荐(计算机技术3)26.论文投稿指南——中文核心期刊推荐(电子、通信技术)27.论文投稿指南——中文核心期刊推荐(电子、通信技术2)28.论文投稿指南——中文核心期刊推荐(电子、通信技术3)29.论文投稿指南——中文核心期刊推荐(机械、仪表工业)30.论文投稿指南——中文核心期刊推荐(机械、仪表工业2)31.论文投稿指南——中文核心期刊推荐(机械、仪表工业3)32.论文投稿指南——中国(中文EI)期刊推荐(第1期)33.论文投稿指南——中国(中文EI)期刊推荐(第2期)34.论文投稿指南——中国(中文EI)期刊推荐(第3期)35.论文投稿指南——中国(中文EI)期刊推荐(第4期)36.论文投稿指南——中国(中文EI)期刊推荐(第5期)37.论文投稿指南——中国(中文EI)期刊推荐(第6期)38.论文投稿指南——中国(中文EI)期刊推荐(第7期)39.论文投稿指南——中国(中文EI)期刊推荐(第8期)40.【1】SCI易中期刊推荐——计算机方向(中科院3区)41.【2】SCI易中期刊推荐——遥感图像领域(中科院2区)42.【3】SCI易中期刊推荐——人工智能领域(中科院1区)43.【4】SCI易中期刊推荐——神经科学研究(中科院4区)44.【5】SCI易中期刊推荐——计算机科学(中科院2区)45.【6】SCI易中期刊推荐——人工智能&神经科学&机器人学(中科院3区)46.【7】SCI易中期刊推荐——计算机 | 人工智能(中科院4区)47.【8】SCI易中期刊推荐——图像处理领域(中科院4区)48.【9】SCI易中期刊推荐——工程技术-计算机:软件工程(中科院4区)49.【10】SCI易中期刊推荐——工程技术-计算机:人工智能(中科院2区)50.【11】SCI易中期刊推荐——计算机方向(中科院4区)51.【12】SCI易中期刊推荐——计算机信息系统(中科院4区)🌴 持续更新中……关于YOLO算法改进&论文投稿可关注并留言博主的CSDN/QQ>>>一起交流!互相学习!共同进步!<<<
本文链接地址:https://www.jiuchutong.com/zhishi/290811.html 转载请保留说明!

上一篇:【哈士奇赠书活动 - 24期】-〖前端工程化:基于Vue.js 3.0的设计与实践〗(哈士奇新手礼包)

下一篇:Anaconda D2L 虚拟环境安装配置(anaconda虚拟机)

  • 消费税的账务处理流程
  • 计提租赁费用
  • 清算资产处置
  • 生产车间的办公用品费计入
  • 出口货物的报关时限为装货的24小时以前
  • 申报企业所得税流程
  • 申报后发现成本算错了
  • 厂里搬厂赔偿员工标准
  • 未核定印花税
  • 资产负债表上的资产是原值还是净值
  • 报销应聘人员差旅费
  • 没有借贷资质的公司对外放款
  • 行政事业单位的会计核算可以采用权责发生制吗
  • 新申请的增值税怎么申报
  • 资产负债表如何调平
  • 小规模购买财务软件怎么做分录
  • 增值税专用发票使用规定 最新
  • 2023增值税免税政策
  • 补报的年报可以更改吗
  • 技术咨询服务费计入什么科目
  • 违建罚款了还算违建吗
  • 如何免费获得microsoft
  • php日期时间函数
  • PHP:mb_check_encoding()的用法_mbstring函数
  • 联想win10自动修复失败还能保存文件吗
  • 进程process.acore已停止怎么办
  • 后端返回pdf文件地址,前端怎么渲染到页面
  • 商贸企业小规模税率是多少
  • 相关企业之间的竞争
  • 现金日记账采用三栏式
  • 商品流通企业库存商品的核算方法主要有
  • 利润表本月数可以不填吗
  • 人工智能科技向善
  • 付临时工工资需要什么材料
  • 小企业其他应收款坏账处理
  • 管理费用增加记哪方
  • 公司租赁员工的房屋
  • 收到增值进项发票
  • 土地增值税扣除项目20%
  • 抵扣联怎么抵扣使用
  • 投资性房地产递延所得税负债为什么计入其他综合收益
  • 收取水电费计入什么科目
  • 企业电子发票申请流程2023版
  • 费用的分摊要注意什么
  • 党建经费提取是上年度还是下年
  • 固定资产会计上与税法上提折旧时间
  • 在建工程待摊支出是什么意思
  • 计提印花税会计
  • 用友怎么取消月结
  • 怎么算股本溢价
  • 出售其他权益工具投资其他综合收益
  • 预支报销怎么做账
  • 收到销项负数发票怎么做分录
  • 建筑业外包工程包括哪些
  • 怎么辨别定额发票是什么项目啊
  • 费用报销办法
  • 五证合一办理步骤
  • 开票销售方
  • sqlserver怎么用
  • dwm占用内存过高 进程处理
  • linux find命令详解xargs
  • win7自动更新在哪
  • linux执行sh文件显示不存在
  • linux如何直接访问gpio不用设备树
  • js的三种循环
  • 怎样用在js中使用css的内容
  • js中的三种弹出式消息提醒的命令是什么
  • js链式编程的原理
  • javascript对象的种类
  • 笔记本等待网络准备好
  • python中对文件操作的一般步骤
  • javascript教程chm
  • javascript绘制图形
  • 视频号带货个人和个体工商户的区别
  • 什么是出口退税政策
  • 没有单位怎么交职工养老保险
  • 电子税务局申领的发票怎么读入金税盘
  • 网上申报增值税纳税申报表怎么填写
  • 汽车买保险车船税是什么意思
  • 成都税务局网站首页
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设