- 博客(50)
- 资源 (1)
- 收藏
- 关注
原创 H3DNet论文阅读笔记
H3DNet: 3D Object Detection Using Hybrid Geometric Primitives论文链接:https://arxiv.org/pdf/2006.05682.pdf代码链接(pytorch):https://github.com/zaiweizhang/H3DNet1.介绍属于VoteNet的提优作品,从一个投票中心点不准,用19个投票中心来,选取与目标距离最近的,其余做约束和特征辅助。这篇文章的idea受6DOF任务中基于关键点回归启发,
2021-11-09 17:21:56
1054
2
原创 Pointnet++代码详解:square_distance函数 & query_ball_point函数
Pointnet++代码详解Square_distance函数Query_ball_pointSquare_distance函数square_distance函数主要用来在ball query过程中确定每一个点距离采样点的距离。函数输入是两组点,N为第一组点的个数,M为第二组点的个数,C为输入点的通道数(如果是xyz时C=3),返回的是两组点之间两两的欧几里德距离,即N×M的矩阵。由于在训练中数据通常是以Mini-Batch的形式输入的,所以有一个Batch数量的维度为B。def square_dis
2021-06-09 22:58:25
951
原创 Pointnet++代码详解:farthest_point_sample函数
FPSfarthest_point_sample函数是来自于Pointnet++的FPS(Farthest Point Sampling) 最远点采样法,该方法比随机采样的优势在于它可以尽可能的覆盖空间中的所有点。最远点采样是Set Abstraction模块中较为核心的步骤,其目的是从一个输入点云中按照所需要的点的个数npoint采样出足够多的点,并且点与点之间的距离要足够远。最后的返回结果是npoint个采样点在原始点云中的索引。FPS的逻辑如下:假设一共有n个点,整个点集为N = {f1, f
2021-06-09 15:51:35
1595
原创 FOCAL LOSS /&/ GIoU Loss
1. FOCAL LOSS总述Focal loss主要是为了解决one-stage目标检测中正负样本比例严重失衡的问题。该损失函数降低了大量简单负样本在训练中所占的权重,也可理解为一种困难样本挖掘。损失函数形式Focal loss是在交叉熵损失函数基础上进行的修改,首先回顾二分类交叉上损失:是经过激活函数的输出,所以在0-1之间。可见普通的交叉熵对于正样本而言,输出概率越大损失越小。对于负样本而言,输出概率越小则损失越小。此时的损失函数在大量简单样本的迭代过程中比较缓慢且可能无法优化至最
2021-06-06 16:35:01
701
原创 CVPR2021 三维目标检测(3D object detection)
[1] 3DIoUMatch: Leveraging IoU Prediction for Semi-Supervised 3D Object Detection(利用IoU预测进行半监督3D对象检测)[论文地址](https://arxiv.org/pdf/2012.04355.pdf)[代码地址](https://github.com/THU17cyz/3DIoUMatch)[2] Categorical Depth Distribution Network for Monocular 3D O
2021-04-10 10:07:02
3713
原创 pytorch编程练习 GPU手写体字符识别
pytorch_GPU1. 超参数的确定2. 模型的训练和评估3. 代码3.1 导入相关的包3.2 获取手写数字的训练集和测试集3.3 模型搭建和参数优化3.4 整合后的代码本文将在PyTorch中构建一个简单的卷积神经网络,并使用MNIST数据集训练它识别手写数字。在MNIST数据集上训练分类器可以看作是图像识别的“hello world”。MNIST包含70,000张手写数字图像:60,000张用于培训,10,000张用于测试。图像是灰度的,28x28像素的,并且居中的,以减少预处理和加快运行。
2021-01-07 22:14:40
962
原创 Mean teachers are better role models
学习记录介绍Mean Teacher论文链接:https://arxiv.org/pdf/1703.01780.pdfMean Teacher 模型主要想解决 Temporal ensembling Model 的一个突出问题,即无标签数据的信息只能在下一次 epoch 时才能更新到模型中。由此带来两个问题:大数据集下,模型更新缓慢;无法实现模型的在线训练;这一模型的核心思想是:模型既充当学生,又充当老师。作为老师,用来产生学生学习时的目标;作为学生,则利用教师模型产生的目标来进行学
2021-01-03 14:13:08
1240
2
原创 激活函数,损失函数以及学习率
学习记录(一)激活函数1. 什么是激活函数2. 常用的激活函数2.1 sigmoid函数2.2 tanh函数2.3 ReLU函数2.4 Leaky ReLU函数3. 为什么要用非线性激活函数?(二)损失函数1. 损失函数、代价函数与目标函数2. 常用的损失函数3. 常用的代价函数(三)学习率1. 什么是学习率(Learning rate)?2. 学习率的调整2.1 离散下降(discrete staircase)2.2 指数减缓(exponential decay)(一)激活函数1. 什么是激活函数在
2020-12-31 13:13:28
2693
原创 论文基础知识
一. 可变形卷积CNNs对大型,未知形状变换的建模存在固有的缺陷,这种缺陷来源于CNNs模块固有的几何结构:卷积单元对输入特征图的固定位置进行采样;池化层以固定的比例进行池化;即使是ROI pooling也是将ROI分割到固定的bin中去。这些特性是有影响的,例如,在同一层Conv中,所有的激活单元的感受野是一样的,但由于不同位置可能对应着不同尺度或变形的物体,因此对尺度或者感受野大小进行自适应是进行精确定位所需要的。为了解决或者减轻这个问题, 提出了两种新的模块,可变形卷积(deformable co
2020-11-30 09:54:19
457
1
原创 VoteNet 笔记
VoteNet前言:1.论文介绍&相关工作2.Deep Hough Voting3.VoteNet 结构3.1 通过点云产生 投票(vote)3.2 区域提议,从投票结果分类4.损失函数前言:Deep Hough Voting for 3D Object Detection in Point Clouds重新设计了一种利用raw point cloud data的方式来做,既不依赖于2D检测器的性能,也不会出现为了照顾计算量导致的细节数据丢失。那么为什么原来直接利用点云的方法没有得到如此高的精
2020-11-18 11:06:47
2232
2
原创 Graph Neural Network 图神经网络笔记
这里写目录标题**GraphSAGE (Inductive Representation Learning on Large Graphs, NIPS2017)**1. Embedding generation2. Aggregator Architectures3. Learning the parameters4. 实验5. 思考**GAT (Graph Attention Networks, ICLR2018)**1. 概念2. 计算图注意力系数(attention coefficient)3. 聚合
2020-11-16 22:30:54
913
原创 论文翻译学习-A Hierarchical Graph Network for 3D Object Detection on Point Clouds
2020CVPR论文:A Hierarchical Graph Network for 3D Object Detection on Point Clouds(Jintai Chen1∗, Biwen Lei1∗, Qingyu Song1∗, Haochao Ying1, Danny Z. Chen2, Jian Wu)点云上用于3D对象检测的分层图网络Abstract:点云上的3D对象检测发现了许多应用。但是,大多数已知的点云对象检测方法不能充分适应点云的特性(例如稀疏性),因此不能很好地捕获
2020-11-11 10:55:02
1104
3
原创 SSP空间金字塔层笔记
动机:在一般的CNN结构中,在卷积层后面通常连接着全连接。而全连接层的特征数是固定的,所以在网络输入的时候,会固定输入的大小(fixed-size)。但在现实中,我们的输入的图像尺寸总是不能满足输入时要求的大小。然而通常的手法就是裁剪(crop)和拉伸(warp)。这样做总是不好的:图像的纵横比(ratio aspect) 和 输入图像的尺寸是被改变的。这样就会扭曲原始的图像。而Kaiming He在这里提出了一个SPP(Spatial Pyramid Pooling)层能很好的解决这样的问题, 但S
2020-11-05 19:22:56
996
原创 目标检测的名词概念(持续记录中.....)
纯粹为了无知的自己在学习过程中遇到的不会的概念的记录(暂时无序):mAP定义及相关概念mAP: mean Average Precision, 即各类别AP的平均值AP: PR曲线下面积PR曲线: Precision-Recall曲线Precision: TP / (TP + FP)Recall: TP / (TP + FN)TP: IoU>0.5的检测框数量(同一Ground Truth只计算一次)FP: IoU<=0.5的检测框,或者是检测到同一个GT的多余检测框的数量F
2020-11-04 22:35:08
1440
原创 目标检测3维/点云/遥感数据集
主要有包含建筑物的数据集1. 点云分类(罗蒙诺索夫莫斯科国立大学)Legend: red — ground, black — building, navy — car, green — tree, cyan — low-vegetation.链接:点云分类2. Semantic3D大规模点云分类基准,它提供了一个带有大标签的自然场景的3D点云数据集,总计超过40亿个点,并且还涵盖了多种多样的城市场景。8个类别标签的分类基准,即 1:人造地形; 2:自然地形; 3:高植被; 4:低植被; 5:
2020-11-02 22:43:28
4683
11
原创 论文阅读速记:PointRCNN:3D Object Proposal Generation and Detection from Point Cloud
PointRCNN两阶段:一、 通过点云分割自下而上生成3D提案二、点云区域池化三、规范3D边界框优化原始点云的3D目标检测,只用点云作为输入。提出一种新的3D物体检测器,用于从原始点云中检测3D物体。所提出的Stage-1网络以自下而上的方式直接从点云生成3D方案,比以前的方案生成方法具有更高的召回率。Stage-2网络将语义特征和局部空间特征结合起来,在规范坐标中对提案进行了优化。此外,新提出的基于bin的损失证明了它在三维边界框回归中的有效性。两阶段:第一阶段:自下而上的3D proposal
2020-10-25 20:26:13
1512
原创 CornerNet 论文入门学习笔记
论文名称:CornerNet: Detecting Objects as Paired Keypoints论文链接: CornerNet(一) Overview(二) CornerNet2.1 Hourglass Network2.2 角点的检测2.3 角点组合(embedings)2.4 Offsets2.5 Corner Pooling(三)Loss function简介这篇文章是ECCV2018的一篇目标检测论文,该论文的创新之处在于使用Keypoints代替原来的anchor思想进行目标检测
2020-10-17 18:46:49
422
原创 YOLO v3 论文入门学习笔记
YOLO v3 (一)网络结构(二)Darknet -53(三)输入与输出(四)多尺度检测(五) Anchors ,Bounding Box Prediction5.1 使用Kmeans聚类的方法来决定anchors的尺寸大小5.2 Bounding Box Prediction(六)Loss functionYOLO3主要的改进有:调整了网络结构;利用多尺度特征进行对象检测;对象分类用Logistic取代了softmax(一)网络结构(图1 ,引用自大神)DBL: 代码中的Darknetco
2020-10-17 11:05:13
642
原创 Faster RCNN 论文入门学习笔记
Faster RCNN(一) 整体框架(二) 网络结构2.1 Conv layers2.2 RPN(Region Proposal Networks):2.2.1 Anchors的生成规则2.3 RPN工作原理解析2.4 proposal2.5 roi_data(三) ROI Pooling(四) Classifier(一) 整体框架整体介绍图中各层主要的功能Conv layers提取特征图:作为一种CNN网络目标检测方法,Faster RCNN首先使用一组基础的conv+relu+pooli
2020-10-16 21:28:18
553
原创 吴恩达机器学习:支持向量机总结和作业
(一)SVM简介支持向量机(Support Vector Machine,SVM)是一个广泛应于在工业界和学术界的分类算法。与逻辑回归和神经网络相比,它在学习非线性复杂方程上提供了一种更加清晰、更加有效的思路。为了描述支持向量机,我们先从逻辑回归开始讲起,再一点一点修正得到最后的支持向量机。1.1 从逻辑回归到SVM在逻辑回归中,我们已经熟悉了如下所示的假设函数 hθ(x)h_θ(x)hθ(x)和逻辑函数曲线:对于逻辑回归的假设函数 hθ(x)h_\theta(x)hθ(x) :当 y =
2020-09-30 15:06:36
1617
原创 吴恩达机器学习:聚类与降维 (K-means & PCA)总结与作业
(一)聚类:简介K均值算法( K-Means Algorithm )聚类算法将样本聚类分成不同的簇(cluster),其中K-means是最普及的一种聚类算法,它的思想其实就是迭代,假设我们想要将数据聚类成k个簇,其步骤为:首先选择K个随机的点,称为聚类中心(cluster centroids);(如图a,b,以K=2为例)对于数据集中的每个点,按照与聚类中心的距离,将其与距离最近的聚类中心点聚成一类;(如图c)计算每一个组的平均值(重心位置),将该组所关联的中心点移动到平均值的位置;(
2020-09-27 13:50:50
5804
原创 吴恩达机器学习:神经网络学习和作业
(一)神经网络模型理解1.1 模型这是一个三层神经网络,第一层为输入层,第二层为隐藏层,第三层为输出层。简单模型:线性回归模型逻辑回归模型优点是容易理解、可解释性较强,但是为了达到相对好的预测效果,可对原始特征进一步抽象,增加更多的特征项来弥补模型在处理非线性问题上的缺陷。LR是一种广义的线性模型,为了提高LR对非线性问题的处理能力,要引入多项式特征,为了充分考虑特征关联,通常也会执行特征之间交叉组合。若仅考虑二次项,也就是只考虑特征两两组合,这样也会得到接近5000个组合特征,若再考虑
2020-09-20 16:10:33
2104
原创 吴恩达机器学习:LR回归与正则化
LR回归与正则化(一)介绍Logistic回归算法模型1.1 LR回归1.2 解析数学原理推导1.2.1 Logistic Distribution1.2.1 Logistic Regression代价函数1.3 逻辑回归对比线性回归(二)正则化2.1 欠拟合 & 过度拟合2.2 正则化(三)LR回归算法作业(四)LR回归正则化算法作业小白初学(一)介绍Logistic回归算法模型1.1 LR回归LR回归,虽然这个算法从名字上来看,是回归算法,但其实际上是一个分类算法,学术界也叫它logi
2020-09-18 17:02:43
1407
原创 机器学习笔记三 决策树算法
决策树算法(一)基本介绍1.1 决策树原理1.2 决策树的优缺点及适用类型1.3 信息增益(二)决策树算法概述2.1 算法理论2.2 ID3算法2.3 C4.5算法2.4 CART算法2.5 剪枝处理(三)决策树构建3.1 数据处理(子功能模块)3.2 递归构建决策树3.3测试分类和存储分类器3.4 使用 Matplotlib 绘制树形图(四) 实例:使用决策树预测隐形眼镜类型(一)基本介绍决策树学习的算法通常是一个递归地选择最优特征,并根据该特征对训练数据进行分割,使得各个子数据集有一个最好的分类的过
2020-09-17 14:46:12
574
原创 机器学习笔记二 单型线性回归
线性回归(一)介绍(二) 数学模型2.1 一元线性回归公式2.2 方差 - 损失函数 Cost Function2.3 优化方法 Optimization Function2.4 算法步骤(三)Python 实现(一)介绍机器学习即指机器可以自我学习,而机器学习的方法就是利用现有的数据和算法,解出算法的参,从而得到可以用的模型。监督学习就是利用已有的数据(我们叫X,或者特征),和数据的标注(叫Y),找到x和y之间的对应关系,或者说是函数f。回归分析是一种因变量为连续值的监督学习。而线性回归指一种x
2020-09-12 21:03:45
318
原创 机器学习笔记一 有监督学习和无监督学习
监督学习监督学习是指我们给予算法一个数据集,这个数据集可以是以往相同类型问题的结果,或者绝对正确的经验答案的集合,也就是统计中常说的样本,并且这些数据都是有其固有的“正确答案”,然后算法根据这个集合做出对当前相同类型的问题的结果预测。绝大部分的情况我们给予算法的数据集都是离散的数据。所谓监督(supervised),就是利用已有的正确样本(“特征-结果”对)约束了算法的预测。简单的说就是你看着这些练习册和参考答案给我学会了,然后给我根据关系类比出类似的问题答案。针对于不同类型的问题,需要给出不同类型的
2020-09-08 10:47:45
2286
原创 Python计算机视觉编程学习笔记 十 OPENCV
(一)OpenCV 的 Python 接口Python 很强大,而且也有自己的图像处理库 PIL,但是相对于 OpenCV 来讲,它还是弱小很多。跟很多开源软件一样 OpenCV 也提供了 完善的 python 接口,非常便于调用。几乎任何一个能想到的成熟算法 都可以通过调用 OpenCV 的函数来实现,超级方便。OpenCV 是一个C++ 库,它包含了计算机视觉领域的很多模块。除了 C++ 和 C, Python 作为一种简洁的脚本语言,在 C++ 代码基础上的 Python 接口得到了越来越广泛的支
2020-09-03 15:18:55
851
原创 Python计算机视觉编程学习笔记 九 图像分割
图像分割是将一幅图像分割成有意义区域的过程。区域可以是图像的前景与背景或 图像中一些单独的对象。这些区域可以利用一些诸如颜色、边界或近邻相似性等特 征进行构建(一)图割(Graph Cut)图论中的图(graph)是由若干节点(有时也称顶点)和连接节点的边构成的集合。边可以是有向的或无向的,并且这些可能有与它们相关联的权重。图割是将一个有向图分割成两个互不相交的集合,可以用来解决很多计算机视觉方 面的问题,诸如立体深度重建、图像拼接和图像分割等计算机视觉方面的不同问题。 从图像像素和像素的近邻创建一个
2020-09-01 20:20:05
821
1
原创 Python计算机视觉编程学习笔记 八 图像内容分类
(一)K邻近分类法 (KNN)把待分类文本表示成文本向量,与训练样本组成的样本空间中的向量计算相似度,得到k篇与该文本距离最近(最相似)的文本,根据这k篇文本所属的类别判定新文本所属的类别,在新文本的k个邻居中依次计算每类的权重,将文本分到权重最大的类中。KNN 是非参数的(non-parametric),基于实例(instance-based)的算法。非参数意味着其不在底层的数据分布上进行任何的臆测。而基于实例意味着其不是明确地学习一个模型,而是选择记忆训练的实例们。由于 KNN 是基于实例的算法,也
2020-08-19 21:18:56
496
原创 Python计算机视觉编程学习笔记 七 图像搜索
(一)基于内容的图像检索CBIR(Content-Based Image Retrieval,基于内容的图像检索)定义 : 即从图像库中查找含有特定目标的图像,也包括从连续的视频图像中检索含有特定目标的视频片段。目前,对于通用的静止图像检索,用于检索的特征主要有颜色(Colour)、纹理(Texture)、草图(Sketch)、形状(Shape)等,其中颜色、形状、纹理等应用尤为普遍。...
2020-08-15 20:03:28
691
原创 python3.X 环境安装PCV包
下载PCV包:https://codeload.github.com/Li-Shu14/PCV/zip/master;压缩包不用解压,直接pip install即可。打开Anaconda的prompt窗口,切换到下载好的PCV包所在的路径下;执行以下命令:pip install PCV-master.zip其他包的安装方法进入官网:https://pypi.org/ ,查找自己需要的包并下载;下载完之后解压;打开Windows命令行界面:win+R;切换到包所..
2020-08-10 19:56:05
1971
原创 Python计算机视觉编程学习笔记 六 图像聚类
(一)K-means聚类(K均值聚类)定义:k-means算法中的k代表类簇个数,means代表类簇内数据对象的均值(这种均值是一种对类簇中心的描述),因此,k-means算法又称为k-均值算法。k-means算法是一种基于划分的聚类算法,以距离作为数据对象间相似性度量的标准,即数据对象间的距离越小,则它们的相似性越高,则它们越有可能在同一个类簇。K-Means算法原理:对给定的样本集,事先确定聚类簇数K,让簇内的样本尽可能紧密分布在一起,使簇间的距离尽可能大。该算法试图使集群数据分为n组独立数据样本
2020-08-09 14:20:23
824
原创 Python计算机视觉编程学习笔记 五 多视图几何
(一)外极几何如果有一个场景的两个视图以及视图中的对应图像点,那么根据照相机间的空间相对位置关系、照相机的性质以及三维场景点的位置,可以得到对这些图像点的一些几何关系约束。外极几何是研究两幅图像之间存在的几何。它和场景结构无关,只依赖于摄像机的内外参数。研究这种几何可以用在图像匹配、三维重建方面。介绍:...
2020-08-07 10:25:11
718
1
原创 Python计算机视觉编程学习笔记 四 照相机模型与增强现实
本章将尝试对照相机进行建模,并有效地使用这些模型。在之前的章节里,已经讲述了图像到图像之间的映射和变换。为了处理三维图像和平面图像之间的映射,还需要在映射中加入部分照相机产生图像过程的投影特性。本章学习如何确定照相机的参数,以及在具体应用中,如增强现实,如何使用图像间的投影变换。(一)针孔照相机模型1.1 照相机模型相机将三维世界中的坐标点映射到二维图像平面的过程能够用一个几何模型进行描述。这个模型有很多种,其中最简单的称为针孔模型。在现实生活中,针孔相机是由前方有 一个小洞(针孔)所构成。现实世界
2020-08-03 17:15:46
944
原创 Python计算机视觉编程学习笔记 三 图像到图像的映射
(一)单应性变换单应性变换是将一个平面内的点映射到另一个平面内的二维投影变换。在这里,平面是指图像或者三维中的平面表面。单应性变换具有很强的实用性,比如图像配准、图像纠正和纹理扭曲,以及创建全景图像。 本质上, 单应性变换 H,按照下面的方程映射二维中的点(齐次坐标意义下):对于图像平面内的点,齐次坐标是个非常有用的表示方法。点的齐次坐标是依赖于其尺度定义的, x=[x,y,w]=[αx,αy,αw]=[x/w,y/w,1]x=[x,y,w]=[αx,αy,αw]=[x/w,y/w,1]x=[x,y,
2020-07-31 22:00:42
835
原创 Python计算机视觉编程学习笔记 二 局部图像描述子
寻找图像间的对应点和对应区域。介绍用于图像匹配的两种局部描述子算法。图像的局部特征是许多计算机视觉算法的基础,使用特征点来代表图像的内容包括运动目标跟踪,物体识别,图像配准,全景图像拼接,三维重建等...
2020-07-28 16:27:31
678
原创 python计算机视觉编程学习笔记 一 基本的图像操作和处理
(一)PIL:Python图像处理类库PIL(Python Imaging Library,图像处理库)提供了通用的图像处理功能,以及大量有用的基本图像操作。PIL库已经集成在Anaconda库中,推荐使用Anaconda,简单方便,常用库都已经集成。1.1 读入一副图像再转换格式:(1)读入图片,这是所有操作中的基本中的基本操作:from PIL import Imagefrom pylab import *# 添加中文字体支持from matplotlib.font_manager im
2020-07-25 23:20:47
1355
2
原创 Python学习笔记 1 列表知识点:增删改查序
列表知识点:增删改查序Python列表知识点汇总:增删改查序。1.1 增1.2 删1.3 改1.4 查1.5 序Python列表知识点汇总:增删改查序。对列表进行新增元素、删除元素、改变元素、查询元素、列表排序。1.1 增对列表新增元素,有四种方式1、用 extend 方法:#用 extend 方法l = [1, 2, 3]j = [4, 5, 6]l.extend(j)print(l)效果:2、用运算符 + 对列表直接进行拼接:#用运算符 + 对列表直接进行拼接l = [1,
2020-07-20 14:09:45
280
原创 数字图像处理学习笔记 十一 表示与描述
前言综述:将一幅图像分割成多个区域后,分割后的像素集经常以一种合适于计算机进一步处理的形式来表示和描述。表示表示一个区域的两种选择:根据区域外部特征(如边界)来表示区域根据内部特征(如组成该区域的像素)来表示区域表示是直接具体地表示目标,好的表示方法应具有节省存储空间易于特征计算等优点。表示的下一步工作是描述。表示方式的选择要使数据有利于描述工作的展开。当关注的重点是形状特征时,可选择外部表示;当关注的重点是内部属性(如颜色和纹理)时,可选择内部表示。描述描述是较抽象地表示目标。好的
2020-07-05 12:33:01
1370
1
内部资料——算法复习整理.doc
2020-11-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人