All Projects → yeyupiaoling → PP-YOLO

yeyupiaoling / PP-YOLO

Licence: Apache-2.0 License
PaddlePaddle实现的目标检测模型PP-YOLO

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to PP-YOLO

Paddledetection
Object Detection toolkit based on PaddlePaddle. It supports object detection, instance segmentation, multiple object tracking and real-time multi-person keypoint detection.
Stars: ✭ 5,799 (+9728.81%)
Mutual labels:  yolov3, pp-yolo
QPT
[内测中]前向式Python环境快捷封装工具,快速将Python打包为EXE并添加CUDA、NoAVX等支持。
Stars: ✭ 308 (+422.03%)
Mutual labels:  paddlepaddle
yolo-deepsort-flask
Target detection and multi target tracking platform based on Yolo DeepSort and Flask.
Stars: ✭ 29 (-50.85%)
Mutual labels:  yolov3
AudioClassification-PaddlePaddle
基于PaddlePaddle实现的音频分类,博客地址:
Stars: ✭ 32 (-45.76%)
Mutual labels:  paddlepaddle
PaddleTokenizer
使用 PaddlePaddle 实现基于深度神经网络的中文分词引擎 | A DNN Chinese Tokenizer by Using PaddlePaddle
Stars: ✭ 14 (-76.27%)
Mutual labels:  paddlepaddle
drone-net
https://towardsdatascience.com/tutorial-build-an-object-detection-system-using-yolo-9a930513643a
Stars: ✭ 126 (+113.56%)
Mutual labels:  yolov3
TensorRT yolo3 module
You can import this module directly
Stars: ✭ 58 (-1.69%)
Mutual labels:  yolov3
baai-federated-learning-crane-baseline
电力人工智能数据竞赛——液压吊车目标检测赛道
Stars: ✭ 17 (-71.19%)
Mutual labels:  yolov3
car-crash-accident
Car Crash Accident Project
Stars: ✭ 14 (-76.27%)
Mutual labels:  yolov3
yolo3 tensorflow
yolo3 implement by tensorflow, including mobilenet_v1, mobilenet_v2
Stars: ✭ 48 (-18.64%)
Mutual labels:  yolov3
Smart-Park-with-YOLO-V3
Maintaining empty parking spot count using YOLO real-time vehicle detection. Code readily runnable in google colab.
Stars: ✭ 46 (-22.03%)
Mutual labels:  yolov3
Paddle-DALL-E
A PaddlePaddle version implementation of DALL-E of OpenAI.
Stars: ✭ 38 (-35.59%)
Mutual labels:  paddlepaddle
YOLO-V3-TensorFlow
The reimplementation of YOLO-V3 in TensorFlow.(comming soon)
Stars: ✭ 12 (-79.66%)
Mutual labels:  yolov3
Accident-avoidance-deepsortyoloFCRN
An accident avoidance program that raises alert when nearby vehicles are moving at a relative speed faster than a threshold value, additionally it logs some data onto NEM-Mijin blockchain network
Stars: ✭ 18 (-69.49%)
Mutual labels:  yolov3
PAPC
PAPC is a deep learning for point clouds platform based on pure PaddlePaddle
Stars: ✭ 55 (-6.78%)
Mutual labels:  paddlepaddle
live-cctv
To detect any reasonable change in a live cctv to avoid large storage of data. Once, we notice a change, our goal would be track that object or person causing it. We would be using Computer vision concepts. Our major focus will be on Deep Learning and will try to add as many features in the process.
Stars: ✭ 23 (-61.02%)
Mutual labels:  yolov3
h5 to weight yolo3
convert keras (tensorflow backend) yolov3 h5 model file to darknet yolov3 weights
Stars: ✭ 39 (-33.9%)
Mutual labels:  yolov3
finetuner
Finetuning any DNN for better embedding on neural search tasks
Stars: ✭ 442 (+649.15%)
Mutual labels:  paddlepaddle
computer-vision-dojo
This is a repository to learn and get more computer vision skills, make robotics projects integrating the computer vision as a perception tool and create a lot of awesome advanced controllers for the robots of the future.
Stars: ✭ 15 (-74.58%)
Mutual labels:  yolov3
miemiedetection
Pytorch implementation of YOLOX、PPYOLO、PPYOLOv2、FCOS an so on.
Stars: ✭ 52 (-11.86%)
Mutual labels:  yolov3

PP-YOLO

PP-YOLO是PaddleDetection优化和改进的YOLOv3的模型,其精度(COCO数据集mAP)和推理速度均优于YOLOv4模型,PP-YOLO在COCO test-dev2017数据集上精度达到45.9%,在单卡V100上FP32推理速度为72.9 FPS, V100上开启TensorRT下FP16推理速度为155.6 FPS。其中还包含了PP-YOLO tiny模型,此模型后量化压缩模型,将模型体积压缩到1.3M,对精度和预测速度基本无影响,在手机上部署,推理速度也是极快的。

训练

  1. 安装PaddlePaddle和PaddleDetection依赖库。
pip install paddlepaddle-gpu==2.1.0.post101 -f https://paddlepaddle.org.cn/whl/mkl/stable.html
pip install paddledet==2.1.0 -i https://mirror.baidu.com/pypi/simple
  1. 准备数据,默认使用的是VOC格式的数据集,首先将标注文件放在dataset/annotation/,图像文件放在dataset/images/,最后执行create_data_list.py程序生成数据列表和类别名称。

  2. 修改voc.yml中的类别数量num_classes,这个类别数量不用算上背景这一类别。

  3. 执行train.py开始训练,其中选择PP-YOLO和PP-YOLO tiny模型,并支持量化训练,具体看配置参数。

  4. 执行visualdl --logdir=log查看训练可视化信息。

评估

执行eval.py完成模型评估,其中参数-o weights为模型的路径,不需要带后缀名,执行之后输入如下。

python eval.py -o weights=output/ppyolo_mbv3_large_qat/best_model

2020-08-17 12:56:58,530-INFO: Test iter 0
2020-08-17 12:57:13,349-INFO: Test iter 100
2020-08-17 12:57:27,421-INFO: Test iter 200
2020-08-17 12:57:36,716-INFO: Test finish iter 268
2020-08-17 12:57:36,716-INFO: Total number of images: 1070, inference time: 27.43800773116421 fps.
2020-08-17 12:57:36,717-INFO: Start evaluate...
2020-08-17 12:57:36,999-INFO: Accumulating evaluatation results...
2020-08-17 12:57:37,017-INFO: mAP(0.5, 11point) = 90.75

预测

  1. 执行预测执行先要导出预测模型,执行export_model.py,其中参数--weights为模型的路径,不需要带后缀名,--output_dir输出预测模型的路径,文件目录结构如下。
python export_model.py -o weights=output/ppyolo_mbv3_large_qat/best_model
  1. 导出PaddleLite模型。
python to_lite_model.py

预测

项目提供了两种预测方式,第一种infer.py为使用图像路径进行预测。第二个infer_camera.py为调用摄像头进行实时预测。

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].