Texture Generation with Neural Cellular Automata

Alexander Mordvintsev, Eyvind Niklasson, Ettore Randazzo
5/15/2021
cs.AIcs.CVcs.GR

Official code: google-research/self-organising-systems (449 stars, Apache-2.0, last commit 2026-01-09).

Abstract

Neural Cellular Automata (NCA) have shown a remarkable ability to learn the required rules to "grow" images, classify morphologies, segment images, as well as to do general computation such as path-finding. We believe the inductive prior they introduce lends itself to the generation of textures. Textures in the natural world are often generated by variants of locally interacting reaction-diffusion systems. Human-made textures are likewise often generated in a local manner (textile weaving, for instance) or using rules with local dependencies (regular grids or geometric patterns). We demonstrate learning a texture generator from a single template image, with the generation method being embarrassingly parallel, exhibiting quick convergence and high fidelity of output, and requiring only some minimal assumptions around the underlying state manifold. Furthermore, we investigate properties of the learned models that are both useful and interesting, such as non-stationary dynamics and an inherent robustness to damage. Finally, we make qualitative claims that the behaviour exhibited by the NCA model is a learned, distributed, local algorithm to generate a texture, setting our method apart from existing work on texture generation. We discuss the advantages of such a paradigm.

View on arXivView PDF

Code Implementations(1)

Apache-2.0
44995HTML, PythonFeb 4, 20209 months agoApache-2.0

Cite this paper

@article{mordvintsev2021texture,
  title  = {Texture Generation with Neural Cellular Automata},
  author = {Alexander Mordvintsev and Eyvind Niklasson and Ettore Randazzo},
  year   = {2021},
  eprint = {2105.07299},
  archivePrefix = {arXiv},
  url    = {https://arxiv.org/abs/2105.07299}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2105.07299.svg)](https://codeofpaper.com/paper/2105.07299)

Discussion