-
-
Notifications
You must be signed in to change notification settings - Fork 330
Home
AI-powered 3D Face Detection & Rotation Tracking, Face Description & Recognition,
Body Pose Tracking, 3D Hand & Finger Tracking, Iris Analysis,
Age & Gender & Emotion Prediction, Gesture Recognition
JavaScript module using TensorFlow/JS Machine Learning library
-
Browser:
Compatible with both desktop and mobile platforms
Compatible with CPU, WebGL, WASM backends
Compatible with WebWorker execution -
NodeJS:
Compatible with both software tfjs-node and
GPU accelerated backends tfjs-node-gpu using CUDA libraries
Check out Live Demo for processing of live WebCam video or static images
- Main Application
- Face Extraction, Description, Identification and Matching
- Face Extraction and 3D Rendering
- Details on Demo Applications
- Code Repository
- NPM Package
- Issues Tracker
- TypeDoc API Specification: Human
- TypeDoc API Specification: Root
- Change Log
- Home
- Installation
- Usage & Functions
- Configuration Details
- Output Details
- Face Recognition & Face Description
- Gesture Recognition
- Common Issues
- Background and Benchmarks
- Notes on Backends
- Development Server
- Build Process
- Adding Custom Modules
- Performance Notes
- Performance Profiling
- Platform Support
- List of Models & Credits
See issues and discussions for list of known limitations and planned enhancements
Suggestions are welcome!
Human
library can process all known input types:
-
Image
,ImageData
,ImageBitmap
,Canvas
,OffscreenCanvas
,Tensor
, -
HTMLImageElement
,HTMLCanvasElement
,HTMLVideoElement
,HTMLMediaElement
Additionally, HTMLVideoElement
, HTMLMediaElement
can be a standard <video>
tag that links to:
- WebCam on user's system
- Any supported video type
For example:.mp4
,.avi
, etc. - Additional video types supported via HTML5 Media Source Extensions
Live streaming examples:-
HLS (HTTP Live Streaming) using
hls.js
-
DASH (Dynamic Adaptive Streaming over HTTP) using
dash.js
-
HLS (HTTP Live Streaming) using
- WebRTC media track
Default models in Human library are:
- Face Detection: MediaPipe BlazeFace - Back variation
- Face Mesh: MediaPipe FaceMesh
- Face Iris Analysis: MediaPipe Iris
- Face Description: HSE FaceRes
- Emotion Detection: Oarriaga Emotion
- Body Analysis: MoveNet - Lightning variation
- Hand Analysis: MediaPipe Hands
- Body Segmentation: Google Selfie
- Object Detection: CenterNet
- Body Segmentation: Google Selfie
Note that alternative models are provided and can be enabled via configuration
For example, PoseNet
model can be switched for BlazePose
model depending on the use case
For more info, see Configuration Details and List of Models
Human
library is written in TypeScript
4.2
Conforming to JavaScript
ECMAScript version 2020 standard
Build target is JavaScript
EMCAScript version 2018
For details see Wiki Pages
and API Specification
Human Library Wiki Pages
3D Face Detection, Body Pose, Hand & Finger Tracking, Iris Tracking, Age & Gender Prediction, Emotion Prediction & Gesture Recognition