Skip to content

ultralytics/yolo-ios-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

11 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Ultralytics logo

πŸš€ Ultralytics YOLO iOS App

Ultralytics Actions Discord

Welcome to the Ultralytics YOLO iOS App GitHub repository! πŸ“– Leveraging Ultralytics' advanced YOLOv8 object detection models, this app transforms your iOS device into an intelligent detection tool. Explore our guide to get started with the Ultralytics YOLO iOS App and discover the world in a new and exciting way.

πŸ›  Quickstart: Setting Up the Ultralytics YOLO iOS App

Getting started with the Ultralytics YOLO iOS App is straightforward. Follow these steps to install the app on your iOS device.

Prerequisites

Ensure you have the following before you start:

  • Xcode: The Ultralytics YOLO iOS App requires Xcode installed on your macOS machine. Download it from the Mac App Store.

  • An iOS Device: For testing the app, you'll need an iPhone or iPad running iOS 14.0 or later.

  • An Apple Developer Account: A free Apple Developer account will suffice for device testing. Sign up here if you haven't already.

Installation

  1. Clone the Repository:

    git clone https://github.com/ultralytics/yolo-ios-app.git
  2. Open the Project in Xcode:

    Navigate to the cloned directory and open the YOLO.xcodeproj file.

    XCode load project screenshot

    In Xcode, go to the project's target settings and choose your Apple Developer account under the "Signing & Capabilities" tab.

  3. Add YOLOv8 Models to the Project:

    Export CoreML INT8 models using the ultralytics Python package (with pip install ultralytics), or download them from our GitHub release assets. You should have 5 YOLOv8 models in total. Place these in the YOLO/Models directory as seen in the Xcode screenshot below.

    from ultralytics import YOLO
    
    # Loop through all YOLOv8 model sizes
    for size in ("n", "s", "m", "l", "x"):
    
        # Load a YOLOv8 PyTorch model
        model = YOLO(f"yolov8{size}.pt")
    
        # Export the PyTorch model to CoreML INT8 format with NMS layers
        model.export(format="coreml", int8=True, nms=True, imgsz=[640, 384])
  4. Run the Ultralytics YOLO iOS App:

    Connect your iOS device and select it as the run target. Press the Run button to install the app on your device.

    Ultralytics YOLO XCode screenshot

πŸš€ Usage

The Ultralytics YOLO iOS App is designed to be intuitive:

  • Real-Time Detection: Launch the app and aim your camera at objects to detect them instantly.
  • Multiple AI Models: Select from a range of Ultralytics YOLOv8 models, from YOLOv8n 'nano' to YOLOv8x 'x-large'.

πŸ’‘ Contribute

We warmly welcome your contributions to Ultralytics' open-source projects! Your support and contributions significantly impact. Get involved by reviewing our Contributing Guide, and share your feedback through our Survey. A massive thank you πŸ™ to everyone who contributes!

Ultralytics open-source contributors

πŸ“„ License

Ultralytics offers two licensing options:

  • AGPL-3.0 License: An OSI-approved open-source license, perfect for academics, researchers, and enthusiasts. It encourages sharing knowledge and collaboration. See the LICENSE file for details.

  • Enterprise License: Designed for commercial use, this license permits integrating Ultralytics software into proprietary products and services. For commercial use, please contact us through Ultralytics Licensing.

🀝 Contact

  • Submit Ultralytics bug reports and feature requests via GitHub Issues.
  • Join our Discord for assistance, questions, and discussions with the community and team!

Ultralytics GitHub space Ultralytics LinkedIn space Ultralytics Twitter space Ultralytics YouTube space Ultralytics TikTok space Ultralytics Instagram space Ultralytics Discord