Files
PinPoint/docs/design/product-design.md
2026-09-12 17:34:07 +08:00

2.3 KiB

Product Design

Overview

PinPoint is a mobile coaching aid for tenpin bowlers. It watches a bowler's approach through the phone's camera, tracks their body in real time using pose detection, and reports on the mechanics of their delivery — steps taken, timing, and joint angles at key phases — so a bowler (or their coach) can spot form issues without a human observer.

Current features (as implemented)

  • Live camera capture of the bowler's approach (front or back camera, switchable mid-session), landscape or portrait.
  • Real-time pose overlay — a skeleton drawn over the camera preview from detected body landmarks.
  • Step detection — counts steps taken during the approach from landmark motion.
  • Delivery phase detection — segments the approach into phases (e.g. stance, approach steps, release) for phase-specific analysis.
  • Joint angle calculation — computes relevant joint angles (e.g. ankle/hip) at points of interest.
  • Landmark smoothing — filters raw pose landmarks (moving-average / smoothing) to reduce jitter before analysis.
  • Session feedback UI — surfaces step count, phase, and feedback to the user during/after a session.
  • Debug session logging — records session data for later review/tuning of the detection logic.
  • Adjustable detector parameters — an admin-gated screen for tuning detection thresholds during development/testing.
  • Native menu shell — a separate OpenGL-based menu/game-state system (MainActivity), currently not yet wired to launch directly into the bowling camera flow from the UI (see docs/architecture.md).

Target users

  • Individual bowlers wanting self-guided form feedback without a coach present.
  • Coaches wanting a quick, repeatable way to capture and review a bowler's mechanics.

Out of scope (current version)

  • Cloud sync / multi-device history.
  • Automated scoring against a "correct form" reference model.
  • iOS support.

UI/UX

See ui-ux/ for wireframes, screen flows, and mockups. As of this commit that folder is a placeholder — the team should add:

  • A flow diagram of the menu → bowling capture screen navigation.
  • Screenshots or mockups of: main menu, bowling camera screen (portrait + landscape), settings/parameter editor, and feedback UI.