MaskRCNN / README.md
qaihm-bot's picture
v0.48.0
7c53ddc verified
metadata
library_name: pytorch
license: other
tags:
  - android
pipeline_tag: image-segmentation

MaskRCNN: Optimized for Qualcomm Devices

Mask R-CNN is a machine learning model that extends Faster R-CNN to perform instance segmentation by detecting objects in an image while simultaneously generating a high-quality segmentation mask for each instance. It adds a branch for predicting segmentation masks in parallel with the existing branch for bounding box recognition.

This is based on the implementation of MaskRCNN found here. This repository contains pre-exported model files optimized for Qualcomm® devices. You can use the Qualcomm® AI Hub Models library to export with custom configurations. More details on model performance across various devices, can be found here.

Qualcomm AI Hub Models uses Qualcomm AI Hub Workbench to compile, profile, and evaluate this model. Sign up to run these models on a hosted Qualcomm® device.

Getting Started

There are two ways to deploy this model on your device:

Option 1: Download Pre-Exported Models

Below are pre-exported model assets ready for deployment.

Runtime Precision Chipset SDK Versions Download
QNN_DLC float Universal QAIRT 2.43 Download

For more device-specific assets and performance metrics, visit MaskRCNN on Qualcomm® AI Hub.

Option 2: Export with Custom Configurations

Use the Qualcomm® AI Hub Models Python library to compile and export the model with your own:

  • Custom weights (e.g., fine-tuned checkpoints)
  • Custom input shapes
  • Target device and runtime configurations

This option is ideal if you need to customize the model beyond the default configuration provided here.

See our repository for MaskRCNN on GitHub for usage instructions.

Model Details

Model Type: Model_use_case.semantic_segmentation

Model Stats:

  • Model checkpoint: Mask R-CNN ResNet-50 FPN V2
  • Input resolution: 800x800
  • Number of output classes: 91
  • Number of parameters: 46.4M
  • Model size (float): 177 MB

Performance Summary

Model Runtime Precision Chipset Inference Time (ms) Peak Memory Range (MB) Primary Compute Unit
MaskRCNNProposalGenerator QNN_DLC float Snapdragon® X2 Elite 58.538 ms 7 - 7 MB NPU
MaskRCNNProposalGenerator QNN_DLC float Snapdragon® X Elite 139.069 ms 7 - 7 MB NPU
MaskRCNNProposalGenerator QNN_DLC float Snapdragon® 8 Gen 3 Mobile 107.556 ms 7 - 1397 MB NPU
MaskRCNNProposalGenerator QNN_DLC float Qualcomm® QCS8275 (Proxy) 415.682 ms 1 - 1194 MB NPU
MaskRCNNProposalGenerator QNN_DLC float Qualcomm® QCS8550 (Proxy) 148.984 ms 7 - 10 MB NPU
MaskRCNNProposalGenerator QNN_DLC float Qualcomm® SA8775P 167.04 ms 1 - 1195 MB NPU
MaskRCNNProposalGenerator QNN_DLC float Qualcomm® QCS8450 (Proxy) 209.409 ms 7 - 1358 MB NPU
MaskRCNNProposalGenerator QNN_DLC float Qualcomm® SA7255P 415.682 ms 1 - 1194 MB NPU
MaskRCNNProposalGenerator QNN_DLC float Qualcomm® SA8295P 168.867 ms 0 - 1139 MB NPU
MaskRCNNProposalGenerator QNN_DLC float Snapdragon® 8 Elite For Galaxy Mobile 69.508 ms 7 - 1305 MB NPU
MaskRCNNProposalGenerator QNN_DLC float Snapdragon® 8 Elite Gen 5 Mobile 54.824 ms 7 - 1326 MB NPU
MaskRCNNROIHead QNN_DLC float Snapdragon® X2 Elite 100.247 ms 52 - 52 MB NPU
MaskRCNNROIHead QNN_DLC float Snapdragon® X Elite 239.818 ms 52 - 52 MB NPU
MaskRCNNROIHead QNN_DLC float Snapdragon® 8 Gen 3 Mobile 180.07 ms 12 - 892 MB NPU
MaskRCNNROIHead QNN_DLC float Qualcomm® QCS8275 (Proxy) 581.756 ms 45 - 845 MB NPU
MaskRCNNROIHead QNN_DLC float Qualcomm® QCS8550 (Proxy) 240.254 ms 39 - 42 MB NPU
MaskRCNNROIHead QNN_DLC float Qualcomm® SA8775P 268.815 ms 42 - 844 MB NPU
MaskRCNNROIHead QNN_DLC float Qualcomm® QCS8450 (Proxy) 346.463 ms 39 - 941 MB NPU
MaskRCNNROIHead QNN_DLC float Qualcomm® SA7255P 581.756 ms 45 - 845 MB NPU
MaskRCNNROIHead QNN_DLC float Qualcomm® SA8295P 307.228 ms 46 - 971 MB NPU
MaskRCNNROIHead QNN_DLC float Snapdragon® 8 Elite For Galaxy Mobile 125.821 ms 23 - 813 MB NPU
MaskRCNNROIHead QNN_DLC float Snapdragon® 8 Elite Gen 5 Mobile 96.944 ms 51 - 854 MB NPU

License

  • The license for the original implementation of MaskRCNN can be found here.

References

Community