For this project, we are inspired from 'Deep Dream' by Alexander Mordvintsev https://github.com/tensorflow/tensorflow/tree/master/tensorflow/examples/tutorials/deepdream
- Image Segmentation + Style Transfer + Deep Dream = 꿈속의 꿈
- 사람과 배경이 있는 이미지에서 배경에만 Style Transfer 와 Deep Dream 을 적용하여, 사람 영역의 이미지가 괴기스럽게 변하는 단점을 보완하여 좀 더 자연스러운 이미지를 Generation하고자 함.
- Image Segmentation (DeepLab V3+) : https://github.com/bonlime/keras-deeplab-v3-plus
- Style Transfer (Neural Transfer using PyTorch) : https://pytorch.org/tutorials/advanced/neural_style_tutorial.html
- Deep Dream (GoogLeNet) : https://github.com/tensorflow/tensorflow/tree/master/tensorflow/examples/tutorials/deepdream
- 원본이미지 → "Image Segmentation" → "사람 영역 One-Hot Vector", "배경 영역 One-Hot Vector"
- 원본이미지 → "Style Transfer" → 특정 Style이 적용된 이미지
- 특정 Style이 적용된 이미지 → "Deep Dream" → 몽환적 분위기 이미지
- 몽환적 분위기 이미지 → "Additional Image Processing" → 몽환적 분위기 이미지 + 원본 사람 영역이 치환된 좀 더 자연스러운 이미지
- Image Segmentation (DeepLab V3+) : COCO & JFT
- Style Transfer (Neural Transfer using PyTorch) : vgg19
- Deep Dream (GoogLeNet) : Imagenet
To setup our project environment to run the code in this repository, follow the instructions below.
-
Install Git
-
Install Anaconda
-
Clone this repository
git clone https://github.com/parksurk/deep-dream-with-segmentation
- Create (and activate) a new environment with Python 3.6.
- Linux or Mac:
conda create --name deepdream python=3.6 source activate deepdream
- Windows:
conda create --name deepdream python=3.6 activate deepdream
- Linux or Mac:
- Install Python Scientific Libraries
pip install jupyter numpy tensorflow pillow keras matplotlib opencv-python
- Install RISE - Jupyter notebook slideshow library (Optional for Presenter)
conda install -c conda-forge rise
- Create an IPython kernel for the kaggle environment. (Skip if you done already)
pip install ipykernel
python -m ipykernel install --user --name deepdream --display-name "deepdream"
- Run Jupyter Notebook
jupyter notebook
-
Click .ipynb on root directory
-
Before running code in a notebook, change the kernel to match the 'deepdream' environment by using the drop-down Kernel menu.