|  | --- | 
					
						
						|  | base_model: facebook/maskformer-resnet101-coco-stuff | 
					
						
						|  | library_name: transformers.js | 
					
						
						|  | pipeline_tag: image-segmentation | 
					
						
						|  | --- | 
					
						
						|  |  | 
					
						
						|  | https://huggingface.co/facebook/maskformer-resnet101-coco-stuff with ONNX weights to be compatible with Transformers.js. | 
					
						
						|  |  | 
					
						
						|  | ## Usage (Transformers.js) | 
					
						
						|  |  | 
					
						
						|  | If you haven't already, you can install the [Transformers.js](https://huggingface.co/docs/transformers.js) JavaScript library from [NPM](https://www.npmjs.com/package/@huggingface/transformers) using: | 
					
						
						|  | ```bash | 
					
						
						|  | npm i @huggingface/transformers | 
					
						
						|  | ``` | 
					
						
						|  |  | 
					
						
						|  | **Example:** Image segmentation with `onnx-community/maskformer-resnet101-coco-stuff`. | 
					
						
						|  |  | 
					
						
						|  | ```js | 
					
						
						|  | import { pipeline } from '@huggingface/transformers'; | 
					
						
						|  |  | 
					
						
						|  | // Create an image segmentation pipeline | 
					
						
						|  | const segmenter = await pipeline('image-segmentation', 'onnx-community/maskformer-resnet101-coco-stuff'); | 
					
						
						|  |  | 
					
						
						|  | // Segment an image | 
					
						
						|  | const url = 'http://images.cocodataset.org/val2017/000000039769.jpg'; | 
					
						
						|  | const output = await segmenter(url); | 
					
						
						|  | console.log(output) | 
					
						
						|  | // [ | 
					
						
						|  | //   { | 
					
						
						|  | //     score: 0.9626941680908203, | 
					
						
						|  | //     label: 'couch', | 
					
						
						|  | //     mask: RawImage { ... } | 
					
						
						|  | //   }, | 
					
						
						|  | //   { | 
					
						
						|  | //     score: 0.9967071413993835, | 
					
						
						|  | //     label: 'cat', | 
					
						
						|  | //     mask: RawImage { ... } | 
					
						
						|  | //   }, | 
					
						
						|  | //   ... | 
					
						
						|  | //   } | 
					
						
						|  | // ] | 
					
						
						|  | ``` | 
					
						
						|  |  | 
					
						
						|  | You can visualize the outputs with: | 
					
						
						|  | ```js | 
					
						
						|  | for (let i = 0; i < output.length; ++i) { | 
					
						
						|  | const { mask, label } = output[i]; | 
					
						
						|  | mask.save(`${label}-${i}.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](https://huggingface.co/docs/optimum/index) and structuring your repo like this one (with ONNX weights located in a subfolder named `onnx`). |