IMPA, Rio de Janeiro, Brasil
Training period person in charge: Luiz Velho
is an important aspect of computer graphics, because it allows increasing the
realism of images. The synthesis of textures is one of the better ways to create
texture images of arbitrary size. However, it remains difficult to develop an
algorithm that is both efficient and capable of generating high quality results.
I studied two algorithms very similar that reach very good performances: one
designed by Wei
M. and the other by Ashikhmin
M. The algorithms
require a texture sample as input and generate an image of the size chosen by
the user, so they are very easy to use.
Wei-Levoy algorithm uses the locality and
stationarity properties of the textures to synthesize an image pixel by pixel
searching the pixel in the input sample with the nearest neighborhood from the
one of the current pixel. As it is quite computationally expensive,
multi-resolution pyramids and quantization acceleration bring efficient
Ashikhmin algorithm is inspired from the first one.
But it adds the idea of coherence in the synthesis. That is, the current
pixel receives the value of an input pixel elected among a list of pixels
candidates chosen because they are near from the pixels which was used to assign
the pixels near from the current pixel. This algorithm is extremely efficient
and gives high quality results for the class of natural textures.
I implemented those methods in Java, as the interface, which permits to load, save, display images and changing the parameters of the synthesis. I implemented also interesting applications of user control, allowing the user to impose some rules to the synthesis.
M. Fast texture synthesis using tree-structured vector quantization. Proceedings
of SIG-GRAPH 2000 (July 2000), 479–488.
Michael Ashikhmin. Synthesizing natural textures.
2001 ACM Symposium on Interactive 3D Graphics, pages 217–226, March
Wei-Levoy algorithm results Ashikhmin algorithm results