diff --git a/README_cn.md b/README_cn.md index 630e81fe3dbf4cf361d25e5c4d63ee466acbe732..deb4aa30daef45cd0c423843193d865a8ad9f6d4 100644 --- a/README_cn.md +++ b/README_cn.md @@ -2,91 +2,176 @@ 文档:[https://paddledetection.readthedocs.io](https://paddledetection.readthedocs.io) -# PaddleDetection +# 简介 -飞桨推出的PaddleDetection是端到端目标检测开发套件,旨在帮助开发者更快更好地完成检测模型的训练、精度速度优化到部署全流程。PaddleDetection以模块化的设计实现了多种主流目标检测算法,并且提供了丰富的数据增强、网络组件、损失函数等模块,集成了模型压缩和跨平台高性能部署能力。目前基于PaddleDetection已经完成落地的项目涉及工业质检、遥感图像检测、无人巡检等多个领域。 +PaddleDetection飞桨目标检测开发套件,旨在帮助开发者更快更好地完成检测模型的组建、训练、优化及部署等全开发流程。 -PaddleDetection新发布精度速度领先的[PP-YOLO](https://arxiv.org/abs/2007.12099)模型,COCO数据集精度达到45.2%,单卡Tesla V100预测速度达到72.9 FPS,详细信息见[PP-YOLO模型](configs/ppyolo/README_cn.md) +PaddleDetection模块化地实现了多种主流目标检测算法,提供了丰富的数据增强策略、网络模块组件(如骨干网络)、损失函数等,并集成了模型压缩和跨平台高性能部署能力。 -**目前检测库下模型均要求使用PaddlePaddle 1.8及以上版本或适当的develop版本。** +经过长时间产业实践打磨,PaddleDetection已拥有顺畅、卓越的使用体验,被工业质检、遥感图像检测、无人巡检、新零售、互联网、科研等十多个行业的开发者广泛应用。
- +
- -## 简介 - -特性: - -- 模型丰富: - - PaddleDetection提供了丰富的模型,包含目标检测、实例分割、人脸检测等100+个预训练模型,涵盖多种数据集竞赛冠军方案、适合云端/边缘端设备部署的检测方案。 - -- 易部署: - - PaddleDetection的模型中使用的核心算子均通过C++或CUDA实现,同时基于PaddlePaddle的高性能推理引擎可以方便地部署在多种硬件平台上。 - -- 高灵活度: - - PaddleDetection通过模块化设计来解耦各个组件,基于配置文件可以轻松地搭建各种检测模型。 - -- 高性能: - - 基于PaddlePaddle框架的高性能内核,在模型训练速度、显存占用上有一定的优势。例如,YOLOv3的训练速度快于其他框架,在Tesla V100 16GB环境下,Mask-RCNN(ResNet50)可以单卡Batch Size可以达到4 (甚至到5)。 - - -支持的模型结构: - -| | ResNet | ResNet-vd [1](#vd) | ResNeXt-vd | SENet | MobileNet | HRNet | Res2Net | -|--------------------|:------:|------------------------------:|:----------:|:-----:|:---------:|:------:| :--: | -| Faster R-CNN | ✓ | ✓ | x | ✓ | ✗ | ✗ | ✗ | -| Faster R-CNN + FPN | ✓ | ✓ | ✓ | ✓ | ✗ | ✓ | ✓ | -| Mask R-CNN | ✓ | ✓ | x | ✓ | ✗ | ✗ | ✗ | -| Mask R-CNN + FPN | ✓ | ✓ | ✓ | ✓ | ✗ | ✗ | ✓ | -| Cascade Faster-RCNN | ✓ | ✓ | ✓ | ✗ | ✗ | ✗ | ✗ | -| Cascade Mask-RCNN | ✓ | ✗ | ✗ | ✓ | ✗ | ✗ | ✗ | -| Libra R-CNN | ✗ | ✓ | ✗ | ✗ | ✗ | ✗ | ✗ | -| RetinaNet | ✓ | ✗ | ✓ | ✗ | ✗ | ✗ | ✗ | -| YOLOv3 | ✓ | ✓ | ✗ | ✗ | ✓ | ✗ | ✗ | -| SSD | ✗ | ✗ | ✗ | ✗ | ✓ | ✗ | ✗ | -| BlazeFace | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | -| Faceboxes | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | - -[1] [ResNet-vd](https://arxiv.org/pdf/1812.01187) 模型预测速度基本不变的情况下提高了精度。 - -**说明:** ✓ 为[模型库](docs/MODEL_ZOO_cn.md)中提供了对应配置文件和预训练模型,✗ 为未提供参考配置,但一般都支持。 - -更多的模型: - -- EfficientDet -- FCOS -- CornerNet-Squeeze -- YOLOv4 -- PP-YOLO - -更多的Backone: - -- DarkNet -- VGG -- GCNet -- CBNet -- Hourglass - -扩展特性: - -- [x] **Synchronized Batch Norm** -- [x] **Group Norm** -- [x] **Modulated Deformable Convolution** -- [x] **Deformable PSRoI Pooling** -- [x] **Non-local和GCNet** - -**注意:** Synchronized batch normalization 只能在多GPU环境下使用,不能在CPU环境或者单GPU环境下使用。 - -以下为选取各模型结构和骨干网络的代表模型COCO数据集精度mAP和单卡Tesla V100上预测速度(FPS)关系图。 +### 产品动态 + +- 2020.09.21-27: 【目标检测7日打卡课】手把手教你从入门到进阶,深入了解目标检测算法的前世今生。立即加入课程QQ交流群(1136406895)一起学习吧 :) +- 2020.07.24: 发布**产业最实用**目标检测模型 [PP-YOLO](https://arxiv.org/abs/2007.12099) ,深入考虑产业应用对精度速度的双重面诉求,COCO数据集精度45.2%,Tesla V100预测速度72.9 FPS,详细信息见[文档](configs/ppyolo/README_cn.md)。 +- 2020.06.11: 发布676类大规模服务器端实用目标检测模型,适用于绝大部分使用场景,可以直接用来预测,也可以用于微调其他任务。 + +### 特性 + +- **模型丰富**: 包含**目标检测**、**实例分割**、**人脸检测**等**100+个预训练模型**,涵盖多种**全球竞赛冠军**方案 +- **使用简洁**:模块化设计,解耦各个网络组件,开发者轻松搭建、试用各种检测模型及优化策略,快速得到高性能、定制化的算法。 +- **端到端打通**: 从数据增强、组网、训练、压缩、部署端到端打通,并完备支持**云端**/**边缘端**多架构、多设备部署。 +- **高性能**: 基于飞桨的高性能内核,模型训练速度及显存占用优势明显。支持FP16训练, 支持多机训练。 + +#### 套件结构概览 + + + + + + + + + + + + + + + + + + + + +
+ Architectures + + Backbones + + Components + + Data Augmentation +
+
  • Two-Stage Detection
  • +
      +
    • Faster RCNN
    • +
    • FPN
    • +
    • Cascade-RCNN
    • +
    • Libra RCNN
    • +
    • Hybrid Task RCNN
    • +
    • PSS-Det RCNN
    • +
    +
+
  • One-Stage Detection
  • +
      +
    • RetinaNet
    • +
    • YOLOv3
    • +
    • YOLOv4
    • +
    • PP-YOLO
    • +
    • SSD
    • +
    +
+
  • Anchor Free
  • +
      +
    • CornerNet-Squeeze
    • +
    • FCOS
    • +
    • TTFNet
    • +
    +
+
    +
  • Instance Segmentation
  • +
      +
    • Mask RCNN
    • +
    • SOLOv2 is coming soon
    • +
    +
+
    +
  • Face-Detction
  • +
      +
    • FaceBoxes
    • +
    • BlazeFace
    • +
    • BlazeFace-NAS
    • +
    +
+
+
    +
  • ResNet(&vd)
  • +
  • ResNeXt(&vd)
  • +
  • SENet
  • +
  • Res2Net
  • +
  • HRNet
  • +
  • Hourglass
  • +
  • CBNet
  • +
  • GCNet
  • +
  • DarkNet
  • +
  • CSPDarkNet
  • +
  • VGG
  • +
  • MobileNetv1/v3
  • +
  • GhostNet
  • +
  • Efficientnet
  • +
+
+
  • Common
  • +
      +
    • Sync-BN
    • +
    • Group Norm
    • +
    • DCNv2
    • +
    • Non-local
    • +
    +
+
  • FPN
  • +
      +
    • BiFPN
    • +
    • BFP
    • +
    • HRFPN
    • +
    • ACFPN
    • +
    +
+
  • Loss
  • +
      +
    • Smooth-L1
    • +
    • GIoU/DIoU/CIoU
    • +
    • IoUAware
    • +
    +
+
  • Post-processing
  • +
      +
    • SoftNMS
    • +
    • MatrixNMS
    • +
    +
+
  • Speed
  • +
      +
    • FP16 training
    • +
    • Multi-machine training
    • +
    +
+
+
    +
  • Resize
  • +
  • Flipping
  • +
  • Expand
  • +
  • Crop
  • +
  • Color Distort
  • +
  • Random Erasing
  • +
  • Mixup
  • +
  • Cutmix
  • +
  • Grid Mask
  • +
  • Auto Augment
  • +
+
+ +#### 模型性能概览 + +各模型结构和骨干网络的代表模型在COCO数据集上精度mAP和单卡Tesla V100上预测速度(FPS)对比图。
- +
**说明:** @@ -95,11 +180,6 @@ PaddleDetection新发布精度速度领先的[PP-YOLO](https://arxiv.org/abs/200 - PaddleDetection增强版`YOLOv3-ResNet50vd-DCN`在COCO数据集mAP高于原作10.6个绝对百分点,推理速度为61.3FPS,快于原作约70% - 图中模型均可在[模型库](#模型库)中获取 -以下为PaddleDetection发布的精度和预测速度优于YOLOv4模型的PP-YOLO与前沿目标检测算法的COCO数据集精度与单卡Tesla V100预测速度(FPS)关系图, PP-YOLO模型在[COCO](http://cocodataset.org) test2019数据集上精度达到45.2%,在单卡V100上FP32推理速度为72.9 FPS,详细信息见[PP-YOLO模型](configs/ppyolo/README_cn.md) - -
- -
## 文档教程 @@ -108,51 +188,56 @@ PaddleDetection新发布精度速度领先的[PP-YOLO](https://arxiv.org/abs/200 - [安装说明](docs/tutorials/INSTALL_cn.md) - [快速开始](docs/tutorials/QUICK_STARTED_cn.md) - [训练/评估/预测流程](docs/tutorials/GETTING_STARTED_cn.md) -- [如何训练自定义数据集](docs/tutorials/Custom_DataSet.md) +- [如何自定义数据集](docs/tutorials/Custom_DataSet.md) - [常见问题汇总](docs/FAQ.md) ### 进阶教程 -- [数据预处理及数据集定义](docs/advanced_tutorials/READER.md) -- [搭建模型步骤](docs/advanced_tutorials/MODEL_TECHNICAL.md) -- [模型参数配置](docs/advanced_tutorials/config_doc): +- 参数配置 - [配置模块设计和介绍](docs/advanced_tutorials/config_doc/CONFIG_cn.md) - - [RCNN模型参数说明](docs/advanced_tutorials/config_doc/RCNN_PARAMS_DOC.md) -- [迁移学习教程](docs/advanced_tutorials/TRANSFER_LEARNING_cn.md) -- [IPython Notebook demo](demo/mask_rcnn_demo.ipynb) -- [模型压缩](slim) + - [RCNN参数说明](docs/advanced_tutorials/config_doc/RCNN_PARAMS_DOC.md) + - [YOLOv3参数说明]() +- 迁移学习 + - [如何加载预训练](docs/advanced_tutorials/TRANSFER_LEARNING_cn.md) +- 模型压缩(基于[PaddleSlim](https://github.com/PaddlePaddle/PaddleSlim)) - [压缩benchmark](slim) - - [量化](slim/quantization) - - [剪枝](slim/prune) - - [蒸馏](slim/distillation) - - [神经网络搜索](slim/nas) -- [推理部署](deploy) + - [量化](slim/quantization), [剪枝](slim/prune), [蒸馏](slim/distillation), [搜索](slim/nas) +- 推理部署 - [模型导出教程](docs/advanced_tutorials/deploy/EXPORT_MODEL.md) - - [Python端推理部署](deploy/python) - - [C++端推理部署](deploy/cpp) + - [服务器端Python部署](deploy/python) + - [服务器端C++部署](deploy/cpp) + - [移动端部署](https://github.com/PaddlePaddle/Paddle-Lite-Demo) + - [在线Serving部署](https://github.com/PaddlePaddle/Serving) - [推理Benchmark](docs/advanced_tutorials/deploy/BENCHMARK_INFER_cn.md) +- 进阶开发 + - [新增数据预处理](docs/advanced_tutorials/READER.md) + - [新增检测算法](docs/advanced_tutorials/MODEL_TECHNICAL.md) + ## 模型库 -- [模型库](docs/MODEL_ZOO_cn.md) -- [移动端模型](configs/mobile/README.md) -- [Anchor free模型](configs/anchor_free/README.md) -- [人脸检测模型](docs/featured_model/FACE_DETECTION.md) -- [YOLOv3增强模型](docs/featured_model/YOLOv3_ENHANCEMENT.md): COCO mAP高达43.6%,原论文精度为33.0% -- [PP-YOLO模型](configs/ppyolo/README_cn.md): COCO mAP高达45.3%,单卡Tesla V100预测速度高达72.9 FPS -- [行人检测预训练模型](docs/featured_model/CONTRIB_cn.md) -- [车辆检测预训练模型](docs/featured_model/CONTRIB_cn.md) -- [Objects365 2019 Challenge夺冠模型](docs/featured_model/champion_model/CACascadeRCNN.md) -- [Open Images 2019-Object Detction比赛最佳单模型](docs/featured_model/champion_model/OIDV5_BASELINE_MODEL.md) -- [服务器端实用目标检测模型](configs/rcnn_enhance/README.md): V100上速度20FPS时,COCO mAP高达47.8%。 -- [大规模实用目标检测模型](docs/featured_model/LARGE_SCALE_DET_MODEL.md): 提供了包含676个类别的大规模服务器端实用目标检测模型,适用于绝大部分使用场景,可以直接用来预测,也可以用于微调其他任务。 +- 通用目标检测: + - [模型库和基线](docs/MODEL_ZOO_cn.md) + - [移动端模型](configs/mobile/README.md) + - [Anchor Free](configs/anchor_free/README.md) + - [PP-YOLO模型](configs/ppyolo/README_cn.md) + - [676类目标检测](docs/featured_model/LARGE_SCALE_DET_MODEL.md) + - [两阶段实用模型PSS-Det](configs/rcnn_enhance/README.md) +- 垂类领域 + - [人脸检测](docs/featured_model/FACE_DETECTION.md) + - [行人检测](docs/featured_model/CONTRIB_cn.md) + - [车辆检测](docs/featured_model/CONTRIB_cn.md) +- 比赛方案 + - [Objects365 2019 Challenge夺冠模型](docs/featured_model/champion_model/CACascadeRCNN.md) + - [Open Images 2019-Object Detction比赛最佳单模型](docs/featured_model/champion_model/OIDV5_BASELINE_MODEL.md) + +## 版本更新 +v0.4.0版本已经在`07/2020`发布,增加PP-YOLO, TTFNet, HTC, ACFPN等多个模型,新增BlazeFace人脸关键点检测模型,新增移动端SSDLite系列优化模型,新增GridMask,RandomErasing数据增强方法,新增Matrix NMS和EMA训练,提升易用性,修复已知诸多bug等,详细内容请参考[版本更新文档](docs/CHANGELOG.md)。 ## 许可证书 本项目的发布受[Apache 2.0 license](LICENSE)许可认证。 -## 版本更新 -v0.4.0版本已经在`07/2020`发布,增加PP-YOLO, TTFNet, HTC, ACFPN等多个模型,新增BlazeFace人脸关键点检测模型,新增移动端SSDLite系列优化模型,新增GridMask,RandomErasing数据增强方法,新增Matrix NMS和EMA训练,提升易用性,修复已知诸多bug等,详细内容请参考[版本更新文档](docs/CHANGELOG.md)。 -## 如何贡献代码 +## 贡献代码 我们非常欢迎你可以为PaddleDetection提供代码,也十分感谢你的反馈。 diff --git a/docs/images/football.gif b/docs/images/football.gif new file mode 100644 index 0000000000000000000000000000000000000000..e9e3fbd6b046f7ed60808ae6396f58a4006c4414 Binary files /dev/null and b/docs/images/football.gif differ