{"adoption": {"forks": 145, "observed_at": "2026-08-28T04:07:25.786366+00:00", "stars": 2854}, "canonical_url": "https://ross.abutalabs.com/products/semantic-sam", "card": {"archived": false, "artifact_type": "library", "description": "[ECCV 2024] Official implementation of the paper \"Semantic-SAM: Segment and Recognize Anything at Any Granularity\"", "domain": ["computer-vision", "image-processing", "artificial-intelligence", "deep-learning"], "enriched": true, "function": ["computer-vision", "image-processing", "machine-learning", "deep-learning"], "health_score": 40, "homepage": null, "language": "Python", "license": null, "license_family": "other", "maturity": "active", "member_repos": ["UX-Decoder/Semantic-SAM"], "name": "UX-Decoder/Semantic-SAM", "platform": ["python"], "pushed_at": "2025-07-10T08:06:44+00:00", "repo": "UX-Decoder/Semantic-SAM", "stars": 2854, "tags": ["image-segmentation", "segment-anything", "sam", "interactive-segmentation", "multi-granularity", "eccv-2024", "research-code", "linux", "gpu"], "topics": [], "urls": [], "use_cases": ["segment objects in images at multiple granularity levels", "interactive click-based segmentation with multiple mask options", "auto-generate all masks for an image with controllable granularity", "reproduce SAM training on the SA-1B dataset", "part-level and semantic-aware segmentation", "research on universal image segmentation models"], "what_it_is": "Official PyTorch implementation of Semantic-SAM, a universal image segmentation model that segments and recognizes anything at any desired granularity, from semantic to instance to part level. It reproduces SAM training on SA-1B and extends it with controllable multi-granularity interactive and automatic mask generation.", "when_to_avoid": ["you need a production-ready product with a polished UI rather than research code", "you lack GPU resources for large vision transformer inference or training", "you need a permissively licensed dependency and cannot accept a missing license", "you only need simple off-the-shelf object detection without segmentation"], "when_to_choose": ["you need segmentation masks at semantic, instance, or part level from a single model", "you want SAM-like segmentation with finer granularity control", "you need training code and checkpoints for SAM-style models", "you are doing research on interactive or universal segmentation"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/semantic-sam", "repo": "UX-Decoder/Semantic-SAM", "role": "main", "score": 33}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:25.786366+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:48:30.689862+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "439c452e98f53720130def9e87a8ed8c5918ab5f7d7eb131a2bcc820f301acde", "fetched_at": "2026-08-28T04:07:25.786366+00:00", "kind": "readme", "missing": false, "url": "https://github.com/UX-Decoder/Semantic-SAM"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:25.786366+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:48:30.689862+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "439c452e98f53720130def9e87a8ed8c5918ab5f7d7eb131a2bcc820f301acde", "fetched_at": "2026-08-28T04:07:25.786366+00:00", "kind": "readme", "missing": false, "url": "https://github.com/UX-Decoder/Semantic-SAM"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:48:30.689862+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "439c452e98f53720130def9e87a8ed8c5918ab5f7d7eb131a2bcc820f301acde", "fetched_at": "2026-08-28T04:07:25.786366+00:00", "kind": "readme", "missing": false, "url": "https://github.com/UX-Decoder/Semantic-SAM"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:07:25.786366+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:25.786366+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:25.786366+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:48:30.689862+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "439c452e98f53720130def9e87a8ed8c5918ab5f7d7eb131a2bcc820f301acde", "fetched_at": "2026-08-28T04:07:25.786366+00:00", "kind": "readme", "missing": false, "url": "https://github.com/UX-Decoder/Semantic-SAM"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:25.786366+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:25.786366+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:48:30.689862+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "439c452e98f53720130def9e87a8ed8c5918ab5f7d7eb131a2bcc820f301acde", "fetched_at": "2026-08-28T04:07:25.786366+00:00", "kind": "readme", "missing": false, "url": "https://github.com/UX-Decoder/Semantic-SAM"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:25.786366+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:25.786366+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:25.786366+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:48:30.689862+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "439c452e98f53720130def9e87a8ed8c5918ab5f7d7eb131a2bcc820f301acde", "fetched_at": "2026-08-28T04:07:25.786366+00:00", "kind": "readme", "missing": false, "url": "https://github.com/UX-Decoder/Semantic-SAM"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:25.786366+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:25.786366+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:48:30.689862+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "439c452e98f53720130def9e87a8ed8c5918ab5f7d7eb131a2bcc820f301acde", "fetched_at": "2026-08-28T04:07:25.786366+00:00", "kind": "readme", "missing": false, "url": "https://github.com/UX-Decoder/Semantic-SAM"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:48:30.689862+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "439c452e98f53720130def9e87a8ed8c5918ab5f7d7eb131a2bcc820f301acde", "fetched_at": "2026-08-28T04:07:25.786366+00:00", "kind": "readme", "missing": false, "url": "https://github.com/UX-Decoder/Semantic-SAM"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:48:30.689862+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "439c452e98f53720130def9e87a8ed8c5918ab5f7d7eb131a2bcc820f301acde", "fetched_at": "2026-08-28T04:07:25.786366+00:00", "kind": "readme", "missing": false, "url": "https://github.com/UX-Decoder/Semantic-SAM"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:48:30.689862+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "439c452e98f53720130def9e87a8ed8c5918ab5f7d7eb131a2bcc820f301acde", "fetched_at": "2026-08-28T04:07:25.786366+00:00", "kind": "readme", "missing": false, "url": "https://github.com/UX-Decoder/Semantic-SAM"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 31, "longevity": 82, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1150, "days_push": 419, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 33, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}