The Portilla-Simoncelli Texture Model: towards Understanding the Early Visual Cortex
Jonathan Vacher, Thibaud Briand
Jonathan Vacher, and Thibaud Briand, The Portilla-Simoncelli Texture Model: towards Understanding the Early Visual Cortex, Image Processing On Line, 11 (2021), pp. 170–211.

Communicated by Bruno Galerne
Demo edited by Thibaud Briand and Jonathan Vacher


Texture synthesis is a prolific subarea in computer vision where statistical methods are often successful. The Portilla and Simoncelli (PS) texture algorithm is one of such methods that became very popular and has influenced visual perception studies. For many reasons it can still be considered as a state-of-the art texture synthesis algorithm: (i) it generates textures that are often indistinguishable from the original without scrutiny; (ii) it relies on few parameters compared to recent deep learning methods; (iii) recent algorithms often compare to it. Here, we review the scientific impact of this algorithm and give a detailed explanation. Briefly, the PS algorithm synthesizes a new texture by iteratively imposing to a Gaussian white noise image a set of high-order statistics of wavelet coefficients precomputed on a texture example. After few iterations the initial white noise image is transformed into a texture that is similar to the texture example. We provide a fast C++ implementation, evaluate the effect of the algorithm parameters and illustrate its capabilities with many synthesis examples. In addition, we propose two notable new features to the original implementation: (i) the possibility to interpolate between two textures; (ii) the possibility to handle non-periodicity using the 'periodic+smooth' decomposition.