From 0baaf7af7ed80d8012afd0879f965d9bdaef3882 Mon Sep 17 00:00:00 2001 From: Ben Clark Date: Wed, 24 Jun 2026 16:00:45 +0100 Subject: [PATCH 1/5] plank tutor first pages --- .../ai-plank-tutor/1-introduce-plank-tutor.md | 94 +++++++++++++++++++ .../ai-plank-tutor/_index.md | 70 ++++++++++++++ .../ai-plank-tutor/_next-steps.md | 8 ++ 3 files changed, 172 insertions(+) create mode 100644 content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/1-introduce-plank-tutor.md create mode 100644 content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/_index.md create mode 100644 content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/_next-steps.md diff --git a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/1-introduce-plank-tutor.md b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/1-introduce-plank-tutor.md new file mode 100644 index 0000000000..cb65493dc8 --- /dev/null +++ b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/1-introduce-plank-tutor.md @@ -0,0 +1,94 @@ +--- +title: Introduction +weight: 2 + +### FIXED, DO NOT MODIFY +layout: learningpathall +--- + +## What you will build + +In this Learning Path, you will build a simple on-device AI fitness tutor for Android. + +The app watches a learner hold a plank, compares their body position with a stored instructor reference, asks a local LLM for one short correction, and speaks the correction using Android text-to-speech. + +This project is based on the [AI Yoga Tutor](https://developer.arm.com/community/arm-community-blogs/b/ai-blog/posts/ai-yoga-tutor) prototype. The Learning Path keeps the same core pipeline, but narrows the app to one static pose so you can focus on how a pipeline that includes Android camera, pose detector, local LLM, and speech output fits together. + + + +The finished app has two main visual areas: + +- An instructor plank image on the left. +- A live front-camera preview on the right. + +The app overlays a pose score and a short caption that matches the spoken coaching feedback. + +## App pipeline + +The app uses a small pipeline of on-device components: + +```text +reference image and landmarks + -> CameraX live frames + -> Pose Landmarker + -> joint-angle scoring + -> compact text prompt + -> Arm AI Chat + LLM + -> Text-To-Speech +``` + +Each stage passes structured data to a subsequent stage. The LLM does not receive camera frames or images. It receives a short text prompt describing the largest joint-angle differences between the learner and the reference plank pose. + +This keeps the LLM prompt small, reduces latency, and makes the behavior easier to tune. + +## Get the starter project + +Download the starter project from: + +```text +TODO: +``` + +Unzip the starter project and open the Android project in Android Studio. + +{{% notice Note %}} +The starter project contains the app structure, layout, image asset, MediaPipe pose model, and several Kotlin shell files. You will fill in the missing code over the next pages. +{{% /notice %}} + +## Open the project in Android Studio + +1. Start Android Studio. +2. Select **Open**. +3. Open the starter project's `android` folder. +4. Wait for Gradle sync to finish. + +If Android Studio prompts you to trust the project, accept the prompt. + +The starter app is intentionally incomplete, but it should sync successfully before you add code. + +## Inspect the provided files + +Start by looking at the files that are already provided for you. + +Open `app/build.gradle` and confirm that the Android, CameraX, lifecycle, and MediaPipe dependencies are already present. +Arm's AI Chat dependency is not included yet. You will add it later, when you implement local LLM inference. + +Open `app/src/main/AndroidManifest.xml` and confirm that the app requests camera access: + +```xml + +``` + +Open `app/src/main/res/layout/activity_main.xml` and review the main UI. The layout already contains: + +- An `ImageView` for the instructor plank image. +- A `PreviewView` for the live camera. +- A score label. +- A caption label for spoken feedback. + +Open `app/src/main/assets/videos/plank.jpg` and review the instructor reference image. + +Open `PlankPoseData.kt` and note the hard-coded plank reference data. This file contains the reference landmarks and angle weights used by the scoring step. This was generated from the image in an offline step so it doesn't need any runtime compute. diff --git a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/_index.md b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/_index.md new file mode 100644 index 0000000000..3d5bdd8f54 --- /dev/null +++ b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/_index.md @@ -0,0 +1,70 @@ +--- +title: Build an on-device AI plank tutor on Android + +minutes_to_complete: 60 + +who_is_this_for: This Learning Path is for Android developers who want to explore creating an ML/GenAI pipeline, including camera input, local LLM inference, and speech. + +learning_objectives: + - Detect human pose landmarks from live Android camera frames with MediaPipe. + - Structure data and build compact prompts that turn raw data into useful LLM input. + - Run a mobile-sized LLM on-device with Arm's AI Chat library. + - Speak generated output with Text-To-Speech. + +prerequisites: + - A development machine with Android Studio installed. + - A recent Arm-powered Android phone in Developer Mode, with a USB data cable. + - Basic familiarity with Kotlin and Android app development + +author: Ben Clark + +### Tags +skilllevels: Introductory +subjects: ML +armips: + - Cortex-A + - Arm AI Chat library +tools_software_languages: + - Android Studio + - Kotlin + - CameraX + - MediaPipe + - LLM + - Neon + - SVE2 + - SME2 +operatingsystems: + - Android + +further_reading: + - resource: + title: AI Yoga Tutor + link: https://developer.arm.com/community/arm-community-blogs/b/ai-blog/posts/ai-yoga-tutor + type: blog + - resource: + title: AI Chat - Explore and evaluate LLMs on Android and ChromeOS + link: https://developer.arm.com/community/arm-community-blogs/b/announcements/posts/ai-chat-explore-and-evaluate-llms-on-android-and-chromeos + type: blog + - resource: + title: AI Chat library on GitHub + link: https://github.com/arm/ai-chat + type: website + - resource: + title: AI Chat library @ Maven Central + link: https://central.sonatype.com/artifact/com.arm/ai-chat + type: documentation + - resource: + title: MediaPipe Pose Landmarker + link: https://ai.google.dev/edge/mediapipe/solutions/vision/pose_landmarker + type: documentation + - resource: + title: Android TextToSpeech + link: https://developer.android.com/reference/android/speech/tts/TextToSpeech + type: documentation + +### FIXED, DO NOT MODIFY +# ================================================================================ +weight: 1 # _index.md always has weight of 1 to order correctly +layout: "learningpathall" # All files under learning paths have this same wrapper +learning_path_main_page: "yes" # This should be surfaced when looking for related content. Only set for _index.md of learning path content. +--- \ No newline at end of file diff --git a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/_next-steps.md b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/_next-steps.md new file mode 100644 index 0000000000..727b395ddd --- /dev/null +++ b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/_next-steps.md @@ -0,0 +1,8 @@ +--- +# ================================================================================ +# FIXED, DO NOT MODIFY THIS FILE +# ================================================================================ +weight: 21 # The weight controls the order of the pages. _index.md always has weight 1. +title: "Next Steps" # Always the same, html page title. +layout: "learningpathall" # All files under learning paths have this same wrapper for Hugo processing. +--- From 2c63496cfd995add03e3f2ecffc7c4ef5a5b2b75 Mon Sep 17 00:00:00 2001 From: Ben Clark Date: Thu, 25 Jun 2026 17:11:32 +0100 Subject: [PATCH 2/5] p1 updated, p2 now done --- .../ai-plank-tutor/1-introduce-plank-tutor.md | 27 +- .../ai-plank-tutor/2-camera-pose-landmarks.md | 240 ++++++++++++++++++ .../ai-plank-tutor/screenshot.jpg | Bin 0 -> 291635 bytes 3 files changed, 255 insertions(+), 12 deletions(-) create mode 100644 content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/2-camera-pose-landmarks.md create mode 100644 content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/screenshot.jpg diff --git a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/1-introduce-plank-tutor.md b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/1-introduce-plank-tutor.md index cb65493dc8..b4d4d9ac2f 100644 --- a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/1-introduce-plank-tutor.md +++ b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/1-introduce-plank-tutor.md @@ -14,10 +14,7 @@ The app watches a learner hold a plank, compares their body position with a stor This project is based on the [AI Yoga Tutor](https://developer.arm.com/community/arm-community-blogs/b/ai-blog/posts/ai-yoga-tutor) prototype. The Learning Path keeps the same core pipeline, but narrows the app to one static pose so you can focus on how a pipeline that includes Android camera, pose detector, local LLM, and speech output fits together. - +![AI Plank Tutor final UI alt-text#center](screenshot.jpg "Figure 1: AI Plank Tutor showing the instructor plank image, live camera view, score, and spoken correction caption.") The finished app has two main visual areas: @@ -44,15 +41,19 @@ Each stage passes structured data to a subsequent stage. The LLM does not receiv This keeps the LLM prompt small, reduces latency, and makes the behavior easier to tune. -## Get the starter project +## Clone the starter project -Download the starter project from: +Clone the Learning Path code examples repository: -```text -TODO: +```console +git clone https://gitlab.arm.com/learning-code-examples/code-examples.git ``` -Unzip the starter project and open the Android project in Android Studio. +The starter app for this Learning Path is in: + +```text +code-examples/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/android +``` {{% notice Note %}} The starter project contains the app structure, layout, image asset, MediaPipe pose model, and several Kotlin shell files. You will fill in the missing code over the next pages. @@ -62,7 +63,7 @@ The starter project contains the app structure, layout, image asset, MediaPipe p 1. Start Android Studio. 2. Select **Open**. -3. Open the starter project's `android` folder. +3. Open `code-examples/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/android`. 4. Wait for Gradle sync to finish. If Android Studio prompts you to trust the project, accept the prompt. @@ -89,6 +90,8 @@ Open `app/src/main/res/layout/activity_main.xml` and review the main UI. The lay - A score label. - A caption label for spoken feedback. -Open `app/src/main/assets/videos/plank.jpg` and review the instructor reference image. +Open `app/src/main/res/drawable/plank.jpg` and review the instructor reference image. + +Code is under the long path `app/src/main/java/com/arm/demo/AIPlankTutor`. Under that, open `data/PlankPoseData.kt` and note the hard-coded plank reference data. This file contains the instructor's reference landmarks and angle weights used by the scoring step. This was generated from the reference plank image in an offline step so it doesn't need any runtime compute. -Open `PlankPoseData.kt` and note the hard-coded plank reference data. This file contains the reference landmarks and angle weights used by the scoring step. This was generated from the image in an offline step so it doesn't need any runtime compute. +Android code starts from the `MainActivity.kt` file, and we will look at that in the next step. diff --git a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/2-camera-pose-landmarks.md b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/2-camera-pose-landmarks.md new file mode 100644 index 0000000000..9d924d482e --- /dev/null +++ b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/2-camera-pose-landmarks.md @@ -0,0 +1,240 @@ +--- +title: Get pose landmarks from camera +weight: 3 + +### FIXED, DO NOT MODIFY +layout: learningpathall +--- + +## Objective + +In this section, you will connect the Android camera to MediaPipe Pose Landmarker. + +You will: + +- Bind a CameraX preview to the app UI. +- Add an `ImageAnalysis` use case for live camera frames. +- Configure MediaPipe Pose Landmarker in live-stream mode. +- Convert each CameraX `ImageProxy` into a MediaPipe `MPImage`. +- Send the first detected pose landmark list to `MainViewModel`. + +At the end of this section, the app opens the front camera and passes live pose landmarks into the app. The score will still be incomplete until you add pose scoring in the next section. + +## Configure CameraX + +Open `ui/MainActivity.kt`. + +The starter project already requests camera permission and calls `setUpCamera()` from `onCreate()`. Replace the TODO in `setUpCamera()` with the following code: + +```kotlin +private fun setUpCamera() { + val cameraProviderFuture = ProcessCameraProvider.getInstance(this) + cameraProviderFuture.addListener( + { + cameraProvider = cameraProviderFuture.get() + bindCameraUseCases() + }, Dispatchers.Main.asExecutor() + ) +} +``` + +`ProcessCameraProvider` owns the camera use cases for the activity. When the provider is ready, the app stores it and calls `bindCameraUseCases()`. + +## Bind preview and image analysis + +The app needs two CameraX use cases: + +- `Preview`, which displays the camera feed in the `PreviewView`. +- `ImageAnalysis`, which receives frames for pose detection. + +In `MainActivity.kt`, replace the TODO at the end of `bindCameraUseCases()` with this code: + +```kotlin +val preview = Preview.Builder() + .setResolutionSelector(resolutionSelector) + .setTargetRotation(targetRotation) + .build() + +val imageAnalyzer = ImageAnalysis.Builder() + .setResolutionSelector(resolutionSelector) + .setTargetRotation(targetRotation) + .setBackpressureStrategy(ImageAnalysis.STRATEGY_KEEP_ONLY_LATEST) + .setOutputImageFormat(ImageAnalysis.OUTPUT_IMAGE_FORMAT_RGBA_8888) + .build() + .also { + it.setAnalyzer( + Dispatchers.Default.limitedParallelism(1).asExecutor() + ) { image -> detectPose(image) } + } + +cameraProvider.unbindAll() + +try { + cameraProvider.bindToLifecycle( + this, cameraSelector, preview, imageAnalyzer + ) + + preview.surfaceProvider = cameraPreview.surfaceProvider +} catch (exc: Exception) { + Log.e(TAG, "Use case binding failed", exc) +} +``` + +The analyzer uses `STRATEGY_KEEP_ONLY_LATEST` because pose detection should work on the most recent frame. If the device is busy, old frames are dropped instead of queued. + +The output image format is `RGBA_8888`, which makes the frame data easy to copy into a `Bitmap` before passing it to MediaPipe. + +## Send frames to the landmarker + +In `bindCameraUseCases()` we just set `ImageAnalysis` to call `detectPose()` for every analyzed frame. Now, replace the TODO in `detectPose()` with this code: + +```kotlin +private fun detectPose(imageProxy: ImageProxy) { + if (!this::poseLandmarkerHelper.isInitialized || poseLandmarkerHelper.isClosed) { + imageProxy.close() + return + } + + if (imageAnalysisEnabled) { + poseLandmarkerHelper.detectLiveStream( + imageProxy = imageProxy, + isFrontCamera = true + ) + } else { + imageProxy.close() + } +} +``` + +This code checks that the MediaPipe helper is ready before using it. If the helper is not ready, it closes the `ImageProxy` immediately. + +{{% notice Note %}} +Every `ImageProxy` from CameraX must be closed. In this app, `PoseLandmarkerHelper.detectLiveStream()` closes the image after copying its pixels. If the frame is skipped, `detectPose()` closes it directly. +{{% /notice %}} + +Now replace the TODO in `onResults()` with this code: + +```kotlin +override fun onResults(landmarks: List?) { + mainViewModel.handleUserPose(landmarks) +} +``` + +This is a callback from `PoseLandmarkerHelper` and sends the live landmarks onto the ViewModel. The next page will convert those landmarks into joint angles and a pose score. + +## Configure MediaPipe Pose Landmarker + +What happens between `detectPose()` and `onResults()`? Open `landmarker/PoseLandmarkerHelper.kt`. + +The starter file already contains the MediaPipe imports, model path, confidence values, and the `LandmarkerListener` interface for the callbacks to `MainActivity`. + +Replace the TODO in `setupPoseLandmarker()` with this code: + +```kotlin +fun setupPoseLandmarker(context: Context) { + try { + val baseOptions = BaseOptions.builder() + .setDelegate(Delegate.GPU) + .setModelAssetPath(MODEL_PATH) + .build() + + val options = PoseLandmarker.PoseLandmarkerOptions.builder() + .setBaseOptions(baseOptions) + .setNumPoses(1) + .setMinPoseDetectionConfidence(MIN_POSE_DETECTION_CONFIDENCE) + .setMinTrackingConfidence(MIN_POSE_TRACKING_CONFIDENCE) + .setMinPosePresenceConfidence(MIN_POSE_PRESENCE_CONFIDENCE) + .setRunningMode(RunningMode.LIVE_STREAM) + .setResultListener(this::returnLiveStreamResult) + .setErrorListener(this::returnLiveStreamError) + .build() + + poseLandmarker = PoseLandmarker.createFromOptions(context, options) + } catch (exception: IllegalStateException) { + listener.onError("Pose Landmarker failed to initialize. See logs for details.") + Log.e(TAG, "MediaPipe failed to load the pose landmarker", exception) + } catch (exception: RuntimeException) { + listener.onError("Pose Landmarker failed to initialize. See logs for details.") + Log.e(TAG, "MediaPipe failed to create the pose landmarker", exception) + } +} +``` + +The app uses `RunningMode.LIVE_STREAM` because frames arrive continuously from the camera. In this mode, MediaPipe returns results through callbacks instead of returning them directly from the detection call. + +The app also requests one pose with `setNumPoses(1)`. This keeps the example focused on a single learner. + +## Convert camera frames to MPImage + +When we call from `MainActivity`, it is with a CameraX `ImageProxy`, but the MediaPipe analyzer expects an `MPImage`. + +Replace the TODO in `detectLiveStream()` with this code to convert between the two and start `poseLandmaker`'s analysis: + +```kotlin +fun detectLiveStream( + imageProxy: ImageProxy, + isFrontCamera: Boolean +) { + val frameTime = SystemClock.uptimeMillis() + val imageWidth = imageProxy.width + val imageHeight = imageProxy.height + val rotationDegrees = imageProxy.imageInfo.rotationDegrees + + val bitmapBuffer = Bitmap.createBitmap( + imageWidth, + imageHeight, + Bitmap.Config.ARGB_8888 + ) + + imageProxy.use { image -> + bitmapBuffer.copyPixelsFromBuffer(image.planes[0].buffer) + } + + val matrix = Matrix().apply { + postRotate(rotationDegrees.toFloat()) + if (isFrontCamera) { + postScale(-1f, 1f, imageWidth.toFloat(), imageHeight.toFloat()) + } + } + + val rotatedBitmap = Bitmap.createBitmap( + bitmapBuffer, + 0, + 0, + bitmapBuffer.width, + bitmapBuffer.height, + matrix, + true + ) + + val mpImage = BitmapImageBuilder(rotatedBitmap).build() + poseLandmarker?.detectAsync(mpImage, frameTime) +} +``` + +The call to `imageProxy.use { ... }` closes the frame after its pixels are copied. + +The matrix rotates the image using the camera frame metadata. For the front camera, it also mirrors the image so the detected pose matches the preview the learner sees. + +## Return the first detected pose + +Finally, replace the TODO in `returnLiveStreamResult()` with this code: + +```kotlin +private fun returnLiveStreamResult( + result: PoseLandmarkerResult, + @Suppress("UNUSED_PARAMETER") input: MPImage +) { + listener.onResults(result.landmarks().firstOrNull()) +} +``` + +MediaPipe returns a list of detected poses. This app asks for one pose, so it forwards only the first landmark list. + +## Run the app + +Build and run the app on your Android device. + +When prompted, allow camera access. You should see the front camera preview in the right side of the app. + +The score will not update yet. At this point, the app is collecting pose landmarks and passing them to `MainViewModel`; the scoring logic is added in the next section. \ No newline at end of file diff --git a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/screenshot.jpg b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/screenshot.jpg new file mode 100644 index 0000000000000000000000000000000000000000..fae38ad7f899e833fb7c0896f9d526ff2570e8f0 GIT binary patch literal 291635 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 `78bP(f;zb3&oz??0X{| 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

ThGdY4sU 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

6~6W^~5Ccxs~PobTH<^R4TeQ(w!?e+kkn%wqS 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 i5)Y3_KZq6JQ#CR9ugiCu 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

MYdj{iY+#wpr?se>(>FCq$^q|tIL=&HG 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

pskNA`l|-(L4fQ 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 Date: Mon, 29 Jun 2026 18:10:30 +0100 Subject: [PATCH 3/5] Finish plank tutor learning path --- .../ai-plank-tutor/1-introduce-plank-tutor.md | 4 +- .../ai-plank-tutor/2-camera-pose-landmarks.md | 2 +- .../ai-plank-tutor/3-plank-score.md | 197 +++++++++++++ .../ai-plank-tutor/4-data-to-prompt.md | 159 ++++++++++ .../ai-plank-tutor/5-llm-ai-chat.md | 279 ++++++++++++++++++ .../ai-plank-tutor/6-android-tts.md | 158 ++++++++++ .../ai-plank-tutor/7-extend.md | 155 ++++++++++ 7 files changed, 952 insertions(+), 2 deletions(-) create mode 100644 content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/3-plank-score.md create mode 100644 content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/4-data-to-prompt.md create mode 100644 content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/5-llm-ai-chat.md create mode 100644 content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/6-android-tts.md create mode 100644 content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/7-extend.md diff --git a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/1-introduce-plank-tutor.md b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/1-introduce-plank-tutor.md index b4d4d9ac2f..c264f5b0a7 100644 --- a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/1-introduce-plank-tutor.md +++ b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/1-introduce-plank-tutor.md @@ -1,5 +1,5 @@ --- -title: Introduction +title: AI Plank Tutor weight: 2 ### FIXED, DO NOT MODIFY @@ -23,6 +23,8 @@ The finished app has two main visual areas: The app overlays a pose score and a short caption that matches the spoken coaching feedback. +This Learning Path starts with a "shell" project with MediaPipe and camera integration mostly setup. If you wish to learn about that setup from an empty project, you could try another learning path, like [Build a Hands-Free Selfie Android Application with MediaPipe](https://learn.arm.com/learning-paths/mobile-graphics-and-gaming/build-android-selfie-app-using-mediapipe-multimodality/) + ## App pipeline The app uses a small pipeline of on-device components: diff --git a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/2-camera-pose-landmarks.md b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/2-camera-pose-landmarks.md index 9d924d482e..16a622d99f 100644 --- a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/2-camera-pose-landmarks.md +++ b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/2-camera-pose-landmarks.md @@ -124,7 +124,7 @@ This is a callback from `PoseLandmarkerHelper` and sends the live landmarks onto ## Configure MediaPipe Pose Landmarker -What happens between `detectPose()` and `onResults()`? Open `landmarker/PoseLandmarkerHelper.kt`. +What happens between `detectPose()` and `onResults()`? Open `ui/landmarker/PoseLandmarkerHelper.kt`. The starter file already contains the MediaPipe imports, model path, confidence values, and the `LandmarkerListener` interface for the callbacks to `MainActivity`. diff --git a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/3-plank-score.md b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/3-plank-score.md new file mode 100644 index 0000000000..8247e0f950 --- /dev/null +++ b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/3-plank-score.md @@ -0,0 +1,197 @@ +--- +title: Score the plank pose +weight: 4 + +### FIXED, DO NOT MODIFY +layout: learningpathall +--- + +## Objective + +In this section, you will turn MediaPipe pose landmarks into a simple plank score. + +You will: + +- Calculate joint angles from pose landmarks. +- Compare the learner's live angles with the provided instructor reference. +- Convert the weighted angle differences into a score from 0 to 100. +- Display the score in the app UI. + +The starter project already includes `PlankPoseData.kt`. This file contains the reference landmarks for the instructor plank image and a list of angle weights. The weights let the app make some joints more important than others when calculating the final score. + +## Review the scoring data + +Open `data/PlankPoseData.kt`. + +The file provides three pieces of data: + +- `POSE_NAME`, which is the name used later in the LLM prompt. +- `referenceLandmarks`, which stores the instructor plank pose as MediaPipe landmarks. +- `angleWeights`, which stores the relative importance of each measured angle. + +You do not need to edit this file. In a larger app, you would capture this data from an instructor image or video as a preprocessing step, and load for different poses as needed. In this Learning Path, it is hard-coded so the Android app can stay focused on live inference and feedback. + +## Extract joint angles + +Open `ui/landmarker/PoseScoreHelper.kt`. + +The file already contains landmark index constants and `KEY_JOINTS_COORDINATES`. Each entry in `KEY_JOINTS_COORDINATES` identifies three landmarks that form one angle. For example, an elbow angle uses shoulder, elbow, and wrist landmarks. + +Replace the TODO in `extractAnglesFrom()` with this code: + +```kotlin +fun extractAnglesFrom(landmarks: List): List { + val angles = KEY_JOINTS_COORDINATES.map { coords -> + calculateAngleFor(landmarks[coords[0]], landmarks[coords[1]], landmarks[coords[2]]) + }.toMutableList() + + val neck = midpoint(landmarks[IDX_L_SHOULDER], landmarks[IDX_R_SHOULDER]) + val midHips = midpoint(landmarks[IDX_L_HIP], landmarks[IDX_R_HIP]) + angles.add(calculateAngleFor(landmarks[IDX_NOSE], neck, midHips)) + + return angles +} +``` + +The main list extracts wrist, elbow, shoulder, knee, ankle, and hip angles. The final angle estimates neck alignment by creating a midpoint between the shoulders and a midpoint between the hips, with the nose as the third landmark. + +Replace the TODO in `midpoint()` with this code for the neck joint helper function: + +```kotlin +private fun midpoint(pointA: NormalizedLandmark, pointB: NormalizedLandmark) = + NormalizedLandmark.create( + (pointA.x() + pointB.x()) / 2, + (pointA.y() + pointB.y()) / 2, + (pointA.z() + pointB.z()) / 2 + ) +``` + +MediaPipe landmarks are normalized coordinates. The `x` and `y` values are relative to the input image, and `z` gives relative depth. + +## Calculate a 3D angle + +For each angle in `extractAnglesFrom()` it uses `calculateAngleFor()` - replace its TODO with this code: + +```kotlin +private fun calculateAngleFor( + pointA: NormalizedLandmark, + pointB: NormalizedLandmark, + pointC: NormalizedLandmark +): Double { + val bax = pointA.x() - pointB.x() + val bay = pointA.y() - pointB.y() + val baz = pointA.z() - pointB.z() + + val bcx = pointC.x() - pointB.x() + val bcy = pointC.y() - pointB.y() + val bcz = pointC.z() - pointB.z() + + val dotProduct = bax * bcx + bay * bcy + baz * bcz + val magnitudeBA = sqrt(bax.pow(2) + bay.pow(2) + baz.pow(2)) + val magnitudeBC = sqrt(bcx.pow(2) + bcy.pow(2) + bcz.pow(2)) + val cosine = (dotProduct / (magnitudeBA * magnitudeBC)).toDouble().coerceIn(-1.0, 1.0) + + return Math.toDegrees(acos(cosine)) +} +``` + +This function calculates the angle at `pointB`. It treats `pointA - pointB` and `pointC - pointB` as two 3D vectors, then uses their dot product to calculate the angle between them. + +The `coerceIn(-1.0, 1.0)` call protects the `acos()` calculation from small floating-point rounding errors. + +## Calculate a weighted score + +Replace the TODO in `calculatePoseScore()` with this code: + +```kotlin +fun calculatePoseScore( + correctAngles: List, + userAngles: List, + angleWeights: List, + maxDifference: Double = MAX_ANGLE_DIFFERENCE +): Double { + require(correctAngles.isNotEmpty()) { "Correct angles cannot be empty." } + require(correctAngles.size == userAngles.size) { "Correct and user angle counts must match." } + require(correctAngles.size == angleWeights.size) { "Angle and weight counts must match." } + + val weightedScoreSum = correctAngles.indices.sumOf { index -> + val difference = abs(correctAngles[index] - userAngles[index]) + val normalizedScore = ((maxDifference - difference) / maxDifference) + .coerceIn(0.0, 1.0) * HIGHEST_SCORE + normalizedScore * angleWeights[index] + } + + return weightedScoreSum / angleWeights.sum().toDouble() +} +``` + +For each angle, the score starts at 100 and drops as the learner's angle differs from the reference angle. Differences at or above `MAX_ANGLE_DIFFERENCE` contribute zero for that angle. + +The final score is the weighted average across all measured angles. + +{{% notice Note %}} +This score is a simple pose-matching signal for the demo app. It is not a clinical, safety, or fitness-quality assessment. +{{% /notice %}} + +## Emit score data from the ViewModel + +Open `ui\viewmodels\MainViewModel.kt`. + +Replace the TODO inside the `userPoseResults` mapping block with this code: + +```kotlin +val referenceAngles = extractAnglesFrom(PlankPoseData.referenceLandmarks) +val userAngles = extractAnglesFrom(userLandmarks) +val score = calculatePoseScore( + correctAngles = referenceAngles, + userAngles = userAngles, + angleWeights = PlankPoseData.angleWeights +) + +UserPoseResult(referenceAngles, userAngles, score) +``` + +This code calculates angles for the instructor reference and the learner's live pose, then stores both angle lists with the score. The next page will reuse the angle lists to build the LLM prompt. + +Now replace the TODO in `userPoseScore` with this code: + +```kotlin +val userPoseScore: Flow = + sharedUserPoseResults.map { it.scoreVal.roundToInt().toString() } +``` + +The UI wants a rounded string score. The underlying `UserPoseResult` keeps the full `Double` value for later use. + +## Display the score + +Open `ui\MainActivity.kt`. + +The starter project keeps `collectAppState()` as a safe no-op so the app can run before scoring and speech are implemented. Replace that function with this version: + +```kotlin +private suspend fun collectAppState() = coroutineScope { + launch { + mainViewModel.userPoseScore.collect { + score.text = getString(R.string.score) + it + } + } +} +``` + +Add this import near the other coroutine imports: + +```kotlin +import kotlinx.coroutines.coroutineScope +``` + +The existing `repeatOnLifecycle(Lifecycle.State.STARTED)` block already calls `collectAppState()`. Changing the function to `suspend` is valid because `repeatOnLifecycle` runs its block from a coroutine. + +Later sections will add more `launch { ... }` collectors inside this same `coroutineScope` block. + +## Run the app + +Build and run the app on your Android device. + +When you move in front of the camera, the score should update as MediaPipe detects your landmarks. The score will vary with camera angle and distance from the device, but mainly with how closely your body position matches the reference plank pose. + +At this point, the app can detect and score the plank pose. The next section converts the largest angle differences into a short text prompt for the local LLM. diff --git a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/4-data-to-prompt.md b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/4-data-to-prompt.md new file mode 100644 index 0000000000..c8f4250965 --- /dev/null +++ b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/4-data-to-prompt.md @@ -0,0 +1,159 @@ +--- +title: Turn pose data into a prompt +weight: 5 + +### FIXED, DO NOT MODIFY +layout: learningpathall +--- + +## Objective + +In this section, you will turn pose and score data into a compact text prompt for the local LLM. + +You will: + +- Compare the instructor and learner angle lists. +- Sort the largest joint-angle differences. +- Filter out small differences so the prompt stays short. +- Format the remaining differences as plain text. +- Expose the generated prompt from `MainViewModel`. + +The LLM will not receive images or raw landmarks. It will receive a short list of the largest pose differences, such as: + +```text +I'm doing Plank pose. My joints have the following significant angle differences to the teacher's: Left hip flexion: -18, Right shoulder: 12 +``` + +This keeps the prompt small and gives the model only the facts it needs to produce one coaching cue. + +## Format the largest angle differences + +Open `ui/landmarker/PoseScoreHelper.kt`. + +The file already contains `KEY_ANGLE_NAMES`, which maps each calculated angle to a human-readable joint name. The order of `KEY_ANGLE_NAMES` matches the order of the angles returned by `extractAnglesFrom()`. + +Replace the TODO in `angleDifference()` with this code: + +```kotlin +fun angleDifference( + correctAngles: List, + userAngles: List, + filter: Double = -1.0, + maxEntries: Int = Int.MAX_VALUE +): Map { + require(correctAngles.isNotEmpty()) { "Correct angles cannot be empty." } + require(correctAngles.size == userAngles.size) { "Correct and user angle counts must match." } + + return correctAngles.zip(userAngles) + .zip(KEY_ANGLE_NAMES) { (correct, user), name -> + val difference = correct - user + Triple(name, difference, "%.0f".format(difference)) + } + .filter { (_, difference, _) -> filter <= 0 || abs(difference) >= filter } + .sortedByDescending { abs(it.second) } + .take(maxEntries) + .associate { (name, _, formatted) -> name to formatted } +} +``` + +This function pairs each reference angle with the corresponding learner angle, calculates the difference, and sorts by the absolute size of that difference. + +The returned map uses the joint name as the key and a rounded string angle difference as the value. The string value is useful because the next function can insert it directly into the prompt. + +{{% notice Note %}} +The sign of the difference is important. A positive value means the learner needs to straighten that joint compared with the reference. A negative value means the learner needs to bend it more. +{{% /notice %}} + +## Generate the LLM prompt + +Replace the TODO in `generateLlmPromptFrom()` with this code: + +```kotlin +fun generateLlmPromptFrom( + referenceAngles: List, + userAngles: List, + poseName: String +): String { + val filteredAngles = angleDifference( + referenceAngles, + userAngles, + JOINT_DIFF_FILTER, + MAX_ENTRIES + ) + + if (filteredAngles.isEmpty()) { + return "I'm doing $poseName pose. My joint angles are close to the teacher's reference; give me one brief plank alignment cue." + } + + val angleSummary = filteredAngles.entries.joinToString { (name, angleDiff) -> + "$name: $angleDiff" + } + return "I'm doing $poseName pose. My joints have the following significant angle differences to the teacher's: $angleSummary" +} +``` + +This function calls `angleDifference()` with values that ensure it filters out small differences using `JOINT_DIFF_FILTER` and limits the prompt to `MAX_ENTRIES` joint differences. + +The fallback prompt handles the case where the learner is already close to the reference pose. The LLM still creates a useful instruction, but it is not forced to invent a large correction from tiny angle changes. In the full AI Yoga Tutor this fallback won't be hit as a different "praise" prompt is given when the score is high (greater than 70). + +## Emit prompts from the ViewModel + +Open `ui\viewmodels\MainViewModel.kt`. + +Replace the TODO in `userPosePrompt` with this code: + +```kotlin +val userPosePrompt: Flow> = + sharedUserPoseResults + .filter { !_isSpeaking.value } + .map { userResult -> + generateLlmPromptFrom( + referenceAngles = userResult.referenceAngles, + userAngles = userResult.userAngles, + poseName = poseName + ) to userResult.scoreVal + } + .flowOn(Dispatchers.Default) +``` + +The prompt is paired with the score because fuller app versions might use both values when deciding what feedback is spoken. In this Learning Path, the LLM step uses the prompt text. + +The `_isSpeaking` filter prevents the app from generating more feedback while the previous correction is still being spoken. Speech is added later, but keeping the filter here makes the data flow ready for that final step. + +## Check the prompt in Logcat + +The local LLM is added in the next section. For now, add a temporary collector so you can see the prompt in Logcat. + +Open `MainActivity.kt` and update `collectAppState()` so it also collects `userPosePrompt`: + +```kotlin +private suspend fun collectAppState() = coroutineScope { + launch { + mainViewModel.userPoseScore.collect { + score.text = getString(R.string.score) + it + } + } + + launch { + mainViewModel.userPosePrompt.collect { prompt -> + Log.d(TAG, "Pose prompt: ${prompt.first}") + } + } +} +``` + +This Logcat collector is only for checking this section. In the next section, you will replace it with code that sends the prompt to the local LLM. + +## Run the app + +Build and run the app on your Android device. + +Open Logcat and filter for `MainActivity`. As you move in front of the camera, you should see short prompts that describe the largest differences from the reference plank pose. + +The app now has the complete input side of the tutor pipeline: + +```text +Camera frame -> pose landmarks -> angle score -> text prompt +``` + +In the next section, you will add Arm's AI Chat library and send this prompt to a local LLM. \ No newline at end of file diff --git a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/5-llm-ai-chat.md b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/5-llm-ai-chat.md new file mode 100644 index 0000000000..09d50652c4 --- /dev/null +++ b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/5-llm-ai-chat.md @@ -0,0 +1,279 @@ +--- +title: Run the LLM locally with AI Chat +weight: 6 + +### FIXED, DO NOT MODIFY +layout: learningpathall +--- + +## Objective + +In this section, you will add Arm's AI Chat library and use it to run a local GGUF model on the Android device. + +You will: + +- Add the AI Chat dependency. +- Import the Phi-4-mini GGUF model file onto the device. +- Create an AI Chat inference engine. +- Load the model and set the tutor system prompt. +- Send the pose prompt from the previous section to the local LLM. +- Convert streamed LLM tokens into complete `Sentence` objects. + +At the end of this section, the app will produce short text coaching corrections and show them as captions. Speech output is added in the next section. + +## Add the AI Chat dependency + +Open `app/build.gradle`. + +Add the AI Chat dependency to the end of the `dependencies` block: + +```groovy +implementation("com.arm:ai-chat:0.1.0") +``` + +Sync the project with Gradle. + +The AI Chat library provides the Android inference API used by this project and by the [Arm AI Chat app](https://play.google.com/store/apps/details?id=com.arm.aichat&hl=en_GB). It uses `llama.cpp` for GGUF inference, and `llama.cpp` integrates Arm [KleidiAI](https://developer.arm.com/ai/kleidi-libraries) kernels. Q4_0 GGUF models work particularly well with these kernels and can get strong acceleration on phones with [SME2](https://www.arm.com/technologies/sme2), SVE2, and Neon support. + +## Add the model file to the device + +The app expects a Q4_0 GGUF model file named: + +```text +Phi-4-mini-instruct-Q4_0.gguf +``` + +Download [microsoft_Phi-4-mini-instruct-Q4_0.gguf](https://huggingface.co/bartowski/microsoft_Phi-4-mini-instruct-GGUF/blob/main/microsoft_Phi-4-mini-instruct-Q4_0.gguf) from Hugging Face. The model is 3.8B parameters, and around 2.2GB. Remove the "microsoft_" off the front of the name. + +The provided `LlmModelStore.kt` helper looks for the model in a few import locations. The most useful location while developing is the app-specific external files directory: + +```text +/sdcard/Android/data/com.arm.demo.AIPlankTutor/files/llm/Phi-4-mini-instruct-Q4_0.gguf +``` + +With your device connected over USB, create the directory: + +```console +adb shell mkdir -p /sdcard/Android/data/com.arm.demo.AIPlankTutor/files/llm +``` + +Then push the model file: + +```console +adb push Phi-4-mini-instruct-Q4_0.gguf /sdcard/Android/data/com.arm.demo.AIPlankTutor/files/llm/ +``` + +When the app first loads the model, `LlmModelStore` copies it into the app's internal files directory. Later runs use the internal copy. + +{{% notice Note %}} +If the model cannot be found, check Logcat for `LlmModelStore`. The error message lists every model path that was checked. +{{% /notice %}} + +## Wire AI Chat into MainActivity + +Open `ui/MainActivity.kt`. + +Add these imports: + +```kotlin +import androidx.lifecycle.ViewModel +import androidx.lifecycle.ViewModelProvider +import androidx.lifecycle.viewmodel.CreationExtras +import com.arm.aichat.AiChat +import com.arm.demo.AIPlankTutor.llm.LlmModelStore +import com.arm.demo.AIPlankTutor.ui.viewmodels.LlmViewModel +``` + +Add an `llmViewModel` property below the existing `mainViewModel` property: + +```kotlin +private val mainViewModel: MainViewModel by viewModels() +private val llmViewModel: LlmViewModel by viewModels { + object : ViewModelProvider.Factory { + @Suppress("UNCHECKED_CAST") + override fun create(modelClass: Class, extras: CreationExtras): T { + val inferenceEngine = AiChat.getInferenceEngine(applicationContext) + val modelStore = LlmModelStore(applicationContext) + return LlmViewModel(inferenceEngine, modelStore) as T + } + } +} +``` + +`AiChat.getInferenceEngine()` creates the inference engine used by the ViewModel. `LlmModelStore` is the helper that finds or imports the GGUF model file. Now we need to make the `LlmViewModel` accept those parameters. + +## Add AI Chat to LlmViewModel + +Open `LlmViewModel.kt`. + +Add these imports: + +```kotlin +import android.util.Log +import androidx.lifecycle.viewModelScope +import com.arm.aichat.InferenceEngine +import com.arm.demo.AIPlankTutor.llm.LlmModelStore +import kotlinx.coroutines.flow.onCompletion +import kotlinx.coroutines.launch +``` + +Change the class declaration so the ViewModel receives the AI Chat inference engine and model store: + +```kotlin +class LlmViewModel( + private val inferenceEngine: InferenceEngine, + private val llmModelStore: LlmModelStore, +) : ViewModel() { +``` + +Add this `init` block at the very start of the class body: + +```kotlin +init { + viewModelScope.launch { + _isBusy.emit(true) + loadModelAndSystemPrompt() + _isBusy.emit(false) + _systemPromptProcessed.emit(true) + } +} +``` + +When the ViewModel is created, this loads the model and sends the system prompt. The existing `_isBusy` state will also be used to avoid starting another LLM generation while one is already running. + +## Load the model and system prompt + +Replace the TODO in `loadModelAndSystemPrompt()` with this code: + +```kotlin +private suspend fun loadModelAndSystemPrompt() { + val modelFile = llmModelStore.getModelFile() + inferenceEngine.loadModel(modelFile.absolutePath) + inferenceEngine.setSystemPrompt(TUTOR_SYSTEM_PROMPT) +} +``` + +You can read `TUTOR_SYSTEM_PROMPT` at the bottom of the file. The system prompt tells the model to act as a concise yoga teacher, use the joint-angle facts, and return one short correction. + +## Send a prompt to AI Chat + +Replace the TODO in `sendUserPrompt()` with this code: + +```kotlin +fun sendUserPrompt( + plainTextMessage: String, + generationLimit: Int = LLM_GENERATION_LIMIT, +) { + if (_isBusy.value) return + + viewModelScope.launch { + if (_isBusy.value) return@launch + + Log.d(TAG, "Sending:\n$plainTextMessage") + + _isBusy.emit(true) + + var tokenCount = 0 + + inferenceEngine.sendUserPrompt(plainTextMessage, predictLength = generationLimit) + .onCompletion { cause -> + _isBusy.emit(false) + if (sentence.isNotEmpty()) { + _tokens.emit(".") + } + if (cause != null) { + Log.d(TAG, "> Token collection aborted! $cause") + } else if (tokenCount == 0) { + Log.d(TAG, "> No tokens collected!") + } else { + Log.d(TAG, "> Token collection complete.") + } + } + .collect { token -> + tokenCount++ + _tokens.emit(token) + } + } +} +``` + +The two `_isBusy` checks prevent the app from starting a second generation if a new prompt arrives just before image analysis is disabled. The `onCompletion` block emits a final full stop if the model stops before ending the current sentence. That lets the sentence splitter flush the last partial sentence. + +## Split streamed tokens into sentences + +AI Chat returns a stream of tokens. Android TTS works better with complete phrases or sentences, so split the stream before page 6 consumes it. + +Replace the TODO in the `sentences` Flow with this code: + +```kotlin +val sentences: Flow = _tokens + .filterNot { it.isNewLine() } + .map { word -> + if (sentence.isEmpty()) { + if (word.isPunctuation()) return@map null + } + + sentence.append(if (sentence.isEmpty()) word.trimStart() else word) + + if (sentence.isNotEmpty() && word.isPunctuation()) { + sentence.run { toString().also { setLength(0) } } + } else null + } + .filterNotNull() + .map { text -> Sentence(text) } + .flowOn(Dispatchers.Default) +``` + +The ViewModel now exposes a `Flow` instead of raw tokens. Page 6 will collect this Flow and send each sentence to Android text-to-speech. + +## Send pose prompts to the LLM + +Return to `MainActivity.kt`. + +In the previous section, you logged each pose prompt to Logcat. Replace that temporary prompt collector in `collectAppState()` with this version: + +```kotlin +launch { + mainViewModel.userPosePrompt.collect { + if (imageAnalysisEnabled && llmViewModel.systemPromptProcessed.value) { + llmViewModel.sendUserPrompt(it.first) + } + } +} +``` + +Add another collector to pause image analysis while the model is busy: + +```kotlin +launch { + llmViewModel.isBusy.collect { + imageAnalysisEnabled = !it + } +} +``` + +This prevents the app from generating a new prompt for every camera frame while the LLM is already responding. + +Finally, add a temporary sentence collector so you can show the generated correction in the caption area and check it in Logcat: + +```kotlin +launch { + llmViewModel.sentences.collect { sentence -> + captionTextView.text = sentence.text + captionTextView.visibility = View.VISIBLE + Log.d(TAG, "Tutor correction: ${sentence.text}") + } +} +``` + +The next section will replace this direct caption update with `SpeechManager`, so the caption stays synchronized with Android text-to-speech playback. + +## Run the app + +Build and run the app on your Android device. You should see the tutor's advice now at the bottom of the screen. + +To see what's happening behind the scenes, open Logcat and filter for `LlmViewModel` or `MainActivity`. The app should load the model, send pose prompts, and print short tutor corrections. + +The first run can take longer because the model file may be copied into the app's internal storage and loaded into memory. Later runs should start faster. + +At this point, the app can generate local text feedback. The next section uses Android `TextToSpeech` to speak each completed sentence and show it as a caption. diff --git a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/6-android-tts.md b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/6-android-tts.md new file mode 100644 index 0000000000..27c03dd06f --- /dev/null +++ b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/6-android-tts.md @@ -0,0 +1,158 @@ +--- +title: Speak corrections with Android TTS +weight: 7 + +### FIXED, DO NOT MODIFY +layout: learningpathall +--- + +## Objective + +In this section, you will use Android's built-in `TextToSpeech` engine to speak each coaching correction from the local LLM. + +You will: + +- Initialize `TextToSpeech`. +- Register an `UtteranceProgressListener`. +- Queue each correction with `TextToSpeech.QUEUE_ADD`. +- Keep the caption synchronized with the phrase currently being spoken. +- Connect `LlmViewModel.sentences` to `SpeechManager` in `MainActivity`. + +At the end of this section, the app will speak each complete correction and show the same text as a caption while it is being spoken. + +## Initialize TextToSpeech + +Open `ui/SpeechManager.kt`. + +The starter file already includes the imports, state flows, and helper functions needed. The two pieces of state exposed by the class are: + +- `idle`: whether Android TTS has finished speaking all queued phrases. +- `currentCaption`: the text that should be shown at the bottom of the screen. + +Replace the TODO in the `init` block with this code: + +```kotlin +init { + tts = TextToSpeech(context.applicationContext) { status -> + if (status == TextToSpeech.SUCCESS) { + tts.language = Locale.getDefault() + } else { + Log.w(TAG, "TextToSpeech initialization failed with status $status") + } + } + + tts.setOnUtteranceProgressListener(object : UtteranceProgressListener() { + override fun onStart(utteranceId: String?) { + utteranceId?.let { id -> getQueuedCaption(id)?.let { setCaption(it) } } + setIdle(false) + } + + override fun onDone(utteranceId: String?) { + finishUtterance(utteranceId) + } + + @Suppress("OVERRIDE_DEPRECATION") + override fun onError(utteranceId: String?) { + finishUtterance(utteranceId) + } + }) +} +``` + +The `TextToSpeech` callback sets the default device language when initialization succeeds. The `UtteranceProgressListener` is called by Android as each spoken phrase starts and finishes. + +The listener callbacks are not guaranteed to run on the main thread, so the provided `setCaption()` and `setIdle()` helpers update the flows through a main-thread coroutine. + +## Queue speech + +Replace the TODO in `launchSpeechGenerationAndPlaybackJob()` with this code: + +```kotlin +fun launchSpeechGenerationAndPlaybackJob(speech: String) { + if (speech.isBlank()) return + + val utteranceId = UUID.randomUUID().toString() + queueUtterance(utteranceId, speech) + setIdle(false) + val result = tts.speak(speech, TextToSpeech.QUEUE_ADD, null, utteranceId) + if (result == TextToSpeech.ERROR) { + Log.w(TAG, "TextToSpeech failed to queue utterance") + finishUtterance(utteranceId) + } +} +``` + +`TextToSpeech.QUEUE_ADD` is important here. The LLM output is streamed and split into complete sentences, so the app might receive another sentence while Android is still speaking the previous one. `QUEUE_ADD` makes Android speak the phrases in order instead of interrupting the current phrase. + +Each phrase is queued with an utterance ID. `SpeechManager` keeps a small map from utterance ID to caption text so the app can show the caption only when that phrase starts speaking. + +## Finish each utterance + +Replace the TODO in `finishUtterance()` with this code: + +```kotlin +private fun finishUtterance(utteranceId: String?) { + val queueIsEmpty = synchronized(queuedUtterances) { + utteranceId?.let { queuedUtterances.remove(it) } + queuedUtterances.isEmpty() + } + + setCaption("") + setIdle(queueIsEmpty) +} +``` + +When Android reports that an utterance has finished, this removes it from the queue map. The same helper is used if `tts.speak()` fails to queue an utterance. If no queued utterances remain, `idle` becomes `true`. + +The existing `shutdown()` function stops and releases Android TTS when the activity is destroyed. + +## Connect SpeechManager to MainActivity + +Open `ui/MainActivity.kt`. + +In the last section, you added a temporary sentences collector that put each LLM sentence directly into the caption view and logged it. Now replace that collector with this version: + +```kotlin +launch { + llmViewModel.sentences.collect { sentence -> + mainViewModel.setSpeaking(true) + speechManager.launchSpeechGenerationAndPlaybackJob(sentence.text) + } +} +``` + +This sends each completed LLM sentence to Android TTS instead of writing it directly to the caption view. + +Next, add a collector for `speechManager.idle`: + +```kotlin +launch { + speechManager.idle.collect { idle -> + mainViewModel.setSpeaking(!idle) + } +} +``` + +`MainViewModel` uses this state to avoid asking the LLM for another correction while the current spoken feedback is still playing. + +Finally, add a collector for `speechManager.currentCaption`: + +```kotlin +launch { + speechManager.currentCaption.collect { caption -> + captionTextView.text = caption + captionTextView.visibility = + if (caption.isBlank()) View.INVISIBLE else View.VISIBLE + } +} +``` + +The caption is now controlled by Android TTS playback. It appears when Android starts speaking a phrase and disappears when that phrase finishes. + +## Run the app + +Build and run the app on your Android device. + +Move into a plank position in front of the camera. The score should update, the local LLM should generate a short correction, and Android TTS should speak it. The same correction should appear as a caption while it is being spoken. + +At this point, the app has the full on-device pipeline: camera input, pose landmarks, joint-angle scoring, local LLM feedback, and spoken output. diff --git a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/7-extend.md b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/7-extend.md new file mode 100644 index 0000000000..9d03b7e301 --- /dev/null +++ b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/7-extend.md @@ -0,0 +1,155 @@ +--- +title: Tune and extend the tutor +weight: 8 + +### FIXED, DO NOT MODIFY +layout: learningpathall +--- + +## Possible improvements + +You now have a complete on-device AI plank tutor. It detects pose landmarks from the camera, compares the learner against an instructor reference, prompts a local LLM, and speaks the result with Android text-to-speech. + +This section outlines practical ways to tune the experience and extend it beyond the simple single-pose demo. + +We will go through: + +- Which app parameters are worth tuning. +- How model, prompt, and feedback choices affect latency. +- Why fine-tuning can improve coaching quality. +- What a high-level fine-tuning workflow looks like. +- How the full Yoga Tutor app expands this simple pipeline. + +## Tune the feedback loop + +The demo is intentionally small, so the easiest improvements are in the constants and prompt text you have already used. + +In `MainViewModel.kt`, tune how often pose data is scored: + +```kotlin +private const val USER_POSE_SCORING_INTERVAL = 500L +``` + +A shorter interval makes the UI feel more responsive, but it can also produce more LLM prompts. A longer interval reduces work and can make coaching feel calmer. + +In `PoseScoreHelper.kt`, tune how much pose difference is included in the prompt: + +```kotlin +private const val JOINT_DIFF_FILTER = 8.0 +private const val MAX_ENTRIES = 5 +``` + +Increasing `JOINT_DIFF_FILTER` sends only larger joint-angle differences to the LLM. Reducing `MAX_ENTRIES` makes the prompt shorter and usually reduces inference time, but gives the model less context. + +You can also adjust the joint list and weights in `PoseScoreHelper.kt` and `PlankPoseData.kt`. For example, a plank tutor might weight hips, shoulders, and neck alignment more strongly than wrists. + +## Tune the LLM response + +In `LlmViewModel.kt`, tune how much text the model can generate: + +```kotlin +private const val LLM_GENERATION_LIMIT: Int = 128 +``` + +For this app, shorter is usually better. The tutor only needs one correction at a time, so a smaller limit can reduce latency and avoid long coaching messages. + +The system prompt is the other important control: + +```kotlin +private const val TUTOR_SYSTEM_PROMPT = "You are a friendly..." +``` + +You can use the system prompt to make the output more direct, more encouraging, or more safety-focused. Keep the prompt specific. This app works best when the model is told to give one short correction and avoid exposing the numeric joint-angle differences. + +The model choice also affects the experience. Smaller models usually load and respond faster, while larger models can give better language quality. Quantization affects both speed and quality. The Learning Path used a Q4_0 GGUF model because it is a practical balance for mobile inference, and gets good speed-up from Kleidi AI kernels. + +## Improve feedback quality with fine-tuning + +Prompt engineering can make a general instruction model behave reasonably well, but fitness coaching has a narrow style requirement. The ideal response is short, natural, safe, and physically meaningful. Fine-tuning a small model on examples from this domain can make the output much more consistent. + +A useful fine-tuning dataset should contain pairs like this: + +```json +{ + "input": "I'm doing Plank pose. My joints have the following significant angle differences to the teacher's: Left hip flexion: -18, Right shoulder: 12, Neck: 10.", + "output": "Lift your hips slightly." +} +``` + +The output should be the kind of phrase you want the app to speak. Avoid numbers, long explanations, and multiple corrections in one answer. + +A high-level workflow is: + +1. Define the input format. + + Keep it close to the prompt generated by `PoseScoreHelper.generateLlmPromptFrom()`. Include the pose name and the most important joint-angle differences. + +2. Define the output style. + + Write rules for the coaching phrase: one short cue, no numeric angles, no diagnosis, no unsafe claims, and no correction for joints that are not in the input. + +3. Generate a seed dataset. + + Start with examples you write manually. Cover common plank problems such as sagging hips, lifted hips, bent knees, rounded shoulders, bent elbows, dropped head, and uneven weight. + +4. Expand the dataset with a script. + + Use a Python script to generate many input variations and call an LLM API to draft matching coaching phrases. For example, the script can choose one to three joint differences, vary the angle sizes, mirror left and right sides, and combine related issues such as hip sag with shoulder position. Send each generated input to the OpenAI API and ask for a structured JSON response containing one safe spoken correction. Structured outputs and batch-style requests are useful when creating larger generated datasets. + +5. Review and clean the generated data. + + This is the most important step. Remove responses that mention numbers, give multiple corrections, sound unnatural when spoken, or make unsafe assumptions. The dataset will often be too big to go through all of it, so generate a small dataset first to determine quality. Examine a signficant section of it and determine if it needs re-generating with adjusted rules. + +6. Split the dataset. + + Keep separate training, validation, and test sets. The test set should include examples from real app prompts, not only generated prompts. + +7. Fine-tune the model. + + Use supervised fine-tuning or a LoRA/QLoRA workflow on a model that can later run on the device. Train on prompt-response examples that match the app's runtime format. There are a number of good frameworks to work with, so this doesn't need setting up from scratch. + +8. Convert and quantize for Android. + + Convert the fine-tuned model to GGUF, then quantize it to a mobile-friendly format such as Q4_0. Test quality again after quantization because quantization can change wording and consistency. + +9. Evaluate on device. + + Run the app with real camera input. Check whether the model gives short, useful corrections, whether latency is acceptable, and whether repeated prompts produce varied but consistent feedback. + +Fine-tuning is not included as a formal step in this Learning Path because it adds dataset design, training infrastructure, model conversion, quantization, and evaluation. However it will make a significant quality difference to the app, as you get much better responses. Treat it as a follow-up project once the app pipeline is working. + +## Extend beyond one pose + +The full Yoga Tutor app uses the same broad pipeline, but adds more product features around it. + +To support multiple poses, replace the single `PlankPoseData.kt` object with a pose data repository that can load data from files. Each pose needs a name, instructor reference landmarks, joint weights, and display media. The prompt should include the current pose name so the LLM can choose language that fits the pose. + +To show richer instructor guidance, replace `plank.jpg` with pose-specific images or videos. If you add videos, you will also need lifecycle handling for playback and a way to keep the instructor media synchronized with the current pose. + +To support transitions between poses, add transition states to the app. Transitions need different feedback rules from static holds: the tutor might give timing, breathing, or movement cues rather than strict alignment corrections. + +To make the tutor feel more natural, add different message types. For example: + +- Correction when the score is low. +- Praise when the score is high. +- Encouragement or generaic yoga advice when correction or praise might feel repetitive. +- A short rest or breathing cue between corrections. + +To make the app more robust, handle interruptions and edge cases. For example, decide what should happen when the learner leaves the camera view, when no pose is detected, when the LLM is still responding, or when TTS is still speaking. + +To improve voice quality, you can replace Android's built-in `TextToSpeech` with a higher-quality neural TTS engine. That adds model size, latency and runtime complexity, so Android TTS is a good starting point for this Learning Path. + +## Summary + +You built a complete on-device AI pipeline for real-time coaching: + +```text +CameraX frames + -> MediaPipe pose landmarks + -> joint-angle scoring + -> compact prompt + -> local GGUF model with AI Chat + -> Android TextToSpeech +``` + +The same structure can be adapted to other fitness, movement, accessibility, or training apps, and a slightly different computer vision input pipeline will have many other use cases. The key design choice is to keep each model doing the job it is good at: pose estimation extracts structured body data, scoring converts it into compact facts, and the LLM turns those facts into human-friendly coaching. From 53a5a241a179db4e8c24bb829f273d04c1c6b944 Mon Sep 17 00:00:00 2001 From: Ben Clark Date: Mon, 29 Jun 2026 19:36:41 +0100 Subject: [PATCH 4/5] minor edits --- .../ai-plank-tutor/1-introduce-plank-tutor.md | 8 ++++---- .../mobile-graphics-and-gaming/ai-plank-tutor/_index.md | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/1-introduce-plank-tutor.md b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/1-introduce-plank-tutor.md index c264f5b0a7..440c3a6cbd 100644 --- a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/1-introduce-plank-tutor.md +++ b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/1-introduce-plank-tutor.md @@ -12,7 +12,7 @@ In this Learning Path, you will build a simple on-device AI fitness tutor for An The app watches a learner hold a plank, compares their body position with a stored instructor reference, asks a local LLM for one short correction, and speaks the correction using Android text-to-speech. -This project is based on the [AI Yoga Tutor](https://developer.arm.com/community/arm-community-blogs/b/ai-blog/posts/ai-yoga-tutor) prototype. The Learning Path keeps the same core pipeline, but narrows the app to one static pose so you can focus on how a pipeline that includes Android camera, pose detector, local LLM, and speech output fits together. +This project is based on the [AI Yoga Tutor](https://developer.arm.com/community/arm-community-blogs/b/ai-blog/posts/ai-yoga-tutor) demo. The Learning Path keeps the same core pipeline, but narrows the app to one static pose so you can focus on how a pipeline that includes Android camera, pose detector, local LLM, and speech output fits together. ![AI Plank Tutor final UI alt-text#center](screenshot.jpg "Figure 1: AI Plank Tutor showing the instructor plank image, live camera view, score, and spoken correction caption.") @@ -23,16 +23,16 @@ The finished app has two main visual areas: The app overlays a pose score and a short caption that matches the spoken coaching feedback. -This Learning Path starts with a "shell" project with MediaPipe and camera integration mostly setup. If you wish to learn about that setup from an empty project, you could try another learning path, like [Build a Hands-Free Selfie Android Application with MediaPipe](https://learn.arm.com/learning-paths/mobile-graphics-and-gaming/build-android-selfie-app-using-mediapipe-multimodality/) +This Learning Path starts with a "shell" project with MediaPipe and camera integration mostly setup. If you wish to learn about that setup from an empty project, you could try another Learning Path - [Build a Hands-Free Selfie Android Application with MediaPipe](https://learn.arm.com/learning-paths/mobile-graphics-and-gaming/build-android-selfie-app-using-mediapipe-multimodality/) is a good example. ## App pipeline The app uses a small pipeline of on-device components: ```text -reference image and landmarks +reference image and camera view -> CameraX live frames - -> Pose Landmarker + -> Pose landmarks -> joint-angle scoring -> compact text prompt -> Arm AI Chat + LLM diff --git a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/_index.md b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/_index.md index 3d5bdd8f54..9146b9a2c0 100644 --- a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/_index.md +++ b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/_index.md @@ -1,7 +1,7 @@ --- -title: Build an on-device AI plank tutor on Android +title: Build an on-device AI Plank Tutor on Android -minutes_to_complete: 60 +minutes_to_complete: 90 who_is_this_for: This Learning Path is for Android developers who want to explore creating an ML/GenAI pipeline, including camera input, local LLM inference, and speech. From ba3273d6dfe5eba05f3e3d8c38820fc5bf8e7a44 Mon Sep 17 00:00:00 2001 From: pareenaverma Date: Mon, 6 Jul 2026 15:25:36 -0400 Subject: [PATCH 5/5] Update _index.md --- .../mobile-graphics-and-gaming/ai-plank-tutor/_index.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/_index.md b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/_index.md index 9146b9a2c0..88ed016996 100644 --- a/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/_index.md +++ b/content/learning-paths/mobile-graphics-and-gaming/ai-plank-tutor/_index.md @@ -1,6 +1,10 @@ --- title: Build an on-device AI Plank Tutor on Android +draft: true +cascade: + draft: true + minutes_to_complete: 90 who_is_this_for: This Learning Path is for Android developers who want to explore creating an ML/GenAI pipeline, including camera input, local LLM inference, and speech. @@ -67,4 +71,4 @@ further_reading: weight: 1 # _index.md always has weight of 1 to order correctly layout: "learningpathall" # All files under learning paths have this same wrapper learning_path_main_page: "yes" # This should be surfaced when looking for related content. Only set for _index.md of learning path content. ---- \ No newline at end of file +---