目标检测
Lavi_qq_2910138025
这个作者很懒,什么都没留下…
展开
-
一文读懂Faster RCNN
1 前言经过R-CNN和Fast RCNN的积淀,Ross B. Girshick在2016年提出了新的Faster RCNN,在结构上,Faster RCNN已经将特征抽取(feature extraction),proposal提取,bounding box regression(rect refine),classification都整合在了一个网络中,使得综合性能有较大提高,在检测速度方...转载 2018-12-30 16:44:25 · 2124 阅读 · 0 评论 -
滑动窗口切割图片并重定位标注框
在进行目标检测时候,尤其是小目标检测,将图片放大后再进行检测是一个常用的手段,但是方法的后的图像在输入网络的时候,有会被resize带一定得尺寸,这样的我们的放大就没有起到作用。所以有时候我们需要将图片放大后,使用滑动窗口切割产生多幅图像,然后再输入到网络中进行学习。在放大图像和切割图像的过程中,我们需要同时调整标注框。下面分享一下我写的放大和滑动窗口切割图像的python代码:#coding...原创 2019-01-12 22:20:22 · 6834 阅读 · 4 评论 -
目标检测为什么使用SmoothL1损失
首先来看L1 Loss和L2 loss:从上面的导数可以看出,L2 Loss的梯度包含 (f(x) - Y),当预测值 f(x) 与目标值 Y 相差很大时,容易产生梯度爆炸,而L1 Loss的梯度为常数,通过使用Smooth L1 Loss,在预测值与目标值相差较大时,由L2 Loss转为L1 Loss可以防止梯度爆炸。Fast RCNN首先提出了smooth L1损失函数:如上面的公式...转载 2019-08-18 20:03:24 · 4852 阅读 · 0 评论 -
手写非极大值抑制代码(NMS)
在物体检测领域当中,非极大值抑制应用十分广泛,目的是为了消除多余的框,找到最佳的物体检测的位置。那么具体如何操作呢?如下图所示,有三个boundingbox,其中第一个绿色boundingbox的置信度是0.7,第二个绿色boundingbox的置信度是0.6,第三个绿色boundingbox的置信度是0.7。非极大值抑制就是在这三个框当中选出置信度最高,且最有可能代表是目标的boundingbo...转载 2019-08-24 17:20:19 · 3967 阅读 · 0 评论 -
Faster RCNN中anchor的生成过程
主要参考py-faster-rcnn开源代码中的generate_anchors的实现:首先来看main函数:if __name__ == '__main__': import time t = time.time() a = generate_anchors() #最主要的就是这个函数 print time.time() - t print a ...转载 2019-08-12 14:57:34 · 1998 阅读 · 0 评论 -
YOLOv2、v3使用K-means聚类计算anchor boxes的具体方法
代码实现主要是AlexeyAB/darknet中scripts/gen_anchors.py,这里根据yolov2,yolov3的版本不同进行部分修改。yolov2的配置文件yolov2.cfg需要的anchors是相对特征图的,值很小基本都小于13;yolov3的配置文件yolov3.cfg需要的3个anchors是相对于原图来说的,相对都比较大。还有输入图片的大小(32的倍数)对于输出也是有...转载 2019-08-22 16:38:13 · 2427 阅读 · 0 评论 -
目标检测困难样本挖掘OHEM:Online Hard Example Mining
0 前言OHEM是CVPR2016的文章,它提出一种通过online hard example mining 算法训练Region-based Object Detectors,其优点:1.对于数据的类别不平衡问题不需要采用设置正负样本比例的方式来解决,这种在线选择方式针对性更强。2.当数据集增大,算法可以在原来基础上提升更大。当我们遇到数据集少,且目标检测positive proposa...转载 2019-08-22 21:45:32 · 2416 阅读 · 4 评论