Skip to content

jfmedina05/embedded-activity-recognition

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Embedded Activity Recognition

An embedded machine learning project for real-time human activity recognition on a Raspberry Pi. This project focused on improving model accuracy, managing inference tradeoffs, and deploying an optimized neural network in an edge-computing environment.

Overview

This project involved optimizing a neural network for activity classification and deploying the resulting model to a Raspberry Pi. The work emphasized embedded AI constraints such as model size, inference speed, and real-world usability, while improving classification performance through architecture tuning and preprocessing improvements.

Project Goals

  • Improve the accuracy of an existing embedded neural network model
  • Deploy an optimized model for edge inference on Raspberry Pi
  • Evaluate tradeoffs between accuracy, model size, and inference time
  • Strengthen experience with embedded ML workflows

Tech Stack

  • Python
  • TensorFlow / Keras
  • TensorFlow Lite
  • NumPy
  • scikit-learn
  • Raspberry Pi

Key Improvements

  • Applied standard scaling to reduce noise in the data
  • Increased training set size from 60% to 80%
  • Expanded the architecture with additional Conv1D and MaxPooling1D layers
  • Increased dropout from 0.2 to 0.3
  • Increased training epochs from 15 to 50
  • Evaluated optimized and non-optimized TensorFlow Lite models

Results

  • Improved baseline model accuracy from approximately 0.80 to a significantly higher optimized result
  • Balanced classification performance with edge-device constraints
  • Produced deployable TensorFlow Lite models for embedded use
  • Strengthened understanding of the tradeoff between responsiveness and model complexity

Repository Structure

  • Week 10/, Week 11/, Week 12/, Week 13/ – project development over time
  • README.md – project report and summary

What This Project Demonstrates

  • Embedded machine learning on real hardware
  • Model optimization under deployment constraints
  • Neural network architecture tuning for practical use
  • End-to-end experience from preprocessing to edge deployment

Future Improvements

  • Add dataset and label documentation
  • Include plots for training/validation accuracy and loss
  • Benchmark inference latency more systematically
  • Explore quantization for smaller and faster TFLite deployment
  • Add a demo video or sample output workflow

Why This Project Matters

This project sits at the intersection of machine learning, embedded systems, and real-world deployment. It reflects my interest in intelligent systems that move beyond model training and into practical, resource-constrained applications.

About

Embedded machine learning system for real-time activity recognition on Raspberry Pi

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors