ONNX Model Zoo

dragonSwing/nanosam

By dragonSwing · ↓ 0 · ♥ 0 · Updated 2024-03-31

What's in this repo

This page lists the files in dragonSwing/nanosam, including efficientvit_l0_mask_decoder.onnx, mobile_sam_mask_decoder.onnx, sam_hgv2_b1_nonorm_image_encoder.onnx and more.

  • 10 ONNX models (.onnx files)
  • 28 files, including 10 .onnx, 4 .pdiparams, 4 .info, 4 .pdmodel, 4 .pdparams, 1 .md
  • Last updated 2024-03-31

ONNX files

File Size Download
efficientvit_l0_mask_decoder.onnx — Download
mobile_sam_mask_decoder.onnx — Download
op11/sam_hgv2_b1_nonorm_image_encoder.onnx — Download
op11/sam_hgv2_b2_nonorm_image_encoder.onnx — Download
op11/sam_hgv2_b4_image_encoder.onnx — Download
op11/sam_hgv2_b4_nonorm_image_encoder.onnx — Download
sam_hgv2_b1_ln_nonorm_image_encoder.onnx — Download
sam_hgv2_b2_ln_nonorm_image_encoder.onnx — Download
sam_hgv2_b4_ln_image_encoder.onnx — Download
sam_hgv2_b4_ln_nonorm_image_encoder.onnx — Download

How to use

These ONNX files can be loaded with ONNX Runtime. To inspect a model graph, upload the file to the Netron viewer. Download links point to the original files on Hugging Face.

README

NanoSAM: Accelerated Segment Anything Model for Edge deployment

Pretrained Models

NanoSAM performance on edge devices. Latency/throughput is measured on NVIDIA Jetson Xavier NX, and NVIDIA T4 GPU with TensorRT, fp16. Data transfer time is included.

Image Encoder CPU Jetson Xavier NX T4 Model size Download
PPHGV2-B1 110ms 9.6ms 2.4ms 12.7MB Link
PPHGV2-B2 200ms 12.4ms 3.2ms 29.5MB Link
PPHGV2-B4 300ms 17.3ms 4.1ms 61.4MB Link
ResNet18 500ms 22.4ms 5.8ms 63.2MB Link
EfficientViT-L0 1s 31.6ms 6ms 117.5MB -

Zero-Shot Instance Segmentation on COCO2017 validation dataset

| Image Encoder | mAPmask
50-95 | mIoU (all) | mIoU (large) | mIoU (medium) | mIoU (small) | | --------------- | :-------------------: | :--------: | :----------: | :-----------: | :----------: | | ResNet18 | - | 70.6 | 79.6 | 73.8 | 62.4 | | MobileSAM | - | 72.8 | 80.4 | 75.9 | 65.8 | | PPHGV2-B1 | 41.2 | 75.6 | 81.2 | 77.4 | 70.8 | | PPHGV2-B2 | 42.6 | 76.5 | 82.2 | 78.5 | 71.5 | | PPHGV2-B4 | 44.0 | 77.3 | 83.0 | 79.7 | 72.1 | | EfficientViT-L0 | 45.6 | 78.6 | 83.7 | 81.0 | 73.3 |

Usage

from nanosam.utils.predictor import Predictor

image_encoder_cfg = {
    "path": "data/sam_hgv2_b4_ln_nonorm_image_encoder.onnx",
    "name": "OnnxModel",
    "provider": "cpu",
    "normalize_input": False,
}
mask_decoder_cfg = {
    "path": "data/efficientvit_l0_mask_decoder.onnx",
    "name": "OnnxModel",
    "provider": "cpu",
}
predictor = Predictor(encoder_cfg, decoder_cfg)

image = PIL.Image.open("assets/dogs.jpg")

predictor.set_image(image)

mask, _, _ = predictor.predict(np.array([[x, y]]), np.array([1]))

The point labels may be

Point Label Description
0 Background point
1 Foreground point
2 Bounding box top-left
3 Bounding box bottom-right

Model info

onnx paddlepaddle mask-generation license:apache-2.0 region:us
↓ 0 ♥ 0

Created: 2024-03-27

Updated: 2024-03-31

View on Hugging Face

Files (28)

.gitattributes
README.md
efficientvit_l0_mask_decoder.onnx ONNX
mobile_sam_mask_decoder.onnx ONNX
op11/sam_hgv2_b1_nonorm_image_encoder.onnx ONNX
op11/sam_hgv2_b2_nonorm_image_encoder.onnx ONNX
op11/sam_hgv2_b4_image_encoder.onnx ONNX
op11/sam_hgv2_b4_nonorm_image_encoder.onnx ONNX
pretrained/Sam_PPHGNetV2_B1/inference/inference.pdiparams
pretrained/Sam_PPHGNetV2_B1/inference/inference.pdiparams.info
pretrained/Sam_PPHGNetV2_B1/inference/inference.pdmodel
pretrained/Sam_PPHGNetV2_B1/sam_hgv2_b1_latest.pdparams
pretrained/Sam_PPHGNetV2_B2/inference/inference.pdiparams
pretrained/Sam_PPHGNetV2_B2/inference/inference.pdiparams.info
pretrained/Sam_PPHGNetV2_B2/inference/inference.pdmodel
pretrained/Sam_PPHGNetV2_B2/sam_hgv2_b2_latest.pdparams
pretrained/Sam_PPHGNetV2_B4/inference/inference.pdiparams
pretrained/Sam_PPHGNetV2_B4/inference/inference.pdiparams.info
pretrained/Sam_PPHGNetV2_B4/inference/inference.pdmodel
pretrained/Sam_PPHGNetV2_B4/sam_hgv2_b4_latest.pdparams
pretrained/Sam_PPHGNetV2_B4_norm/inference/inference.pdiparams
pretrained/Sam_PPHGNetV2_B4_norm/inference/inference.pdiparams.info
pretrained/Sam_PPHGNetV2_B4_norm/inference/inference.pdmodel
pretrained/Sam_PPHGNetV2_B4_norm/sam_hgv2_b4_norm_latest.pdparams
sam_hgv2_b1_ln_nonorm_image_encoder.onnx ONNX
sam_hgv2_b2_ln_nonorm_image_encoder.onnx ONNX
sam_hgv2_b4_ln_image_encoder.onnx ONNX
sam_hgv2_b4_ln_nonorm_image_encoder.onnx ONNX

Related models