Who is this for?

This Learning Path is for Android and machine learning developers who want to run optimized object detection locally on an Arm-based Android device. It demonstrates an ExecuTorch adapter that selects the preprocessing and output decoding required by supported YOLO models.

What will you learn?

Upon completion of this Learning Path, you will be able to:

  • Prepare the Android command-line tools and connect an Arm-based Android phone
  • Download and run a supported object-detection model from the Arm AI Portal
  • Explain how the supplied adapter selects version-specific preprocessing and output decoding for supported YOLO models
  • Register another compatible detector or optionally generate and validate a separate adapter

Prerequisites

Before starting, you will need the following:

  • A macOS, Linux, or Windows development machine
  • Git installed on the development machine
  • Python 3 on the machine with the venv and pip modules
  • Java Development Kit (JDK) 17 or later, available on your machine’s PATH
  • A tool for downloading files and a tool for extracting ZIP archives on the machine
  • An Arm-based Android phone with Android 9 or later with enough free storage for the application and model files
  • A Hugging Face account with access to the model repositories
  • A data-capable USB cable
  • Network access for the first Gradle build and model downloads
  • Basic familiarity with terminal commands and Android applications

Summary

AI-assisted

This summary was drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
You’ll build and run an application called Scene Detector on an Arm-based Android phone. First, you’ll install the Android command-line tools, connect a device with adb, and build the application with Gradle. Next, you’ll start with the Arm AI Portal YOLOv8s model in ExecuTorch. You’ll analyze a saved image and a live camera feed, then learn how to register a compatible detector or create and validate an adapter for an unsupported model.

Frequently asked questions

AI-assisted

These FAQs were drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
How do I verify that my Android phone is connected to adb?
Run adb devices -l. Confirm that your phone appears with a device serial and the state device. If it reports unauthorized, unlock the phone and accept the debugging prompt.
What should I check if adb doesn't list my phone on Linux?
Ensure Android udev rules are installed and that your user belongs to the plugdev group. Reconnect the device after updating the rules or group membership.
Do I need network access during setup?
Yes. The first Gradle build downloads dependencies, and the model downloader retrieves model files from Hugging Face.
How does the confidence threshold affect object detection?
A higher confidence threshold removes more lower-scoring detections. Reduce the default 75% threshold if the model doesn’t display expected objects, but be aware that lower thresholds can increase false positives and the amount of work passed to non-maximum suppression.
How do I add a detector that Scene Detector doesn't support?
Register the model directly if it matches a supplied detector strategy. Otherwise, use the coding agent workflow to generate another adapter.
How do I run detection on a saved image?
Import a supported .pte model, select Choose saved image, choose an image, and select Detect objects. The application displays the annotated image, detected objects, confidence scores, and processing time.
Next