物体检测_物体检测与轨迹 - CSDN
精华内容
参与话题
  • 深度学习物体检测常用资源综述,包括R-CNN 、Fast-RCNN、Faster-RCNN、YOLO、SSD等

    一、目标检测任务 
    1、任务综述 
    给定一张图像或者视频帧,找出其中所有目标的位置,并给出每个目标的具体类别,图片中可能有一个目标或几个目标。如下图所示 
    这里写图片描述 
    对计算机来说,目标检测最困难的部分在于计算机不清楚目标出现在图像中哪个区域。图像中的目标可能出现在任何位置,目标的形态可能存在各种各样的变化。 
    2、模型框架 
    传统的目标检测中,常见的算法是DPM(Deformable Part Model)。2013年利用深度学习算法的R-CNN(Region-based Convolutional Neural Networks)的诞生使基于深度学习的目标检测进入了一个全新的时期。R-CNN在VOC 2007测试集的mAP达到48%。从此Ross Girshick一发不可收拾,连续推出了Fast R-CNN、Faster R-CNN。受Ross Girshick启发许多基于深度学习的目标检测算法被提出 
    (一)使用Region Proposal方法 
    (1)、R-CNN 
    论文地址:https://arxiv.org/abs/1311.2524 
    代码地址:https://github.com/rbgirshick/rcnn 
    (2)、Fast R-CNN 
    论文地址:https://arxiv.org/abs/1504.08083 
    代码地址:https://github.com/rbgirshick/fast-rcnn 
    (3)、Faster R-CNN 
    论文地址:https://arxiv.org/abs/1506.01497 
    代码地址:https://github.com/rbgirshick/py-faster-rcnn 
    (4)、R-FCN 
    论文地址:https://arxiv.org/abs/1605.06409 
    代码地址:https://github.com/daijifeng001/R-FCN (matlab版) 
    代码地址:https://github.com/Orpine/py-R-FCN (Python版) 
    (二) 使用回归方法 
    (1)、YOLO2 
    论文地址:https://arxiv.org/abs/1506.02640 
    代码地址:http://pjreddie.com/darknet/yolo/ 
    (2)、SSD 
    论文地址:https://arxiv.org/abs/1512.02325 
    代码地址:https://github.com/weiliu89/caffe/tree/ssd (caffe版) 
    代码地址:https://github.com/zhreshold/mxnet-ssd (MXnet版) 
    3、目前结果 
    2016PASCAL VOC视觉识别竞赛,海康威视以87.9%的mAP(平均正确率)夺得冠军,下图为目前(2017.1)各个模型在PASCAL VOC 2012上的排名 
    这里写图片描述 
    这里写图片描述

    二、目标检测公共数据集

    三、自己创建数据集 
    1、图像标注工具(labelImg) 
    目前的目标检测算法很多都是在PASCAL VOC数据集上训练和验证的,该标注工具可以在windows、Linux上运行,标注格式与PASCAL VOC数据集的格式一样。但是有个BUG,就是000001.jpg中,没有jpg,解决方法参考这篇博客http://blog.csdn.net/ch_liu23/article/details/53558549 
    工具地址:https://github.com/tzutalin/labelImg 
    2、图像标注工具(BBox-Label-Tool) 
    可以标注数据集,用于yolo的训练 
    工具地址:https://github.com/puzzledqs/BBox-Label-Tool 
    3、图像标注工具(ImageLabel) 
    可以标注问题轮廓,制作分割数据集 
    工具地址:https://github.com/lanbing510/ImageLabel 

    展开全文
  • CNN 之 "物体检测" 篇

    千次阅读 2018-01-13 10:05:59
    北京 上海巡回站 | NVIDIA DLI深度学习培训2018年1月26/1月12日NVIDIA 深度学习学院 带你快速进入火热的DL领域阅读全文 >正文共3446个字,19张图,预计阅读时间:9分钟。索引RCNNFast RCNNFaster RCNN
        
    北京 上海巡回站 | NVIDIA DLI深度学习培训2018年1月26/1月12日?wx_fmt=jpeg&wxfrom=5&wx_lazy=1NVIDIA 深度学习学院 带你快速进入火热的DL领域
    阅读全文                                                                          >



    正文共3446个字,19张图,预计阅读时间:9分钟。


    索引

    RCNN

    Fast RCNN

    Faster RCNN

    R-FCN

    YOLO

    SSD

    NMS

    xywh VS xyxy


    RCNN


    Rich feature hierarchies for accurate object detection and semantic segmentationhttps://arxiv.org/abs/1311.2524


    早期,使用窗口扫描进行物体识别,计算量大。 RCNN去掉窗口扫描,用聚类方式,对图像进行分割分组,得到多个侯选框的层次组。


    ?wx_fmt=png


    • 原始图片通过Selective Search提取候选框,约有2k个

    • 侯选框缩放成固定大小

    • 经过CNN

    • 经两个全连接后,分类


    拓展阅读:基于R-CNN的物体检测-CVPR 2014(http://blog.csdn.net/hjimce/article/details/50187029)


    Fast RCNN



    Fast R-CNN(https://arxiv.org/abs/1504.08083)

    RCNN中有CNN重复计算,Fast RCNN则去掉重复计算,并微调选框位置。


    ?wx_fmt=png


    • 整图经过CNN,得到特征图

    • 提取域候选框

    • 把候选框投影到特征图上,Pooling采样成固定大小

    • 经两个全连接后,分类与微调选框位置

    Faster RCNN



    Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks(https://arxiv.org/abs/1506.01497)

    提取候选框运行在CPU上,耗时2s,效率低下。


    Faster RCNN使用CNN来预测候选框。


    ?wx_fmt=png


    • 整图经过CNN,得到特征图

    • 经过核为 3×3×256 的卷积,每个点上预测k个anchor box是否是物体,并微调anchor box的位置

    • 提取出物体框后,采用Fast RCNN同样的方式,进行分类

    • 选框与分类共用一个CNN网络


    anchor box的设置应比较好的覆盖到不同大小区域,如下图:


    ?wx_fmt=png


    一张1000×600的图片,大概可以得到20k个anchor box(60×40×9)。


    R-FCN



    R-FCN: Object Detection via Region-based Fully Convolutional Networks(https://arxiv.org/pdf/1605.06409v1.pdf)


    论文翻译详见:[译] 基于R-FCN的物体检测 (zhwhong)(https://www.jianshu.com/p/db1b74770e52)


    RCNN系列(RCNN、Fast RCNN、Faster RCNN)中,网络由两个子CNN构成。在图片分类中,只需一个CNN,效率非常高。所以物体检测是不是也可以只用一个CNN?


    图片分类需要兼容形变,而物体检测需要利用形变,如何平衡?


    R-FCN利用在CNN的最后进行位置相关的特征pooling来解决以上两个问题。


    ?wx_fmt=png


    经普通CNN后,做有 k^2(C+1) 个 channel 的卷积,生成位置相关的特征(position-sensitive score maps)。


    C 表示分类数,加 1 表示背景,k 表示后续要pooling 的大小,所以生成 k^2 倍的channel,以应对后面的空间pooling。

    ?wx_fmt=png


    普通CNN后,还有一个RPN(Region Proposal Network),生成候选框。


    假设一个候选框大小为 w×h,将它投影在位置相关的特征上,并采用average-pooling的方式生成一个 k×k×k^2(C+1) 的块(与Fast RCNN一样),再采用空间相关的pooling(k×k平面上每一个点取channel上对应的部分数据),生成 k×k×(C+1)的块,最后再做average-pooling生成 C+1 的块,最后做softmax生成分类概率。


    类似的,RPN也可以采用空间pooling的结构,生成一个channel为 4k^2的特征层。


    空间pooling的具体操作可以参考下面。


    ?wx_fmt=png


    训练与SSD相似,训练时拿来做lost计算的点取一个常数,如128。 除去正点,剩下的所有使用概率最高的负点。


    YOLO



    You Only Look Once: Unified, Real-Time Object Detection(https://arxiv.org/abs/1506.02640)


    Faster RCNN需要对20k个anchor box进行判断是否是物体,然后再进行物体识别,分成了两步。 YOLO则把物体框的选择与识别进行了结合,一步输出,即变成”You Only Look Once”。


    ?wx_fmt=png


    • 把原始图片缩放成448×448大小

    • 运行单个CNN

    • 计算物体中心是否落入单元格、物体的位置、物体的类别


    模型如下:


    ?wx_fmt=png


    • 把缩放成统一大小的图片分割成S×S的单元格

    • 每个单元格输出B个矩形框(冗余设计),包含框的位置信息(x, y, w, h)与物体的Confidence

    • 每个单元格再输出C个类别的条件概率P(Class∣Object)

    • 最终输出层应有S×S×(B∗5+C)个单元

    • x, y 是每个单元格的相对位置

    • w, h 是整图的相对大小


    Conficence定义如下:


    ?wx_fmt=png


    在原论文中,S = 7,B = 2,C = 20,所以输出的单元数为7×7×30。


    ?wx_fmt=png


    代价函数:


    ?wx_fmt=png


    其中 λ_coord=5,λ_noobj=0.5。


    一般,w与 h 不是在 [0,1]上的均匀分布,偏小,所以开方。


    注: 开方的解释是我自己的估计,可能不对。


    SSD



    SSD: Single Shot MultiBox Detector(http://www.cs.unc.edu/~wliu/papers/ssd.pdf)

    YOLO在 7×7 的框架下识别物体,遇到大量小物体时,难以处理。


    SSD则在不同层级的feature map下进行识别,能够覆盖更多范围。


    ?wx_fmt=png


    假设在 m 层 feature map 上进行识别,则第 k 层的基本比例为


    ?wx_fmt=png


    比如 s_min=0.2,s_max=0.95,表示整张图片识别物体所占比最小 0.2,最大 0.95。


    在基本比例上,再取多个长宽比,令 a={1, 2, 3, 1/2, 1/3},长宽分别为


    ?wx_fmt=png


    Match策略上,取ground truth与以上生成的格子重叠率大于0.5的。


    SSD VS YOLO



    ?wx_fmt=png


    位置采用Smooth L1 Regression,分类采用Softmax。


    代价函数为:


    ![][01]
    [01]:http://latex.codecogs.com/png.latex?L%20=%20L_{conf}(x,%20c)%20+%20\alpha%20\cdot%20L_{loc}(c,%20l,%20g))


    x  表示类别输出,c 表示目标分类,l 表示位置输出,g 表示目标位置, α是比例常数,可取1。


    训练过程中负点远多于正点,所以只取负点中,概率最大的几个,数量与正点成 3:1 。


    NMS



    以上方法,同一物体可能有多个预测值。


    可用NMS(Non-maximum suppression,非极大值抑制)来去重。


    ?wx_fmt=png


    如上图所示,一共有6个识别为人的框,每一个框有一个置信率。


    现在需要消除多余的:


    • 按置信率排序: 0.95, 0.9, 0.9, 0.8, 0.7, 0.7

    • 取最大0.95的框为一个物体框

    • 剩余5个框中,去掉与0.95框重叠率大于0.6(可以另行设置),则保留0.9, 0.8, 0.7三个框

    • 重复上面的步骤,直到没有框了,0.9为一个框

    • 选出来的为: 0.95, 0.9


    两个矩形的重叠率计算方式如下:


    ?wx_fmt=png


    xywh VS xyxy



    系列论文中,位置都用 (x,y,w,h)来表示,没有用左上角、右下角 (x,y,x,y) 来表示。


    初衷是当 (w,h)正确时,(x,y) 一点错,会导致整个框就不准了。


    在初步的实际实验中,(x,y,x,y) 效果要差一些。


    背后的逻辑,物体位置用 (x,y,w,h) 来学习比较容易。


    (x,y) 只需要位置相关的加权就能计算出来;


    (w,h) 就更简单了,直接特征值相加即可。


    原文链接:Detection(http://www.cosmosshadow.com/ml/%E5%BA%94%E7%94%A8/2015/12/07/%E7%89%A9%E4%BD%93%E6%A3%80%E6%B5%8B.html)


    补充阅读:


    1、[Detection] 深度学习之 "物体检测" 方法梳理


    2、[译] 基于R-FCN的物体检测 (zhwhong)(https://www.jianshu.com/p/db1b74770e52)


    原文链接:https://www.jianshu.com/p/067f6a989d31


    查阅更为简洁方便的分类文章以及最新的课程、产品信息,请移步至全新呈现的“LeadAI学院官网”:

    www.leadai.org


    请关注人工智能LeadAI公众号,查看更多专业文章

    ?wx_fmt=jpeg

    大家都在看

    640.png?

    LSTM模型在问答系统中的应用

    基于TensorFlow的神经网络解决用户流失概览问题

    最全常见算法工程师面试题目整理(一)

    最全常见算法工程师面试题目整理(二)

    TensorFlow从1到2 | 第三章 深度学习革命的开端:卷积神经网络

    装饰器 | Python高级编程

    今天不如来复习下Python基础


    640.png?

    展开全文
  • 目标检测——物体定位和检测

    万次阅读 2019-06-20 09:10:15
    此篇是看CS231n的课后笔记,方便以后查阅,因为刚开始接触,如果有错误,欢迎指正~ 更多内容关注微信公众号:ML_Study ...定位一般是指一张图有一个类别,有单个物体需要去定位 常用数据库:ImageN...

    转自:https://blog.csdn.net/MargretWG/article/details/72357204

    此篇是看CS231n的课后笔记,方便以后查阅,因为刚开始接触,如果有错误,欢迎指正~

    更多内容关注微信公众号:ML_Study

    一、 Classification+Localization定位

    定位一般是指一张图有一个类别,有单个物体需要去定位

    常用数据库:ImageNet localization数据库

    对于分类任务:

     

    • 目标:分出类别
    • 输入:图像
    • 输出:图像类别
    • 评价指标:准确度

     

    对于定位任务:

     

    • 目标:标出该图中类别物体的位置(矩形框)
    • 输入:图像
    • 输出:bounding box (x,y,w,h) 4个数
    • 评价指标:与所给框的交叉重叠部分

     

    【步骤】:

    1. 训练一个分类网络(AlexNet,VGG...)
    2. 在一个特定位置(conv后或者FC后)重新连接一个Regression head,用于训练框的位置
    3. 训练回归网络,用SGD+L2 Loss,分两种回归:不定类回归(1个box)/ 特定类回归(C个box)
    4. 测试时,把两种heads都加上得到分类标签+定位框

     

     

    [Sliding Window]——Overfeat网络(ILSVRC 2013定位挑战冠军)

     

    论文:Sermanet et al, “Integrated Recognition, Localization and Detection using Convolutional Networks”, ICLR 2014

     

     

    主要思想:

     

    • 用一个滑动窗口在高分辨率的图片上不同位置滑动
    • 将全连接层转换为1*1卷积层,节省计算资源
    • 在不同尺度上将分类器和回归器的预测结果融合,从而得到最终预测结果

     

    滑动窗口

    假设输入图像比规定的尺寸大,可设置一个滑动窗口分别滑动图像的左上,下,右上,下四个位置,得到四个分类得分

    同样得到四个框

          

    实际中,会取各种大小的sliding windows,所以会得到很多类别得分和很多框,通过一种特殊的融合方式,得到最佳结果(此处课上没说,需再看论文)

     

     

    FC-->1*1 Conv

    ---->

     

    定位任务结果:

     

     

     

    二、Object Detection

     

           对一副图中的所有类别框出其所在位置,类别数不确定,所以输出数量也不确定,所以可以把检测也看成一个分类问题,而不是回归问题。对一副图我们需要不同尺度的框去探测各个位置可能出现的类别信息,最简单的方法就是try them all!但是这回带来巨大的运算量。以前人们用HOG特征来进行检测时是可以实现的,因为提取HOG特征很快(是用线性分类器),现在用CNN来提特征就使得全试一遍这种方法很不现实。于是人们提出各种方法来预先得到一些类别框可能在的位置,得到可能位置的一个小子集,以减少运算量。

    这种预先提出候选区域的方法叫Region Proposals

     

     

     

    这种方法的大致原理就是寻找相似像素块,把临近相似的像素区域框出来,这样做运算很快,但得到的框不是很准确,但主要目的还是达到了,就是排除很多无关的框的位置,大大减少了之后的运算量。在Region Proposal方法中最有名的的就是Selective search  ——【Uijlings et al, “Selective Search for Object Recognition”, IJCV 2013】

     

     

    ======================================================================================================================

     

    【Selective Search】

     

    SS可以看成是对图像的分割,SS可以预先把图片划分为各种大小不同的区域(满足目标多尺度的要求),分割后还有一个区域合并的过程,最后剩下的都是那些最可能的候选区域,然后在这些已经过滤了一遍的区域上进行后续的识别等处理,这样的话,将会大大减小候选区域的数目,提高了算法的速度.

     

    得到区域的算法:

    1. 使用 Efficient Graph-Based Image Segmentation【1】的方法获取原始分割区域R={r1,r2,…,rn}

    2. 初始化相似度集合S=∅

    3. 计算两两相邻区域之间的相似度(见第三部分),将其添加到相似度集合S中

    4. 从相似度集合S中找出,相似度最大的两个区域 ri 和rj,将其合并成为一个区域 rt,从相似度集合中除去原先与ri和rj相邻区域之间计算的相似度,计算rt与其相邻区域(原先与ri或rj相邻的区域)的相似度,将其结果添加的到相似度集合S中。同时将新区域 rt 添加到 区域集合R中。

    5. 获取每个区域的Bounding Boxes,这个结果就是物体位置的可能结果L

     

    http://blog.csdn.net/mao_kun/article/details/50576003 讲的很详细

     

     

    得到候选区域后,再对每个区域进行判别

     

             系统在实现过程中,使用color-SIFT特征以及spatial pyramid divsion方法。在一个尺度下σ=1.2下抽样提取特征。使用SIFT、Extended OpponentSIFT、RGB-SIFT特征,在四层金字塔模型 1×1、2×2、3×3、4×4,提取特征,可以得到一个维的特征向量。(注:对SIFT特征以及金字塔模型还不是很了解,讲得不是很清楚)

             训练方法采用SVM。首先选择包含真实结果(ground truth)的物体窗口作为正样本(positive examples),选择与正样本窗口重叠20%~50%的窗口作为负样本(negative examples)。在选择样本的过程中剔除彼此重叠70%的负样本,这样可以提供一个较好的初始化结果。在重复迭代过程中加入hard negative examples(得分很高的负样本),由于训练模型初始化结果较好,模型只需要迭代两次就可以了。(样本的筛选很重要!!)


     

    ==================================================================================================================

     

    通常来说,一个好的检测结果可以有两个决定因素:

    1. 网络的深度:网络层数越多,深度越深,其效果往往越好

    2. 区域推荐的算法:节省运算量的主要修改方向。

     

     

     

    【经常用到的数据集】

     

     

     

     

    PASCAL数据量偏小,很适合做科学研究,出结果较快,ImageNet Detection图片量大,常常用作竞赛,微软出的COCO由于其数据量适中,且一张图中往往有多个目标需要进行检测,所以现在大部分人用这个数据库

     

     

    【评价指标】——Mean Average Precision (mAP)

     

    计算每一个类别的平均准确度,然后再在所有类别上作平均

    检测结果被认为是true positive如果它与ground truth的重叠率达到一个门限值(通常是0.5)-->mAP@0.5

    把所有测试图片的检测结果结合起来对每个类画出precision/recall 曲线,AP就是曲线下的区域

    mAP是个0-100的数,越大越好

     

     

     

    【R-CNN】 ——Region based CNN

    Girschick et al, “Rich feature hierarchies for accurate object detection and semantic segmentation”, CVPR 2014

     

    Training步骤:

     

    • 训练或下载一个分类网络(如AlexNet)
    • fine-tune model for detection,比如训练时是1000类,然而要检测的只有20类+一个背景类,所以共21类,所以我们要微调网络
    •  Extract features,对每张图用Region proposals选出很多候选区域,然后对所有候选区域进行crop和warp使之符合CNN输入size,送入CNN网络到pool5,保存下该层的feature maps
    •                                                                        

    问题就是,存下来的feature map太大了,大约有200G左右对于PASCAL数据集,因为是先选推荐区域再一个一个跑CNN

     

     

    • 对每一类执行二分SVM对所选区域内的图像做分类
    • bounding box regression对于每一类,训练一个线性回归模型,去掉一些不好的候选框以及对框做一些微调与修正,比如中间的这个框就有点偏左,所以dx为正值,意味着朝着向右的方向为正确方向。

            

     

    【R-CNN的结果】

     

    从上图可以看出,2013-2014年从非CNN方法到CNN方法产生了一个较大的提升,所以证明了CNN的强大之处,第三列和第四列比较可以得出bounding box Regression会有一些帮助,第四列和第五列比较得到网络深度的增加会有较大提升,这也印证了刚才说的结论。

     

     

     

    【R-CNN存在的问题】

     

    1. 测试时太慢了,因为它要将每个region proposal都送入CNN跑一遍,而推荐的region大约有几千个。
    2. SVMs和回归都是离线训练,使得CNN特征并没有依据SVM/回归的结果作更新
    3. 复杂的training pipeline

     

    为解决上述问题,有人提出了Fast R-CNN

     

     

    【Fast R-CNN】——Swap order of convolutions and region extraction!

    Girschick, “Fast R-CNN”, ICCV 2015  

     

    训练模型:

     

     

    不再像R-CNN里先训卷积,在做分类和回归,这里是一个端到端的完整的训练过程,使得CNN提取到的特征也能随着SVM/Regression一起更新。解决了问题2

    对于问题1,Fast R-CNN里先将整幅图通过CNN,然后在得到的高分辨率的feature map上进行ROI pooling,直接从feature map上提取感兴趣区域。通过共享不同目标框的卷积特征的计算大大降低运算量。

     

     

    测试模型:

     

    【ROI Pooling】

    对输入的高分辨率图像,先用region proposal得到候选框,然后整幅图卷积后得到一个高分辨率的feature map,而全连接层希望得到的是低分辨率的特征值。所以我们将在原图上给出的目标框(region proposals)直接映射到feature map上,然后把对应区域的feature map切成小网格状,对每一小格作max pooling,就得到了感兴趣区域的卷积特征。

    一个直观的理解就是:与R-CNN不同,R-CNN是先对在原图上的推荐区域做变形crop到CNN合适大小再分别作CNN,而fast R-CNN是先作卷积,然后再在所得的共享feature map上提取推荐区域做变形crop(pooling)成ROI region.由于卷积只是一个特征提取过程,这与图像的区域位置没有关系,所以不需要把每个候选框分别传入CNN,而是可以先把整幅图送入CNN,然后再挑选对应区域的特征进行分类检测。

    这种方法我们也知道相应的BP怎么做,所以运算起来很方便

    -->

     

     

    【Fast R-CNN的结果】

    可以看出Fast R-CNN在训练速度和测试速度都有很明显的提升,在mAP上也有微小的进步。

    但要注意,这里的测试时间是不包括Selective Search 的,如果算上Selective Search那么速度提升就不那么明显了

    所以之后又有人提出了 Faster R-CNN!

     

     

    【Faster R-CNN】——Compute region proposals within the network

    Ren et al, “Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks”, NIPS 2015

     

                                  

    相比于Fast R-CNN,Faster的最大亮点就是提出了Region Proposal Network(RPN网络),这个网络训练用于产生推荐区域,所以不再需要额外的region proposals!这样会大大加快运行速度

     

    【Region Proposal Network】 

     

    • 一个滑动窗口在feature map上滑动

     

    • 建立一个小网络用于:判断该窗口内存不存在要分类的物体(n scores),以及对bounding box位置进行回归(4n coordinates)

     

    • 对于滑动窗口所在的每一个位置,采用N个anchor boxes,论文中默认使用3中不同尺度,3种不同宽高比,共9中anchors在每一个滑动位置。这些anchor boxes具有平移不变性,在每个位置都是同样大小,回归过程就给出了这些anchor boxes的偏差,分类过程给出已回归过的anchor存在要分类物体的可能性。

     

    • 训练过程中,不同于Fast R-CNN,对于K个bounding-box,都是从同样的3*3的feature map得到,只是不同的anchors。为了保证尺度多样性,有k个回归器,负责回归不同scale和不同宽高比的bounding-boxes,所以每个回归器采用不同的参数,它们彼此之间不共享参数。

     

    • RPN的损失函数:对每一个anchor赋予一个二分的class label(positive or negative)。赋予规则:对于那些(1)与ground truth 有最大Intersection-over-Union重叠的anchor(2)有与ground truth高于0.7 IoU 重叠的anchors赋予positive标签,给非positive且IoU低于0.3的anchors赋予negative标签。对于其中既不是positive也不是negative的anchors就不作为训练目标了。Loss function 如下:

            

    其中,i是一个mini-batch中某个anchor的索引,pi是第i个anchor中是否有object的概率,pi*=1如果这个anchor是positive,否则=0

    ti是一个包含关于anchor i 的bounding-box的四个坐标参数的向量,ti*是与这个positive anchor有关的ground truth的坐标向量,最后输出单独的{pi}和{ti}即分类得分和检测的位置

     

     

    所以总而言之,在训练阶段,我们一共会得到四个losses:

    - RPN classification (anchor good / bad)
    - RPN regression (anchor -> proposal)
    - Fast R-CNN classification (over classes)
    - Fast R-CNN regression (proposal -> box)

     

     

    【Faster R-CNN结果】

    可以看到它相较于Fast R-CNN又加快了10倍,但效果却差不多

     

    之后课程又提到了YOLO-You Only Look Once 网络,它比Faster还快,但是效果没有Faster好,这块先不记录了

    展开全文
  • 物体检测

    2017-12-18 16:18:32
    分类数据集 检测数据集分类数据集制作容易,只是一个猫狗图片分类 检测数据集,因为多个物体,制作成本高。

    分类数据集
    检测数据集

    分类数据集制作容易,只是一个猫狗图片分类
    检测数据集,因为多个物体,制作成本高。

    展开全文
  • Python-深度学习-物体检测实战

    千人学习 2020-06-24 14:18:11
    计算机视觉-物体检测-通用解决框架Mask-Rcnn实战课程旨在帮助同学们快速掌握物体检测领域当下主流解决方案与网络框架构建原理,基于开源项目解读其应用领域与使用方法。通过debug方式,详细解读项目中每一模块核心...
  • 本报告分为4个部分,物体检测的简介、物体检测的过去、现在以及未来,每个部分都从学术和工业两种角度进行分析介绍。 上图简单描述了物体检测的发展历程时间轴。2012年深度学习热潮兴起,接着2013年有学者将深度...
  • 深度学习【60】物体检测:CornerNet

    千次阅读 2018-11-15 10:21:21
    由于bbox也是一组坐标点,所以在物体检测应当也可以使用热图来做,该论文便是一个很好的思路。论文的基础网络使用的是HG网络(漏斗网络),并且又两个HG网络堆叠起来,因此模型还是很大的。根据作者提供的训练好的...
  • 2. 物体检测数据集 PASCAL VOC, 20类, 比较简单, 图片中物体所占比较大比较少;http://host.robots.ox.ac.uk/pascal/VOC/ COCO, 微软做的,80类物体, 单张物体稠密, 验证检测器性能常用数据集。http://cocodatas...
  • 总结各种物体检测算法

    万次阅读 2018-04-21 11:43:43
    第一,覆盖所有基于区域的目标检测算法,包括:Fast RCNN, Faster...Part1 我们从基于区域的物体检测器中学到了什么?Part2 我们从SSD中学习到什么?Part3如何选择设计思路以及目标检测趋势首先介绍滑动窗口检测器 s...
  • 深度学习(十八)基于R-CNN的物体检测

    万次阅读 多人点赞 2017-02-21 19:37:50
    本篇博文主要讲解2014年CVPR上的经典paper:《Region-based Convolutional Networks for Accurate Object Detection and Segmentation》,这篇文章的算法又被称之为:R-CNN,是物体检测领域曾经获得state-of-art的...
  • 物体定位与检测

    万次阅读 2017-07-28 14:40:35
    给定一张图片或视频帧,找到其中所有目标的位置,并给出...然而对于计算机来说,目标检测最困难的部分在于计算机不清楚目标出现在图像中哪个区域。图像中的目标可能出现在任何位置,目标的形态可能存在各种各样的变化。
  • 【算法分析】SORT/Deep SORT 物体跟踪算法解析

    万次阅读 多人点赞 2019-01-01 20:21:46
    目录 SORT - SIMPLE ONLINE AND REALTIME TRACKING 概述 解析SORT算法代码 SORT算法的优缺点 Deep SORT - SIMPLE ONLINE AND REALTIME TRACKING WITH A DEEP ASSOCIATION METRIC ...关联度量(ASSOCIATION METRIC...
  • 检测碰撞有两种方式,一种是利用碰撞器,另外一种就是触发器。 碰撞器的种类: 1.Static Collider 静态碰撞器 指的是相互碰撞的两个物体没有附加刚体而只附加了Collider的游戏对象。这类对象在碰撞时会保持...
  • YOLOv1论文理解

    万次阅读 多人点赞 2017-04-21 09:27:21
    You Only Look Once: Unified, Real-Time Object Detection
  • 图像理解包含图像分类、物体检测、物体分割、实例分割等若干具体问题。每个问题研究范畴是什么?或者每个问题中图像的处理结果是什么?整理如下。
  • USB采集视频,用帧差法处理,得到移动物体的二值化后的白色图像,后面怎么判断已经检测到了移动物体? 各位大神,帮帮忙!先谢谢了
  • yolov3算法检测单类物体

    万次阅读 热门讨论 2019-12-03 10:50:48
    yolov3是目前目标检测类检测效果和检测速度最好的算法,原版的yolov3检测的物体种类众多,本文实在原有yolov3上将多累物体检测简化为单类物体检测,本文的原始代码基于github上copy的,源码下载地址为:...
  • 在Unity中,快速移动的物体在与其他物体进行碰撞检测时,可能会穿透。比如子弹和墙壁的碰撞检测。    如何解决这个问题呢?  网上看了下,有说Rigidbody修改continus的,但是我试了下,效果不好,还是会出现...
  • 图像物体分类与检测算法综述

    万次阅读 多人点赞 2017-04-01 13:41:45
    图像物体分类与检测算法综述 转自《计算机学报》 图像物体分类与检测是计算机视觉研究中的两个重要的基本问题,也是图像分割、物体跟踪、行为分析等其他高层视觉任务的基础。 本文从物体分类与检测问题的基本定义...
  • YOLO_原理详述

    万次阅读 2018-04-27 18:43:10
    问题背景:“end-to-end方法的典型代表就是有名的yolo。前面的方法中,CNN本质的作用还是用来分类,定位的功能其并没有做到。而yolo这种方法就是只通过CNN网络,就能够实现目标的定位和识别。” ...
1 2 3 4 5 ... 20
收藏数 86,001
精华内容 34,400
关键字:

物体检测