Knowledge (XXG)

Texture synthesis

Source 📝

268: 131: 264:, to perform many interesting tasks. They are typically accelerated with some form of Approximate Nearest Neighbor method since the exhaustive search for the best pixel is somewhat slow. The synthesis can also be performed in multiresolution, such as through use of a noncausal nonparametric multiscale Markov random field. 301:
methods were shown to be a powerful, fast and data-driven, parametric approach to texture synthesis. The work of Leon Gatys is a milestone: he and his co-authors showed that filters from a discriminatively trained deep neural network can be used as effective parametric image descriptors, leading to
227:
Algorithms of that family use a fixed procedure to create an output image, i. e. they are limited to a single kind of structured texture. Thus, these algorithms can both only be applied to structured textures and only to textures with a very similar structure. For example, a single purpose algorithm
309:
for texture synthesis. In a subsequent work, the method was extended further—PSGAN can learn both periodic and non-periodic images in an unsupervised way from single images or large datasets of images. In addition, flexible sampling in the noise space allows to create novel textures of potentially
259:
These methods, using Markov fields, non-parametric sampling, tree-structured vector quantization and image analogies are some of the simplest and most successful general texture synthesis algorithms. They typically synthesize a texture in scan-line order by finding and copying pixels with the most
425:
The non-parametric sampling approach of Efros-Leung is the first approach that can easily synthesize most types of texture, and it has inspired literally hundreds of follow-on papers in computer graphics. Since then, the field of texture synthesis has rapidly expanded with the introduction of 3D
218:
Stochastic texture synthesis methods produce an image by randomly choosing colour values for each pixel, only influenced by basic parameters like minimum brightness, average colour or maximum contrast. These algorithms perform well with stochastic textures only, otherwise they produce completely
155:: colour dots that are randomly scattered over the image, barely specified by the attributes minimum and maximum brightness and average colour. Many textures look like stochastic textures when viewed from a distance. An example of a stochastic texture is 209:
it. This means multiple copies of the sample are simply copied and pasted side by side. The result is rarely satisfactory. Except in rare cases, there will be the seams in between the tiles and the image will be highly repetitive.
288:
to manually synthesize a texture. Image quilting and graphcut textures are the best known patch-based texture synthesis algorithms. These algorithms tend to be more effective and faster than pixel-based texture synthesis methods.
250:
The result is an acceptable texture image, which is not too repetitive and does not contain too many artifacts. Still, this method is unsatisfactory because the smoothing in step 3 makes the output image look blurred.
64:
are a related technique which may synthesise textures from scratch with no source material. By contrast, texture synthesis refers to techniques where some source image is being matched or extended.
228:
could produce high quality texture images of stonewalls; yet, it is very unlikely that the algorithm will produce any viable output if given a sample image that shows pebbles.
243:
Randomly selected parts of random size of the sample are copied and pasted randomly onto the output image. The result is a rather non-repetitive image with visible seams.
305:
Another recent development is the use of generative models for texture synthesis. The Spatial GAN method showed for the first time the use of fully unsupervised
310:
infinite output size, and smoothly transition between them. This makes PSGAN unique with respect to the types of images a texture synthesis method can create.
80:
In common speech, the word "texture" is used as a synonym for "surface structure". Texture has been described by five different properties in the
555:"Texture synthesis via a noncausal nonparametric multiscale Markov random field." Paget and Longstaff, IEEE Trans. on Image Processing, 1998 511:"Texture synthesis via a noncausal nonparametric multiscale Markov random field." Paget and Longstaff, IEEE Trans. on Image Processing, 1998 236:
This method, proposed by the Microsoft group for internet graphics, is a refined version of tiling and performs the following three steps:
145:
These textures look like somewhat regular patterns. An example of a structured texture is a stonewall or a floor tiled with paving stones.
260:
similar local neighborhood as the synthetic texture. These methods are very useful for image completion. They can be constrained, as in
483: 609:
Jetchev, Nikolay; Bergmann, Urs; Vollgraf, Roland (2016-11-24). "Texture Synthesis with Spatial Generative Adversarial Networks".
664: 588:
Gatys, Leon A.; Ecker, Alexander S.; Bethge, Matthias (2015-05-27). "Texture Synthesis Using Convolutional Neural Networks".
306: 630:
Bergmann, Urs; Jetchev, Nikolay; Vollgraf, Roland (2017-05-18). "Learning Texture Manifolds with the Periodic Spatial GAN".
386: 73: 719: 30:
from a small digital sample image by taking advantage of its structural content. It is an object of research in
185:
The output should not repeat, i. e. the same structures in the output image should not appear multiple places.
576: 138:
Texture can be arranged along a spectrum going from regular to stochastic, connected by a smooth transition:
115:
to give the model a more realistic appearance. Often, the image is a photograph of a "real" texture, such as
81: 383:
in 1993 - "Novel cluster-based probability model for texture synthesis, classification, and compression".
398: 35: 76:" is an ambiguous word and in the context of texture synthesis may have one of the following meanings: 240:
The output image is filled completely by tiling. The result is a repetitive image with visible seams.
108: 39: 521: 430:
first published the patch-based version of this technique along with GPL code in 1993 according to
319: 189:
Like most algorithms, texture synthesis should be efficient in computation time and in memory use.
699: 654: 431: 631: 610: 589: 565: 459: 443: 61: 532: 415:
Gagalowicz and Song De Ma in 1986, "Model driven synthesis of natural textures for 3-D scenes",
404: 533:"Fast Texture Synthesis using Tree-structured Vector Quantization" Wei and Levoy SIGGRAPH 2000 206: 197:
The following methods and algorithms have been researched or developed for texture synthesis:
31: 577:"Graphcut Textures: Image and Video Synthesis Using Graph Cuts." Kwatra et al. SIGGRAPH 2003 123: 392: 361:
Deep Generative Texture Synthesis with PSGAN, implemented in Python with Lasagne + Theano:
395:
in 1998 - "Texture synthesis via a noncausal nonparametric multiscale Markov random field"
281: 112: 182:
The output should not have visible artifacts such as seams, blocks and misfitting edges.
111:, a texture is a digital image applied to the surface of a three-dimensional model by 713: 298: 261: 219:
unsatisfactory results as they ignore any kind of structure within the sample image.
152: 27: 464: 454: 427: 700:
Micro-texture synthesis by phase randomization, with code and online demonstration
554: 510: 426:
graphics accelerator cards for personal computers. It turns out, however, that
543: 335: 130: 689: 684: 449: 380: 285: 116: 50: 694: 498: 407:
in 2000 - "Fast Texture Synthesis using Tree-structured Vector Quantization"
156: 134:
A mix of photographs and generated images, illustrating the texture spectrum
53:), create large non-repetitive background images and expand small pictures. 23: 704: 674: 522:"Texture Synthesis by Non-parametric Sampling." Efros and Leung, ICCV, 1999 494: 422:(The latter algorithm has some similarities to the Chaos Mosaic approach). 365: 330: 267: 376:
Several of the earliest and most referenced papers in this field include:
126:, every digital image composed of repeated elements is called a "texture." 669: 679: 659: 355: 345: 205:
The simplest way to generate a large image from a sample image is to
636: 615: 594: 280:
Patch-based texture synthesis creates a new texture by copying and
266: 705:
Implementation of the Periodic Spatial GAN for texture synthesis
323: 284:
together textures at various offsets, similar to the use of the
49:
Texture synthesis can be used to fill in holes in images (as in
43: 695:
Implementation of Efros & Leung's algorithm with examples
411:
although there was also earlier work on the subject, such as
179:
The output should be as similar as possible to the sample.
484:"SIGGRAPH 2007 course on Example-based Texture Synthesis" 401:
in 1999 - "Texture Synthesis by Non-parametric Sampling".
418:
Lewis in 1984, "Texture synthesis for digital painting".
168:
Texture synthesis algorithms are intended to create an
389:
in 1995 - "Pyramid based texture analysis/synthesis".
566:"Image Quilting." Efros and Freeman. SIGGRAPH 2001 446:, a similar technique for audio rather than images 176:The output should have the size given by the user. 544:"Image Analogies" Hertzmann et al. SIGGRAPH 2001. 495:"Near-regular Texture Analysis and Manipulation" 341:A pixel-based texture synthesis implementation: 318:Some texture synthesis implementations exist as 151:Texture images of stochastic textures look like 501:, Wen-Chieh Lin, and James Hays. SIGGRAPH 2004 246:The output image is filtered to smooth edges. 8: 293:Deep Learning and Neural Network Approaches 223:Single purpose structured texture synthesis 34:and is used in many fields, amongst others 635: 614: 593: 366:https://github.com/zalandoresearch/psgan 129: 16:Algorithmic production of digital images 690:Examples of reaction-diffusion textures 476: 346:Parallel Controllable Texture Synthesis 172:that meets the following requirements: 7: 302:a novel texture synthesis method. 14: 57:Contrast with procedural textures 685:Nonparametric Texture Synthesis 351:Patch-based texture synthesis: 675:Near-Regular Texture Synthesis 1: 276:Patch-based texture synthesis 255:Pixel-based texture synthesis 214:Stochastic texture synthesis 736: 322:for the free image editor 82:psychology of perception 44:post-production of films 665:texture movie synthesis 356:KUVA: Graphcut textures 272: 135: 270: 133: 36:digital image editing 26:constructing a large 149:Stochastic textures. 109:3D computer graphics 40:3D computer graphics 62:Procedural textures 460:Procedural texture 444:Granular synthesis 273: 136: 22:is the process of 720:Computer graphics 660:texture synthesis 655:texture synthesis 143:Regular textures. 32:computer graphics 20:Texture synthesis 727: 642: 641: 639: 627: 621: 620: 618: 606: 600: 599: 597: 585: 579: 574: 568: 563: 557: 552: 546: 541: 535: 530: 524: 519: 513: 508: 502: 492: 486: 481: 297:More recently, 124:image processing 735: 734: 730: 729: 728: 726: 725: 724: 710: 709: 680:The Texture Lab 651: 646: 645: 629: 628: 624: 608: 607: 603: 587: 586: 582: 575: 571: 564: 560: 553: 549: 542: 538: 531: 527: 520: 516: 509: 505: 493: 489: 482: 478: 473: 440: 393:Paget-Longstaff 374: 316: 314:Implementations 295: 278: 262:image analogies 257: 234: 225: 216: 203: 195: 166: 113:texture mapping 70: 59: 24:algorithmically 17: 12: 11: 5: 733: 731: 723: 722: 712: 711: 708: 707: 702: 697: 692: 687: 682: 677: 672: 667: 662: 657: 650: 649:External links 647: 644: 643: 622: 601: 580: 569: 558: 547: 536: 525: 514: 503: 487: 475: 474: 472: 469: 468: 467: 462: 457: 452: 447: 439: 436: 420: 419: 416: 409: 408: 402: 396: 390: 384: 373: 370: 369: 368: 359: 358: 349: 348: 339: 338: 333: 315: 312: 294: 291: 277: 274: 271:Image quilting 256: 253: 248: 247: 244: 241: 233: 230: 224: 221: 215: 212: 202: 199: 194: 191: 187: 186: 183: 180: 177: 165: 162: 161: 160: 146: 128: 127: 120: 105: 94:directionality 69: 66: 58: 55: 15: 13: 10: 9: 6: 4: 3: 2: 732: 721: 718: 717: 715: 706: 703: 701: 698: 696: 693: 691: 688: 686: 683: 681: 678: 676: 673: 671: 668: 666: 663: 661: 658: 656: 653: 652: 648: 638: 633: 626: 623: 617: 612: 605: 602: 596: 591: 584: 581: 578: 573: 570: 567: 562: 559: 556: 551: 548: 545: 540: 537: 534: 529: 526: 523: 518: 515: 512: 507: 504: 500: 496: 491: 488: 485: 480: 477: 470: 466: 463: 461: 458: 456: 453: 451: 448: 445: 442: 441: 437: 435: 433: 429: 423: 417: 414: 413: 412: 406: 403: 400: 397: 394: 391: 388: 387:Heeger-Bergen 385: 382: 379: 378: 377: 371: 367: 364: 363: 362: 357: 354: 353: 352: 347: 344: 343: 342: 337: 336:Resynthesizer 334: 332: 329: 328: 327: 325: 321: 313: 311: 308: 303: 300: 299:deep learning 292: 290: 287: 283: 275: 269: 265: 263: 254: 252: 245: 242: 239: 238: 237: 231: 229: 222: 220: 213: 211: 208: 200: 198: 192: 190: 184: 181: 178: 175: 174: 173: 171: 163: 158: 154: 150: 147: 144: 141: 140: 139: 132: 125: 121: 118: 114: 110: 106: 103: 99: 98:line-likeness 95: 91: 87: 83: 79: 78: 77: 75: 67: 65: 63: 56: 54: 52: 47: 45: 41: 37: 33: 29: 28:digital image 25: 21: 625: 604: 583: 572: 561: 550: 539: 528: 517: 506: 490: 479: 465:Inceptionism 455:Seam carving 428:Scott Draves 424: 421: 410: 375: 360: 350: 340: 317: 304: 296: 279: 258: 249: 235: 232:Chaos mosaic 226: 217: 204: 196: 188: 170:output image 169: 167: 148: 142: 137: 101: 97: 93: 89: 85: 71: 60: 48: 19: 18: 670:Texture2005 399:Efros-Leung 637:1705.06566 616:1611.08207 595:1505.07376 471:References 450:Inpainting 372:Literature 286:clone tool 117:wood grain 86:coarseness 51:inpainting 499:Yanxi Liu 405:Wei-Levoy 331:Texturize 282:stitching 157:roughcast 102:roughness 714:Category 438:See also 320:plug-ins 90:contrast 68:Textures 193:Methods 74:Texture 201:Tiling 632:arXiv 611:arXiv 590:arXiv 432:Efros 381:Popat 153:noise 324:Gimp 307:GANs 207:tile 164:Goal 100:and 42:and 122:In 107:In 716:: 497:. 434:. 326:: 96:, 92:, 88:, 84:: 46:. 38:, 640:. 634:: 619:. 613:: 598:. 592:: 159:. 119:. 104:. 72:"

Index

algorithmically
digital image
computer graphics
digital image editing
3D computer graphics
post-production of films
inpainting
Procedural textures
Texture
psychology of perception
3D computer graphics
texture mapping
wood grain
image processing

noise
roughcast
tile
image analogies

stitching
clone tool
deep learning
GANs
plug-ins
Gimp
Texturize
Resynthesizer
Parallel Controllable Texture Synthesis
KUVA: Graphcut textures

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.