Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Latest commit

 

History

11 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Diffusion Model to create Synthetic cats images

In this project, the goal was to implement and train a diffusion model using PyTorch to generate synthetic images of cats.

What is Diffusion Model ?

A diffusion model is a type of generative model that learns to create data (e.g., images, audio) by modeling the process of noise being added to and removed from the data. During training, the model learns to reverse the noise process step by step, allowing it to generate realistic outputs from random noise.

Un super GIF

Data

The model was trained on a dataset of cat images consisting of 12,500 images. The dataset is publicly available on Kaggle and includes images of cats and dogs. For this project, only cat images were used.

dataset : cat-dog-images-for-classification

Training

Property Value
Framework PyTorch
Device RTX 2070
Optimizer Adam
Epochs 400
Training Time ~40h
image size 64
batch_size 5
start lr 3e-4
loss mse

Sample Images

Here are examples of synthetic cat images generated by the trained diffusion model:

Un super GIF

Here the diffusion process :

Un super GIF

Future Improvements

  • Improve Image Resolution: Enhance the model to generate images with resolutions higher than 64x64.
  • Diversify Dataset: Include additional cat breeds and styles to create more varied outputs.
  • Optimize Training Time: Experiment with larger batch sizes and mixed-precision training for faster results.

Acknowledgments

https://youtu.be/ZBKpAp_6TGI?si=IgHF2YOAdGVgslFy

https://arxiv.org/abs/2006.11239

https://github.com/diff-usion/Awesome-Diffusion-Models

https://www.youtube.com/watch?v=TBCRlnwJtZU

About

A PyTorch diffusion model to generate realistic synthetic cat images from gaussian noise

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Used by

Contributors

Languages