Skip to content

pranayharjai7/MyEmotions-java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

116 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

✨ MyEmotions: Your Emotional Companion ✨

Android ML Firebase

MyEmotions is a cutting-edge Android application designed to bridge the gap between human emotions and technology. By leveraging advanced Machine Learning (ML) and computer vision, the app provides users with a comprehensive ecosystem to track, analyze, and improve their emotional well-being.


🚀 Core Features

🧠 Intelligent Emotion Recognition

Using the MTCNN (Multi-task Cascaded Convolutional Networks) face detection and PyTorch-based classifiers, the app accurately identifies facial expressions in real-time. Simply capture a photo, and MyEmotions will recognize your current mood (Happy, Sad, Angry, Surprised, etc.).

📊 Insightful Mood Analytics

  • Weekly & Monthly Trends: Visualize your emotional journey with elegant graphs powered by MPAndroidChart.
  • Mood Mapping: See where you felt what. Integrated with Google Maps to show your emotional history geographically.
  • History Logs: Maintain a persistent record of your moods, synced across devices via Firebase.

🤝 Social Connectivity

  • Friends & Community: Add friends and share your emotional states.
  • Activity Suggestions: Receive personalized recommendations based on your current mood to help you relax or celebrate.

🔒 Secure & Synchronized

  • Firebase Authentication: Secure login and profile management.
  • Cloud Synchronization: Never lose your data with real-time Firebase Realtime Database integration.
  • Offline Support: Powered by Room Database for a seamless experience even without internet.

🛠 Tech Stack

Category Technology Used
Language Java
ML Engine PyTorch Mobile, MTCNN, TensorFlow Lite
Architecture MVVM (Model-View-ViewModel)
Database Room (Local), Firebase Realtime Database (Cloud)
UI Components Material Design 3, ViewBinding, MPAndroidChart
APIs Google Maps SDK, Play Services Location

📸 How It Works

  1. Capture: Open the camera or select an image from your gallery.
  2. Analyze: The MTCNN model detects faces, and the PyTorch classifier identifies the emotion.
  3. Reflect: Save the emotion with optional notes.
  4. Explore: Check your stats to find patterns in your emotional health.

🛠 Installation & Setup

  1. Clone the repository:
    git clone https://github.com/pranayharjai7/MyEmotions.git
  2. Open the project in Android Studio Hedgehog or later.
  3. Add your google-services.json to the app/ directory.
  4. Add your Google Maps API Key to local.properties:
    MAPS_API_KEY=your_api_key_here
  5. Sync Project with Gradle Files and Run!

🌟 Contributing

Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📄 License

Distributed under the MIT License. See LICENSE for more information.


Developed with ❤️ by Pranay Harjai

About

The "My Emotions" app aims to simplify the tracking and comprehension of emotions for users through machine learning algorithms that detect facial expressions captured by a smartphone or tablet camera. The app offers various features, including the ability to create a profile, add friends, record moods, view mood maps, and track physiological data.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages