# Learning to Synthesize Graphics Programs for Geometric Artworks

arXiv: https://arxiv.org/abs/2410.15768 · HTML: https://mlsanity.com/paper/2410.15768/

## Key facts

- No citing papers in the map yet (data through 14 Oct 2026).
- Builds on 19 of its 32 references that are in the map.
- First posted on arXiv 21 Oct 2024.

## Builds on (most cited first, 19 of 19)

- [Pointer Networks](https://mlsanity.com/paper/1506.03134/) (2015)
- [DeepSVG: A Hierarchical Generative Network for Vector Graphics Animation](https://mlsanity.com/paper/2007.11301/) (2020)
- [Im2Vec: Synthesizing Vector Graphics without Vector Supervision](https://mlsanity.com/paper/2102.02798/) (2021)
- [CSGNet: Neural Shape Parser for Constructive Solid Geometry](https://mlsanity.com/paper/1712.08290/) (2017)
- [Write, Execute, Assess: Program Synthesis with a REPL](https://mlsanity.com/paper/1906.04604/) (2019)
- [A Learned Representation for Scalable Vector Graphics](https://mlsanity.com/paper/1904.02632/) (2019)
- [Towards Layer-wise Image Vectorization](https://mlsanity.com/paper/2206.04655/) (2022)
- [Learning to Infer Graphics Programs from Hand-Drawn Images](https://mlsanity.com/paper/1707.09627/) (2017)
- [Synthesizing Programs for Images using Reinforced Adversarial Learning](https://mlsanity.com/paper/1804.01118/) (2018)
- [Paint Transformer: Feed Forward Neural Painting with Stroke Prediction](https://mlsanity.com/paper/2108.03798/) (2021)
- [Stylized Neural Painting](https://mlsanity.com/paper/2011.08114/) (2020)
- [Adversarial Open Domain Adaptation for Sketch-to-Photo Synthesis](https://mlsanity.com/paper/2104.05703/) (2021)
- [ClipGen: A Deep Generative Model for Clipart Vectorization and Synthesis](https://mlsanity.com/paper/2106.04912/) (2021)
- [Fast Soft Color Segmentation](https://mlsanity.com/paper/2004.08096/) (2020)
- [Modeling Artistic Workflows for Image Generation and Editing](https://mlsanity.com/paper/2007.07238/) (2020)
- [Sketch-to-Art: Synthesizing Stylized Art Images From Sketches](https://mlsanity.com/paper/2002.12888/) (2020)
- [Discovering Design Concepts for CAD Sketches](https://mlsanity.com/paper/2210.14451/) (2022)
- [Painting Many Pasts: Synthesizing Time Lapse Videos of Paintings](https://mlsanity.com/paper/2001.01026/) (2020)
- [Learning to Synthesize](https://mlsanity.com/paper/1802.07608/) (2018)

## Abstract (arXiv)

Creating and understanding art has long been a hallmark of human ability. When presented with finished digital artwork, professional graphic artists can intuitively deconstruct and replicate it using various drawing tools, such as the line tool, paint bucket, and layer features, including opacity and blending modes. While most recent research in this field has focused on art generation, proposing a range of methods, these often rely on the concept of artwork being represented as a final image. To bridge the gap between pixel-level results and the actual drawing process, we present an approach that treats a set of drawing tools as executable programs. This method predicts a sequence of steps to achieve the final image, allowing for understandable and resolution-independent reproductions under the usage of a set of drawing commands. Our experiments demonstrate that our program synthesizer, Art2Prog, can comprehensively understand complex input images and reproduce them using high-quality executable programs. The experimental results evidence the potential of machines to grasp higher-level information from images and generate compact program-level descriptions.
