Skip to content

Repository files navigation

OnPoint

Author: Ondřej Lukášek (xlukas15) Institution: Brno University of Technology (VUT), Faculty of Information Technology

A mobile application for sports and recreational shooters that automates the evaluation of shooting results. Built with an offline-first approach, it uses an embedded computer vision model to detect bullet holes in paper targets directly on the device.

Developed as a part of a Master's Thesis at Brno University of Technology (VUT).

Key Features

  • Real-time Hit Detection: Utilizes a custom-trained YOLOv8 computer vision model (quantized to FP16) to accurately identify new shots on paper targets.
  • Offline-First Architecture: Completely functional without an internet connection, ensuring reliability at indoor and remote outdoor shooting ranges.
  • Progress Tracking: Saves shooting sessions, calculates total shots, and visually differentiates between previous and new hits.
  • Privacy: All images, data, and models are processed and stored locally on the user's device.

Tech Stack

Getting Started

Prerequisites

  • Node.js (LTS version recommended) (developed with version v24.13.1)
  • Expo CLI
  • EAS CLI (for building the app remotely)

Installation

  1. Clone the repository:

    git clone <your-repo-url>
    cd onpoint
  2. Install dependencies:

    npm install
  3. Important: Important: Ensure the trained YOLOv8 model (best_finetuned_float16.tflite) is placed in the ./assets/model/ directory before running the app.

Running in Development

To start the development server, run:

npx expo start

Note: Since this app relies heavily on native modules (Vision Camera, Fast TFLite), it is highly recommended to test on a physical device using a Custom Development Build rather than Expo Go.

To build on physical device (recommended), you can use following command to run on device with native modules:

Android:

npx expo run:android --device

IOS:

npx expo run:ios --device

Building the app

To generate a standalone .apk for Android testing using Expo Application Services (EAS):

eas build -p android --profile preview

Once the build finishes, scan the provided QR code to download and install the app on your Android device.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages