学习笔记--目标检测1 Faster RCNN系列

0、rcnn

思想、每一部分的作用,如何工作、不足

1、fast rcnn

2、faster rcnn

2.1解决了问题

2.2锚框

2.3RPN

2.4RPN到底学什么

2.5RPNloss

2.6roi pooling

2.7roi pooling不足

2.8Bbox head

1、基本概念

 

0、rcnn

思想:

对每张图片选取多个区域,然后每个区域作为一个样本进入到卷积网络中提取特征。当时是视为分类问题处理的

 

选择搜索使用纹理颜色等相似性这种特征进行特征提取特

SVM分类器可以训练出来去判断这个是不是属于某一类

比如2000个候选区域,就要进行2000次卷积,其实相当于一张图片使用一个网络去提取特征

 

 

1、fast rcnn

不是端到端,因为他需要在原图上滑动窗口去找一些感兴趣区域。

图片进入CNN提取特征得到特征图

使用roi pooling将其变为大小相同的小块而不是直接变,避免特征损失

 

2、faster rcnn

2.1解决了问题

faster rcnn解决了滑动窗口提取特征的问题,在特征提取完后的特征图上进行滑动窗口,节约了时间和算力

整个过程分两阶段,先进入RPN提取候选区域,再送入一个网络中进行分类与回归。

2.2锚框

 

2.3RPN

经过RPN会产生大量认为可能的候选框,经过分类网络与回归网络进行预测。进入分类网络,通过classification loss得到一个二分类结果,是背景或者是前景(数据集上对应的某一类,具体是哪一类,这里先做一个粗略判断),一般设置阈值为0.5,输出大于该阈值的为前景,否则为背景。这些前景又称为感兴趣的区域(Region of Interests,ROI)。进入回归网络,同时,RPN也会在输入的特征图上框定这些ROI的大致位置,即输出Bounding-box。还引入了锚框(anchor),锚框是一组预先在特征图上进行滑动窗口,提前设定好的一组候选框集合,特征图上每个点可能提取到多个锚框。在RPN中通过这些锚框来回归出一些候选区域。锚框其实是来辅助RPN位置回归的。该组候选框的特点是不同面积,不同长宽比。

1、backbone的输出结果得到(512*60*40)进行3*3卷积(得到256*60*40),再用1*1卷积分成2个分支,2维是分类,4维是回归

2、再与anchor结合得到最终的候选框proposal(到这里候选框才生成)

 

2.4RPN到底学什么

学anchor是否包含物体

学anchor到真实框的偏移量

 

2.5RPNloss

有了RPN网络输出,有了这些输出的标签信息就可以计算loss,分类损失与回归损失,回归损失只包含正样本的回归损失

 

解码:偏移量应用到anchor形成预测框

编码:真实框与anchor生成偏移量

clip:限制预测框在图片内

面积小,分数低过滤

NMS,去掉接近的框

去掉分数低的

生成proposals

2.6roi pooling

2.7roi pooling不足

 

 

2.8Bbox head

81,类别数

423,类别数乘4

roi与真实框共同参与采样

1、基本概念

bounding box:Bbox边界框,只要是框就可以这么称

用四个浮点数表示

一些注意事项:

1、张量&PIL一些细节

张量有shape---tensor.shape

PIL有size--img.size

2、目标检测评价指标

precision = 实际就是正样本,划分对了/所有被模型预测为正样本的数据的数量

recall =  实际就是正样本,划分对了/所有真实类别为正样本的数据的数量

3、PR曲线

P和R一般是矛盾的,但是一个模型好坏是需要两者都尽可能的好

最好的方法是找PR曲线围成的面积AUC

4、IOU指标

5、目标检测中的PR

6、mAP

7、非极大值抑制

8、SPP&RCNN&fast RCNN

9、测试环境是否可以使用cuda

>>> import torch
>>> torch.cuda.device_count()
1
>>> torch.cuda.is_available()
True
>>>

10、在jupyter中,使用!开头说明这个是在命令行运行,不带!说明在Python中运行

os.chdir("")# 进入项目
!Is# 查看当前文件夹下的文件

11、在faster RCNN中先进行RPN得到候选框,然后再进行nms删选候选框

12、问:alexnet_model.classifier._modules["6"] 这里面6为什么加引号呢

答:列表中输入的index是string类型

13、保存pycharm图片到本地

plt.savefig('D:\test.png')
plt.show()

14、np.astype类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值