/Paddle.js

Paddle.js is a web project for Baidu PaddlePaddle, which is an open source deep learning framework running in the browser. Paddle.js can either load a pre-trained model, or transforming a model from paddle-hub with model transforming tools provided by Paddle.js. It could run in every browser with WebGL/WebGPU/WebAssembly supported. It could also run in Baidu Smartprogram and WX miniprogram.

Primary LanguageJavaScriptApache License 2.0Apache-2.0

中文版

Paddle.js

building UnitTest commit-activity license license license python

Paddle.js is a web project for Baidu PaddlePaddle, which is an open source deep learning framework running in the browser. Paddle.js can either load a pre-trained model, or transforming a model from paddle-hub with model transforming tools provided by Paddle.js. It could run in every browser with WebGL/WebGPU/WebAssembly supported. It could also run in Baidu Smartprogram and WX miniprogram.

Ecosystem

Project version Description
paddlejs-core paddlejs-core-status inference engine
paddlejs-backend-webgl paddlejs-backend-webgl-status webgl backend
paddlejs-backend-wasm paddlejs-backend-wasm-status wasm backend
paddlejs-backend-webgpu paddlejs-backend-webgpu-status webgpu backend
paddlejsconverter paddlejsconverter-status convert paddlepaddle model
humanseg humanseg-status human segmentation library
ocr ocr-status optical character recognition library
gesture gesture-status gesture recognition library
mobilenet mobilenet-status image classification library
ocr detection ocr-detection-status optical character detection library
facedetect facedetect-status face detection library

Website

https://paddlejs.baidu.com

Key Features

Module

  • paddlejs-core, the core part of the Paddle.js ecosystem, which is responsible for the operation of the inference process of the entire engine. size downloads downloads
  • paddlejsconverter, model transformation tool for Paddle.js, convert PaddlePaddle models (also known as fluid models) into a browser-friendly format.
  • paddlejs-models, model projects, supply flexible low-level APIs for users to implement their AI scenario.
  • paddlejs-examples, Paddle.js AI examples
  • paddlejs-mediapipe, tools for live and streaming media, support webrtc camera and a lightweight opencv package

Backends

Examples

clasGame wine gesture

ocr

humanseg facedetect

Browser/Platforms Coverage

  • PC: Chrome, Safari, Firefox
  • Phone: Baidu App , Chrome , UC and QQ Browser
  • Smartprogram: Baidu Smartprogram, WX miniprogram
  • Platform: macOS, Windows

Load Model

  1. Support load model files on the network:
  • model.json (model structure and operators' attributes)
  • chunk_x.dat (model params binary data)
  1. Support use model obj
  • modelObj.model (model structure json object)
  • modelObj.params(model params Float32Array data)

If you dont' want to put model on the network, you can use method 2.

Feedback and Community Support

  • Online video tutorial start video
  • Questions, reports, and suggestions are welcome through Github Issues!
  • Forum: Opinions and questions are welcome at our PaddlePaddle Forum
  • QQ group chat: 696965088