摘要:
1. 下载并安装PCL 1.12.1 到https://github.com/PointCloudLibrary/pcl/releases下载下面两个文件: 安装PCL时,选择添加路径到Path.解压pcl-1.12.1-pdb-msvc2019-win64.zip,复制.pdb文件到C:\Prog 阅读全文
摘要:
在Ubuntu下安装PyTorch遇到了下面的错误: The following packages are causing the inconsistency 下面是一长串的包名,有人说需要手动把这些包删除了,但是包太多,一个一个删除太费时间,而且有些包根本删不掉,最好的办法就是新建一个Conda环 阅读全文
摘要:
Focal loss在文件.\mmdet\models\losses\focal_loss.py实现,代码如下: import torch import torch.nn as nn import torch.nn.functional as F from mmcv.ops import sigmo 阅读全文
摘要:
现有的目标检测器对小目标的检测效果不好,针对这种情况,作者提出了Feedback-driven Data Provider,根据训练过程中小对象对损失值的的贡献率,提供小对象训练数据的方法.Stitcher就是把多张图片(一般是4张)缩小后拼接在一起,从而产生更多小对象. 作者以Faster RCN 阅读全文
摘要:
现有的模型存在两个问题: (1)classification score和quality score(包括IoU和centerness score)训练和推理时不一致.训练的时候这两个score是分别训练的,推理的时候将这两个score相乘作为NMS的依据,如下图(a)所示. 这有可能造成一些错误, 阅读全文
摘要:
ATSS(Adaptive Training Sample Selection)是一种新的样本选择方法,和传统的设置一个固定的IOU阈值不同,ATSS对每一个GT Box,根据它的统计信息计算出一个IOU阈值.具体的算法如下图所示: 对每一个GT box,在特征金字塔FPN的每一层,选择距离中心最近 阅读全文
摘要:
BBoxHead类继承自nn.Module类,定义在\mmdet\models\roi_heads\bbox_heads\bbox_head.py中,其作用是输出ROI Pooling的分类和回归值. import torch import torch.nn as nn import torch.n 阅读全文
摘要:
ConvFCBBoxHead类定义在\mmdet\models\roi_heads\bbox_heads\convfc_bbox_head.py中,其作用是对共享特征层进行卷积和全连接操作,然后在forward到BBoxHead类中,而且也继承自BBoxHead类.convfc_bbox_head. 阅读全文
摘要:
SingleRoIExtractor类定义在\mmdet\models\roi_heads\roi_extractors\single_level_roi_extractor.py中,其作用是对ROI特征层进行特征提取,继承自BaseRoIExtractor类. import torch from 阅读全文
摘要:
用MMDetection训练过程中,全连接层(Fully Connected Layers,FC)出现nan错误,但是全连接层只是线性组合,而且数值也不大,也没有计算损失函数,怎么可能出现nan错误? 经过研究发现,原来是显存不足造成的,由于显存不足,有些tensor没有了,就造成了nan错误,进行 阅读全文
摘要:
TwoStageDetector类定义在\mmdet\models\detectors\tew_stage.py中: import torch import torch.nn as nn # from mmdet.core import bbox2result, bbox2roi, build_as 阅读全文
摘要:
RPNHead继承了AnchorHead(AnchorHead定义在mmdetection/mmdet/models/dense_heads/anchor_head.py文件里面),前面介绍的forward_single(),_get_bboxes_single(),loss()等函数都是重载的An 阅读全文
摘要:
运行时出现下面的错误: Traceback (most recent call last): File "D:/Projects/project_name/tools/train.py", line 178, in <module> main() File "D:/Projects/project_ 阅读全文
摘要:
运行时出现下面的错误: C:/cb/pytorch_1000000000000/work/aten/src/ATen/native/cuda/IndexKernel.cu:142: block: [0,0,0], thread: [17,0,0] Assertion `index >= -sizes 阅读全文
摘要:
Faster RCNN配置文件faster_rcnn_r50_fpn.py中的 backbone=dict( type='ResNet', depth=50, num_stages=4, out_indices=(0, 1, 2, 3), frozen_stages=1, norm_cfg=dict 阅读全文
摘要:
Faster RCNN配置文件faster_rcnn_r50_fpn.py中的 type='FasterRCNN', 说明了这是一个Faster RCNN模型,对应的是mmdetection/mmdet/models/detectors/faster_rcnn.py文件,主要内容如下: from . 阅读全文
摘要:
faster_rcnn_r50_fpn_1x_coco.py文件位于目录mmdetection/configs/faster_rcnn/下面,主要内容如下: _base_ = [ '../_base_/models/faster_rcnn_r50_fpn.py', '../_base_/datase 阅读全文
摘要:
git clone的项目,用PyCharm打开以后,点击History,出来的全部是GitHub上的提交记录,这时如果点击提交,也是提交到GitHub. 要取消GitHub提交,点击File->Settings->Version Control,删除项目的Git就可以了. 阅读全文
摘要:
D2Det是一种two-stage算法,类似于Faster-RCNN,在Faster-RCNN的基础上进行了一些改进,总体框架如下图(a)所示: 和Faster-RCNN相比,改进的地方在于: 1. Dense local regression 如上图(b)所示,Faster-RCNN是对RPN提出 阅读全文
摘要:
MMDetection是一个基于Pytorch实现的深度学习和目标检测代码库,包含了Faster-RCNN,YOLO,SSD等主流的目标检测算法代码和已经训练好的模型,方便我们进行目标检测算法的研究.MMDetection的安装步骤如下: 1. 创建一个Conda环境并Activate,很简单,就不 阅读全文
摘要:
RefineDet可以看成是SSD,RPN,FPN算法的结合,其主要思想是:Faster-RCNN等two-stage算法,对box进行两次回归,因而精度高,但是速度慢;YOLO等one-stage算法,对box只进行一个回归,速度快,但是精度低.RefineDet将两者结合起来,对box进行两次回 阅读全文
摘要:
Hyperband算法的伪代码如下: R是单个超参数组合能够分配的最大资源预算,如1个epoch就是1个预算,R=81,就表示81个epoch,smax=4,B=5R=405,当s=4时,初始为81个点,每个点训练1个epoch,然后选择最好的27个点,每个点再训练3个epoch,...,直到最后只 阅读全文
摘要:
超参数(Hyper-parameter)是定义模型或者定义训练过程的参数,是相对于模型参数(Parameter)来说的,比如目标检测网络的网络结构,激活函数的选择,学习率的大小,Anchor的尺寸等等,都属于超参数.超参数对网络的性能(如目标检测网络的mAP等)有很大的影响,因此需要找到性能最优的参 阅读全文
摘要:
提交COCO Detection Challenge (Bounding Box)时出现错误: WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory lim 阅读全文
摘要:
和原始的NMS不同,DIoU-NMS不仅考虑了IoU的值,还考虑了两个Box中心点之间的距离,使用了新的公式决定一个Box是否被删除: 其中,RDIoU是两个Box中心点之间的距离,用下面的公式表示: 其中p(.)是距离,b和bgt表示两个box,c是包含两个box的最小box的对角线长度,如下图所 阅读全文
摘要:
运行下面代码时出错: net = model_zoo.get_model('faster_rcnn_resnet50_v1b_voc', pretrained=True, ctx=mx.gpu(0)) 原因是安装的mxnet版本不对,以前安装的是mxnet-cu90,换成mxnet-cu100就正常 阅读全文
摘要:
安装TensorFlow 2.0.0以后,运行出现了下面的错误: tensorflow.python.framework.errors_impl.InternalError: cudaGetDevice() failed. Status: CUDA driver version is insuffi 阅读全文
摘要:
安装Tensorflow 2.0以后,运行 import tensorflow as tf 出现下面的错误: 原因及解决的办法:以前是用pip install tensorflow-gpu安装的,没有指定版本,删除以前安装的版本,指定版本为2.0.0-alpha0安装: pip install te 阅读全文
摘要:
GluonCV是分布式机器学习社区(DMLC)发布的深度学习计算机视觉工具箱,提供了计算机视觉顶级的算法实现与基本运算(另一个是自然语言处理工具箱GluonNLP). GluonCV简单易用,有很多训练好的模型,通过一行代码就可以下载使用,非常方便. 由于GluonCV是基于MXNet,所以,要先安 阅读全文
摘要:
非极大值抑制(Non-Maximum Suppression,NMS)是在目标检测中广泛应用的一种方法:首先对每一个预测框给出一个分类和置信度,对每一类的框,按照置信度从小到大排序;然后选中置信度最大的框,依次和前面的同类框计算IOU,对于IOU大于阈值的框,就直接删除掉(也可以理解成将这些框的置信 阅读全文