Image Segmentation
Transformers
Safetensors
remote-sensing
earth-observation
open-vocabulary
clip
sam3
semantic-segmentation
Instructions to use Dingyi111/SegEarth-OV with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use Dingyi111/SegEarth-OV with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("image-segmentation", model="Dingyi111/SegEarth-OV")# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("Dingyi111/SegEarth-OV", dtype="auto") - Notebooks
- Google Colab
- Kaggle
| """ | |
| SegEarth OV pipeline. Self-contained; uses config.json and weights/featup/ in this folder. | |
| """ | |
| import json | |
| from pathlib import Path | |
| # Import from parent | |
| import sys | |
| _parent = Path(__file__).resolve().parent.parent | |
| if str(_parent) not in sys.path: | |
| sys.path.insert(0, str(_parent)) | |
| from pipeline import SegEarthPipelineCLIP | |
| def load(config_path: Path = None, model_id: str = None, **kwargs): | |
| """Load OV pipeline with config from this folder.""" | |
| repo_dir = Path(__file__).parent | |
| cfg_path = config_path or repo_dir / "config.json" | |
| with open(cfg_path) as f: | |
| cfg = json.load(f) | |
| local_backbone = cfg.get("local_backbone") | |
| if local_backbone: | |
| local_path = repo_dir / local_backbone | |
| if local_path.exists(): | |
| kwargs.setdefault("model_id", str(local_path)) | |
| if "model_id" not in kwargs: | |
| kwargs.setdefault("model_id", model_id or cfg["model_id"]) | |
| kwargs.setdefault("featup_model", cfg.get("featup") or "jbu_one") | |
| kwargs.setdefault("cls_token_lambda", cfg.get("cls_token_lambda", -0.3)) | |
| kwargs.setdefault("logit_scale", cfg.get("logit_scale", 50.0)) | |
| # Featup path: this folder's weights/featup first | |
| featup_name = (cfg.get("featup_weights") or "xclip_jbu_one_million_aid.ckpt").split("/")[-1] | |
| local_featup = repo_dir / "weights" / "featup" / featup_name | |
| if local_featup.exists(): | |
| kwargs.setdefault("featup_weights_path", local_featup) | |
| kwargs.setdefault("class_names_path", repo_dir / "configs" / "cls_openearthmap_sar.txt") | |
| return SegEarthPipelineCLIP(**kwargs) | |
| SegEarthPipeline = load | |