A modern Android application for collecting, visualizing, and analyzing human activity data.
This app is designed to help researchers and developers collect high-quality sensor data (Accelerometer & Gyroscope) for building Activity Recognition (HAR) models. It features real-time visualization, on-device classification, and robust data management.
- Dynamic Line Charts: View live accelerometer and gyroscope data streams on scrolling line charts.
- Instant Feedback: See exactly what the sensors are "seeing" as you move.
- Smart Detection: The app analyzes your movement in real-time to detect if you are ACTIVE (Walking, Running) or STATIONARY (Sitting, Standing).
- Heuristic Engine: Powered by a lightweight on-device algorithm.
- Recording History: Browse all your past recording sessions in a clean list.
- Easy Sharing: Export your CSV data files to Google Drive, Email, or your computer with a single tap.
- Training vs Testing: Tag your data explicitly for Machine Learning workflows.
- Insights: View aggregate statistics of your usage.
- Breakdown: See how much time you've spent recording each activity type.
- Language: Kotlin
- UI Framework: Jetpack Compose (Material 3)
- Navigation: Navigation Compose
- Architecture: MVVM-inspired pattern
- Sensors: Android SensorManager API
- Clone the repo:
git clone https://github.com/yourusername/activity-recognition.git
- Open in Android Studio:
- Select the project folder.
- Wait for Gradle sync to complete.
- Run:
- Connect your Android device or start an Emulator.
- Click Run (
▶️ ).
- Select Activity: Choose what you are doing (e.g., "WALKING") from the dropdown.
- Start Recording: Tap the big "Start Recording" button.
- Move: Perform the activity. You'll see "Detected: ACTIVE" if you are moving!
- Stop & Save: Tap "Stop". The data is automatically saved.
- Export: Go to the History tab to share the CSV file.
Want to build your own model?
- Collect data for different activities (Walking, Sitting, etc.).
- Export the CSV files.
- Use Python (Pandas/Scikit-learn) to train a classifier.
- (Future) Integrate your TFLite model back into this app!
Built with ❤️ for the Open Source Community