自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 springboot项目

需要在继承WebSecurityConfigurerAdapter的类上加@EnableGlobalMethodSecurity注解,来判断用户对某个控制层的方法是否具有访问权限。classpath:/ classpath的根目录(java,resource都会打包到classpath里中。file:/config/当前项目的config目录下(位于idea的project files上一级目录)classpath:/config/:classpath的config目录。file:./当前项目的根目录。

2023-08-22 15:33:56 177

原创 Vue应用案例

2.axios.get(地址?查询字符串).then(function(response){},function(err){})3.axios.post(地址?数据对象).then(function(response){},function(err){})查询字符串格式:key=value&key2=value。数据对象:{key:value,key:value}起来,回调函数中的直接使用保持的this即可。已经改变,无法访问到data中数据。1.axios回调函数中的。

2023-07-26 09:43:54 233

原创 vue基础学习笔记

v-if是直接操作dom元素的,进行添加和删除。v-show是操作属性display的。v-show,v-if功能相同,都是根据表达式的真假,切换元素的显示和隐藏。形式:v-show=“true"后边是布尔值,可以为布尔值,变量,表达式。内容有html结构的会被解析为标签,v-text只会解析为文本。作用:设置元素的属性(比如src,title,class)数组长度的更新会同步到页面上,是响应式的。data和模板表单里的数据是对应的。可简写为:@事件名=“方法名”,绑定的数据表单元素的值。

2023-07-25 14:28:59 234

原创 mmdetection使用

打印模型配置python tools/misc/print_config.py configs/fast_rcnn/fast_rcnn_r50_fpn_1x_coco.py > liuconfig.txtparser.add_argument('img', help='Image file')parser.add_argument('-img', default="xx",help='Image file')单GPU训练CONFIG #配置文件路径WORKDIR #结果保存路径py

2022-07-22 14:33:12 805

原创 图片曝光的基础知识

曝光的三要素:快门光圈(F)感光度(ISO)相机是房子,快门是天窗,光圈控制天窗大小,感光度是房子的灯F16就是小光圈,F2.8就是大光圈。光圈的数值越大,光圈开的就越小,进的光就越少大光圈的话,可以拍暗光环境,可以拍虚化效果快门是窗户,考虑下雨时的场景快门速度越快,进入光线就越少,小于1/800s是快速的,1/800-1/125是中间的,1/125-1/3s是慢速的运动的物体,快门速度保持快速星空,慢的快门速度这三个参数都有范围,超出范围画面效果就很差,ISO>640画质受损(ISO50

2022-06-15 11:37:56 507 1

原创 SENet讲解

卷积就是在卷空间信息,可通道信息也大不相同,有的通道信息重要,而有点通道信息是无用的。对特征图U的每个通道应用全局平均池化层(avg),可以得到该特征通道的常数标量。然后经过两个FC层得到C个权重系数,用此系数衡量特征图U的每个通道的重要程度,用该系数对特征图U进行加权。Squeeze 就是avg操作,表征该特征通道的全局响应。Excitation就是使用两个全连接层w参数进行不同通道之间的相关性学习。sigmoid函数是输出为(0,1)的函数,最终输出需要概率值。resnet中r值取16添

2022-06-09 16:31:37 535

原创 小样本目标检测(FSOD)之FADI代码解析

对基于迁移学习的小样本目标检测FADI代码进行分析

2022-06-09 14:27:29 978

原创 Python error “ImportError: No module named“

python

2022-06-07 11:13:35 462

原创 离线(无网络/内网)安装mmdetection全过程

参考链接 https://blog.csdn.net/weixin_43408415/article/details/109243846https://segmentfault.com/a/1190000041521916离线安装包的网址https://pypi.org/conda create -n mmdection python=3.8 -y通过https://pytorch.org/get-started/previous-versions/查看版本对应conda install pyt

2022-04-24 11:58:15 2625

原创 元学习的环境配置

torch=0.3.1, python2.7, torchvision=0.2.0还是没有跑成功!!!方案一:python3以上的环境需要修改的内容过于多,没有修改完毕方案二:使用cuda8,python2.7,torch,torchvision都是官方版本(只使用python2.7的虚拟环境,其他的安装包都是通过第三方离线安装),因为Tesla t4要求cuda>9.0,因此失败。(Found GPU0 Tesla T4 which requires CUDA_VERSION >= 90

2022-01-20 19:32:31 1208

原创 Pascal VOC数据集介绍,内网环境下在上运行TFA代码(Frustratingly Simple Few-Shot Object Detection)

1.本地机子搭建环境,使用conda pack命令迁移到服务器2.数据集放置,VOC07+VOC12放在dataset下3.base基类训练(ps:Detectron2会有联网操作,注意使用本地链接替代)4.用tools/ckpt_surgery.py得到全模型的参数初始化,仅仅修改检测头的最后层,有两种方法,一个是随机初始化,一个是在新类上微调的5.微调整个训练流程PASCAL VOC: Base training --> random initialization --> fin

2022-01-04 20:48:24 2503 2

原创 pytorch torchvision cuda版本对应关系

如图

2022-01-03 16:59:52 1225 2

原创 《跟李沐读论文》之对比学习

方法第一阶段InstDisc:个体判别的代理任务InvaSpread:个体判别代理3.CPC:生成式任务4.CMC:多视角第二阶段5.MoCo: 可以看作InstDisc的升级6.SimClear:InvaSpread的进阶7.MoCo V2:8.SimClear V29.SwAV第一阶段InstDisc:个体判别的代理任务将单个图像看作一个类别,与自身看作相同类,与其他图像看作不同类。方法:使用一个memory bank存储大量的负样本。损失函数:NCELossInvaSpread:个体判别

2021-12-31 16:57:16 4402

原创 Momentum contrast for unsupervised visual representation learning(MoCo)简单讲解

1.前置知识:Q:对比学习如何确定图片相似或者不同?A:代理任务(Pretext task)人为的定义一些规则,说明哪些图片是相似的,哪些图像是不相似的代理任务(instance discrimination):从一张图片中经过(裁剪,数据增广等变化)得到两张处理过的图像,这两张图像是同一类的,数据集中的其他图片都不是同一类的(即imagenet中就有一百多万种类别)momentum: yt=m⋅yt−1+(1−m)⋅xty_{t} =m\cdot y_{t-1}+(1-m)\cdot x_{t}

2021-12-23 15:26:01 2313

原创 内网虚拟环境

1.在本地机器上安装VMware和Ubuntu操作环境(安装相同的操作系统,俺咋黄desktop即可,方便tools使用,图形页面使用root登录)2.在虚拟机上创建虚拟环境3.采用conda pack方法将环境打包,并通过本地机器传到内网机4.在内网虚拟环境/anaconda/envs创建虚拟环境目录https://zhuanlan.zhihu.com/p/87344422其他方法,对于某个安装包,可以选择本地下载后再上传安装...

2021-12-17 15:49:54 1067

原创 MPSR的要点讲解

MPSR的要点讲解

2021-12-14 20:01:28 3149

原创 元学习meta-learning

元学习就是learn to learn。深度学习,1.定义一个函数function(其中有一些可学习的参数)2.定义一个loss函数,3.梯度下降去得到最优的可学习参数。few-shot是目标,meta-learning是手段元学习的三部曲:整个框架:机器学习和元学习的区别:元学习的一些实例:1.初始化参数(方法有MAML(model-agnostic meta-learning),reptile2.optimizer(learning rate等,方法有梯度下降)3

2021-10-07 22:40:36 258

原创 few-shot learning

k-ways,n-shot,support set,query,training datasupport set,不在training data里(k是support set中的类别,n是每个类别的个数)query是想要查找的图片。1)meta-learning:learn to learn,最简单是计算相似度。Omniglot,50个不同的字母表,1623个不同的字符,每个字符由20个不同人书写,每个图片105105像素。Mini-imageNet 100类,每个类600样本,每个样本是8484

2021-09-29 20:56:21 90

原创 目标检测的边界框显示代码实现

数据集格式如下【标注的真差!!!Dataset/ArtificialLight/image-116.png, 845, 104, 104, 126, 929, 795, 104, 118, Dataset/ArtificialLight/image-117.png, 606, 250, 118, 127, 540, 93, 111, 106, 797, 167, 103, 121, Dataset/ArtificialLight/image-118.png, 751, 33, 132, 144, 30

2021-09-29 14:25:16 216

原创 剑指 Offer 07. 重建二叉树

// 递归法class Solution { private Map<Integer,Integer> indexMap = new HashMap<Integer,Integer>(); // 记录中序遍历的顺序 public TreeNode myBuildTree(int[] preorder, int[] inorder, int preLeft, int preRight, int inLeft, int inRight) { if (pr

2021-09-28 20:39:01 60

原创 剑指 Offer 06. 从尾到头打印链表

将数组看作一个栈class Solution { public int[] reversePrint(ListNode head) { int[] t = new int[10000]; int i = 0; while (head != null) { t[i++] = head.val; head = head.next; } int[] r = new int[.

2021-09-26 21:38:27 54

原创 剑指 Offer 05. 替换空格

class Solution { public String replaceSpace(String s) { StringBuilder tmp = new StringBuilder(); for (int i = 0; i < s.length(); i++) { if (s.charAt(i) == ' ') { tmp.append("%20"); } else {

2021-09-26 20:55:13 81

原创 剑指 Offer 04. 二维数组中的查找

// 暴力破解class Solution { public boolean findNumberIn2DArray(int[][] matrix, int target) { for (int i = 0; i < matrix.length; i++) { for (int j = 0; j < matrix[i].length; j++) { if (matrix[i][j] == target) {

2021-09-25 15:38:12 59

原创 剑指offer-03(leetcode)

// 哈希字典法class Solution { public int findRepeatNumber(int[] nums) { int[] tmp = new int[nums.length]; for (int i = 0; i < tmp.length; i++) { tmp[i] = -1; } for (int i = 0; i < nums.length; i++) {

2021-09-25 12:53:05 40

原创 注意力机制之注意力分数

目录注意力分数扩展到高维加性注意力scaled 点积注意力总结代码注意力分数注意力分数和注意力权重的区别:扩展到高维这里,q的数量和key-value对的数量可以不一致。q,k,v的维度都可以不同,最后得到的结果和v的维度一样。关键在于注意力分数a的设置。加性注意力h是超参数。Wk是从k映射到h维,Wq是从q映射到h。q,k,v这三个向量的维度可以不一样scaled 点积注意力q,k都是相同的维度,这里除以d还是为了减少输入长度的影响(类似于归一化)有多个query,这里,每一行表示

2021-09-16 09:07:57 4126

原创 注意力机制(一)

目录背景知识非参注意力池化层参数化的注意力机制总结背景知识不随意线索:红色杯子,就是死的东西,不是想要的那些东西随意线索:想读书,就是想要获得的那些东西卷积,全连接,池化通常都只考虑不随意的线索注意力机制是可以显示的考虑到随意线索随意线索被称之为查询(query)(就是想要干嘛,比如想读书,比如目标检测就是想要得到那几个框)每个输入是一个值(value)和不随意线索(key)的对(pair)(不随意线索是环境之类的内容,如报纸,咖啡杯,key和value可以一样也可不同。比如key是咖啡杯

2021-09-15 14:53:13 361

原创 deformable_detr代码阅读一位置编码position encoding

位置编码的讲解:【1】https://www.zhihu.com/question/347678607/answer/864217252【2】https://zhuanlan.zhihu.com/p/106644634采用正余弦函数,是根据归纳偏置和经验做出的选择重点:位置编码的需求:1. 需要体现同一个单词在不同位置的区别;2. 需要体现一定的先后次序关,并且一定范围内的编码差异不应该依赖于文本长度,具有一定不变性。1.对长为T的文本,可以编码为pos=0,1,...,T−1pos=0,1,

2021-09-07 23:01:12 1947

原创 deformable_detr代码的运行、训练过程

deformable_detr代码的运行1.coco数据集可以采用软链接的形式2.文件权限的问题chmod3.关于MultiScaleDeformableAttention模块不存在,参考issue10 @JarintotionDin 的回答I met this problem too, and I solved it by changing 'CUDA_HOME=CUDA_HOME:/usr/local/cuda-11.0' to 'export CUDA_HOME=/usr/local/cud

2021-09-07 14:44:02 4957 19

原创 ln -s软链接的使用

# 这里,datasets下coco不用事先创建cd <YOLOX_HOME>ln -s /path/to/your/COCO ./datasets/COCOln -s 软链接链接: https://www.cnblogs.com/yunquan/p/5280849.html.其他关于软连接和硬链接的使用,随意百度

2021-09-07 13:58:48 472

原创 git使用以及从master切换main

先创建一个私有/公开的仓库git使用:https://www.huaweicloud.com/articles/a309afc2a9bcf498763ab43770993587.html从master切换main:https://blog.csdn.net/qq_42585582/article/details/109006783

2021-09-06 22:28:57 416 1

原创 coco数据集

目录结构├── coco2017: 数据集根目录 ├── train2017: 所有训练图像文件夹(118287张) ├── val2017: 所有验证图像文件夹(5000张) └── annotations: 对应标注文件夹 ├── instances_train2017.json: 对应目标检测、分割任务的训练集标注文件 ├── instances_val2017.json: 对应目标检测、分割任务的验证集标注文件 ├

2021-09-02 16:51:19 246

原创 分配算法之匈牙利算法

参考链接:https://brc2.com/the-algorithm-workshop/n个工人n份工作,一一匹配,每份工作只能被一个工作完成,每个工人只能完成一份工作,暴力破解的话,复杂度是n!。一个n*n的有权值矩阵,1.找到每行的最小值,每行的元素减去这个这个最小值2.找到每列的最小值,每列的元素减去这个这个最小值重复以下3个步骤(3-5):3.用最少的行线和列线去覆盖全部的零4.判断是否满足退出循环条件(若步骤3中线的数量等于行或者列元素的个数,则退出,否则继续)5.找到矩阵中不在

2021-08-31 17:37:51 189

原创 yolox全解析

head头的三个分支输出为202085(stride=32),404085(stride=16),808085(stride=8)。因此,预测框的大小分别为3232,1616,8*8。标签分配:挑选正样本锚框,两个步骤:初步筛选,SimOTA。初步筛选有两个步骤:根据中心点筛选,根据目标框筛选。SimOTA有四个步骤:1.初筛正样本信息提取2.Loss函数计算3.cost计算4.SimOTA...

2021-08-31 14:31:22 1482

原创 yolox-backbone详解之CSPLayer(含代码

densenetdensenet评价优点:1.更强的梯度流动2.减少了参数数量3.保存了低维度的特征缺点:进行了多次concat操作,导致显存占用过大cspdensenet评价:优点:1.加强CNN的学习能力2.消除计算瓶颈3.降低内存成本在此进行对比,densenet:64*64*1*1+64*64*3*3+64*64*1*1=45056cspdensenet:(64*32*1*1)*2+32*32*1*1+32*32*3*3+64*64*1*1=18432所以,可见参数量大

2021-08-26 17:25:27 5516

原创 yolox-backbone详解之Focus(含代码

目录一、CSPDarknet1.Focus2.CSPNet一、CSPDarknet1.FocusFocus:下采样效果,关于facus的理解https://blog.csdn.net/qq_39056987/article/details/112712817原issue的链接https://github.com/ultralytics/yolov5/discussions/3181m1 = Focus(3, 64, 3) # YOLOv5 single layerm2 = nn.Sequent

2021-08-26 10:06:34 1401

原创 参数量的计算(以resnet50为例,bn层的参数

目录模型参数量的计算一模型参数量的计算二resnet50的网络结构:模型参数量的计算一print("resnet50 have {} paramerters in total".format(sum(x.numel() for x in resnet50.parameters())))模型参数量的计算二num_params = 0for param in netG.parameters(): num_params += param.numel()print(num_params / 1e6)

2021-08-16 22:51:53 8477

原创 FLOPs和使用fvcore计算FLOPs

FLOPS:(floating point operations per second)浮点运算次数每秒,是计算速度,是衡量硬件性能的指标。FLOPs:(floating point operations)小写的s表复数的意思,是计算量,用来衡量算法/模型的复杂度。""" Provides access to per-submodule model flop count obtained by tracing a model with pytorch's jit tracing func

2021-08-06 18:41:52 1226

原创 目标检测-SSD代码详解

目录读取数据集损失函数和评价函数网络模型图%matplotlib inlineimport torchimport torchvisionfrom torch import nnfrom torch.nn import functional as Ffrom d2l import torch as d2l#对每个锚框进行类别预测def cls_predictor(num_inputs, num_anchors, num_classes): return nn.Conv2d(num_

2021-08-02 11:09:37 1424

原创 感受野的计算

感受野是输出层的一个像素单元对应之前的输入层的区域大小。原始55输入图片,卷积核33,padding为1,strides为2.第一次卷积第二次卷积下图就是一个黄色的11感受野是绿色的77区域。有两个公式:计算输出的宽高:out = (in + 2p - k)/s +1计算感受野:F(i) = (F(i+1) -1) * stride + ksize (倒推的,F(i+1)是后面的特征层)...

2021-07-30 19:33:41 151

原创 session,token的简单用法

web开发的话,http是无状态的协议,session是保存在服务器端的,cookie是保存在浏览器端的。java中HTTP的session对象用javax.servlet.http.HttpSession表示。HttpServletRequest.getSession(true)产生session对象,通过session.getId()得到jsessionid。tomcat底层维护一个ConcurrentHashMap,其键是jessionId,其值是session。session是存储在服务器

2021-07-30 16:40:25 202

空空如也

空空如也

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

TA关注的人

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