自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(74)
  • 收藏
  • 关注

原创 RAW图片转换JPEG图片工具(免费)

RAW格式图片转换为JPEG图片免费的工具(亲测效果很不错)

2022-06-15 23:06:37 1303 1

原创 2018CVPR:Non-local Neural Networks(自注意力机制捕获远程依赖)

前言在阅读Coordination attention时了解到空间位置信息之间的远程依赖关系,经查询了解到ORDNET对短中远程依赖的提取,并对原始的自注意力机制进行了比较,指出原始的自注意力机制捕获的远程依赖特征的不精确性,因此来了解下自注意力机制论文的实现,再继续了解ORDNET会更深刻。论文下载链接:2018CVPR:Non-local Neural NetworksAbstract卷积运算和recurrent运算都是一次处理一个局部邻域的构建块。在本文中,我们将非局部操作表示为一个通用的.

2021-10-23 00:34:23 2137 1

原创 NIN:Network In Network 2014年ICLR

前言NIN:Network In Network提出了MLPconv和GAP代替全连接层的思路Abstract我们提出了一种称为“Network In Network”(NIN)的新型深层网络结构,以增强感受野内局部斑块的模型可分辨性。传统的卷积层使用线性滤波器和非线性激活函数来扫描输入。取而代之的是,我们构建了具有更复杂结构的微神经网络来提取感受野中的数据。我们用多层感知器(MLP)来实例化微神经网络,它是一个强大的函数逼近器。以与CNN类似的方式,通过在输入端滑动微网络来获得特征图;然后它们被送.

2021-10-20 22:00:28 694

原创 2021CVPR-Coordinate Attention for Efficient Mobile Network Design 坐标注意力机制

前言了解了SE和CBAM之后,Coordinate Attention(坐标注意)指出了前两者的一些缺点,并做出了一些改进,该篇论文发表于2021年CVPRAbstract最近关于mobile network设计的研究已经证明了通道注意(例如the Squeeze-and-Excitation attention)对于提升模型性能的显著有效性,但是它们通常忽略了位置信息,这对于生成空间选择性注意映射很重要。在本文中,我们提出了一种新的mobile network注意机制,将位置信息嵌入到通道注意中,.

2021-10-19 23:42:50 11115 20

原创 环境配置:open-mmlab视觉库mmdetection

配置windows系统下的环境配置pytorch(python3.8)pytorch命令指南pip3 install torch==1.9.1+cu111 torchvision==0.10.1+cu111 torchaudio===0.9.1 -f https://download.pytorch.org/whl/torch_stable.html可能会出现pip失败的情况,大概率是网络不稳定造成的,pytorch下载如果上面因为网络原因pip失败,可以去上面链接下载对应的库包,本文的.

2021-10-18 21:14:37 689

原创 CBAM: Convolutional Block Attention Module 通道+空间注意力机制

前言在了解了基于通道的注意力机制SE-NET之后,发现CBAM对于upsample造成的图像损失有一定的弥补作用,这让改进网络结构有了一定的思路。Abstract我们提出了卷积块注意模块(CBAM),一种简单而有效的前馈卷积神经网络注意模块。给定一个中间特征映射,我们的模块沿着两个独立的维度(通道和空间)顺序推断注意映射,然后将注意映射乘以输入特征映射以进行自适应特征细化。因为CBAM是一个轻量级的通用模块,它可以无缝地集成到任何CNN架构中,开销可以忽略不计,并且可以与基础CNN一起进行端到端的.

2021-10-16 21:41:42 8590 1

原创 《Understanding the Effective Receptive Field in Deep Convolutional Neural Networks》理解深卷积神经网络中的有效感受野

前言论文推荐来自B站UP-启释科技,该up对感受野和卷积有深刻的理解推荐感受野视频讲解:深度理解感受野(一)深度理解感受野(二)深度理解感受野(三)深度理解感受野(四)深度理解感受野(五)深度理解感受野(六)关于感受野计算基础相关的博文可以了解:感受野-Receptive Field的理解回归正题,该篇论文发表于NIPS-2016Abstract我们研究了深卷积网络中单位感受野的特征。在许多视觉任务中,感受野的大小是一个至关重要的问题,因为输出必须对图像中足够大的区域做出响应,

2021-10-13 15:22:51 1664

原创 YOLOv4: Optimal Speed and Accuracy of Object Detection

前言《YOLOv4: Optimal Speed and Accuracy of Object Detection》发表与2020CVPR,以下是YOLOV4在当时MSCOCO数据集上和其他目标检测模型的表现。trickWeighted-Residual-Connections (WRC)Cross-Stage-Partial-connections (CSP)Cross mini-Batch Normalization (CmBN)Self-adversarial-training (S.

2021-09-26 20:25:22 1875

原创 《Augmentation for small object detection》小目标检测的数据增强

前言这篇论文和CutMix思路有点类似,不过该篇论文主要是针对小目标数据的增强,CutMix注重的是数据增强中正则化,泛化的问题。该篇论文发布于2019CVPRAbstract近年来,目标检测取得了令人瞩目的进展。尽管有这些改进,但在检测大小目标之间的性能仍有很大差距。我们在具有挑战性的数据集MS COCO上分析了当前最先进的模型Mask RCNN。我们表明,小的ground truth目标和预测的Anchor之间的重叠远低于预期的IoU阈值。我们推测这是由两个因素造成的;(1) 只有少数图像包含.

2021-09-25 20:42:26 2518 2

原创 DenseBox Unifying Landmark Localization with End to End Object Detection

前言最近开始阅读AnchorFree系列的论文,2015年发布在CVPR的DenseBox基于AnchorFree思路的one-stage目标检测有必要阅读一下,了解下AnchorFree的一些思路,想法。AbstractDenseBox,这是一个统一的端到端FCN框架,它通过图像的所有位置和比例直接预测边界框和对象类的可信度。(YOLOV1,V2,V3是预测obj概率,类别条件概率和边界框)作者指出该DenseBox有两点贡献:证明一个FCN在经过仔细设计和优化后可以非常准确和高效地检测多个不

2021-09-25 12:34:43 402

原创 《Squeeze-and-Excitation Networks》SE-Net通道注意力机制

前言在阅读了一系列Activation Funtion论文之后,其中Dynamic Relu的论文提到了基于注意力机制的网络,因此先来看看经典的SE-Net的原理Introduction对于CNN,卷积核在局部感受野中将空间和通道信息融合得到信息组合.通过堆叠一系列非线性交错的卷积层和下采样,CNN能够获取具有全局感受野的分层模式,作为强大的图像描述。最近的研究表明,网络的性能可以通过显式嵌入学习机制来提高,这有助于捕获空间相关性,而无需需要额外的监督。其中一种方法是由Inception推广的,这表

2021-09-16 15:49:15 2454

原创 Yolo-V3-SPP 预测模块

前言源码版本是ultralytics版本主要讲解NMS,scale_coords,draw_box三个部分的源码解析NMS源码我单独发了一篇博客:YoloV3-SPP NMS源码详解预测模块源码import osimport jsonimport timeimport torchimport cv2import numpy as npfrom matplotlib import pyplot as pltfrom build_utils import img_utils, tor

2021-08-17 17:04:40 806

原创 YoloV3-SPP NMS源码详解

前言该文链接至:YOLO-V3-SPP详细解析本文主要讲解在验证推理阶段YoloV3-SPP的处理,分以下几点:预处理数据验证的处理推理的NMS处理推理结果可视化之drawbox源码Yolo-V3-SPP版本是ultralytics版本,需要较详细的请去github下载NMS源码调用: pred = model(imgs)[0] # only get inference result pred = non_max_suppression(pred,

2021-08-17 15:35:38 1082

原创 YOLO-V3-SPP 梯度累积的实现方式accumulate

前言链接至YOLO-V3-SPP详细解析在显存不够用的时候,YOLO采用了梯度累积的策略源码实现accumulate定义train.py文件中定义了该accumulate参数:accumulate = max(round(24 / batch_size), 1)round() 方法返回浮点数 24batchsize\frac{24}{batchsize}batchsize24​ 的四舍五入值,准确的说保留值将保留到离上一位更近的一端(四舍六入)max取24batchsize\frac{2

2021-08-13 20:46:24 530

原创 YOLO-V3-SPP 训练loss计算源码解析之compute_loss

前言理论详解:YOLO-V3-SPP详细解析该函数需要了解dataloader那边筛选出来的gt,即build_targets函数compute_loss主要讲解model的pred和筛选的gt进行loss计算过程,包括正负样本的区分,以及二支交叉熵loss和forcal loss的转换及使用代码,还有关于IOU的计算。讲解形式结合图文信息,不会那么枯燥,尽量形象点。源码def compute_loss(p, targets, model): # predictions, targets,

2021-08-09 01:31:25 1515 1

原创 YOLO-V3-SPP 训练时正样本筛选源码解析之build_targets

前言理论详解:YOLO-V3-SPP详细解析build_targets讲解形式主要以流程图形式,逐流程详细解读每一行代码代码以pytorch框架为基础targets处理整体流程这里主要介绍了targets的来龙去脉,targets指的是数据集中标注好的GroundTruth的目标信息,,build_target这个函数主要是处理当前批次的所有图片的targets,将当前批次的所有targets经过:宽高IOU筛选标注的yolo格式的box信息(xcenter,ycenter,w,h)(x_

2021-08-05 18:32:33 1822 15

原创 Batch Nomalization,Group Normalization,Cross-Iteration Batch Normalization分析

BatchNomalization前言由于深度神经网络每层输入的分布在训练过程中随着前一层的参数变化而变化,因此训练深度神经网络很复杂。由于需要较低的学习率和仔细的参数初始化,这会减慢训练速度,并且使得训练具有饱和非线性的模型变得非常困难。我们将这种现象称为内部协变量偏移,并通过BN层输入来解决该问题。Batch Normalization 允许我们使用更高的学习率,并且在初始化时不那么小心。它还充当正则化器,在某些情况下消除了 Dropout 的需要。covariate shift(协变量偏移)的提

2021-08-02 17:11:51 366

原创 CSPDenseNet 网络复现

前言论文:《CSPNet:A New Backbone that can Enhance Learning Capability of CNN》论文翻译参考代码:【论文复现】CSPNet(2019)论文提出了很多基于CSP结构的改进网络,这里只复现CSPDenseNetDenseNet的网络复现:DenseNet网络复现本文数据集遵循上面博客。实验实验参数densenet-bc-121:epoch取30,batchsize取144,此时显存占了20GBcspdensenet-bc-121:

2021-07-28 14:16:02 653

原创 《CSPNet:A New Backbone that can Enhance Learning Capability of CNN》论文翻译

前言CSPNet发表于CVPR 2020CSPNet用到了DenseNet作为主干,并且提出了新的网络连接方式提升网络反向传播效率,DenseNet查看DenseNet网络复现论文:CSPNet:A New Backbone that can Enhance Learning Capability of CNN开源代码:GITHUBAbstract神经网络使最先进的方法能够在计算机视觉任务(例如对象检测)上取得令人难以置信的结果。然而,这样的成功很大程度上依赖于昂贵的计算资源,这阻碍了拥有廉价

2021-07-27 20:40:55 699

原创 DenseNet网络复现

前言Densely Connected C

2021-07-26 19:05:47 305

原创 《Soft-NMS – Improving Object Detection With One Line of Code》论文翻译

前言《Soft-NMS – Improving Object Detection With One Line of Code》发表于2017年ICCV资源论文下载论文题目及作者摘要非最大抑制是对象检测流程的一个组成部分。首先,它根据分数对所有检测框进行排序。选择具有最大得分的检测框M,并且抑制与M有显著重叠(使用预定义阈值)的所有其他检测框。根据该算法的设计,如果一个对象位于预定义的重叠阈值内,它将被丢弃。为此,我们提出了Soft-NMS算法,该算法将所有其他对象的检测分数衰减为它们与M的重叠

2021-07-06 17:53:27 852

原创 《Distance-IoU Loss: Faster and Better Learning for Bounding Box Regression》DIOU论文

前言《Distance-IoU Loss: Faster and Better Learning for Bounding Box Regression》发表于2020年AAAI,来自天津大学和中国人名公安大学资源论文下载:Distance-IoU Loss: Faster and Better Learning for Bounding Box Regression论文题目及作者介绍第一行为GIOU loss,第二行是DIOU loss。绿边框表示Ground Truth,黑边框表示An

2021-07-02 22:02:41 704

原创 《Generalized Intersection over Union: A Metric and A Loss for Bounding Box Regression》GIOU

前言《Generalized Intersection over Union: A Metric and A Loss for Bounding Box Regression》发表于2019年CVPR,来自斯坦福资源论文下载:Generalized Intersection over Union: A Metric and A Loss for Bounding BoxRegressionGeneralized Intersection over Union: A Metric and A Lo

2021-07-01 19:38:35 187

原创 ResNext《Aggregated Residual Transformations for Deep Neural Networks》中文翻译

摘要我们为图像分类提供了一个简单的高度模块化的网络架构。我们的网络通过重复构建块来构造,该构建块聚合具有相同拓扑的一组变换。我们的简单设计导致均匀的多分支架构,只有几个超级参数设置。该策略公开了一种新的维度,我们称之为“基数”(变换集的大小),除了深度和宽度的尺寸之外,还为本要素。在ImageNet-1K数据集上,我们经验表明,即使在保持复杂性的限制条件下,增加的基数能够提

2021-06-28 12:25:47 727 1

原创 组合数学-鸽巢原理

定义鸽巢原理狄利克雷(Dirichlet)抽屉原理鞋盒(shoebox)原理以上三种称呼指的都是同个原理的不同称呼,这里统称为鸽巢原理。鸽巢原理讨论的是类似如果有许多鸽子飞进不够多的鸽巢内,那么至少要有一个鸽巢被两个或多个鸽子占据的问题。题目解析...

2021-06-02 17:01:33 2509

原创 YOLO-V3-SPP models.py详细解读

文章前言该文链接至YOLO-V3-SPP有兴趣请查看上文对YOLO-V3-SPP的详细解读models.py在霹雳吧啦Wz对源码的注释的基础上,我也对源码进行了详细的解析(阅读请忽略ONNX模型的相关知识,我还没接触该ONNX模型,待使用到再进行详细注释)from build_utils.layers import *from build_utils.parse_config import *from build_utils import torch_utilsONNX_EXPORT

2021-05-28 21:41:43 1056 3

原创 Pytorch nn.Module和forward的参数关系

module在定义好module类之后,调用module时,通常执行一个参数xpred = module(x)但也有执行两个参数的情况pred = module(x,y)forwardimport torchclass Net(torch.nn.Module): def __init__(self): super(Net, self).__init__() print("init执行") def forward(self,x,out):

2021-05-28 20:14:14 5202 1

原创 Python 路径字符的正确表示,涉及转义字符

路径符系统区别Windows的路径使用的是Linux的路径使用的是/在python中:\表示转义字符;/才表示路径符,和Linux的路径符一致,和Windows的路径符相反;因此在python路径表示中,最好写成path = 'C:/Users'path = 'C:\\Users'path='C:'+os.sep+'Users'os.sep为python内置的库提供的分隔符方法,适应不同的系统如果在winodws下调用os.sep返回的是\...

2021-05-26 15:56:56 1149

原创 YOLO-V3-SPP详细解析

YOLO-V3-SPP继前两篇简单的YOLO博文YOLO-V1 论文理解《You Only Look Once: Unified, Real-Time Object Detection》YOLO-V2论文理解《YOLO9000: Better, Faster, Stronger》上面两篇博文主要在理论上记录了YOLO版本迭代后的区别,并没有去实验源码解读,YOLO-V3-SPP主要在YOLO-V2的基础上加了很多tricktricktrick,其中涉及了很多论文,这些tricktricktric

2021-05-26 15:26:56 7901 11

转载 Python argparse模块解读

argparse库argparse 翻译过来就是“参数解析”argsparse是python的命令行解析的标准模块,内置于python,不需要安装。这个库可以让我们直接在命令行中就可以向程序中传入参数并让程序运行。传入一个参数我们先在桌面新建“arg学习”的文件夹,在该文件夹中新建demo.py文件,来看一个最简单的argsparse库的使用的例子。import argparseparser = argparse.ArgumentParser(description='命令行中传入一个数字')

2021-05-25 15:44:32 195

原创 YOLO-V2论文理解《YOLO9000: Better, Faster, Stronger》

YOLO9000&YOLOV2论文地址:YOLO9000: Better, Faster, StrongerYOLOV2相对YOLO的改进YOLO有许多缺点,造成了大量的定位误差,相对于RPN网络,YOLO的召回率相对较低,YOLOV2主要关注提高召回率和定位,同时保持分类精度。YOLOV2的目标是需要一种更精确、速度更快的检测器,不是扩大网络,而是简化网络,使表示更容易学习。Batch Normalization:批量标准化。批处理规范化导致收敛的显著改善,同时消除了对其他形式正则化

2021-05-08 18:11:05 413

原创 YOLO-V1 论文理解《You Only Look Once: Unified, Real-Time Object Detection》

Yolov1在了解了边界框目标检测的思想,以及2014年CVPR发表的OverFeat特征提取的思想,以及对目标检测的一些入门了解后,感觉可以对yolov1的论文进行研究。损失函数的定义第一第二项表示预测框的中心坐标损失及宽高损失,λcoord=5\lambda_{coord}=5λcoord​=5提高了objobjobj预测框的损失,增加了给网络的反馈,实际作用就是增加对objobjobj预测框参数的调整第三项表示预测框的置信度损失,对网络中负责objobjobj预测框整体调整第四项表示noo

2021-04-28 12:44:23 367

原创 《Scalable Object Detection using Deep Neural Networks》Bounding Box目标检测的思想

Scalable Object Detection using Deep Neural Networks阅读该论文前有一些需要了解的知识博客非极大值抑制(Non-Maximum Suppression)论文理解论文的方法我们的目标是通过预测一组表示潜在对象的边界框来实现与类无关的可伸缩对象检测。更准确地说,我们使用深度神经网络(DNN),它输出固定数量的边界框。此外,它为每个表示包含对象的盒子的网络置信度的盒子输出一个分数。训练一个DNN来预测每幅训练图像的边界框和置信度,最高得分的框就能

2021-04-24 20:05:52 219

原创 ResNet网络复现

ResNet本篇实现的是基于2015年何凯明推出的ResNet,2016年的改进后续试着实现,比较下效果。学习流程阅读ResNet论文原文搜集学习资源:视频讲解-博客资源熟悉ResNet网络结构代码复现,清楚网络结构中层与层之间的操作ResNet论文原论文:2015-Deep Residual Learning for Image Recognition2016-Identity Mappings in Deep Residual Networks论文翻译:ResNet论文翻译——中

2021-04-20 14:26:17 2493 6

原创 ResNext残差结构理解

ResNext网络对比ResNet图1. 上图左结构为ResNet的一个block右结构为ResNext的一个block,cardinality(基数)=32,左右结构复杂度大致相同ResNext的block图层显示为(channels,filter size,out channels)ResNext的简单介绍译文:我们的方法表明,除了宽度和深度之外,基数(转换集合的大小)是一个具有中心重要性的具体的、可测量的维度。实验表明,增加基数是一种比增加深度或增加宽度更有效的获得准确性的方法,特别

2021-04-20 13:32:49 3683

原创 ResNet之残差结构的理解

ResNet论文2015年提出的ResNet2016年改进后的ResNet博客深度学习—残差resnet网络原理详解ResNet详解——通俗易懂版残差结构解析2015年论文的残差结构译文:在本文中,我们通过提出一个深度残差学习框架来解决退化问题。与其希望每个堆叠层直接适应一个需要的基础映射,我们明确地让这些堆叠层适应残差映射。形式上,将所需的基础映射表示为H(x)H(x)H(x),我们让堆叠的非线性层适应F(x)F(x)F(x)的另一个映射H(x)−xH(x)-xH(x)−x。源映

2021-04-15 21:26:16 12281 2

原创 VGG网络复现

VGG上一篇文章关于AlexNet网络的复现中学习了pytorch和tensorflow两种实现方式,刚开始接触两个框架不太合适,决定先用tensorflow这个框架进行学习网络复现学习流程阅读VGG论文原文搜集学习资源:视频讲解-博客资源熟悉VGG网络结构代码复现,清楚网络结构中层与层之间的操作VGG论文原论文:very deep convolutional networks for large-scale image recognition论文翻译:暂时没有找到合适的翻译文章学习

2021-04-13 19:26:26 682 3

原创 Python “二维”字典输入excel的方法

直接上代码:import pandas as pdfrom openpyxl.workbook import Workbook#双重字典转excel方法def dict_to_excel(dict): #dict转二维列表,将字典dict的行列保存 row = dict.keys() col = list(dict.values())[0].keys() excel = [list(dict[u].values()) for u in dict] print(

2021-04-11 19:54:32 1154

原创 AlexNet网络复现

AlexNet学习流程阅读AlexNet论文原文搜集学习资源:视频讲解-博客资源熟悉AlexNet网络结构代码复现,清楚网络结构中层与层之间的操作AlexNet论文原论文:imagenet-classification-with-deep-convolutional-nnCSDN博主论文翻译:ImageNet Classification with Deep Convolutional Neural Networks(AlexNet)(翻译大体没有什么太多错误,小细节能识别出来)学习资

2021-04-08 15:50:52 1040

原创 卷积神经网络输出的计算公式推导证明

NNN:输出大小WWW:输入大小FFF:卷积核大小PPP:填充值大小SSS:步长大小可知N=(W+2P−F)/S+1N=(W+2P-F)/S+1N=(W+2P−F)/S+1以上针对填充paddding在上下或者左右都是相等的情况,待会讨论不相等的情况推导:按照卷积核对填充后的卷积区域进行扫描分析,可知扫描区域大小:W+2PW+2PW+2P图中第一行卷积核扫描的过程中,暂时不考虑第1次卷积核扫描,现在考虑第2次到第一行扫描结束的扫描区域大小,我称为“剩余扫描区域大小”,剩余扫描区域大小

2021-04-07 20:37:21 1258

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除