Skip to content

Latest commit

 

History

History
414 lines (321 loc) · 64.5 KB

README_日本語.md

File metadata and controls

414 lines (321 loc) · 64.5 KB

English | 简体中文 | हिन्दी | 日本語 | 한국인 | Pу́сский язы́к

⚡️FastDeploy

インストール | ドキュメント | クイックスタート | APIドキュメンテーション | Changelog


⚡️FastDeployは、オールシナリオで使いやすく柔軟で非常に効率的なAI推論デプロイツールです。 🔥160以上のテキストビジョンスピーチおよび🔚クロスモーダルモデルをサポートし、エンドツーエンドの推論パフォーマンスの最適化を可能にする、すぐに使えるクラウド側のデプロイメントエクスペリエンスを提供します。 これには、画像分類、物体検出、画像分割、顔検出、顔認識、キーポイント検出、キーイング、OCR、NLP、TTSなどのタスクが含まれ、マルチシーンマルチハードウェアマルチプラットフォームの産業展開に対する開発者のニーズに応えています。

🌠 最近の更新情報

  • ✨✨✨ 2023.01.17 FastDeployファミリーのハードウェアに対するYOLOv8 デプロイメントサポートをリリースしました。これにはPaddle YOLOv8コミュニティ ultralytics YOLOv8

  • ✨👥✨ 交流

    • Slack:Join our Slack community and chat with other community members about ideas

    • WeChat: QRコードを読み取り、アンケートに答えてテクニカルコミュニティに参加し、コミュニティ開発者と展開業界の実装の悩みについて交流することができます

🌌 推論バックエンドと機能

ビデオストリーミング サービス指向の展開 エンドツーエンドのパフォーマンス最適化 Linux Windows Android macOS
X86_64 CPU       





NVDIA GPU




Phytium CPU
KunlunXin XPU
Huawei Ascend NPU
Graphcore IPU
Sophgo
Intel graphics card
Jetson


ARM CPU

RK3588 etc.
RV1126 etc.
Amlogic
NXP

🔮 ドキュメント・チュートリアル

クイックスタート💨

Python SDKクイックスタート(タップで縮小)

🎆 クイックインストール

🔸 先行依存関係

  • CUDA >= 11.2、cuDNN >= 8.0、Python >= 3.6
  • OS: Linux x86_64/macOS/Windows 10

🔸 インストールGPUバージョン

pip install numpy opencv-python fastdeploy-gpu-python -f https://www.paddlepaddle.org.cn/whl/fastdeploy.html
conda config --add channels conda-forge && conda install cudatoolkit=11.2 cudnn=8.2

🔸 インストールCPUバージョン

pip install numpy opencv-python fastdeploy-python -f https://www.paddlepaddle.org.cn/whl/fastdeploy.html

🎇 Python 推論例

  • モデルや画像の準備
wget https://bj.bcebos.com/paddlehub/fastdeploy/ppyoloe_crn_l_300e_coco.tgz
tar xvf ppyoloe_crn_l_300e_coco.tgz
wget https://gitee.com/paddlepaddle/PaddleDetection/raw/release/2.4/demo/000000014439.jpg
  • 推論結果のテスト
# GPU/TensorRT デプロイメント、リファレンスexamples/vision/detection/paddledetection/python
import cv2
import fastdeploy.vision as vision

model = vision.detection.PPYOLOE("ppyoloe_crn_l_300e_coco/model.pdmodel",
                                 "ppyoloe_crn_l_300e_coco/model.pdiparams",
                                 "ppyoloe_crn_l_300e_coco/infer_cfg.yml")
im = cv2.imread("000000014439.jpg")
result = model.predict(im)
print(result)

vis_im = vision.vis_detection(im, result, score_threshold=0.5)
cv2.imwrite("vis_image.jpg", vis_im)
C++ SDK クイックスタート(クリックすると詳細が表示されます)

🎆 インストール

🎇 C++ 推論例

  • モデルや画像の準備
wget https://bj.bcebos.com/paddlehub/fastdeploy/ppyoloe_crn_l_300e_coco.tgz
tar xvf ppyoloe_crn_l_300e_coco.tgz
wget https://gitee.com/paddlepaddle/PaddleDetection/raw/release/2.4/demo/000000014439.jpg
  • 推論結果のテスト
// GPU/TensorRT デプロイメント、リファレンス examples/vision/detection/paddledetection/cpp
#include "fastdeploy/vision.h"

int main(int argc, char* argv[]) {
  namespace vision = fastdeploy::vision;
  auto model = vision::detection::PPYOLOE("ppyoloe_crn_l_300e_coco/model.pdmodel",
                                          "ppyoloe_crn_l_300e_coco/model.pdiparams",
                                          "ppyoloe_crn_l_300e_coco/infer_cfg.yml");
  auto im = cv::imread("000000014439.jpg");

  vision::DetectionResult res;
  model.Predict(im, &res);

  auto vis_im = vision::VisDetection(im, res, 0.5);
  cv::imwrite("vis_image.jpg", vis_im);
  return 0;
}

その他の展開例は、以下を参照してくださいモデル展開例 .

✴️ ✴️ サーバーサイドモデル対応表 ✴️ ✴️

表記: (1) ✅: 対応済み; (2) ❔:進行中 ; (3) N/A: 未対応;

サーバーサイドモデル対応一覧(クリックで縮小します)
ミッションシナリオ モデル Linux Linux Win Win Mac Mac Linux Linux Linux Linux Linux
--- --- X86 CPU NVIDIA GPU X86 CPU NVIDIA GPU X86 CPU Arm CPU AArch64 CPU Phytium D2000CPU NVIDIA Jetson Graphcore IPU Serving
Classification PaddleClas/ResNet50
Classification TorchVison/ResNet
Classification ultralytics/YOLOv5Cls
Classification PaddleClas/PP-LCNet
Classification PaddleClas/PP-LCNetv2
Classification PaddleClas/EfficientNet
Classification PaddleClas/GhostNet
Classification PaddleClas/MobileNetV1
Classification PaddleClas/MobileNetV2
Classification PaddleClas/MobileNetV3
Classification PaddleClas/ShuffleNetV2
Classification PaddleClas/SqueeezeNetV1.1
Classification PaddleClas/Inceptionv3
Classification PaddleClas/PP-HGNet
Detection PaddleDetection/PP-YOLOE
Detection 🔥PaddleDetection/YOLOv8
Detection 🔥ultralytics/YOLOv8
Detection PaddleDetection/PicoDet
Detection PaddleDetection/YOLOX
Detection PaddleDetection/YOLOv3
Detection PaddleDetection/PP-YOLO
Detection PaddleDetection/PP-YOLOv2
Detection PaddleDetection/Faster-RCNN
Detection PaddleDetection/Mask-RCNN
Detection Megvii-BaseDetection/YOLOX
Detection WongKinYiu/YOLOv7
Detection WongKinYiu/YOLOv7end2end_trt
Detection WongKinYiu/YOLOv7end2end_ort
Detection meituan/YOLOv6
Detection ultralytics/YOLOv5
Detection WongKinYiu/YOLOR
Detection WongKinYiu/ScaledYOLOv4
Detection ppogg/YOLOv5Lite
Detection RangiLyu/NanoDetPlus
KeyPoint PaddleDetection/TinyPose
KeyPoint PaddleDetection/PicoDet + TinyPose
HeadPose omasaht/headpose
Tracking PaddleDetection/PP-Tracking
OCR PaddleOCR/PP-OCRv2
OCR PaddleOCR/PP-OCRv3
Segmentation PaddleSeg/PP-LiteSeg
Segmentation PaddleSeg/PP-HumanSegLite
Segmentation PaddleSeg/HRNet
Segmentation PaddleSeg/PP-HumanSegServer
Segmentation PaddleSeg/Unet
Segmentation PaddleSeg/Deeplabv3
FaceDetection biubug6/RetinaFace
FaceDetection Linzaer/UltraFace
FaceDetection deepcam-cn/YOLOv5Face
FaceDetection insightface/SCRFD
FaceAlign Hsintao/PFLD
FaceAlign Single430FaceLandmark1000
FaceAlign jhb86253817/PIPNet
FaceRecognition insightface/ArcFace
FaceRecognition insightface/CosFace
FaceRecognition insightface/PartialFC
FaceRecognition insightface/VPL
Matting ZHKKKe/MODNet
Matting PeterL1n/RobustVideoMatting
Matting PaddleSeg/PP-Matting
Matting PaddleSeg/PP-HumanMatting
Matting PaddleSeg/ModNet
Video Super-Resolution PaddleGAN/BasicVSR
Video Super-Resolution PaddleGAN/EDVR
Video Super-Resolution PaddleGAN/PP-MSVSR
Information Extraction PaddleNLP/UIE
NLP PaddleNLP/ERNIE-3.0
Speech PaddleSpeech/PP-TTS --

📳 エンドユーザーモデル対応表

エンドユーザーモデル対応表(クリックで縮小)
ミッションシナリオ モデル サイズ(MB) Linux Android Linux Linux Linux Linux Linux TBD...
--- --- --- ARM CPU ARM CPU Rockchip-NPU
RK3568/RK3588
Rockchip-NPU
RV1109/RV1126/RK1808
Amlogic-NPU
A311D/S905D/C308X
NXP-NPU
i.MX 8M Plus
TBD...|
Classification PaddleClas/ResNet50 98
Classification PaddleClas/PP-LCNet 11.9 -- -- --
Classification PaddleClas/PP-LCNetv2 26.6 -- -- --
Classification PaddleClas/EfficientNet 31.4 -- -- --
Classification PaddleClas/GhostNet 20.8 -- -- --
Classification PaddleClas/MobileNetV1 17 -- -- --
Classification PaddleClas/MobileNetV2 14.2 -- -- --
Classification PaddleClas/MobileNetV3 22 --
Classification PaddleClas/ShuffleNetV2 9.2 -- -- --
Classification PaddleClas/SqueezeNetV1.1 5 -- -- --
Classification PaddleClas/Inceptionv3 95.5 -- -- --
Classification PaddleClas/PP-HGNet 59 -- -- --
Detection PaddleDetection/PicoDet_s 4.9 --
Detection YOLOv5 --
Face Detection deepinsight/SCRFD 2.5 -- -- -- --
Keypoint Detection PaddleDetection/PP-TinyPose 5.5 --
Segmentation PaddleSeg/PP-LiteSeg(STDC1) 32.2 -- -- -- --
Segmentation PaddleSeg/PP-HumanSeg-Lite 0.556 -- -- -- --
Segmentation PaddleSeg/HRNet-w18 38.7 -- -- -- --
Segmentation PaddleSeg/PP-HumanSeg 107.2 -- -- -- --
Segmentation PaddleSeg/Unet 53.7 -- -- -- --
Segmentation PaddleSeg/Deeplabv3 150
OCR PaddleOCR/PP-OCRv2 2.3+4.4 -- -- -- --
OCR PaddleOCR/PP-OCRv3 2.4+10.6 --

⚛️ アプレットモデル対応表

ウェブ・アプレット展開サポートリスト(クリックで縮小)
ミッションシナリオ モデル web_demo
--- --- Paddle.js
Detection FaceDetection
Detection ScrewDetection
Segmentation PaddleSeg/HumanSeg
Object Recognition GestureRecognition
Object Recognition ItemIdentification
OCR PaddleOCR/PP-OCRv3

💐 Acknowledge

このプロジェクトでは、SDKの生成とダウンロードに EasyEdge の無償かつオープンな機能を利用しており、そのことに謝意を表したいと思います。

©️ License

FastDeploy は、Apache-2.0 オープンソースプロトコルに従っています