yolo算法详解
1 算法
[论文]:/home/cuiyunpeng/Documents/infer/ai/papers/
作者: joseph
-
算法概述
yolo是一种对象检测算法, 它使用回归方法从整幅图像来预测bounding box和类别概
率。是一种端到端的神经网络算法。 -
算法原理
(1) 将图像分割成 S × S S \times S S×S的网格。如果一个对象的中心落在网格的中心,那么网
格中心就对应一个检测的物体对象;
(2) 每一个网络预测B个bounding box N个类别概率,每一个bounding box由x, y,
w, h,confidence组成,其中(x,y)坐标代表bounding box 相对于网格边界的
中心位置,w,h分别代别bounding box 相对于整张图片的宽和高,confidence为
bouding box 和 ground truth 的iou;类别概率代表网格单元包含对象的条件概率
(3) 整个网络的输出张量为
S × S × ( 5 × B + 20 ) S \times S \times (5\times B + 20) S×S×(5×B+20) -
实现步骤
(1) 将图片缩小成448x448大小的图片;
(2) 使用卷积神经网络训练处理图片;
(3) 使用模型置信度来阈值化输出结果; -
使用方法
-
函数原型
-
算法优缺点
- 优点: 速度快, 精度高;
- 缺点: 对小物体检测效果不好;
-
网络模型
网络模型由24 cov和两个conn组成。 采用1x1卷积进行特征下采样,紧接着3X3卷积 交替使用. -
训练
(1) 使用imgnet 预训练网络;
(2) 最后一层的激活函数使用线性函数, 其他层使用(leaky rectify linear)函数.
y = { x , x > 0 0.1 x , x < 0 (1) y= \begin{cases} x, \quad\quad x\gt0\\ 0.1x,\quad x < 0 \end{cases} \tag{1} y={x,x>00.1x,x<0(1)
(3) 损失函数使用总方差和(SSE)- 公式:
KaTeX parse error: Undefined control sequence: \lemda at position 7: cost=\̲l̲e̲m̲d̲a̲ ̲ ̲ ̲ ̲ ̲ - 优点: 简单, 容易优化
- 公式: