{"adoption": {"forks": 2466, "observed_at": "2026-08-28T04:09:43.363321+00:00", "stars": 6429}, "canonical_url": "https://ross.abutalabs.com/products/easypr", "card": {"archived": false, "artifact_type": "library", "description": "(CGCSTCD'2017) An easy, flexible, and accurate plate recognition project for Chinese licenses in unconstrained situations.  CGCSTCD = China Graduate Contest on Smart-city Technology and Creative Design", "domain": ["computer-vision", "image-processing", "artificial-intelligence"], "enriched": true, "function": ["computer-vision", "ocr", "image-processing", "machine-learning"], "health_score": 20, "homepage": null, "language": "C++", "license": "Apache-2.0", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["liuruoze/EasyPR"], "name": "liuruoze/EasyPR", "platform": ["cpp", "windows", "cross-platform"], "pushed_at": "2024-06-04T13:10:44+00:00", "repo": "liuruoze/EasyPR", "stars": 6429, "tags": ["license-plate-recognition", "chinese-characters", "opencv", "svm", "ann", "plate-detection", "smart-city", "linux", "macos", "android", "ios"], "topics": ["computer-vision", "machine-learning", "artificial-intelligence", "plate-recognition", "unconstrained-situation", "datasets", "artificial-neural-networks", "support-vector-machines", "supervised-learning", "chinese-characters", "opencv", "opencv3"], "urls": [], "use_cases": ["recognize chinese license plates from images", "detect and locate license plates in photos", "ocr chinese plate characters like 苏EUK722", "build a smart-city parking or traffic camera system", "identify plate color (blue/green) along with plate number", "port license plate recognition to android or ios"], "what_it_is": "EasyPR is an open-source C++ library built on OpenCV for recognizing Chinese license plates in unconstrained situations, outputting plate characters and color as strings. It combines plate detection (Sobel, color, and CMSER methods) with character OCR using ANN/SVM models.", "when_to_avoid": ["you need recognition of non-Chinese license plates", "you need two-row or new-energy (green) plate support, which is still on the todo list", "you want a maintained deep-learning-based solution - the project is largely in maintenance with CNN work unfinished", "you prefer a ready-made cloud API rather than compiling C++ with OpenCV"], "when_to_choose": []}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/easypr", "repo": "liuruoze/EasyPR", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.363321+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:44:52.749673+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f7073489c61c80556d6669a60a6a3854c12f8b851b31e22e3901655a9df54c", "fetched_at": "2026-08-28T04:09:43.363321+00:00", "kind": "readme", "missing": false, "url": "https://github.com/liuruoze/EasyPR"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.363321+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:44:52.749673+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f7073489c61c80556d6669a60a6a3854c12f8b851b31e22e3901655a9df54c", "fetched_at": "2026-08-28T04:09:43.363321+00:00", "kind": "readme", "missing": false, "url": "https://github.com/liuruoze/EasyPR"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:44:52.749673+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f7073489c61c80556d6669a60a6a3854c12f8b851b31e22e3901655a9df54c", "fetched_at": "2026-08-28T04:09:43.363321+00:00", "kind": "readme", "missing": false, "url": "https://github.com/liuruoze/EasyPR"}], "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:09:43.363321+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.363321+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.363321+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:44:52.749673+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f7073489c61c80556d6669a60a6a3854c12f8b851b31e22e3901655a9df54c", "fetched_at": "2026-08-28T04:09:43.363321+00:00", "kind": "readme", "missing": false, "url": "https://github.com/liuruoze/EasyPR"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.363321+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.363321+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:44:52.749673+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f7073489c61c80556d6669a60a6a3854c12f8b851b31e22e3901655a9df54c", "fetched_at": "2026-08-28T04:09:43.363321+00:00", "kind": "readme", "missing": false, "url": "https://github.com/liuruoze/EasyPR"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.363321+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.363321+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.363321+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:44:52.749673+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f7073489c61c80556d6669a60a6a3854c12f8b851b31e22e3901655a9df54c", "fetched_at": "2026-08-28T04:09:43.363321+00:00", "kind": "readme", "missing": false, "url": "https://github.com/liuruoze/EasyPR"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.363321+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:43.363321+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:44:52.749673+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f7073489c61c80556d6669a60a6a3854c12f8b851b31e22e3901655a9df54c", "fetched_at": "2026-08-28T04:09:43.363321+00:00", "kind": "readme", "missing": false, "url": "https://github.com/liuruoze/EasyPR"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:44:52.749673+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f7073489c61c80556d6669a60a6a3854c12f8b851b31e22e3901655a9df54c", "fetched_at": "2026-08-28T04:09:43.363321+00:00", "kind": "readme", "missing": false, "url": "https://github.com/liuruoze/EasyPR"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:44:52.749673+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f7073489c61c80556d6669a60a6a3854c12f8b851b31e22e3901655a9df54c", "fetched_at": "2026-08-28T04:09:43.363321+00:00", "kind": "readme", "missing": false, "url": "https://github.com/liuruoze/EasyPR"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:44:52.749673+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f7073489c61c80556d6669a60a6a3854c12f8b851b31e22e3901655a9df54c", "fetched_at": "2026-08-28T04:09:43.363321+00:00", "kind": "readme", "missing": false, "url": "https://github.com/liuruoze/EasyPR"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4366, "days_push": 820, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 23, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}