{"id":27168459,"url":"https://github.com/xixu-me/yolo-tinyperson","last_synced_at":"2026-01-21T04:02:49.532Z","repository":{"id":289410571,"uuid":"961734919","full_name":"xixu-me/YOLO-TinyPerson","owner":"xixu-me","description":"A comprehensive framework for training and evaluating YOLO models on the TinyPerson dataset for small object detection. This repository provides tools to benchmark different YOLO model versions (v8, v9, v10, v11, v12) on detecting small persons in images","archived":false,"fork":false,"pushed_at":"2025-05-27T01:50:10.000Z","size":10303,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-27T02:38:50.592Z","etag":null,"topics":["small-object-detection","tinyperson","yolo","yolo-object-detection","yolov10","yolov11","yolov12","yolov8","yolov9"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/xixu-me.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-04-07T04:47:34.000Z","updated_at":"2025-05-27T01:50:13.000Z","dependencies_parsed_at":"2025-04-23T06:36:26.307Z","dependency_job_id":null,"html_url":"https://github.com/xixu-me/YOLO-TinyPerson","commit_stats":null,"previous_names":["xixu-me/yolo-tinyperson"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/xixu-me/YOLO-TinyPerson","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xixu-me%2FYOLO-TinyPerson","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xixu-me%2FYOLO-TinyPerson/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xixu-me%2FYOLO-TinyPerson/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xixu-me%2FYOLO-TinyPerson/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xixu-me","download_url":"https://codeload.github.com/xixu-me/YOLO-TinyPerson/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xixu-me%2FYOLO-TinyPerson/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28625926,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-21T02:47:06.670Z","status":"ssl_error","status_checked_at":"2026-01-21T02:45:44.886Z","response_time":86,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["small-object-detection","tinyperson","yolo","yolo-object-detection","yolov10","yolov11","yolov12","yolov8","yolov9"],"created_at":"2025-04-09T05:33:33.903Z","updated_at":"2026-01-21T04:02:49.527Z","avatar_url":"https://github.com/xixu-me.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# YOLO-TinyPerson\n\nA comprehensive framework for training and evaluating YOLO models on the TinyPerson dataset for small object detection. This repository provides tools to benchmark different YOLO model versions (v8, v9, v10, v11, v12) on detecting small persons in images.\n\n## Features\n\n- **Complete Pipeline**: Setup environment, train models, evaluate performance, and visualize results\n- **Multiple YOLO Models**: Support for YOLOv8x, YOLOv9e, YOLOv10x, YOLO11x, and YOLO12x\n- **Automated Setup**: Downloads required datasets, models, and dependencies\n- **Comprehensive Evaluation**: Measures precision, recall, F1 score, mAP, and inference speed\n- **Rich Visualizations**: Generates performance comparison plots across models\n\n## Prerequisites\n\n- Python 3.6+\n- CUDA-compatible GPU recommended (training on CPU is supported but not recommended)\n- Windows or Linux operating system\n\n## Installation\n\n1. Clone the repository:\n\n   ```bash\n   git clone https://github.com/xixu-me/YOLO-TinyPerson.git\n   cd YOLO-TinyPerson\n   ```\n\n2. Install dependencies:\n\n   ```bash\n   pip install -r requirements.txt\n   ```\n\n3. Set `dataset_dir` to the dataset path in [`setup.py`](setup.py):\n\n   ```python\n   dataset_dir = \"path/to/dataset\"\n   ```\n\n## Usage\n\nThe framework provides a simple command-line interface for running different parts of the pipeline:\n\n### Complete Pipeline\n\nRun the entire process (setup, train, evaluate, visualize):\n\n```bash\npython main.py all\n```\n\nor just:\n\n```bash\npython main.py\n```\n\nThis will execute the default command, which is `all`.\n\n### Individual Steps\n\nSetup environment and download required files:\n\n```bash\npython main.py setup\n```\n\nTrain YOLO models on the TinyPerson dataset:\n\n```bash\npython main.py train\n```\n\nEvaluate trained models:\n\n```bash\npython main.py evaluate\n```\n\nGenerate visualizations of training and evaluation results:\n\n```bash\npython main.py visualize\n```\n\n## Project Structure\n\n```\nYOLO-TinyPerson/\n├── main.py           # Main entry point with command-line interface\n├── setup.py          # Environment setup, downloads datasets and models\n├── train.py          # Model training functionality\n├── evaluate.py       # Model evaluation and metrics calculation\n├── visualize.py      # Results visualization and plot generation\n├── requirements.txt  # Required Python packages\n├── dataset/          # TinyPerson dataset (downloaded by setup.py)\n├── weights/          # Pre-trained model weights (downloaded by setup.py)\n├── results/          # Training results for each model\n├── evaluation/       # Evaluation metrics and results\n└── visualizations/   # Generated plots and visualizations\n```\n\n## Performance Metrics\n\nThe framework evaluates models using the following metrics:\n\n- **Precision**: Accuracy of positive predictions\n- **Recall**: Ability to find all relevant instances\n- **F1-score**: Harmonic mean of precision and recall\n- **mAP@0.5**: Mean Average Precision with IoU threshold of 0.5\n- **mAP@0.5-0.95**: Mean Average Precision across multiple IoU thresholds\n- **Inference Speed**: Frames processed per second\n\nVisualizations are generated in the `visualizations/` directory, including:\n\n- Precision/Recall/F1 comparison across models\n- mAP comparison\n- Training loss curves\n- Inference speed comparison\n- Radar charts for overall performance comparison\n\n## Model Support\n\nThe following YOLO models are supported:\n\n| Model | Description |\n|-------|-------------|\n| YOLOv8x | YOLOv8 extra large model |\n| YOLOv9e | YOLOv9 extended model |\n| YOLOv10x | YOLOv10 extra large model |\n| YOLO11x | YOLO11 extra large model |\n| YOLO12x | YOLO12 extra large model |\n\n## Acknowledgments\n\n- The TinyPerson dataset is used for training and evaluation\n- YOLO models from the Ultralytics framework\n\n## License\n\nCopyright \u0026copy; [Xi Xu](https://xi-xu.me)\n\nLicensed under the [GPL-3.0](LICENSE) license.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxixu-me%2Fyolo-tinyperson","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxixu-me%2Fyolo-tinyperson","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxixu-me%2Fyolo-tinyperson/lists"}