Skip to content

git-avinashpawar/AI-Smart-Mirror

Repository files navigation

AI‑Powered Smart Mirror

A smart mirror project developed as the final year academic project (Semester VIII) at Department of Technology, Shivaji University, Kolhapur, integrating AI features into a conventional mirror setup to assist users in daily tasks.


🪞 Overview

This project transforms a regular mirror into a functional AI-enhanced display. It's an academic prototype demonstrating how embedded systems, AI, and interactive software can be combined to create an intelligent assistant.


📦 Repository Contents

.
├─ audio/                  # Audio assets or processing scripts
├─ web/                    # Web interface components
├─ brain.py                # Core AI logic and decision-making
├─ database.py             # Local storage or state management
├─ main.py                 # Entry point / orchestrator script
├─ reminders.py            # Reminder scheduling feature
├─ smart mirror.pmdl       # Pretrained model (Snowboy?) for hotword detection
├─ utils.py                # Utility/helper functions
├─ README.md               # (This file)
├─ Report.pdf              # Project documentation and write-up
└─ LICENSE                 # MIT License

🚀 Quick Setup & Usage

  1. Clone the repository

    git clone https://github.com/git-avinashpawar/AI-Smart-Mirror.git
    cd AI-Smart-Mirror
  2. Install dependencies

    • Ensure Python is installed (compatible version depends on project; often Python 3.x).\
    • Install necessary Python packages if listed (e.g., via pip install -r requirements.txt if the file exists).
  3. Prepare model file

    • Ensure that smart mirror.pmdl is available --- likely used for hotword detection with tools like Snowboy.
  4. Run the application

    python main.py
  5. Optional: Configure reminders

    • Check reminders.py to see how reminders are scheduled and triggered.

🧩 Key Modules Explained

  • brain.py -- Contains the central AI logic, likely responsible for decision-making, processing inputs, and output generation.
  • database.py -- Facilitates local storage or state tracking used across sessions.
  • main.py -- Acts as the application entry point, orchestrating module loading and runtime flow.
  • reminders.py -- Manages reminder creation, scheduling, and delivery functionality.
  • smart mirror.pmdl -- A pre-trained model file possibly used for hotword or voice command recognition.
  • utils.py -- A collection of utility functions to support other modules.

🔄 Project Workflow

  1. Initialize the application via main.py.
  2. If voice/hotword detection is enabled, it likely employs smart mirror.pmdl to trigger AI voice interactions.
  3. brain.py handles logic such as interpreting commands or routing tasks.
  4. reminders.py may register and deliver reminders, possibly using database.py to store them.
  5. Helper routines are wrapped in utils.py to streamline the implementation.

📖 Documentation & Report

Detailed design notes, diagrams, implementation details, and project rationale are available in Report.pdf. Please review it for deeper insights into architecture, decision-making, and results.


🛠️ Technologies & Languages Used

  • C++ -- ~75% of codebase
  • Python -- ~10%
  • JavaScript, CSS, HTML, SWIG -- Additional support layers and front-end components

👨‍🎓 Project Maintainer: Avinash Pawar
📍 Institution: Department of Technology, Shivaji University, Kolhapur
📚 Final Year Project (Semester VIII)

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published