自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【总结】一些常见的计算机视觉和深度学习问答,面试可能会问到。

BN的优点是网上谈过无数次的问题,不过我还是写了一篇博客具体介绍。博客地址再说优缺点首先关于BN,BN虽然很伟大,但是并不是没有缺点的,比如当我们的模型非常大的时候我们只能设置比较小的Batch Size,毕竟内存就那么多。而GN,在每个特征图BxHxWxC中,它将channel分成多个组,在每组内计算均值和方差,GN的计算与BatchSize无关,在Batch SIze小的时候带来的精度远超BN,而适当Batch Size的时候,BN和GN效果相当。

2023-03-14 01:44:41 519

原创 深度学习术语Neck,Head,Embedding,One&&Two stages Detector等等

head,embedding,gap

2022-08-22 11:19:09 1991 1

原创 yolov1-yolov4

由于一幅图中大部分网格中是没有物体的,这些网格中的边界框的 confidence 置为 0,相比于有物体的网格,这些不包含物体的网格更多,对梯度更新的贡献更大,会导致网络不稳定。我们先计算每个GroundTruth (GT) 的中心点,确定GT的中心落在哪一个网格,那么这个GT box就由该网格负责预测(回归),网格的类就是GT的类,具体由网格中两个预测框中的哪一个预测框来回归GT box,由预测框和GT box之间的IOU决定,IoU更大的预测框负责回归该GT box。

2021-12-23 19:47:05 2365

原创 GoogleNet和Inception模块

在研究yolo v1的时候碰到的,虽然都是过时的东西,还是记录一下下面是GoogleNET的结构。googlenet里面有一个特殊的结构,就是四个操作并行的层。这个层叫做inception模块。可以看一下这里的实现:import torchfrom torch import nn# 定义一个卷积加一个 relu 激活函数和一个 batchnorm 作为一个基本的层结构def conv_relu(in_channel, out_channel, kernel, stride=1, paddi

2021-12-14 17:53:57 2378

原创 YoloV1原理和代码解读

检测是分类模型的升级,只是要分出前景和背景的类别。我们从分类模型开始说:对于输入图片,我们一般用一个矩阵表示。对于输出结果,我们一般用一个one-hot vector表示:[0,0,1,0,0,0,0,0,0,0] 。哪一维是1,就代表图片属于哪一类。所以,在设计神经网络时,结构大致应该长这样:img–cbrp–cbrp–cbrp–cbrp–fc–fc[10] ,一共10个类cbrp是conv-bn-relu-pooling由于输入要是one-hot形式,所以最后我们设计了2个fc层(ful

2021-11-09 18:52:57 1493

原创 leetcode 33、34、35 各种条件下的二分查找小结 Python

二分查找使用有两个条件表必须有序(增或减,可包含重复值)表必须为顺序存储结构用起来的时候情况很多,但是都可以根据一个基本架构来稍微改变条件def bs0(nums,target): l,r=0,len(nums)-1 while(l<=r): m=l+((r-l)/2)>>2 #话说之前这里掉了个括号。。。 if(...

2018-05-16 18:22:36 228

原创 【BEV】3D视觉 PRELIMINARY

由于图像坐标系和像素坐标系处于同一平面,故两者之间的差异在于坐标原点的位置和单位。像素坐标系的原点在图像坐标系的左上角,同时像素坐标系的单位为像素。一根柱子从BEV平面升起,柱子内的一个三维点被投影到相机视图上。投影过程涉及到世界World、相机Camera、图像Image和像素Pixel坐标系之间的转换。从世界坐标到相机坐标的转换是一种刚性变换,只需要平移和旋转(更详细的可以看上面的博客)。给定P的世界坐标和相机的内在参数和外在参数,可以得到。分别对应于柱上的三维点和摄像机视图上投影的2D点。

2023-08-15 17:36:17 230

原创 【BEV Camera-based】View Transformations 论文之FB-BEV,BEV Representation from Forward-Backward。

为了解决由2D-3D投影产生的稀疏BEV表示的问题,我们利用3D-2D投影方法从之前的3D-2D投影中细化稀疏区域。然而,正如我们上面所介绍的,由于缺乏深度引导,3D-2D投影的投影容易出现假阳性特征。另外,对于目标检测任务,我们只关心前景对象,所以我们在使用3D-2D投影时,只关注BEV平面的前景区域,这样可以减少背景部分的false positive,减少计算负担。A点的预测深度分布为α。值得注意的是,对于任何3D点(λx,λy,λz),其中λ∈R+,它们在2D图像上共享相同的投影点(u,v)。

2023-08-15 15:58:19 760 1

原创 【BEV Review】论文 Delving into the Devils of Bird’s-eye-view 2022-9 笔记

在仅使用相机的三维感知的初期,主要的焦点是如何从2D感知空间预测三维物体的位置。从学术的角度来看,设计一个基于相机的pipeline,使其性能优于激光雷达的本质,是更好地理解从二维视角输入到三维几何输出的视图转换过程。在视图转换的背景下,OFTNet 首先引入了3D-2D方法,即从3D到2D的特征投影,它将2D特征投影到体素空间(3D空间),首先引入了2D-3D方法,预测二维特征上每个网格的深度分布,然后通过相应的深度将每个网格的二维特征“提升”到体素空间,并采用基于lidar激光雷达的方法执行下游任务。

2023-08-14 17:01:28 403

转载 ubuntu安装NV驱动碰到的问题

主要是卸载Nouveau之后,重启碰到黑屏问题。转载文章见,按照步骤基本复现和解决了问题。

2023-07-10 19:22:26 133

原创 在linux上,以root用户打开并且运行vscode

这是我目前的解决办法,还没看到其他的自动保存的方法。最好的办法是把要运行的文件夹设置权限为。

2023-06-20 15:59:14 498

原创 windows powershell 下使用【docker cuda choco vim conda ......】

choco是我从ChatGPT那里知道的,具体的作用似乎是用来替代apt或者yum,首先用管理员权限打开powershell,方法是在搜索中搜索powershell然后右键选择管理员打开。主要是第一次跑很成功,按照网上的教程安装wsl即可,第二次跑的时候,我用–runtime=nvidia的时候一直出错,然后一直想去改daemon.json。不同于linux的source,powershell的生效方法是,用管理员身份重新打开一个powershell,上述安装choco的命令参考。会自动打开下面这个文件。

2023-05-24 14:31:24 861

原创 半监督目标检测

针对 unlabeled samples,首先将图像水平翻转,然后分别送入网络当中,得到对应的 Feature map,由于两张翻转的图像的空间位置是可以一一对应的,因此可以在对应的位置计算一致性损失。一开始训练用标注数据(burn-in),联合训练包括两步:固定teacher产生伪标注,用以训练student,而基于exponential moving average (EMA),学习的知识迁移给渐渐进步的teacher。强增强线学生模型的无标签分类和回归分支的伪标签是不一样的。

2023-04-26 01:04:27 860

原创 Pytorch剪枝api测试和结果

Pytorch 官方给出的prune接口。

2023-04-25 20:55:39 1155

原创 【LeetCode 图论 一】初探有向图Directed Graph

由于搜索是从随机的点开始的,我们将没有相邻节点的点入栈之后,再回溯到初始节点,将它入栈,但是后面的搜索也可能会碰到它。所以要给已经搜索的节点打上标签。

2023-04-17 12:42:40 572

原创 用pytorch实现GhostNet module

Ghost Module有许多可调整的超参数,包括输入通道数,输出通道数,内核大小,ratio参数,dw_size参数和stride参数。cheap_operation是后续的卷积层,它在depthwise卷积之后通过逐点卷积将通道数扩展到output_channels。最后,在输出之前,我们将主要的卷积层和廉价操作的输出级联在一起。GhostNet是一种轻量级的深度卷积神经网络,它使用了一种称为“ghost模块”的新型模块,可以在保持高准确度的同时,大大降低网络参数量。

2023-04-14 10:39:51 275

原创 Python二分模版和bisect函数 LeetCode

所以总结一下,这里写的b1(), b2(), b3()都是bisect.bisect_left()的具体实现,只是分别用的左闭右开,闭区间和开区间三种不同的思想。那接下来我们考虑一下怎么实现bisect.bisect_right()函数。而如果target存在于ls中,我们想找它最后一次出现的位置。其实bisect.bisect_right的视线方式可以用。

2023-04-13 19:28:44 78

原创 DFS和回溯。LeetCode200岛屿数目;LeetCode46全排列;LeetCode17电话号码的字母组合;牛客HJ43迷宫问题

我个人感觉回溯就是DFS的一种应用。DFS有4个比较重要的点,或者说4个步骤而回溯更强调搜过之后恢复状态,个人认为,很多排列组合的场景都可以用回溯的思想搜索出来。

2023-04-11 19:43:13 82

原创 Cross Entropy Loss,Center Loss,CosFace Loss ,ArcFace Loss 理解

CrossEntropyLoss,CenterLoss,CosFaceLoss,ArcFaceLoss

2023-04-03 15:40:57 1121

原创 FasterRcnn,Yolo的 Label Assignment机制,以及ATSS,OTA

一般把anchor到gt之间如何匹配的方法称为label assignment,也就是给预设的anchor打上正负样本等标签,方便我们后续进一步回归。其实RPN和Yolo有各自的label assignment方法,在Faster rcnn,yolo,RetinaNet中,基本都是根据anchor和gt的iou,然后定义阈值去进行label的分配。例如,在Faster rcnn 的RPN阶段,假设backbone得到的feature map是HW,那么一共会有H。

2023-03-27 19:56:30 915

原创 怎么防止人脸识别被二维图片欺骗?

人脸识别防止被二维图片欺骗

2023-03-26 17:48:36 520

原创 为什么Transformer要用Layer Normalization

相比之下,Layer Normalization对每个样本单独计算均值和方差,因此不需要考虑不同位置之间的相关性,也不会破坏向量的位置信息,因此更适合Transformer。这是因为每一层的输入都依赖于上一层的输出,而上一层输出的分布会随着训练的进行而发生变化,从而导致每一层的输入分布也发生变化,这种现象称为内部协变量位移。但是在Transformer中,由于每个位置的输入都是一个高维向量,而批归一化会破坏向量的位置信息,因此不适合Transformer。

2023-03-26 14:52:57 1148

原创 C++一些常见问题

c++ 常见问题

2023-03-21 21:00:48 675

原创 FCN全卷积网络和Deconv转置卷积原理描述

转置卷积deconv

2023-03-21 15:25:04 555

原创 【二】详解多目标跟踪SORT/DeepSort算法,卡尔曼滤波和匈牙利算法

先解读SORT算法:Simple online and realtime tracking论文地址 https://arxiv.org/abs/1602.00763代码地址下面流程图以车辆跟踪为例子实际就是多个的卡尔曼滤波KalmanBoxTracker自定义类的实例对象, 组成的列表。每个目标检测框都有对应的一个卡尔曼滤波器(KalmanBoxTracker实例对象),KalmanBoxTracker类中的实例属性专门负责记录其对应的一个目标框中各种统计参数,

2023-03-14 01:40:48 1544

原创 YOLOV4之 Cross Stage Partial,<CSP Darknet53>

CSP Darknet

2023-03-14 01:37:59 817

转载 深度学习中的skip操作

深度学习skip操作

2023-03-12 22:33:49 114

原创 yolov1-v4

yolo

2023-03-09 13:15:20 268

原创 Nvidia Jetson自带C++版本的OpenCV使用

opencv jetson c++ gcc g++

2023-03-08 13:13:28 900 1

原创 目标跟踪中的卡尔曼滤波和匈牙利算法解读。

SORT跟踪算法

2023-03-07 11:29:38 1527 1

原创 numpy中的max,argmax,sort,argsort,

np.max np.argmax np.sort np.argsort

2023-02-28 10:44:06 133

原创 python中的sort()和sorted

python中的sort()和sorted

2023-02-27 19:59:55 204

原创 【中级】用nn.Module,nn.Sequential,nn.Functional 构建网络

torch,named_children,named_module

2023-01-28 19:44:20 469

原创 torch和numpy的基本操作

torch numpy 操作

2023-01-28 15:57:21 111

原创 【初级】用nn.Module, nn.Sequential构造深度学习网络

nn.Sequential , nn.Module

2023-01-28 15:22:18 1180

原创 Python的super函数解读

Python的super函数解读

2023-01-27 22:22:22 85

原创 YOLO系列的Backbone改进历史

深度学习yolo

2022-08-22 11:00:27 1565

原创 torch.size()和tensor.shape的区别

size shape

2022-08-21 12:17:07 271

原创 Pytorch中常用函数

pytorch torch.unsqueeze()

2022-08-21 12:12:44 557

原创 LPRNet, 车牌识别网络

LPRNet车牌识别网络

2022-08-01 18:54:55 7262 1

空空如也

空空如也

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

TA关注的人

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