![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
图像识别与目标检测
文章平均质量分 61
写代码_不错哦
这个作者很懒,什么都没留下…
展开
-
参加江大白手把手教你-----AidLux智慧安防AI训练营
目标跟踪原创 2022-10-29 00:10:59 · 935 阅读 · 0 评论 -
混合精度训练优势
混合精度训练原创 2022-10-26 18:35:09 · 130 阅读 · 0 评论 -
windows安装openvino
windows、openvino原创 2022-10-20 09:38:37 · 475 阅读 · 0 评论 -
SGD 自己理解
SGD原创 2022-10-14 15:31:42 · 65 阅读 · 0 评论 -
local_rank,rank,node等理解
node,rank,local_rank原创 2022-10-14 13:31:21 · 5790 阅读 · 0 评论 -
交叉熵 自我理解
cross entropy原创 2022-10-13 17:26:44 · 119 阅读 · 0 评论 -
loss与optimizer的关联
loss,optimizer原创 2022-09-22 20:33:50 · 315 阅读 · 0 评论 -
windows下安装yolox报错
CSDN现在发个博客流程真烦原创 2022-09-01 20:34:59 · 196 阅读 · 0 评论 -
自己对 RepVGG 的一点理解
RepVGG原创 2022-08-10 20:17:40 · 1250 阅读 · 2 评论 -
RetainNet Focal Loss 小记
1.作者引出Focal Loss 是发现在one stage 比 two stage accuracy要低的原因是 :"the extreme foreground-background class imbalance encountered during training of dense detectors is the central cause." 作者解决这个的方法是在标准 cross entropy loss上加权重,降低很好分的类别权重。作者说:Intuitively, th.原创 2022-05-18 19:57:44 · 265 阅读 · 0 评论 -
损失函数与优化器的关联
import time# 在 GPU 上训练注意需要将网络和数据放到 GPU 上net.to(device)criterion = nn.CrossEntropyLoss()optimizer = optim.SGD(net.parameters(), lr=0.001, momentum=0.9)optimizer.zero_grad()outputs = net(inputs)loss = criterion(outputs, labels)loss.backward()...原创 2022-04-05 17:02:21 · 3349 阅读 · 0 评论 -
torch.gater()方法自己理解
import torch as ta = t.arange(0, 16).view(4, 4)print(a)index = t.LongTensor([[0,2,2,3],[1,1,0,3]])b=a.gather(0, index)print('-----------------------')print(b)b=a.gather(1, index)print('........................')print(b)刚看到gather这个方法,这里面比较懵.原创 2022-03-20 16:09:00 · 417 阅读 · 0 评论 -
Cascade Rcnn 的简单理解
接触到Cascade Rcnn 是因为学习别人的一个比赛时看到的,处于好奇,就很想知道这个Cascade Rcnn是一个啥。论文地址:https://arxiv.org/abs/1712.00726原理可以用论文中的这个图片来说明:Figure 3. The architectures of different frameworks. “I” is input image, “conv” backbone convolutions, “pool” region-wise feature e.原创 2022-03-13 19:11:34 · 8496 阅读 · 0 评论 -
MultiScaleRoIAlign
这几天在看一个代码,看到这个方法,官方给的代码样例: >>> m = torchvision.ops.MultiScaleRoIAlign(['feat1', 'feat3'], 3, 2) >>> i = OrderedDict() >>> i['feat1'] = torch.rand(1, 5, 64, 64) >>> i['feat2'] = torch.ran原创 2022-03-10 21:11:27 · 2624 阅读 · 3 评论 -
对 IntermediateLayerGetter 理解
初看这个IntermediateLayerGetter名字,(调节中间层获取,自己翻译的),不是很能理解,只有看它的解释再结合给的样例才能理解。理解:这个类就是获取一个Model中你指定要获取的哪些层的输出,然后这些层的输出会在一个有序的字典中,字典中的key就是刚开始初始化这个类传进去的,value就是feature经过指定需要层的输出。这是源码中的样例:import torchvisionimport torchm = torchvision.models.resnet18(pretr原创 2022-02-26 11:47:22 · 3937 阅读 · 1 评论 -
yolov5 两个比较好的注释
在网上看到两位对yolov5的注释,感觉蛮好的,网址如下:https://github.com/SCAU-HuKai/yolov5-5.x-annotationshttps://github.com/SCAU-HuKai/yolov5-5.x-annotationsGitHub - Laughing-q/yolov5_annotations at 790e7bc1bbd62ae14e34d1db79626820b86d8ea8Contribute to Laughing-q/yolov5_annotatio原创 2021-12-27 14:46:18 · 2080 阅读 · 0 评论 -
关于DistributedSampler理解
sampler = torch.utils.data.distributed.DistributedSampler(dataset) if rank != -1 else None原创 2021-11-23 09:06:53 · 4496 阅读 · 2 评论 -
模型定义及参数更新理解
参考:https://blog.csdn.net/zisuina_2/article/details/103258573这个作者的demo让我理解更深了,一般都是先定义模型,然后把模型的参数放到梯度更新优化器,然后这个梯度更新优化器是有学习率的,接着把这个梯度更新优化器放到调整学习率的优化器中,这样在进行反向梯度更新时,会更新梯度优化器中模型的参数,然后在设定的条件时又会调整学习率的优化器中的学习率的值。如下代码:model = AlexNet(num_classes=2) # 定义模型optimi原创 2021-11-17 10:59:01 · 1535 阅读 · 0 评论 -
pytorch torch.cat((A, B), 2)
参考:Pytorch中的torch.cat()函数_荷叶田田-CSDN博客_python torch.cat这个作者讲的还不错,但是我补充点自己的理解:1.torch.cat这个在进行拼接的时候,是按照对应传入的dim(维度)进行拼接,在按照对应dim进行拼接时,其余的维度一定要数量一致,且对应数值一致,如下:A = torch.ones(1,1,3)B = torch.ones(1,2,3)temp = torch.cat((A, B), 2) 此时按照dim=2进行拼接,那么dim原创 2021-11-15 15:49:35 · 1745 阅读 · 0 评论 -
关于Module中参数个数困惑理解
昨天一直很费解就是如下的参数:class Conv(nn.Module): # Standard convolution def __init__(self, c1, c2, k=1, s=1, p=None, g=1, act=True): # ch_in, ch_out, kernel, stride, padding, groups super(Conv, self).__init__() self.conv = nn.Conv2d(c1, .原创 2021-11-12 18:38:12 · 832 阅读 · 0 评论 -
pytorch中world,rank理解
group:进程组。默认情况下,只有一个组,一个job即为一个组,也即一个world,当我们使用多进程的时候,一个group就有了多个world。当需要进行更加精细的通信时,可以通过new_group接口,使用 word 的子集,创建新组,用于集体通信等。 world:全局进程个数。 rank:表示进程序号,用于进程间通信,可以用于表示进程的优先级。我们一般设置rank=0的主机为 master 节点。 local_rank:进程内 GPU 编号,非显式参数,由torch.dis...原创 2021-10-15 10:25:23 · 4099 阅读 · 0 评论 -
非极大值抑制 non-max-suppresion
所谓非极大值抑制,就是把不是最大的值给剔除掉。在深度学习之目标检测中,当模型预测一个物体时,会有很多框,这个时候,我们一般会选取置信度最大的作为输出。同时,把置信度小的与这个置信度最大的 IOU 大于一定阈值的给剔除掉,IOU大于一定阈值,就是两者重合度比较大了。IOU的计算可以参照:tensor与list版本的iou比较_shenjianhua005的专栏-CSDN博客非极大值的代码,我是参照:Machine-Learning-Collection/ML/Pytorch/object_原创 2021-09-16 20:20:04 · 410 阅读 · 0 评论 -
标注转yolo格式
# !/usr/bin/env python# -*- coding: utf-8 -*-import xml.etree.ElementTree as ETimport pickleimport osfrom os import listdir, getcwdfrom imutils import pathsimport cv2from tqdm import tqdmclasses = []def raad_voc_names(txt_path): with o.原创 2021-08-30 21:31:09 · 171 阅读 · 0 评论 -
faster-rcnn的9种anchor box的坐标怎么生成的?
最近在看 逐字理解目标检测simple-faster-rcnn-pytorch-master代码(二)作者讲的蛮仔细的,但是在看到 generate_anchor_base()方法时,我就有点懵了。def generate_anchor_base(base_size=16, ratios=[0.5, 1, 2], # anchor_scales=[8, 16, 32]): #对特征图features以基准长度为16、选择合适的ratios和sca.原创 2021-04-28 22:46:50 · 1109 阅读 · 0 评论 -
YOLOV1 损失函数计算 解读
本文是认真研读loss.py后自己的理解,如有理解错了,还请指正,感谢~文中指的cell就是指划分的小单元格完整github:https://github.com/motokimura/yolo_v1_pytorch.git损失函数定义:https://towardsdatascience.com/yolov1-you-only-look-once-object-detection-e1f3ffec8a89Loss主要包括(x,y),(w,h) ,c 类别,四个loss,其中又分为包含o原创 2021-02-03 20:59:36 · 1714 阅读 · 1 评论 -
Faster-RCNN理解
本文所看的GitHub地址为:simple-faster-rcnn-pytorch参考了些博客,主要为:原创 2021-05-31 13:15:36 · 206 阅读 · 0 评论 -
SSD: Single Shot MultiBox Detection 自己的一些理解
SSD: Single Shot MultiBox Detection论文翻译Pytorch 代码根据这个人的文章,可以把 SSD 代码跑起来:https://zhuanlan.zhihu.com/p/92154612https://blog.csdn.net/qq_30815237/article/details/90292639SSD算法是一种直接预测目标类别和bounding box的多目标检测算法。针对不同大小的目标检测,传统的做法是先将图像转换成不同大小(图像金字塔原创 2021-07-03 18:06:21 · 211 阅读 · 1 评论 -
YoloV2自己的理解及总结
YOLOV2论文地址:pdf论文翻译:翻译网上找的Pytorch版本:https://github.com/tztztztztz/yolov2.pytorch按照论文的排版我来写下我的理解,如果不对地方,还请大佬们指出,共同进步,不甚感激~一. Better这个better里面包含了:1.Batch Normalization每层卷积之后使用 Batch Norm,丢弃了dropout和别的正则化。Batch Norm使得卷积后的数据都分布在0-1,这也使的数据不会分布太原创 2021-08-06 18:49:22 · 657 阅读 · 0 评论