Stanford curriculum cs231n学习记录(2)计算机视觉任务

一、单个物体的分类与定位(图片的分类与定位)

  1. 任务要求:一幅图像上只有一个物体,识别这个物体的类别并且在图片中进行框选。
  2. 思路一:
    step1:训练或者是下载一个目标识别的网络(eg.AlexNet、VGG、GooLeNet)
    step2:在下载好的网络的特征提取层之后加入一个新的头部,用于框选回归(位置表示(x,y,w,h))
    step3:使用SGD和L2损失训练新的上面的全连接层
    step4:在实际使用过程中,两头头部都要加上
    注意:不同的类别产生的边界是不同的,有的检测与识别考虑了这种影响。
    还有一个问题是在何处加上回归,不同的网路有不同的处理方法
    这里写图片描述
    3.思路二:滑动窗口overfit网络
    选择不同尺度的滑动窗口中,选择得分值最高的,overfit网络架构如下:
    这里写图片描述
    不同网络的错误率
    这里写图片描述

二、目标检测

任务要求:一副输入图像上有多个物体,需要对每一个物体进行识别和定位,这叫做目标检测,或者叫做目标检测与识别。
边界提案(候选框)的生成方式:在图像上生成可能存在的目标区域。
一种最著名的方式是选择性搜索。其从像素出发,通过颜色和纹理产生相似性区域,在相似性区域周边,产生边界提案。
这里写图片描述
1、R-CNN(基于区域的CNN方法):
(1)其通过选择性搜索,从一副图像中选择出2K个大小不同,位置不同的候选框(相对于随机产生候选框,已经节省了很多),之后通过将不同大小的图像转换成大小相同的图像通过CNN进行分类和回归,回归是对候选框进行微调。
训练过程:
step1:训练或者下载一个分类模型(eg.AlexNet)
step2:微调用于检测(改变全连接层,产生不同的类别(需要检测的类别数量),数据重新训练一次)
这里写图片描述
step3:提取特征,使用选择性搜索算法选择出候选区域,切分后通过CNN进行推理,提取第五个汇聚层(pool 5)的输出特征保存在硬盘中。
sep4:训练一个二分类的SVM,判断图像中是否包含物体,不包含物体的称之为背景。
step5:边界框回归(bbox regression):通过一个线性回归模型对边界框进行修正。回归的内容是位置(两个坐标,四个数值)
这里写图片描述
具体可观看R-CNN论文
(2)目标检测评价指标
mAP(平均正确率)
正负样例的判定:如果一个测试结果与ground truth的交幷比(IoU)大于一个阈值,就认为是正确的样例。通过这个结果计算mAP。
(3)R-CNN存在问题
a.测试时间慢:对于每一个边界提案都需要运行一次全连接层
b.SVMs和回归是离线训练的,
c.复杂的训练流程
2、fast R-CNN
结构:

3、faster R-CNN
不多做介绍了,参考相关论文

猜你喜欢

转载自blog.csdn.net/weixin_40100431/article/details/81080798
今日推荐