物体检测随记

回归任务

分类任务 猫还是狗。

第一种解决方案先找出来一些框,再对这些款做一些分类的操作。通过Selective Search利用图像上文理、颜色特征做一些组合,看那些小区域的特征是比较相似的 然后合并成一个大的区域。先找出来一些框,然后对这些框做物体分类的任务。

这种方法显得有些笨,因为我们需要将找到的每一个框都输入神经网络提取特征进行分类和回归任务。 我们利用Selective Search会提取出来近2000个框,每个框都需要跑一次网络,在跑网络前还要进行resize等等预处理的操作,这会使得计算过程非常非常慢。这时可以利用R-CNN

R-CNN步骤

固化特征
利用固化下来的特征进行分类。
再利用固化下来的特征来做回归。
分类,回归会使得整体的效率非常的低。

每一张图片我们花费了几秒钟时间,这时相当慢的。我们再来想想无人驾驶汽车它的要求一般近乎实时的,因为它每时每刻都要检测很多东西。那么怎样让检测的速度更快?

R-CNN的问题

每一个框都需要跑一个完整的神经网络,才能分类出来一个结果,然后加上SVM做回归。这种做法显得太复杂了,那能不能同时的对他们进行一个解决呢?能不能然后全部的框共享一个神经网络?

Fast R-CNN(test time)

先对原始图整体对一个卷积,得到特征图,然后把那些框映射到对应的特征图区域上。

Faster R-CNN

能不能把找框的这件事也放到神经网络中来呢?Faster R-CNN提出来这么一个层Region proposal network,这个层的意思就是说,用卷积神经网络来帮我们来选一下,什么样是一个框,什么样不是一个框。对于一个原始的图片,我们会有一些标注文件来标注图片上那些框的坐标值分别是多少,我们可以利用卷积神经网络来生成一些框,看这些生成处理的框跟真实的框是不是一样的,让神经网络去这么学,生成什么样的框才是一个物体,以及物体可能存在的位置是什么样的,在这里我们就引入了一个RPN层来做这么一件事,判断网络训练出来的特征图上什么样的特征是一个框,判断什么是前景什么是背景,前景是一个物体,背景就不是一个物体,这里我们就不需要Selective Search来帮我们选择出来一些框。
RPN是Faster R-CNN比较核心的一点,它是先用神经网络进行框的提取,那它提取出来的框一定是符合我们人的一个标准吗?可能存在一些框,有的打有的小,那他是怎么提取出来这些框的呢?神经网络首先会生成一系列的框,它有3个比例的框:1:2,2:1,1:1还有三个基数:128,256,512,基数的意思是首先我会生成一个常规的框,然后对这些常规的框进行一个变换,让神经网络去学一下这些常规的框怎么样进行一个常规的变换,它才能是一个前景(物体)。变换的意思比如说:对于特征图上的一个点,对这样一个点来说我会生成9种框,9种框是因为有3个基数,3个比例。接下来就要学一下对这9个框该怎样进行一个变换,什么样变换使得和我们真实的label标注值(框)最拟合,这样就可以找出来最终的框的位置,得到最终的位置之后再去做一个分类任务。

对一个点进行特征的提取。

对一个点我们可以生产9个框。
现阶段很多物体检查的方法都是借助于Faster R-CNN。现阶段留下的物体检测算法SSD,YOLO,可以参考它们的论文,自己debug跑一遍。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值