当前位置: 首页 > news >正文

网站怎么做下载连接网上企业名称预先核准系统

网站怎么做下载连接,网上企业名称预先核准系统,好玩的页游有哪些,湖南长沙市区哪里好玩目录 一 SCINet 1 本文方法 ① 权重共享的照明学习 ② 自校准模块 ③ 无监督训练损失 二 使用SCINet助力YOLOv8在黑暗环境的目标检测效果 1 整体修改 2 配置文件 3 训练 其他 一 SCINet 官方论文地址#xff1a;https://arxiv.org/pdf/2204.10137 官方代码地址https://arxiv.org/pdf/2204.10137 官方代码地址GitCode - 开发者的代码家园 现有的弱光图像增强技术不仅难以处理视觉质量和计算效率问题而且在未知的复杂场景下通常无效。在本文中提出了一种新的自校准照明(SCI)学习框架用于在现实世界低光场景下快速灵活和鲁棒的增亮图像。具体来说建立了一个具有权重共享的级联照明学习过程来处理这个任务。作者考虑到级联模式的计算负担构建了自校准模块实现了各阶段结果之间的收敛产生了仅使用单个基本块进行推理的增益(但在以往的工作中尚未被利用)大大降低了计算成本。然后定义了无监督训练损失以提高模型适应一般场景的能力。进一步进行了全面的探索挖掘SCI的固有属性(现有作品所缺乏的)包括操作不敏感的适应性。最后大量的实验和消融研究充分表明了这一方法在质量和效率上的优势。在微光人脸检测和夜间语义分割等方面的应用充分显示了该方法潜在的实用价值。 在本文中成功地建立了一个轻量级而有效的框架即自校准照明(SCI)用于针对不同现实场景的低光图像增强。不仅对SCI的优良特性进行了深入的探索还进行了大量的实验证明了在弱光图像增强、暗人脸检测、夜间语义分割等方面的有效性和优越性。 1 本文方法 ① 权重共享的照明学习 建立了一个具有权重共享的级联照明学习过程来处理低照度图像增强的任务。各个阶段共享权重。 ② 自校准模块 构建了自校准模块减少计算负担实现了各阶段结果之间的收敛产生了仅使用单个基本块进行推理的增益。 ③ 无监督训练损失 定义了无监督训练损失以提高模型适应一般场景的能力。 下图为SCI的整个框架。在训练阶段SCI由照度估计和自校准模块组成。将自校准的模块映射添加到原始低照度输入中作为下一阶段照度估计的输入。注意这两个模块在整个训练过程中分别是共享参数。在测试阶段只使用单个照明估计模块。权重共享的照明学习和自校准模块的设计为减少计算量并且提升结果的稳定性。 下图为比较是否使用自校准模块时各阶段结果的t-SNE[21]分布。这说明了为什么可以使用单级进行测试即SCI中每级的结果都可以快速收敛到相同的值而w/o自校准模块却无法始终实现这一点。 以下为各方法对比结果 二 使用SCINet助力YOLOv8在黑暗环境的目标检测效果 整个结构的示意图如下所示 1 整体修改 ① 添加SCINet.py文件 在ultralytics/nn/modules目录下新建SCINet.py文件文件的内容如下 import torch import torch.nn as nn__all__ [EnhanceNetwork]class EnhanceNetwork(nn.Module):def __init__(self, layers, channels):super(EnhanceNetwork, self).__init__()kernel_size 3dilation 1padding int((kernel_size - 1) / 2) * dilationself.in_conv nn.Sequential(nn.Conv2d(in_channels3, out_channelschannels, kernel_sizekernel_size, stride1, paddingpadding),nn.ReLU())self.conv nn.Sequential(nn.Conv2d(in_channelschannels, out_channelschannels, kernel_sizekernel_size, stride1, paddingpadding),nn.BatchNorm2d(channels),nn.ReLU())self.blocks nn.ModuleList()for i in range(layers):self.blocks.append(self.conv)self.out_conv nn.Sequential(nn.Conv2d(in_channelschannels, out_channels3, kernel_size3, stride1, padding1),nn.Sigmoid())def forward(self, input):fea self.in_conv(input)for conv in self.blocks:fea fea conv(fea)fea self.out_conv(fea)illu fea inputillu torch.clamp(illu, 0.0001, 1)return illuclass CalibrateNetwork(nn.Module):def __init__(self, layers, channels):super(CalibrateNetwork, self).__init__()kernel_size 3dilation 1padding int((kernel_size - 1) / 2) * dilationself.layers layersself.in_conv nn.Sequential(nn.Conv2d(in_channels3, out_channelschannels, kernel_sizekernel_size, stride1, paddingpadding),nn.BatchNorm2d(channels),nn.ReLU())self.convs nn.Sequential(nn.Conv2d(in_channelschannels, out_channelschannels, kernel_sizekernel_size, stride1, paddingpadding),nn.BatchNorm2d(channels),nn.ReLU(),nn.Conv2d(in_channelschannels, out_channelschannels, kernel_sizekernel_size, stride1, paddingpadding),nn.BatchNorm2d(channels),nn.ReLU())self.blocks nn.ModuleList()for i in range(layers):self.blocks.append(self.convs)self.out_conv nn.Sequential(nn.Conv2d(in_channelschannels, out_channels3, kernel_size3, stride1, padding1),nn.Sigmoid())def forward(self, input):fea self.in_conv(input)for conv in self.blocks:fea fea conv(fea)fea self.out_conv(fea)delta input - feareturn deltaclass Network(nn.Module):def __init__(self, stage3):super(Network, self).__init__()self.stage stageself.enhance EnhanceNetwork(layers1, channels3)self.calibrate CalibrateNetwork(layers3, channels16)self._criterion LossFunction()def weights_init(self, m):if isinstance(m, nn.Conv2d):m.weight.data.normal_(0, 0.02)m.bias.data.zero_()if isinstance(m, nn.BatchNorm2d):m.weight.data.normal_(1., 0.02)def forward(self, input):ilist, rlist, inlist, attlist [], [], [], []input_op inputfor i in range(self.stage):inlist.append(input_op)i self.enhance(input_op)r input / ir torch.clamp(r, 0, 1)att self.calibrate(r)input_op input attilist.append(i)rlist.append(r)attlist.append(torch.abs(att))return ilist, rlist, inlist, attlistdef _loss(self, input):i_list, en_list, in_list, _ self(input)loss 0for i in range(self.stage):loss self._criterion(in_list[i], i_list[i])return lossclass Finetunemodel(nn.Module):def __init__(self, weights):super(Finetunemodel, self).__init__()self.enhance EnhanceNetwork(layers1, channels3)self._criterion LossFunction()base_weights torch.load(weights)pretrained_dict base_weightsmodel_dict self.state_dict()pretrained_dict {k: v for k, v in pretrained_dict.items() if k in model_dict}model_dict.update(pretrained_dict)self.load_state_dict(model_dict)def weights_init(self, m):if isinstance(m, nn.Conv2d):m.weight.data.normal_(0, 0.02)m.bias.data.zero_()if isinstance(m, nn.BatchNorm2d):m.weight.data.normal_(1., 0.02)def forward(self, input):i self.enhance(input)r input / ir torch.clamp(r, 0, 1)return i, rdef _loss(self, input):i, r self(input)loss self._criterion(input, i)return loss ② 修改ultralytics/nn/tasks.py文件 具体的修改内容如下图所示 修改parse_model函数的内容如下所示 2 配置文件 yolov8_SCINet.yaml 的内容与原版对比 3 训练 上述修改完毕后开始训练吧 训练示例 yolo taskdetect modetrain modelcfg/models/v8/yolov8_SCINet.yaml datacfg/datasets/coco128.yaml epochs200 batch16 devicecpu projectyolov8 其他 说明私信问题不回答了哈有问题可以评论会随缘回答哈。希望理解哈 ❤️   ❤️   到此本文分享的内容就结束啦遇见便是缘感恩遇见 ❤️
http://www.hkea.cn/news/14537524/

相关文章:

  • 唐山网站制作公司网站私信界面
  • 临汾网站建设河北省工程造价信息网
  • 廊坊优化网站排名icp许可证
  • 广州知名网站推广服装生产厂商网站建设方案
  • 常州网站建设平台seo优化软件有哪些
  • 个人网站搭建模拟感想wordpress登陆后查看
  • 网站图标ico网站运营包括哪些内容
  • 建设网站的公司济南兴田德润o简介图片外贸怎么做公司网站
  • 软件公司网站模板下载网站后台登录模板
  • 一篇网站设计小结网络组建拓扑图
  • 做视频的网站带模板下载wordpress静态化经验
  • 一个网站开发语言平面设计去哪里学比较好
  • 网站结构设计的内容平面设计是什么意思
  • 简单建设企业办公网站西安市招聘网最新招聘信息
  • 江苏省建设局官方网站查询如何做弹幕视频网站
  • 网站建设网站公司哪家好wordpress主题模板仿
  • 网站建设基地网站建设解决恩问题
  • 网站还没完成 能备案吗南山网站建设找哪家公司好
  • 手机移动端网站怎么做seo网络运营者应当对其收集的用户信息严格保密
  • 网站开发模板网站做更改后台怎么做
  • 网站备案手机号码怎么做网站推广的步骤
  • 新建的网站如何做seo主机 wordpress
  • wordpress用户同步Wordpress 大数据量优化
  • 电子商务网站建设期末试卷答案想学电商运营在哪里学
  • 专门做优惠券的网站福州网站建设托管
  • 青浦苏州网站建设相亲网站
  • 高级的网站建设微信拼团小程序怎么做
  • 网站建设活动方案asp网站打开
  • 免费做调查的网站网站设计论文答辩问题及答案
  • 平面设计素材免费网站有哪些上海网站编辑招聘