Skip to content

NYRA is an advanced virtual AI-powered makeup assistant designed to revolutionize the way users explore beauty and cosmetics. Using real-time facial recognition, advanced makeup simulation, and AI-driven color analysis, NYRA allows users to try different makeup styles virtually. This tool is ideal for beauty enthusiasts, makeup artists, and profess

License

Notifications You must be signed in to change notification settings

KshitijSawant1/NYRA---Virtual-AI-Makeup-Assistant

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

14 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

NYRA Logo NYRA – Virtual AI Makeup Assistant


Version : 1.0

Author : Kshitij K Sawant


πŸ” Overview

NYRA is an advanced virtual AI-powered makeup assistant designed to revolutionize the way users explore beauty and cosmetics. Using real-time facial recognition, advanced makeup simulation, and AI-driven color analysis, NYRA allows users to try different makeup styles virtually. This tool is ideal for beauty enthusiasts, makeup artists, and professionals who want to experiment with various looks without applying real products.


⭐ Support

If you like this project, give it a star ⭐ on GitHub!


✨ Features

  • πŸŽ₯ Real-Time Webcam Makeup Application: Instantly apply virtual makeup using your webcam.
  • πŸ’„ Customizable Makeup Controls: Choose blush, lipstick, and eyeshadow shades with adjustable intensity levels.
  • 🎨 AI-Driven Color Analysis: Get personalized beauty suggestions based on your skin tone, eye color, and lip color.
  • πŸ” Facial Landmark Detection: Uses MediaPipe’s face mesh to precisely detect facial features for accurate makeup application.
  • πŸ“Έ Image Capture & Save: Save images after applying virtual makeup with just one click.
  • πŸ”§ User-Friendly Interface: An intuitive design for effortless navigation and interaction.
  • πŸ“Š Detailed Color Palette Suggestions: Get fashion and beauty insights based on seasonal color theory.

πŸš€ Introduction


πŸ’» 1. Using the Webcam Controls

  • Start Webcam: Click the "πŸŽ₯ Start Webcam" button on the sidebar to activate your webcam feed.
  • Stop Webcam: Click "πŸ›‘ Stop Webcam" to stop the live feed.
  • Capture Image: Click "πŸ“Έ Capture & Save Image" to save your current frame with applied makeup.

πŸ’„ 2. Apply Virtual Makeup

  • Blush Settings:

    • Enable or disable blush.
    • Select the color from predefined shades, match your skin tone, or use a custom color picker.
    • Adjust the intensity using the slider.
  • Lip Color Settings:

    • Enable or disable lipstick.
    • Choose from predefined colors or set a custom color.
    • Adjust opacity for a subtle or bold look.
  • Eyeshadow Settings:

    • Enable or disable eyeshadow.
    • Pick colors from the palette or choose custom shades.
    • Adjust intensity for desired effect.

🌈 3. AI-Driven Color Analysis

  • Enter your Google AI Studio API Key in the sidebar.
  • Click "Generate Color Analysis" to get personalized makeup and fashion suggestions based on your skin tone, eye color, and lip shade.

πŸ“Έ 4. Saving Your Looks

  • Once you’re satisfied with your virtual makeover, click "πŸ“Έ Capture & Save Image" to save your look.
  • All images will be saved in the Captured_Images/ folder automatically with timestamps.

πŸ“– How to Use

Follow these steps to make the most of NYRA and experiment with virtual makeup effortlessly.

1. Start the Webcam

  • Go to the Webcam Controls panel on the sidebar.
  • Click on πŸŽ₯ Start Webcam.
  • The live webcam feed will appear on the main screen.
πŸ“Έ Webcam Interface

2. AI Color Analysis

  • Enter your Google AI Studio API Key in the AI Color Analysis section.
  • Click on Generate Color Analysis to let NYRA analyze your skin, iris, and lip tones.
  • The analysis provides:
    • 🎨 Skin Color
    • πŸ‘οΈ Iris Color
    • πŸ’‹ Lip Color
  • It also suggests suitable makeup, clothing colors, and hair shades based on the analysis.
🎨 AI Suggested Color Swatches

3. Apply Makeup Virtually

πŸ’„ Blush Settings
  • Enable the blush feature using the Enable Blush button.
  • Adjust Blush Intensity with the slider.
  • Select a blush color:
    • Match skin tone
    • Predefined colors
    • Custom color using the color picker
Blush Settings Panel

4. Lipstick Settings

  • Enable lipstick using the Enable Lipstick button.
  • Choose from predefined lipstick shades or select a custom color.
  • Adjust Lipstick Intensity using the slider.
Lipstick Settings Panel

✨ Eyeshadow & Face Enhancements
  • Enable eyeshadow and pick colors.
  • Adjust the intensity for a natural or bold look.
  • Enhance your face using smoothing and brightness sliders for better virtual effects.
✨ Eyeshadow and Face Enhancements

🌈 5. AI-Driven Color Analysis

Google AI Studio: A Powerful AI Development Platform πŸš€

Google AI Studio is an online platform designed for developers, researchers, and businesses to access, experiment with, and deploy Google's Gemini AI models easily. It provides a user-friendly interface for working with Google's large language models (LLMs) and multimodal AI capabilities, allowing you to create AI-driven applications with minimal effort.

NYRA leverages Google AI Studio’s Gemini AI for advanced color analysis and fashion recommendations. Using real-time facial landmark detection and AI-driven insights, NYRA can generate:

  • 🎨 Personalized color palettes based on your skin tone, iris color, and lip shade.
  • 🏷️ Makeup, fashion, and hair color recommendations aligned with seasonal color theory.
  • 🎭 HEX Color Codes for seamless integration into makeup and styling choices.
How It Works:
  • Enter your Gemini AI API Key in the sidebar.
  • Click "Generate AI Color Analysis" to process real-time color analysis.
  • AI will detect and suggest ideal makeup, clothing, and hair color choices.
  • View HEX color swatches extracted from the AI recommendations.
🎨 AI Color Analysis Result

πŸ“Έ 6. Saving Your Looks

  • Once you’re satisfied with your virtual makeover, click "πŸ“Έ Capture & Save Image" to save your look.
  • All images will be saved in the Captured_Images/ folder automatically with timestamps.

πŸš€ Installation Instructions

Follow these steps to set up NYRA - Virtual AI Makeup Assistant on your local machine:


1. Prerequisites

Ensure you have the following installed on your machine:

  • βœ… Python 3.8+
  • βœ… pip (Python package manager)
  • βœ… A webcam for capturing real-time video
  • βœ… Google AI Studio API Key for AI-powered color analysis

2. Clone the Repository

Use git to clone the NYRA project repository:

git clone https://github.com/your-username/nyra-virtual-ai-makeup-assistant.git
cd nyra-virtual-ai-makeup-assistant

3. Install Dependencies

Install all necessary packages using:

pip install -r requirements.txt

If you face issues with specific packages, install them manually:

pip install streamlit opencv-python mediapipe Google AI Studio numpy

4. Run NYRA Locally

Execute the following command to launch the app:

streamlit run app.py

The application will open in your default browser at:

http://localhost:8501

5. Folder Structure

Here's what your project directory should look like:

NYRA/
β”‚
β”œβ”€β”€ Assets/                    # Logos, icons, and additional assets
β”œβ”€β”€ Face Marking/              # Face landmark detection modules
β”œβ”€β”€ Mesh Coding/               # Mesh generation and processing code
β”œβ”€β”€ Rasengan/                  # Custom effects (if applicable)
β”œβ”€β”€ Sharingan/                 # Additional effects/features
β”‚
β”œβ”€β”€ Streamlit_App/             # Main Streamlit application code
β”œβ”€β”€ Virtual Makeup/            # Core virtual makeup application files
β”‚
β”œβ”€β”€ Extras/                    # πŸ”₯ New folder for additional files and resources
β”‚   β”œβ”€β”€ Documentation/         # Additional notes, references, or guides
β”‚   β”œβ”€β”€ Testing/               # Test scripts and debugging tools
β”‚   β”œβ”€β”€ Backups/               # Backup files or old versions
β”‚   └── Experiments/           # Experimental code/features
β”œβ”€β”€ apt.txt                    # Additional system dependencies
β”œβ”€β”€ packages.txt               # List of installed packages
β”œβ”€β”€ Readme.md                  # Main project documentation
β”œβ”€β”€ render.yaml                # Render deployment configuration
β”œβ”€β”€ requirements.txt           # Required Python packages

πŸ“‚ Extra Features and Modules

The NYRA - Virtual AI Makeup Assistant comes with several extra modules and creative features that go beyond standard virtual makeup applications. These additional tools are designed to enhance the user experience and allow for advanced experimentation with visual effects.


πŸ” 1. Face Marking

The Face Marking folder contains scripts that handle facial feature detection using landmarks, which are essential for accurate virtual makeup application. Each script focuses on different facial areas:

  • All Marks.py – Detects and marks all significant facial landmarks.
  • Blush Mark.py – Specifically marks cheek areas for accurate blush application.
  • Eye Landmark.py – Detects and marks eye contours for applying makeup around the eyes.
  • Eyelids Marks.py – Targets eyelids for precise eyeshadow application.
  • Lipstick.py – Detects and outlines the lips for applying virtual lipstick.
  • Nose Contour.py – Helps with contouring effects around the nose.

🎨 2. Mesh Coding

The Mesh Coding folder provides advanced geometrical tracking and mesh manipulation, enabling more detailed makeup applications and custom effects:

  • Geometric Mesh Selector.py – Selects specific mesh areas for targeted effects.
  • Geometric Mesh.py – Generates a geometric mesh overlay for custom visual effects.
  • Hand Tracking.py – Detects hand gestures to enable gesture-based makeup control.
  • Landmark Selector.py – Allows users to manually select landmarks for custom makeup adjustments.

πŸŒͺ️ 3. Rasengan (Naruto Effect)

A fun and creative feature inspired by anime visual effects:

  • Naruto Effect.py – Applies the iconic Rasengan energy effect around the user’s hand or face.
  • Rasengan GIF.mp4 – A looping animation that showcases the effect dynamically.

πŸ‘οΈ 4. Sharingan Eye Effect

Another anime-inspired visual feature designed for eye transformations:

  • Sharingan Eye.py – Applies the Sharingan eye effect from Naruto to the user’s eyes.
  • image.png / image2.png – Custom images used to replicate the visual appearance of the Sharingan.

😎 5. Virtual Makeup Add-ons

The Virtual Makeup folder offers additional elements to enhance user style:

  • camera.py – Handles real-time webcam feed and captures frames for makeup application.
  • eye_landmark.py & eyelids.py – Detects eye landmarks and eyelids for applying eye-based effects.
  • eyewear.py – Adds virtual glasses to the user's face.
  • Eyewear_Collection.png / glasses.png – Contains different virtual glasses styles.
  • hat.py – Applies virtual hats for an augmented reality experience.
  • hat.png – Custom hat graphics.
  • lipstick.py – Applies customizable lipstick shades.
  • main.py – Central script that integrates all features for running the application.
  • image.py – Manages image overlays for custom graphics.
  • utils.py – Contains utility functions used across multiple modules.

πŸ› οΈ Supporting Files

  • requirements.txt – Lists all required Python libraries to run NYRA smoothly.
  • apikey.txt – Stores API keys (e.g., for Google AI Studio integration).
  • License – Specifies the GNU General Public License (GPL-3.0) for open-source distribution.

πŸŽ‰ Contributing

We welcome contributions! If you'd like to improve NYRA:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature-branch).
  3. Commit your changes (git commit -m 'Add some feature').
  4. Push to the branch (git push origin feature-branch).
  5. Create a Pull Request.

πŸ™Œ Acknowledgments


About

NYRA is an advanced virtual AI-powered makeup assistant designed to revolutionize the way users explore beauty and cosmetics. Using real-time facial recognition, advanced makeup simulation, and AI-driven color analysis, NYRA allows users to try different makeup styles virtually. This tool is ideal for beauty enthusiasts, makeup artists, and profess

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages