• Stars
    star
    140
  • Rank 261,473 (Top 6 %)
  • Language
    Jupyter Notebook
  • License
    MIT License
  • Created almost 6 years ago
  • Updated over 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Based on “Fast Texture Synthesis using Tree-structured Vector Quantization” and “Multiresolution Sampling Procedure for Analysis and Synthesis of Texture Images” papers

multi-resolution-texture-synthesis

Based on “Fast Texture Synthesis using Tree-structured Vector Quantization” and “Multiresolution Sampling Procedure for Analysis and Synthesis of Texture Images” papers

Here are the libraries and their versions you will need:

  • Python 3.7
  • Jupyter Notebook (5.6.0)
  • Numpy (is 1.15.1)
  • Matplotlib (2.2.3)
  • Scipy (1.1.0)
  • Skimage (0.14.0)
  • scikit-learn (0.19.2)
  • imageio (2.4.1)
  • PIL (5.2.0)
  • json (2.6.0)

To start, open the Jupyter Notebook file "Multi-resolution Texture Synthesis", and follow the instructions :)

NOTE: you might want to disable "Show Live Update" function in the .py file, if you want faster generation. Matplotlib image display is very-very slow D:

Interested in contributing?

Here are some potentially interesting alterations/experiments one could do :3

  • with laplacian pyramid, there is an element of 'memorylessness' as the parent map doesn't contain explicit information about its own parent (oppose to gaussian that has 'color' as the 'accumulated' information of all the previous levels). What if we query not just our parent, but a sum of all previous parents?
  • can be potentially used for "super-resolution", where you enlarge an image based on some other example's micro-structures