/SteerablePyramid

Python3 Implementation of Steerable Pyramid

Primary LanguagePython

Steerable Pyramid

Python3 Implementation of steerable pyramid.

This is based on the article bellow.

The Heeger-Bergen Pyramid-Based Texture Synthesis Algorithm, Briand,T. et al. (2014)

According to this article, this is a "real version" of steerable pyramid which is used in Portilla and Simoncelli(2000).

Parametric Texture Model Based on Joint Statistics of Complex Wavelet Coefficient, Portilla, J. and Simoncelli, E.(2000)

Results

  • Depth : 4
  • Orientation : 4 (0, pi/4, pi/2, 3*pi/4)

Original Image

saucer

Pyramid Images

band frequency

steerable pyramid steerable pyramid steerable pyramid steerable pyramid

steerable pyramid steerable pyramid steerable pyramid steerable pyramid

steerable pyramid steerable pyramid steerable pyramid steerable pyramid

steerable pyramid steerable pyramid steerable pyramid steerable pyramid

low frequency residual

steerable pyramid

high frequency residual

steerable pyramid

Reconstructed Images

steerable pyramid

Images of Filters (Fourier Domain)

First Highpass Filter (H0 in Portilla and Simoncelli)

filter

First Lowpass Filter (L0 in Portilla and Simoncelli)

filter

Bandpass Filters (B*L in Portilla and Simoncelli)

filter filter filter filter

Usage

Environment

  • python3.5 (3.0+)
  • GPU is not used.

Execution

  • create 'out' directory.
  • python create_collapse_pyramid.py -i saucer-mono256.png -x 256 -y 256, if you want to know details about parameters, see source code

References