https://github.com/avik-pal/deepdream.jl

Implementation of Google's Deep Dream in Julia using Flux

https://github.com/avik-pal/deepdream.jl

Science Score: 10.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    1 of 1 committers (100.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.3%) to scientific vocabulary

Keywords

deep-learning deepdream flux generated-dreams julia machine-learning visualization
Last synced: 9 months ago · JSON representation

Repository

Implementation of Google's Deep Dream in Julia using Flux

Basic Info
  • Host: GitHub
  • Owner: avik-pal
  • License: other
  • Language: Julia
  • Default Branch: master
  • Homepage:
  • Size: 5.3 MB
Statistics
  • Stars: 3
  • Watchers: 4
  • Forks: 2
  • Open Issues: 1
  • Releases: 0
Topics
deep-learning deepdream flux generated-dreams julia machine-learning visualization
Created about 8 years ago · Last pushed over 7 years ago

https://github.com/avik-pal/DeepDream.jl/blob/master/

# DeepDream

**NOTE : This project was meant for Julia 0.6. So it will fail to work
with Julia 1.0 and the latest tagged version of Flux. However, an update
is WIP**

**NOTE : If there is no GPU support available please checkout the cpu
branch of this repo. The cpu code is not thoroughly tested.**

## INSTALLATION INSTRUCTIONS

Run this command in the `Julia REPL`
```julia
julia> Pkg.clone("https://github.com/avik-pal/DeepDream.jl.git")
```

## USAGE INSTRUCTIONS

1. Inorder to generate dreams without using octaves run the following
   command with your own parameters
```julia
julia> img = load_image("./examples/sky.jpg")
julia> load_model(5)
julia> DeepDream.make_step(img, 10, 0.005, true, "./examples/sky_dream_new.jpg")
```
Make sure to pass all the arguments to the make_step function call to
avoid errors. Refer to the [function definition](https://github.com/avik-pal/DeepDream.jl/blob/11ef038ec6333114e521c6d6b422a4831c6bb0c8/src/dream.jl#L5) to understand what each parameter means.

2. To make use of octaves run the following commands
```julia
julia> img = load_image("./examples/sky.jpg")
julia> load_model(5)
julia> deepdream(img, 10, 0.005, 1.4, 4, "./examples/sky_dream_new.jpg")
```
Also be sure to checkout the [function definition](https://github.com/avik-pal/DeepDream.jl/blob/11ef038ec6333114e521c6d6b422a4831c6bb0c8/src/dream.jl#L27)

3. Incase you want to use any other model than the VGG19 model make sure
   to pass a function to `load_model()` which returns the model you want
   to use

4. To generate guided dreams run the following code.
```julia
julia> guide = load_guide_image("./examples/rio.jpg")
julia> img = load_image("./examples/sky.jpg")
julia> load_model(5)
julia> deepdream(img, 10, 0.005, 1.4, 4, "./examples/sky_dream_guided_new.jpg", guided = true)
```
The `guided_step` function might be used independently like the
`make_step` function.

5. Even easier method is to place all your images in a `./images`
   directory and call the function `dream_batch` function. Send a
   guiding image if necessary.

6. `recurdream` might be used to generate frames from a given image and
   using `writevideo` after that generates a video file.

More indepth documentation is available for each and every function.

## SOME EXAMPLES
|Original Image|Generated Image|
|:---:|:---:|
|![Sky](./examples/sky.jpg)|![Deepdream on Sky](./examples/sky_dream.jpg)|
|![Game](./examples/game.jpg)|![Deepdream on Game](./examples/game_dream.jpg)|
|![Rio](./examples/rio.jpg)|![Deepdream on Rio](./examples/rio_dream.jpg)|
|![Rio](./examples/rio.jpg)|![Deepdream on Rio](./examples/rio_dream_2.jpg)|
|![Statue of Liberty](./examples/liberty.jpg)|![Deepdream on Statue of Liberty](./examples/liberty_dream.jpg)|

|Original Image|Guiding Image|Generated Image|
|:---:|:---:|:---:|
|![Sky](./examples/sky.jpg)|![Flowers](./examples/flowers.jpg)|![Sky Dream guided by Flower](./examples/sky_guided_flower.jpg)|
|![Sky](./examples/sky.jpg)|![Flowers](./examples/flowers.jpg)|![Sky Dream guided by Flower](./examples/sky_guided_flower_2.jpg)|

## IMPLEMENTED

1. Utilities to load, save and generate images
2. Perform operations on Image
    * Zoom
3. Utilities to load models
4. Deep Dream Generator (non-guided)
5. Generate deep dreams using Octaves
6. Guided Deep Dreams

Owner

  • Name: Avik Pal
  • Login: avik-pal
  • Kind: user
  • Location: Cambridge, MA
  • Company: Massachusetts Institute of Technology

PhD Student @mit || Prev: BTech CSE IITK

GitHub Events

Total
Last Year

Committers

Last synced: over 1 year ago

All Time
  • Total Commits: 41
  • Total Committers: 1
  • Avg Commits per committer: 41.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Avik Pal a****l@i****n 41
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: over 1 year ago

All Time
  • Total issues: 1
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 1
  • Total pull request authors: 0
  • Average comments per issue: 0.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • dave7895 (1)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels