--- library_name: mlxformers tags: - mlx --- # Model Details MLX implementation of `Segment-Anything model` this checkopint is the same from [facebook/sam-vit-base](https://huggingface.co/facebook/sam-vit-base) ## Model Usage ```python import requests from PIL import Image from mlxformers import MlxSamModel from transformers import SamProcessor from transformers.tokenization_utils import BatchEncoding # Temporary model = MlxSamModel.from_pretrained("EduardoPacheco/mlx-sam-vit-base") processor = SamProcessor.from_pretrained("EduardoPacheco/mlx-sam-vit-base") img_url = "https://huggingface.co/ybelkada/segment-anything/resolve/main/assets/car.png" raw_image = Image.open(requests.get(img_url, stream=True).raw).convert("RGB") input_points = [[[450, 600]]] # 2D localization of a window inputs = processor(raw_image, input_points=input_points, return_tensors="np") # There's currently a bug when using `return_tensors="np"` inputs["input_points"] = inputs["input_points"][None] inputs = BatchEncoding(data=dict(inputs), tensor_type="mlx") outputs = model(**inputs) masks = model.post_process_masks( masks=outputs.pred_masks, original_sizes=mlx_inputs.original_sizes, reshaped_input_sizes=mlx_inputs.reshaped_input_sizes, pad_size=processor.image_processor.pad_size, binarize=False, ) scores = outputs.iou_scores ```