https://huggingface.co/jonathandinu/face-parsing with ONNX weights to be compatible with Transformers.js.

Usage (Transformers.js)

If you haven't already, you can install the Transformers.js JavaScript library from NPM using:

npm i @xenova/transformers

Example: Face segmentation with Xenova/face-parsing.

import { pipeline } from '@xenova/transformers';

const segmenter = await pipeline('image-segmentation', 'Xenova/face-parsing');

const url = 'https://huggingface.co/datasets/Xenova/transformers.js-docs/resolve/main/portrait-of-woman.jpg';
const output = await segmenter(url);
console.log(output)
// [
//   {
//     score: null,
//     label: 'background',
//     mask: RawImage { ... }
//   },
//   {
//     score: null,
//     label: 'skin.png',
//     mask: RawImage { ... }
//   },
//   ...
//   }
// ]

You can visualize the outputs with:

for (const l of output) {
  l.mask.save(`${l.label}.png`);
}

image/png


Note: Having a separate repo for ONNX weights is intended to be a temporary solution until WebML gains more traction. If you would like to make your models web-ready, we recommend converting to ONNX using 🤗 Optimum and structuring your repo like this one (with ONNX weights located in a subfolder named onnx).

Downloads last month
2,770
Inference Examples
Inference API (serverless) does not yet support transformers.js models for this pipeline type.

Model tree for Xenova/face-parsing

Quantized
(1)
this model