Skip to content

Commit

Permalink
Add document and update file
Browse files Browse the repository at this point in the history
  • Loading branch information
HarleysZhang committed Sep 13, 2021
1 parent ced57b3 commit acc11a5
Show file tree
Hide file tree
Showing 3 changed files with 82 additions and 63 deletions.
19 changes: 19 additions & 0 deletions 6-computer_vision/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
- [计算机视觉](#计算机视觉)
- [传统图像处理](#传统图像处理)

## 计算机视觉

- 二阶段目标检测算法
- [3-Faster RCNN论文解读](./目标检测/3-Faster%20RCNN论文解读.md)
- [3-Mask RCNN理解](./目标检测/3-Mask%20RCNN理解.md)
- [3-Cascade RCNN网络理解](../6-computer_vision/目标检测/3-Cascade%20RCNN网络理解.md)

- 一阶段目标检测算法
- [4-YOLOv1-v5论文解读](./目标检测/4-YOLOv1-v5论文解读.md)
- [4-经典YOLO变体模型](./目标检测/4-经典YOLO变体模型.md)
- [4-RetinaNet网络理解](./目标检测/4-RetinaNet网络理解.md)

## 传统图像处理

- [1-数字图像处理基础](./数字图像处理/1-数字图像处理基础.md)
- [2-OpenCV3 图像处理笔记](./数字图像处理/2-OpenCV3%20图像处理笔记.md)
10 changes: 5 additions & 5 deletions 6-computer_vision/目标检测/3-Faster RCNN论文解读.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,18 +78,18 @@ RPN 完成 `positive/negative 分类` + `bounding box regression 坐标回归`

在挑选 `1:1` 正负样本比例的 `anchor` 用作 `RPN` 训练集后,还需要计算训练集数据对应的标签。对于每个 `anchor`, 对应的标签是 `gt_label``gt_loc``gt_label` 要么为 `1`(前景),要么为 `0`(背景),而 `gt_loc` 则是由 `4` 个位置参数 $(t_x,t_y,t_w,t_h)$ 组成,它们是 `anchor box``ground truth bbox` 之间的偏移量,因为回归偏移量比直接回归座标更好。在 `Faster RCNN`原文,`positive anchor``ground truth` 之间的偏移量 $(t_{x}, t_{y})$ 与尺度因子 $(t_{w}, t_{h})$ 计算公式如下:

$$t_{x} = (x-x_{a})/w_{a}, t_{y}=(y-y_{a})/h_{a} \\\\
t_{w} = log(w/w_{a}), t_{h}=log(h/h_{a}) \\\\
t^{*}_{x} = (x^{*}-x_{a})/w_{a}, t^{*}_{y}=(y^{*}-y_{a})/h_{a} \\\\
t^{*}_{w} = log(w^{*}/w_{a}), t^{*}_{h}=log(h^{*}/h_{a})$$
$$t_{x} = (x-x_{a})/w_{a}, t_{y}=(y-y_{a})/h_{a} \\
t_{w} = log(w/w_{a}), t_{h}=log(h/h_{a}) \\
t^{*}_{x} = (x^{*}-x_{a})/w_{a}, t^{*}_{y}=(y^{*}-y_{a})/h_{a} \\
t^{*}_{w} = log(w^{*}/w_{a}), t^{*}_{h}=log(h^{*}/h_{a}) $$

参数解释:where $x, y, w,$ and $h$ denote the box’s center coordinates and its width and height. Variables $x, x_{a}$,and $x^{*}$ are for the predicted box, anchor box, and groundtruth box respectively (likewise for $y, w, h$).

计算分类损失用的是交叉熵损失,而计算回归损失用的是 Smooth_l1_loss. 在计算回归损失的时候,只计算正样本(前景)的损失,不计算负样本的位置损失。loss 计算公式如下:

![rpn的loss计算公式](../../data/images/faster-rcnn/rpn的loss计算公式.jpg)

**公式解释**:Here, $i$ is the index of an anchor in a mini-batch and $p_{i}$ is the predicted probability of anchor i being an object. The ground-truth label $p_i^{*}$ is 1 if the anchor is positive, and is 0 if the anchor is negative. $t_{i}$ is a vector representing the 4 parameterized coordinates of the predicted bounding box, and $t_i^{*}$ is that of theground-truth box associated with a positive anchor.
**公式解释**:Here, $i$ is the index of an anchor in a mini-batch and $p_{i}$ is the predicted probability of anchor i being an object. The ground-truth label $p_i^*$ is 1 if the anchor is positive, and is 0 if the anchor is negative. $t_{i}$ is a vector representing the 4 parameterized coordinates of the predicted bounding box, and $t_i^*$ is that of theground-truth box associated with a positive anchor.

### RPN 生成 RoIs(Proposal Layer)

Expand Down
116 changes: 58 additions & 58 deletions 6-computer_vision/目标检测/4-YOLOv1-v5论文解读.md
Original file line number Diff line number Diff line change
@@ -1,66 +1,66 @@
- [一,YOLOv1](#一yolov1)
- [Abstract](#abstract)
- [1. Introduction](#1-introduction)
- [2. Unified Detectron](#2-unified-detectron)
- [2.1. Network Design](#21-network-design)
- [2.2 Training](#22-training)
- [2.4. Inferences](#24-inferences)
- [4.1 Comparison to Other Real-Time Systems](#41-comparison-to-other-real-time-systems)
- [5,代码实现思考](#5代码实现思考)
- [Abstract](#abstract)
- [1. Introduction](#1-introduction)
- [2. Unified Detectron](#2-unified-detectron)
- [2.1. Network Design](#21-network-design)
- [2.2 Training](#22-training)
- [2.4. Inferences](#24-inferences)
- [4.1 Comparison to Other Real-Time Systems](#41-comparison-to-other-real-time-systems)
- [5,代码实现思考](#5代码实现思考)
- [二,YOLOv2](#二yolov2)
- [摘要](#摘要)
- [YOLOv2 的改进](#yolov2-的改进)
- [1,中心坐标位置预测的改进](#1中心坐标位置预测的改进)
- [2,1 个 gird 只能对应一个目标的改进](#21-个-gird-只能对应一个目标的改进)
- [3,backbone 的改进](#3backbone-的改进)
- [4,多尺度训练](#4多尺度训练)
- [损失函数](#损失函数)
- [摘要](#摘要)
- [YOLOv2 的改进](#yolov2-的改进)
- [1,中心坐标位置预测的改进](#1中心坐标位置预测的改进)
- [2,1 个 gird 只能对应一个目标的改进](#21-个-gird-只能对应一个目标的改进)
- [3,backbone 的改进](#3backbone-的改进)
- [4,多尺度训练](#4多尺度训练)
- [损失函数](#损失函数)
- [三,YOLOv3](#三yolov3)
- [摘要](#摘要-1)
- [1,介绍](#1介绍)
- [2,改进](#2改进)
- [2.1,边界框预测](#21边界框预测)
- [2.2,分类预测](#22分类预测)
- [2.3,跨尺度预测](#23跨尺度预测)
- [2.4,新的特征提取网络](#24新的特征提取网络)
- [2.5,训练](#25训练)
- [3,实验结果](#3实验结果)
- [4,失败的尝试](#4失败的尝试)
- [5,改进的意义](#5改进的意义)
- [摘要](#摘要-1)
- [1,介绍](#1介绍)
- [2,改进](#2改进)
- [2.1,边界框预测](#21边界框预测)
- [2.2,分类预测](#22分类预测)
- [2.3,跨尺度预测](#23跨尺度预测)
- [2.4,新的特征提取网络](#24新的特征提取网络)
- [2.5,训练](#25训练)
- [3,实验结果](#3实验结果)
- [4,失败的尝试](#4失败的尝试)
- [5,改进的意义](#5改进的意义)
- [四,YOLOv4](#四yolov4)
- [1,摘要及介绍](#1摘要及介绍)
- [2,相关工作](#2相关工作)
- [2.1,目标检测方法](#21目标检测方法)
- [2.2,Bag of freebies(免费技巧)](#22bag-of-freebies免费技巧)
- [2.3,Bag of specials(即插即用模块+后处理方法)](#23bag-of-specials即插即用模块后处理方法)
- [3,方法](#3方法)
- [3.1,架构选择](#31架构选择)
- [3.2,Selection of BoF and BoS](#32selection-of-bof-and-bos)
- [3.3,额外的改进](#33额外的改进)
- [3.4 YOLOv4](#34-yolov4)
- [4,实验](#4实验)
- [4.1,实验设置](#41实验设置)
- [4.2,对于分类器训练过程中不同特性的影响](#42对于分类器训练过程中不同特性的影响)
- [4.3,对于检测器训练过程中不同特性的影响](#43对于检测器训练过程中不同特性的影响)
- [4.4,不同骨干和预训练权重对检测器训练的影响](#44不同骨干和预训练权重对检测器训练的影响)
- [4.5,不同小批量的大小对检测器训练的影响](#45不同小批量的大小对检测器训练的影响)
- [5,结果](#5结果)
- [6,YOLOv4 主要改进点](#6yolov4-主要改进点)
- [6.1,Backbone 改进](#61backbone-改进)
- [6.1.1,CSPDarknet53](#611cspdarknet53)
- [6.1.2,Mish 激活](#612mish-激活)
- [6.1.3,Dropblock](#613dropblock)
- [6.2,Neck 网络改进](#62neck-网络改进)
- [6.3,预测的改进](#63预测的改进)
- [6.3.1,使用CIoU Loss](#631使用ciou-loss)
- [6.3.2,使用DIoU_NMS](#632使用diou_nms)
- [6.4,输入端改进](#64输入端改进)
- [6.4.1,Mosaic 数据增强](#641mosaic-数据增强)
- [1,摘要及介绍](#1摘要及介绍)
- [2,相关工作](#2相关工作)
- [2.1,目标检测方法](#21目标检测方法)
- [2.2,Bag of freebies(免费技巧)](#22bag-of-freebies免费技巧)
- [2.3,Bag of specials(即插即用模块+后处理方法)](#23bag-of-specials即插即用模块后处理方法)
- [3,方法](#3方法)
- [3.1,架构选择](#31架构选择)
- [3.2,Selection of BoF and BoS](#32selection-of-bof-and-bos)
- [3.3,额外的改进](#33额外的改进)
- [3.4 YOLOv4](#34-yolov4)
- [4,实验](#4实验)
- [4.1,实验设置](#41实验设置)
- [4.2,对于分类器训练过程中不同特性的影响](#42对于分类器训练过程中不同特性的影响)
- [4.3,对于检测器训练过程中不同特性的影响](#43对于检测器训练过程中不同特性的影响)
- [4.4,不同骨干和预训练权重对检测器训练的影响](#44不同骨干和预训练权重对检测器训练的影响)
- [4.5,不同小批量的大小对检测器训练的影响](#45不同小批量的大小对检测器训练的影响)
- [5,结果](#5结果)
- [6,YOLOv4 主要改进点](#6yolov4-主要改进点)
- [6.1,Backbone 改进](#61backbone-改进)
- [6.1.1,CSPDarknet53](#611cspdarknet53)
- [6.1.2,Mish 激活](#612mish-激活)
- [6.1.3,Dropblock](#613dropblock)
- [6.2,Neck 网络改进](#62neck-网络改进)
- [6.3,预测的改进](#63预测的改进)
- [6.3.1,使用CIoU Loss](#631使用ciou-loss)
- [6.3.2,使用DIoU_NMS](#632使用diou_nms)
- [6.4,输入端改进](#64输入端改进)
- [6.4.1,Mosaic 数据增强](#641mosaic-数据增强)
- [五,YOLOv5](#五yolov5)
- [5.1,网络架构](#51网络架构)
- [5.2,创新点](#52创新点)
- [5.2.1,自适应anchor](#521自适应anchor)
- [5.3,实验结果](#53实验结果)
- [5.1,网络架构](#51网络架构)
- [5.2,创新点](#52创新点)
- [5.2.1,自适应anchor](#521自适应anchor)
- [5.3,实验结果](#53实验结果)
- [参考资料](#参考资料)

## 一,YOLOv1
Expand Down

0 comments on commit acc11a5

Please sign in to comment.