Welcome to the GAN Image Generator project! This application allows users to generate images using a Generative Adversarial Network (GAN) through a web interface. The frontend is built with React and Material-UI, while the backend uses Flask and TensorFlow to load and run the GAN model.
This project demonstrates the integration of machine learning models into web applications, containerization with Docker, and the orchestration of services using Docker Compose.
Image Generation: Generate images using a pre-trained GAN model. Web Interface: User-friendly frontend built with React and Material-UI. RESTful API: Backend API built with Flask to handle image generation requests. Dockerized: Both frontend and backend are containerized for easy deployment. Cross-Origin Support: Enabled CORS for seamless communication between frontend and backend.
GAN/
├── backend/
│ ├── app.py
│ ├── generator_model.h5
│ ├── Dockerfile
│ └── requirements.txt
├── frontend/
│ ├── public/
│ ├── src/
│ │ ├── components/
│ │ │ └── Gan.js
│ │ ├── App.js
│ │ ├── index.js
│ │ └── Dogs.css
│ ├── Dockerfile
│ └── package.json
├── docker-compose.yml
└── README.md
- Docker: Install Docker Engine here.
- Docker Compose: Install Docker Compose here.
- Git: (Optional) For cloning the repository.
git clone https://github.com/Mateorovere/Generative-adversarial-networks.git
cd Generative-adversarial-networks
From the project root directory, run:
docker-compose up --build
- Open your web browser and navigate to http://localhost:3000
- Click on the "Generate Image" button.
- Wait for the image to be generated.
- The generated image will appear on the right side of the screen.
Contributions are welcome! Please follow these steps:
- Fork the Repository
Click on the 'Fork' button on the top right corner of the repository page.
- Clone Your Fork
git clone https://github.com/Mateorovere/Generative-adversarial-networks.git
cd your-repository
- Create a New Branch
git checkout -b feature/your-feature-name
- Make Changes
Implement your feature or bug fix.
- Commit Changes
git commit -am 'Add new feature'
- Push to Your Fork
git push origin feature/your-feature-name
- Create a Pull Request
-
An upgraded model for MNIST
-
Currently is only generating MNIST digits, in the future there will be more models to generate more things