coursera deeplearning
1、landmark detection 地标检测
数据集包括图片和图片对应的地标\坐标值
神经网络输出地标值
2、object detection 目标检测
利用滑动窗口(sliding window)思想
滑动窗口不断检测物体存在与否以及位置
3、Convolutional Implementation of Sliding Windows 卷积实现滑动窗口
Turning FC layer into convolutional layers 利用卷积实现全连接 ——>利用1×1卷积层实现全连接层
利用一次卷积神经网络操作就实现循环滑动窗口的效果,节约计算成本
4、 Bounding Box Predictions 边界框预测
在YOLO算法中,每个grid cell(图片分割的方框)对应一个label,
这个label包括[ Pc , bx , by , bh , bw , C1 , C2 , C3 ]
Pc : 包含需要检测的物体为1,否则只有背景为0
bx , by : 物体中心所在位置的坐标,此坐标所在grid cell即为物体所在的grid cell ,数值为中心所在位置与grid cell 长宽比值的百分比,即0~1
bh , bw : 物体的长宽,数字为长宽占grid cell长宽的百分比,可以>1
C1 ,C2 , C3 : 物体的分类
5、Intersection Over Union 交并比
预测区域a
标签区域b
交并比IoU=(a∩b)/(a∪b)
一般认为IoU>0.5是可以接受的数值
6、Non-max Suppression 非最大值抑制 (讨论只有一类物体的问题)
为了解决对同一目标多次检测的问题,使用Non-max Suppression
一、丢弃所有Pc<=阈值(0.6)的Bounding Box (边界框)
while(还有没处理的Bounding Box)
二、选择最大的Pc的框作为 prediction 输出预测值
三、对剩下的边界框计算与 prediction 的IoU , 若IoU>=0.5 , 则将其丢弃
7、Anchor Boxes 锚框
不同物体和不同的锚框相关联,若预先定义n个锚框,则label标签就会有n个类的描述,若有两类则label=[ Pc , bx , by , bh , bw , C1 , C2 , C3 , Pc , bx , by , bh , bw , C1 , C2 , C3] ,一个grid cell 有一个label
若grid cell 中的对象数量超过Anchor Boxes 的数量,或者grid cell 中对应同一个Anchor Boxes 形状对象的数量大于2,Anchor Boxes 方法无法处理,需要挑选机制
8、YOLO Algorithm
一、关于Training set
y is h × w × Anchor Boxes numbers × Anchor Boxes feature length
其中 , 图片被分为 h × w 个 grid cell
Anchor Boxes numbers 为锚框形状(长的扁的...... )的数量
Anchor Boxes feature length 为一个锚框形状对应的特征 [ Pc , bx , by , bh , bw , C1 , C2 , C3 ]
二,making prediction
输出 y is h × w × Anchor Boxes numbers × Anchor Boxes feature length
三、outputting the non-max supressed outputs
分别对每个类别使用non-max supressed , 去掉无关的框
9、关于R-CNN
R-CNN 先对图像进行图像分割,然后对每个分割区域进行分类和目标检测
Fast R-CNN 为了解决R-CNN 速度慢的问题
Faster R-CNN 利用卷积网络实现图像分割以提升速度,然后对候选区域进行目标检测
总的来说,R-CNN 系列算法都比YOLO算法的速度慢
网友评论