{"adoption": {"forks": 427, "observed_at": "2026-08-28T04:05:57.896883+00:00", "stars": 1947}, "canonical_url": "https://ross.abutalabs.com/products/yolov5_obb", "card": {"archived": false, "artifact_type": "library", "description": "yolov5 + csl_label.(Oriented Object Detection)（Rotation Detection）（Rotated BBox）基于yolov5的旋转目标检测", "domain": ["computer-vision", "deep-learning", "machine-learning", "artificial-intelligence"], "enriched": true, "function": ["machine-learning", "deep-learning", "computer-vision", "image-processing"], "health_score": 20, "homepage": null, "language": "Python", "license": "GPL-3.0", "license_family": "copyleft", "maturity": "maintenance", "member_repos": ["hukaixuan19970627/yolov5_obb"], "name": "hukaixuan19970627/yolov5_obb", "platform": ["python", "cross-platform"], "pushed_at": "2023-10-13T19:46:15+00:00", "repo": "hukaixuan19970627/yolov5_obb", "stars": 1947, "tags": ["yolov5", "oriented-object-detection", "rotated-bbox", "circular-smooth-label", "dota-dataset", "aerial-imagery", "object-detection", "gpu", "linux"], "topics": ["yolov5", "detection", "dota", "rotation", "oriented", "aerial-imagery", "rotated-object"], "urls": [], "use_cases": ["detect rotated objects in aerial images", "train a yolov5 model for oriented bounding box detection", "run rotated object detection on the DOTA dataset", "detect ships or vehicles at arbitrary angles in satellite imagery", "reproduce OBB mAP results on DOTA v1.0/v1.5/v2.0", "convert a horizontal detection model to rotation-aware detection"], "what_it_is": "A PyTorch implementation of YOLOv5 extended for oriented (rotated) object detection using Circular Smooth Label (CSL) angle encoding. It provides training, validation, and inference for rotated bounding box detection, benchmarked on the DOTA aerial imagery dataset.", "when_to_avoid": ["you only need standard axis-aligned object detection (use upstream ultralytics yolov5)", "you need actively maintained code or the latest YOLO versions", "you require a license more permissive than GPL-3.0", "you need production support or frequent updates"], "when_to_choose": ["you need rotated/oriented bounding box detection built on the familiar YOLOv5 codebase", "you work with aerial or remote-sensing imagery like DOTA", "you want pretrained OBB checkpoints and DOTA evaluation tooling out of the box"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/yolov5_obb", "repo": "hukaixuan19970627/yolov5_obb", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.896883+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:07:07.077786+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "db8167bff77bfc6788e55868585549e3185082be53ee910d61abc98b5b3483fa", "fetched_at": "2026-08-28T04:05:57.896883+00:00", "kind": "readme", "missing": false, "url": "https://github.com/hukaixuan19970627/yolov5_obb"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.896883+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:07:07.077786+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "db8167bff77bfc6788e55868585549e3185082be53ee910d61abc98b5b3483fa", "fetched_at": "2026-08-28T04:05:57.896883+00:00", "kind": "readme", "missing": false, "url": "https://github.com/hukaixuan19970627/yolov5_obb"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:07:07.077786+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "db8167bff77bfc6788e55868585549e3185082be53ee910d61abc98b5b3483fa", "fetched_at": "2026-08-28T04:05:57.896883+00:00", "kind": "readme", "missing": false, "url": "https://github.com/hukaixuan19970627/yolov5_obb"}], "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:57.896883+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.896883+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.896883+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:07:07.077786+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "db8167bff77bfc6788e55868585549e3185082be53ee910d61abc98b5b3483fa", "fetched_at": "2026-08-28T04:05:57.896883+00:00", "kind": "readme", "missing": false, "url": "https://github.com/hukaixuan19970627/yolov5_obb"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.896883+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.896883+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:07:07.077786+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "db8167bff77bfc6788e55868585549e3185082be53ee910d61abc98b5b3483fa", "fetched_at": "2026-08-28T04:05:57.896883+00:00", "kind": "readme", "missing": false, "url": "https://github.com/hukaixuan19970627/yolov5_obb"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.896883+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.896883+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.896883+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:07:07.077786+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "db8167bff77bfc6788e55868585549e3185082be53ee910d61abc98b5b3483fa", "fetched_at": "2026-08-28T04:05:57.896883+00:00", "kind": "readme", "missing": false, "url": "https://github.com/hukaixuan19970627/yolov5_obb"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.896883+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:57.896883+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:07:07.077786+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "db8167bff77bfc6788e55868585549e3185082be53ee910d61abc98b5b3483fa", "fetched_at": "2026-08-28T04:05:57.896883+00:00", "kind": "readme", "missing": false, "url": "https://github.com/hukaixuan19970627/yolov5_obb"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:07:07.077786+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "db8167bff77bfc6788e55868585549e3185082be53ee910d61abc98b5b3483fa", "fetched_at": "2026-08-28T04:05:57.896883+00:00", "kind": "readme", "missing": false, "url": "https://github.com/hukaixuan19970627/yolov5_obb"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:07:07.077786+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "db8167bff77bfc6788e55868585549e3185082be53ee910d61abc98b5b3483fa", "fetched_at": "2026-08-28T04:05:57.896883+00:00", "kind": "readme", "missing": false, "url": "https://github.com/hukaixuan19970627/yolov5_obb"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:07:07.077786+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "db8167bff77bfc6788e55868585549e3185082be53ee910d61abc98b5b3483fa", "fetched_at": "2026-08-28T04:05:57.896883+00:00", "kind": "readme", "missing": false, "url": "https://github.com/hukaixuan19970627/yolov5_obb"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "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": 1995, "days_push": 1055, "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}}