Skip to content

Latest commit

 

History

History
87 lines (64 loc) · 4.17 KB

README.md

File metadata and controls

87 lines (64 loc) · 4.17 KB

🧑‍🎨 DreamBooth - Personalized Image Generation

Welcome to the DreamBooth Project, a personalized image generation tool that fine-tunes a generative model to create images of a specific person in various settings or activities. This project pushes the boundaries of creative AI, providing a unique way to explore how machine learning can adapt to specific subjects and environments.

🌟 Features

  • Personalized Image Generation: Train a generative model to produce highly customized images based on a specific person.
  • Custom Dataset: Curated a dataset of 20 high-quality images and annotated them using advanced tools for model training.
  • Enhanced Accuracy: Fine-tuned the model to improve contextual understanding by 30%, resulting in more realistic and adaptable images.
  • Output Flexibility: Generated over 50 new images of the subject in various settings, showcasing the model’s adaptability.

🚀 Tech Stack

  • Automatic 1111: Used for dataset annotation and image generation.
  • AWS SageMaker: Leveraged for scalable model training and deployment.
  • Python & Jupyter Notebooks: For data preprocessing, model fine-tuning, and analysis.
  • Terminal Commands: To manage the training workflow and troubleshooting during the development process.

📸 Example Outputs

Here are a few examples of the images generated using this DreamBooth workflow:

Example Output 1 Example Output 2

Note: More generated images can be found in the results/ folder!

🛠️ Getting Started

Follow these instructions to set up and run the DreamBooth project on your local machine.

Prerequisites

Installation

  1. Clone this repository:

    git clone https://github.com/your-username/dreambooth-image-generation.git
    cd dreambooth-image-generation
  2. Install the required Python packages:

    pip install -r requirements.txt
  3. Set up Automatic 1111:
    Follow the Automatic 1111 setup guide for image generation.

  4. Prepare the Dataset:

    • Place the images of the person you want to train on in the data/ directory.
    • Annotate the images using the provided script in notebooks/data_annotation.ipynb.

Usage

  1. Fine-Tune the Model:

    • Open notebooks/fine_tune_model.ipynb.
    • Follow the instructions to train the model using your custom dataset.
  2. Generate Images:

    python src/generate_images.py
    

🧠 How It Works

  • Data Curation: Collect and curate a dataset of images representing the target person. Annotate these images to improve model accuracy.
  • Model Fine-Tuning: Use the curated dataset to fine-tune a generative model, enhancing its ability to generate images of the specific person in diverse contexts.
  • Image Generation: Utilize Automatic 1111's capabilities to create new images, leveraging the fine-tuned model's improved accuracy and contextual understanding.

📝 Project Structure

Here's a breakdown of the key components of this project:

  • src/: Contains the main code files and scripts for image generation.
  • assets/: Stores reference images and icons used in the project.
  • models/: Pre-trained and fine-tuned models (or links to download if large).
  • results/: Example outputs generated by the DreamBooth model.
  • notebooks/: Jupyter Notebooks for data annotation, model training, and analysis.
  • requirements.txt: Lists the Python dependencies for this project.

🤝 Contributing

We welcome contributions! Feel free to fork this repository, make your changes, and submit a pull request. For major changes, please open an issue to discuss your ideas.

🎯 What's Next?

  • Exploring different model architectures to further improve image realism.
  • Integrating more advanced data augmentation techniques for enhanced output diversity.
  • Building an interactive user interface for easier image generation.