Py学习  »  Git

GitHub 又一黑科技项目面世!这几个功能简直强到离谱...

GitHubDaily • 2 年前 • 318 次点击  
公众号关注 “GitHubDaily”
设为 “星标”,每天带你逛 GitHub!

大家好,我是小 G。

上面那张动图,是当下 AI 技术领域中,计算机视觉最为常见的应用场景。

今天要给大家介绍的项目,就是 GitHub 上一款开源的 AI 工具箱,它集成了上述动图中所有功能,就像瑞士军刀般,一应俱全,简直强到离谱...

开始讨论计算机视觉时,自然不免俗的要谈到它的基础核心 - 目标检测技术,该技术支撑了包括人脸识别、目标跟踪、关键点检测、图像搜索等等 70% 以上视觉任务。

虽然业界 YOLO、Anchor Free、Transformer 等系列目标检测算法层出不穷,却缺乏可以统一、敏捷、组合应用这些先进算法,并支持包括模型压缩、多端高性能部署等功能实现产业应用端到端落地的开发套件。

飞桨目标检测开发套件 PaddleDetection 就是这样一个模型先进且丰富、任务覆盖全面、端到端能力完备的产业级开发套件:

  • 模型先进且丰富:230+ 主流业界领先模型,10+ SOTA 及顶会冠军方案(面向产业应用的高性能算法);

  • 任务覆盖全面:全面覆盖目标检测、实例分割、目标跟踪、关键点检测任务领域,以及工业制造、安防巡检、智慧交通等 10 个以上行业领域;

  • 端到端能力完备:全面覆盖前沿模型压缩,量化、剪枝、蒸馏、检测结构搜索方法,并在服务端、移动端等多种硬件环境完全打通,助力开发者快速实现高性能部署。

GitHub:https://github.com/PaddlePaddle/PaddleDetection

PaddleDetection 所有源码及教程均已开源,欢迎大家使用,并 Star 鼓励~

性能卓越算法全面升级

230 + 主流目标检测、实例分割、跟踪、关键点检测算法组成全明星阵容,囊括多种 SOTA 算法及冠军方案:

  • 0.99M、 150FPS 轻量级 SOTA 检测算法 PP-PicoDet

  • 超越 YOLOv4、YOLOv5 的工业级 SOTA 模型 PP-YOLOv2

  • 122FPS、51.8%AP 的轻量级 SOTA 多人关键点检测算法 PP-TinyPose

功能全面覆盖

100 + 垂类预训练模型,应用场景覆盖工业制造、安防巡检、智慧交通等 10 + 行业:

  • 实时跟踪系统 PP-Tracking,一网打尽单 / 多镜头下的行人车辆跟踪能力;

  • 覆盖旋转框检测、实例分割、行人检测、人脸检测、车辆检测等垂类任务。

易用性全面提升

多种前沿压缩策略、灵活高效的部署支持,全方位助力算法实现高性能的压缩与部署:

  • 一种蒸馏技术,三种量化策略,五种剪裁方式,支持策略联合实现,保持模型精度的同时大幅降低模型体积,适配各类硬件环境

  • 全面打通本地化、服务化、移动端部署,并支持 Python、C++ 的部署语言及 TensorRT 的加速。

想要了解详细算法性能、功能细节,以及压缩与部署策略的小伙伴们请接着往下看。

更快更强的 PP 系列明星算法

(一)0.99M、 150FPS 轻量级 SOTA 检测算法 PP-PicoDet

PP-PicoDet 一共有三种尺寸,其中 PP-PicoDet-S 参数量仅有 0.99M,却有 30.6% mAP 的精度,当输入尺寸为 320 时,推理速度甚至可达 150FPS.

不仅 mAP 比 YOLOX-Nano 高 4.8%,端侧推理速度还提升了 55%,相比 NanoDet-M-Plus-1.5x,体积少 13.5%,速度快 14%,mAP 高 0.7%。

而 PP-PicoDet-L 则在仅有 3.3M 参数量的情况下 mAP 达到 40.9%,比 YOLOv5s 高 3.7%,推理速度提升 44%。

PP-PicoDet 也在不断优化中,请大家敬请期待。

(二)性能超越 YOLOv4、YOLOv5 的高精度检测算法 PP-YOLOv2

作为产业级 SOTA 模型,PP-YOLOv2(R50)mAP 达到了 49.5%, FPS 高达 106.5FPS,超越了 YOLOv4 甚至 YOLOv5,而如果使用 RestNet101 作为骨架网络,PP-YOLOv2(R101)的 mAP 更高达 50.3%,并且比同等精度下的 YOLOv5x 快 15.9%。

(三)122FPS、51.8% AP 的轻量级 SOTA 多人关键点检测算法 PP-TinyPose

PP-TinyPose 在单人和多人场景均达到性能 SOTA,同时对检测人数无上限,并且在微小目标场景有卓越效果,助力开发者高性能实现异常行为识别、智能健身、体感互动游戏、人机交互等任务。

功能全、应用广

(一)实时跟踪系统 PP-Tracking,一网打尽各类跟踪能力

功能覆盖单、多镜头下的行人车辆跟踪,支持 10 + 种不同类别的目标同时跟踪,针对小目标、航拍监控及密集型场景进行特殊优化,并提供人 / 车流量去重计数应用。

(二)覆盖旋转框检测、实例分割、行人检测、人脸检测、车辆检测等垂类任务。

易用性更高的全流程开发支持

(一)一种蒸馏技术,三种量化策略,五种剪裁方式

为了满足开发者对计算量、模型体积、运算速度等极致的追求,PaddleDetection 基于飞桨模型压缩工具 PaddleSlim 支持了多种模型压缩能力,包括剪裁,量化,蒸馏以及剪裁 + 蒸馏联合策略压缩方案,大幅减少模型参数或计算量,便于部署在受限的硬件环境中。

由上表可以看出,量化策略为模型带来 1.7% 的精度提升,同时体积压缩 3.71 倍 ,速度提升 1.46 倍,而采用蒸馏 + 裁剪的联合策略,在精度几乎无损的情况下,体积压缩了 3.05 倍,加速 1.58 倍

(二)灵活高效的部署方式,打通本地化、服务化、移动端的部署,支持 Python、C++ 的部署语言及 TensorRT 的加速。

得益于飞桨预测库系列产品飞桨原生推理库 Paddle Inference、飞桨轻量化推理引擎 Paddle Lite 和飞桨服务化部署框架 Paddle Serving 的能力,PaddleDetection 支持开发者快速在 Linux、Windows、NV Jetson 等多系统多平台进行算法部署,同时提供了 Python 预测和 C++ 预测两种方式,覆盖主流检测、跟踪及关键点检测算法。

另外支持 TensorRT 动态尺寸输入及 TensorRT INT8 量化预测,全面支持用户进行硬件加速。

算法性能强劲、功能丰富全面、开发部署敏捷易用,PaddleDetection 期待大家的使用与反馈:

GitHub:https://github.com/PaddlePaddle/PaddleDetection

关注公众号,获取更多技术内容👇

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/125090
 
318 次点击