{"adoption": {"forks": 640, "observed_at": "2026-08-28T04:07:17.786515+00:00", "stars": 2748}, "canonical_url": "https://ross.abutalabs.com/products/voxelmorph", "card": {"archived": false, "artifact_type": "library", "description": "Unsupervised Learning for Image Registration", "domain": ["machine-learning", "deep-learning", "healthcare", "image-processing"], "enriched": true, "function": ["machine-learning", "image-processing", "deep-learning"], "health_score": 79, "homepage": null, "language": "Python", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["voxelmorph/voxelmorph"], "name": "voxelmorph/voxelmorph", "platform": ["python"], "pushed_at": "2026-08-17T22:35:41+00:00", "repo": "voxelmorph/voxelmorph", "stars": 2748, "tags": ["image-registration", "medical-imaging", "diffeomorphism", "unsupervised-learning", "pytorch", "tensorflow", "deformable-registration", "synthmorph"], "topics": ["image-registration", "image-alignment", "machine-learning", "deep-learning", "probabilistic", "diffeomorphism", "unsupervised-learning", "optical-flow"], "urls": [], "use_cases": ["register medical images like MRI or CT scans", "align 3D brain volumes with deep learning", "train an unsupervised image registration model", "build anatomical templates with atlas construction", "compute diffeomorphic warps between images", "perform cross-modal registration like CT to MRI"], "what_it_is": "VoxelMorph is a Python library for learning-based image registration and alignment, using unsupervised deep learning to model deformations between images. It offers both a PyTorch version under active development and a stable TensorFlow branch, with pre-trained models and tutorials for medical imaging tasks.", "when_to_avoid": ["you need simple rigid or affine registration of a few images without training", "you require a fully stable API and prefer not to track active development", "your project does not involve deep learning or GPU compute", "you need registration for non-volumetric data like plain documents"], "when_to_choose": ["you need fast, learning-based registration of 2D or 3D medical images", "you want unsupervised registration without paired ground-truth deformations", "you need diffeomorphic or probabilistic deformation models", "you want pre-trained models like SynthMorph for brain MRI alignment"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/voxelmorph", "repo": "voxelmorph/voxelmorph", "role": "main", "score": 76}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.786515+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T08:19:00.475512+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8d50c6d3bf3f3ae2e442889bec9a834058d71e0883e9caa5a9993d4c713fc56a", "fetched_at": "2026-08-28T04:07:17.786515+00:00", "kind": "readme", "missing": false, "url": "https://github.com/voxelmorph/voxelmorph"}, {"content_hash": "44670e0aa141570cbd75b21dca1774397b27e35325e8b60475051e84f6c9d6af", "fetched_at": "2026-08-29T09:56:57.108562+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/voxelmorph/json"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.786515+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T08:19:00.475512+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8d50c6d3bf3f3ae2e442889bec9a834058d71e0883e9caa5a9993d4c713fc56a", "fetched_at": "2026-08-28T04:07:17.786515+00:00", "kind": "readme", "missing": false, "url": "https://github.com/voxelmorph/voxelmorph"}, {"content_hash": "44670e0aa141570cbd75b21dca1774397b27e35325e8b60475051e84f6c9d6af", "fetched_at": "2026-08-29T09:56:57.108562+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/voxelmorph/json"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T08:19:00.475512+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8d50c6d3bf3f3ae2e442889bec9a834058d71e0883e9caa5a9993d4c713fc56a", "fetched_at": "2026-08-28T04:07:17.786515+00:00", "kind": "readme", "missing": false, "url": "https://github.com/voxelmorph/voxelmorph"}, {"content_hash": "44670e0aa141570cbd75b21dca1774397b27e35325e8b60475051e84f6c9d6af", "fetched_at": "2026-08-29T09:56:57.108562+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/voxelmorph/json"}], "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:17.786515+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.786515+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.786515+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T08:19:00.475512+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8d50c6d3bf3f3ae2e442889bec9a834058d71e0883e9caa5a9993d4c713fc56a", "fetched_at": "2026-08-28T04:07:17.786515+00:00", "kind": "readme", "missing": false, "url": "https://github.com/voxelmorph/voxelmorph"}, {"content_hash": "44670e0aa141570cbd75b21dca1774397b27e35325e8b60475051e84f6c9d6af", "fetched_at": "2026-08-29T09:56:57.108562+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/voxelmorph/json"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.786515+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.786515+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T08:19:00.475512+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8d50c6d3bf3f3ae2e442889bec9a834058d71e0883e9caa5a9993d4c713fc56a", "fetched_at": "2026-08-28T04:07:17.786515+00:00", "kind": "readme", "missing": false, "url": "https://github.com/voxelmorph/voxelmorph"}, {"content_hash": "44670e0aa141570cbd75b21dca1774397b27e35325e8b60475051e84f6c9d6af", "fetched_at": "2026-08-29T09:56:57.108562+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/voxelmorph/json"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.786515+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.786515+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.786515+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T08:19:00.475512+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8d50c6d3bf3f3ae2e442889bec9a834058d71e0883e9caa5a9993d4c713fc56a", "fetched_at": "2026-08-28T04:07:17.786515+00:00", "kind": "readme", "missing": false, "url": "https://github.com/voxelmorph/voxelmorph"}, {"content_hash": "44670e0aa141570cbd75b21dca1774397b27e35325e8b60475051e84f6c9d6af", "fetched_at": "2026-08-29T09:56:57.108562+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/voxelmorph/json"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.786515+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.786515+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T08:19:00.475512+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8d50c6d3bf3f3ae2e442889bec9a834058d71e0883e9caa5a9993d4c713fc56a", "fetched_at": "2026-08-28T04:07:17.786515+00:00", "kind": "readme", "missing": false, "url": "https://github.com/voxelmorph/voxelmorph"}, {"content_hash": "44670e0aa141570cbd75b21dca1774397b27e35325e8b60475051e84f6c9d6af", "fetched_at": "2026-08-29T09:56:57.108562+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/voxelmorph/json"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T08:19:00.475512+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8d50c6d3bf3f3ae2e442889bec9a834058d71e0883e9caa5a9993d4c713fc56a", "fetched_at": "2026-08-28T04:07:17.786515+00:00", "kind": "readme", "missing": false, "url": "https://github.com/voxelmorph/voxelmorph"}, {"content_hash": "44670e0aa141570cbd75b21dca1774397b27e35325e8b60475051e84f6c9d6af", "fetched_at": "2026-08-29T09:56:57.108562+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/voxelmorph/json"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T08:19:00.475512+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8d50c6d3bf3f3ae2e442889bec9a834058d71e0883e9caa5a9993d4c713fc56a", "fetched_at": "2026-08-28T04:07:17.786515+00:00", "kind": "readme", "missing": false, "url": "https://github.com/voxelmorph/voxelmorph"}, {"content_hash": "44670e0aa141570cbd75b21dca1774397b27e35325e8b60475051e84f6c9d6af", "fetched_at": "2026-08-29T09:56:57.108562+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/voxelmorph/json"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T08:19:00.475512+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8d50c6d3bf3f3ae2e442889bec9a834058d71e0883e9caa5a9993d4c713fc56a", "fetched_at": "2026-08-28T04:07:17.786515+00:00", "kind": "readme", "missing": false, "url": "https://github.com/voxelmorph/voxelmorph"}, {"content_hash": "44670e0aa141570cbd75b21dca1774397b27e35325e8b60475051e84f6c9d6af", "fetched_at": "2026-08-29T09:56:57.108562+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/voxelmorph/json"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 98, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3033, "days_push": 16, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 76, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}