Views
No views yet
npm i @huggingface/transformersXenova/slimsam-50-uniform.1import { SamModel, AutoProcessor, RawImage } from '@huggingface/transformers';
2
3// Load model and processor
4const model = await SamModel.from_pretrained('Xenova/slimsam-50-uniform');
5const processor = await AutoProcessor.from_pretrained('Xenova/slimsam-50-uniform');
6
7// Prepare image and input points
8const img_url = 'https://huggingface.co/datasets/Xenova/transformers.js-docs/resolve/main/corgi.jpg';
9const raw_image = await RawImage.read(img_url);
10const input_points = [[[340, 250]]];
11
12// Process inputs and perform mask generation
13const inputs = await processor(raw_image, { input_points });
14const outputs = await model(inputs);
15
16// Post-process masks
17const masks = await processor.post_process_masks(outputs.pred_masks, inputs.original_sizes, inputs.reshaped_input_sizes);
18console.log(masks);
19// [
20// Tensor {
21// dims: [ 1, 3, 410, 614 ],
22// type: 'bool',
23// data: Uint8Array(755220) [ ... ],
24// size: 755220
25// }
26// ]
27
28const scores = outputs.iou_scores;
29console.log(scores);
30// Tensor {
31// dims: [ 1, 1, 3 ],
32// type: 'float32',
33// data: Float32Array(3) [
34// 0.8649908900260925,
35// 0.9900082349777222,
36// 0.9232960939407349
37// ],
38// size: 3
39// }1const image = RawImage.fromTensor(masks[0][0].mul(255));
2image.save('mask.png');

onnx).