--- license: agpl-3.0 library_name: coremltools pipeline_tag: keypoint-detection tags: - coreml - apple-silicon - yolo - pose-estimation - macos --- # YOLOv8 Pose — Core ML Ready-to-use Core ML conversions of Ultralytics YOLOv8 Pose for human pose estimation on Apple Silicon. The `n`, `s`, and `m` variants are provided as `.mlpackage` models for use with the CPU, GPU, and Apple Neural Engine. These models power pose-driven apps and games in [Hugging Mac](https://github.com/devilyouwei/hugging-mac), an open-source platform for building local AI experiences on macOS. ## Models | Variant | Package size | Best for | |---|---:|---| | `yolov8n-pose` | 6.8 MB | Lowest latency and resource usage | | `yolov8s-pose` | 23.5 MB | Balanced speed and accuracy | | `yolov8m-pose` | 53.2 MB | Higher accuracy | ## Provenance and conversion - Source: [Ultralytics assets v8.2.0](https://github.com/ultralytics/assets/releases/tag/v8.2.0) - Task: person detection and COCO 17-keypoint pose estimation - Input size: fixed `640 × 640`, batch size 1 - Precision: FP16 conversion - NMS: not embedded; apply confidence filtering and NMS after inference ## Input and output | Name | Type | Shape | Description | |---|---|---|---| | `image` | RGB image | `640 × 640` | Letterboxed model input | | `predictions` | FP32 multi-array | `1 × 56 × 8400` | Boxes, person scores, and 17 keypoints (`x`, `y`, visibility) | ## Core ML example ```python from pathlib import Path import coremltools as ct from huggingface_hub import snapshot_download from PIL import Image, ImageOps root = Path(snapshot_download( repo_id="hugging-mac/yolov8-pose-coreml", allow_patterns=["yolov8n-pose.mlpackage/**"], )) model = ct.models.MLModel( root / "yolov8n-pose.mlpackage", compute_units=ct.ComputeUnit.ALL, ) image = ImageOps.pad( Image.open("person.jpg").convert("RGB"), (640, 640), color=(114, 114, 114), ) predictions = model.predict({"image": image})["predictions"] print(predictions.shape) # (1, 56, 8400) ``` The output is raw. See the [Hugging Mac YOLOv8 Pose SDK](https://github.com/devilyouwei/hugging-mac/tree/main/packages/hugging_mac_sdk/src/hugging_mac_sdk/models/yolov8_pose) for complete preprocessing, NMS, keypoint decoding, and coordinate restoration. ## Integrity | Package | Directory SHA-256 | |---|---| | `yolov8n-pose.mlpackage` | `84d3154a02c99307ec9e5bab023551eaa4cd16660d61b61fc361ac3c760eb863` | | `yolov8s-pose.mlpackage` | `660389b72cf309e66af18fdafe80d1c719809921b77ea2d417b76686cf44801c` | | `yolov8m-pose.mlpackage` | `da9a330d271eac5b1b740b2b78b2fbcc3a3406a5e5d25cb459afd122d091092a` | ## License The converted models retain the upstream Ultralytics licensing terms and are published under AGPL-3.0. Review Ultralytics licensing requirements before commercial or closed-source use. Hugging Mac is not affiliated with or endorsed by Ultralytics.