{"adoption": {"forks": 261, "observed_at": "2026-08-28T04:05:27.851116+00:00", "stars": 1722}, "canonical_url": "https://ross.abutalabs.com/products/deep-motion-editing", "card": {"archived": false, "artifact_type": "library", "description": "An end-to-end library for editing and rendering motion of 3D characters with deep learning [SIGGRAPH 2020]", "domain": ["deep-learning", "machine-learning", "simulation"], "enriched": true, "function": ["machine-learning", "deep-learning", "animation", "graphics", "image-processing"], "health_score": 20, "homepage": null, "language": "Python", "license": "BSD-2-Clause", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["DeepMotionEditing/deep-motion-editing"], "name": "DeepMotionEditing/deep-motion-editing", "platform": ["python"], "pushed_at": "2024-07-12T15:05:13+00:00", "repo": "DeepMotionEditing/deep-motion-editing", "stars": 1722, "tags": ["character-animation", "motion-retargeting", "motion-style-transfer", "bvh", "blender", "pytorch", "siggraph", "computer-graphics", "linux", "macos", "gpu"], "topics": ["character-animation", "computer-graphics", "deep-learning", "motion-retargeting", "style-transfer", "computer-animation"], "urls": [], "use_cases": ["retarget motion from one 3D character skeleton to another", "transfer motion style from video to animation", "edit bvh animation files with deep learning", "render 3D character animations in Blender", "reproduce SIGGRAPH 2020 motion retargeting results", "run cross-structural character animation retargeting"], "what_it_is": "A PyTorch-based end-to-end library for editing and rendering 3D character motion, built on SIGGRAPH 2020 research. It provides deep learning modules for motion retargeting and motion style transfer, with visualization and rendering via Blender.", "when_to_avoid": ["you need a production animation tool with a polished GUI", "you work with formats other than bvh without conversion", "you need real-time animation editing on CPU only", "you want actively developed features - the library is largely research code"], "when_to_choose": ["you need deep-learning-based motion retargeting between character skeletons", "you want to apply motion styles from video to 3D animations", "you work with bvh animation files and PyTorch", "you need a research-grade reference implementation of skeleton-aware networks"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/deep-motion-editing", "repo": "DeepMotionEditing/deep-motion-editing", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.851116+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:33:58.474819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c09af1fea2a67660822e96e179ec66613473b30204eef3e00bc42192176a9c59", "fetched_at": "2026-08-28T04:05:27.851116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeepMotionEditing/deep-motion-editing"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.851116+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:33:58.474819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c09af1fea2a67660822e96e179ec66613473b30204eef3e00bc42192176a9c59", "fetched_at": "2026-08-28T04:05:27.851116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeepMotionEditing/deep-motion-editing"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:33:58.474819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c09af1fea2a67660822e96e179ec66613473b30204eef3e00bc42192176a9c59", "fetched_at": "2026-08-28T04:05:27.851116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeepMotionEditing/deep-motion-editing"}], "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:05:27.851116+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.851116+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.851116+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:33:58.474819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c09af1fea2a67660822e96e179ec66613473b30204eef3e00bc42192176a9c59", "fetched_at": "2026-08-28T04:05:27.851116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeepMotionEditing/deep-motion-editing"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.851116+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.851116+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:33:58.474819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c09af1fea2a67660822e96e179ec66613473b30204eef3e00bc42192176a9c59", "fetched_at": "2026-08-28T04:05:27.851116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeepMotionEditing/deep-motion-editing"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.851116+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.851116+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.851116+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:33:58.474819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c09af1fea2a67660822e96e179ec66613473b30204eef3e00bc42192176a9c59", "fetched_at": "2026-08-28T04:05:27.851116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeepMotionEditing/deep-motion-editing"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.851116+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.851116+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:33:58.474819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c09af1fea2a67660822e96e179ec66613473b30204eef3e00bc42192176a9c59", "fetched_at": "2026-08-28T04:05:27.851116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeepMotionEditing/deep-motion-editing"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:33:58.474819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c09af1fea2a67660822e96e179ec66613473b30204eef3e00bc42192176a9c59", "fetched_at": "2026-08-28T04:05:27.851116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeepMotionEditing/deep-motion-editing"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:33:58.474819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c09af1fea2a67660822e96e179ec66613473b30204eef3e00bc42192176a9c59", "fetched_at": "2026-08-28T04:05:27.851116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeepMotionEditing/deep-motion-editing"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:33:58.474819+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c09af1fea2a67660822e96e179ec66613473b30204eef3e00bc42192176a9c59", "fetched_at": "2026-08-28T04:05:27.851116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeepMotionEditing/deep-motion-editing"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2326, "days_push": 782, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}