Skip to content
This repository has been archived by the owner on Jun 11, 2023. It is now read-only.

Latest commit

 

History

History
46 lines (32 loc) · 2.49 KB

README.md

File metadata and controls

46 lines (32 loc) · 2.49 KB

WPD-on-phone

This repo creates an app service to process app-sent videos and performs BPM extraction and HRV analysis on locally hosted and tunneled servers.

Credit:

  1. BPM Extraction is based on thearn/webcam-pulse-detector.
  2. HRV Analysis is based on Exploring Heart Rate Variability using Python and hrv-analysis library.

Demo

In this video, only the BPM data was generated, but for the newest code, all three files will be generated like the above picture. If the following GIF is not displayed, please go to this folder to download, or go to YouTube to watch it.

Software Infrastructure

  1. Flutter 3.10.0 with dart 3.0.0 for app development.
  2. Ngrok 3.3.1 for tunneling.
  3. Python 3.10.8 for server hosting, video processing, and data extraction.

Structure

  1. ./convertHRV: Use BPM to perform HRV analysis.
  2. ./multimedia: Pictures and Videos for display.
  3. ./processVideo: BPM extracting script.
  4. ./release: Released software.
  5. ./server: Server to receive videos for processing, including ./processVideo, and ./convertHRV.
  6. ./result: Extracted data.
  7. ./videos: Videos for processing.
  8. ./wpd_on_phone: App to record and send video.

Links

  1. Learn The Dart Programming Language - Complete Free Course!
  2. How to setup Flutter, Visual Studio Code, and Android Emulator on Windows - 2022
  3. Flutter Basic Training - 12 Minute Bootcamp
  4. Flutter in 100 seconds
  5. OpenCV Cascade Classifier
  6. Computer Vision with ML Kit - Flutter In Focus
  7. Capture photos from Camera using Image Stream with Flutter