This algorithm proposes inference for instance segmentation using transformers models from Hugging Face.
We strongly recommend using a virtual environment. If you're not sure where to start, we offer a tutorial here.
pip install ikomiafrom ikomia.dataprocess.workflow import Workflow
from ikomia.utils.displayIO import display
# Init your workflow
wf = Workflow()
# Add algorithm
algo = wf.add_task(name="infer_hf_instance_seg", auto_connect=True)
# Run on your image
wf.run_on(url="https://raw.githubusercontent.com/Ikomia-dev/notebooks/main/examples/img/img_LR.jpg")
# Inpect your result
display(algo.get_image_with_mask_and_graphics())Ikomia Studio offers a friendly UI with the same features as the API.
-
If you haven't started using Ikomia Studio yet, download and install it from this page.
-
For additional guidance on getting started with Ikomia Studio, check out this blog post.
- model_name (str) - default "facebook/maskformer-swin-base-coco": Name of the model. More models 'facebook/maskeformer' available on HF.
- conf_thres (float) - default '0.5': The probability score threshold to keep predicted instance masks.
- conf_mask_thres (float) - default '0.5': T Threshold to use when turning the predicted masks into binary values.
- conf_overlap_mask_area_thres (float) - default '0.8': The overlap mask area threshold to merge or discard small disconnected parts within each binary instance mask.
- cuda (bool): If True, CUDA-based inference (GPU). If False, run on CPU
Parameters should be in strings format when added to the dictionary.
from ikomia.dataprocess.workflow import Workflow
from ikomia.utils.displayIO import display
# Init your workflow
wf = Workflow()
# Add algorithm
algo = wf.add_task(name="infer_hf_instance_seg", auto_connect=True)
algo.set_parameters({
'model_name': 'facebook/maskformer-swin-base-coco',
'conf_thres': '0.5',
"conf_mask_thres": "0.5",
"conf_overlap_mask_area_thres": "0.8",
'cuda': 'True',
})
# Run on your image
wf.run_on(url="https://raw.githubusercontent.com/Ikomia-dev/notebooks/main/examples/img/img_LR.jpg")
# Inpect your result
display(algo.get_image_with_mask_and_graphics())Every algorithm produces specific outputs, yet they can be explored them the same way using the Ikomia API. For a more in-depth understanding of managing algorithm outputs, please refer to the documentation.
import ikomia
from ikomia.dataprocess.workflow import Workflow
# Init your workflow
wf = Workflow()
# Add algorithm
algo = wf.add_task(name="infer_hf_instance_seg", auto_connect=True)
# Run on your image
wf.run_on(url="https://raw.githubusercontent.com/Ikomia-dev/notebooks/main/examples/img/img_LR.jpg")
# Iterate over outputs
for output in algo.get_outputs():
# Print information
print(output)
# Export it to JSON
output.to_json()