Texture Synthesis with
Patch Optimal Transport

Presentation   -   Papers   -   Results   -   Source codes

Presentation

  In this work, we propose to address exemplar-based texture synthesis with a model based on optimal transport in the patch space. More precisely, starting from a Gaussian random field at coarse scale, we propose to apply several local transformations in order to reimpose geometric features in a way which is statistically compliant to the patch distribution of the input texture. These local transformations operate on the 3x3 patches at multiple scales and are designed to solve a semi-discrete optimal transport problem in the patch space. They essentially consist of weighted nearest neighbor assignments, that are able to reimpose the empirical patch distribution of the exemplar at multiple scales.

Original

Original
Synthesis

Synthesis

Papers

  The texture model is described in the papers

"A Texture Synthesis Model Based on Semi-discrete Optimal Transport in Patch Space"
(Bruno Galerne, Arthur Leclaire, Julien Rabin),
SIAM Journal on Imaging Sciences, vol. 11, no. 4, pp. 2456-2493, 2018.
Hal preprint. doi.

"Semi-Discrete Optimal Transport in Patch Space for Enriching Gaussian Textures"
(Bruno Galerne, Arthur Leclaire, Julien Rabin), Geometric Science of Information (GSI).
Revised Preprint. Hal.

  The experiments shown in this paper can be reproduced using the codes available below.

Results

  Several high-resolution texture synthesis results can be seen here.

Source codes (Matlab)

  The archive release.zip contains source codes for texture synthesis. See readme.txt for details about the usage.

  This archive contains the main functions

  and also

  Besides, we provide a fast implementation based on CUDA/Matlab:

  If you find some bugs or mistakes in those codes, you can report them by email to Arthur Leclaire.