Awesome-Sketch-Synthesis
A collection of papers about Sketch Synthesis (Generation). Mainly focus on stroke-level vector sketch synthesis.
Feel free to create a PR or an issue.
Outlines
0. Survey
Paper | Source | Code/Project Link |
---|---|---|
Deep Learning for Free-Hand Sketch: A Survey | TPAMI 2022 | [code] |
1. Datasets
Here Vector strokes
means having svg data. With photos
means having the photo-sketch paired data.
Level | Dataset | Source | Vector strokes | With photos | Notes |
Characters | Omniglot | |
|
Alphabets characters | |
KanjiVG | |
β | Chinese characters | ||
Kuzushiji | |
|
Japanese characters | ||
Instance-level | TU-Berlin | SIGGRAPH 2012 | |
β | Multi-category hand sketches |
Sketchy | SIGGRAPH 2016 | βοΈ | |
Multi-category photo-sketch paired | |
QuickDraw | ICLR 2018 | |
|
Multi-category hand sketches | |
QMUL-Shoe-Chair-V2 | CVPR 2016 | βοΈ | βοΈ | Only two categories | |
Sketch Perceptual Grouping (SPG) | ECCV 2018 | |
β | With part-level semantic segmentation information | |
FaceX | AAAI 2019 | βοΈ | |
Labeled facial sketches | |
Creative Sketch | ICLR 2021 | βοΈ | |
With annotated part segmentation | |
ImageNet-Sketch | NeurIPS 2019 | |
|
50 images for each of the 1000 ImageNet classes | |
Scene-level | SketchyScene | ECCV 2018 | β | βοΈ | With semantic/instance segmentation information |
CMPlaces | TPAMI 2018 | β | |
Cross-modal scene dataset | |
Context-Skecth | Expressive 2018 | |
|
Context-based scene sketches for co-classification | |
SketchyCOCO | CVPR 2020 | |
βοΈ | Scene sketch, segmentation and normal images | |
FS-COCO | ECCV 2022 | |
βοΈ | Scene sketches with text description | |
SFSD | VC 2022 | |
|
Completely hand-drawn scene sketches with label annotation | |
Drawing from photos | Photo-Sketching | WACV 2019 | |
|
ScenePhoto-sketch paired |
Tracing-vs-Freehand | SIGGRAPH 2021 | βοΈ | |
Tracings and freehand drawings of images | |
Drawing from 3D models | DifferSketching | SIGGRAPH Asia 2022 | |
|
3D model-sketch paired, with novice and professional ones |
Portrait | APDrawing | CVPR 2019 | |
βοΈ | Portrait-sketch paired |
Anime portrait | Danbooru-Parsing | TOG 2023 | |
βοΈ | For anime portrait parsing and anime translation |
Children's Drawing | Amateur Drawings | TOG 2023 | |
|
With character bounding boxes, segmentation masks, and joint location annotations |
Rough sketch | Da Vinci | CGI 2018 | |
βοΈ | Line drawing restoration dataset |
Rough Sketch Benchmark | SIGGRAPH Asia 2020 | |
|
Rough and clean sketch pairs (only for evaluation) | |
CAD | ld3d | SIGGRAPH 2008 | |
|
Line Drawings of 3D Shapes |
OpenSketch | SIGGRAPH Asia 2019 | βοΈ | |
Product Design Sketches | |
SketchGraphs | ICML 2020 Workshop | |
|
Sketches extracted from real-world CAD models | |
Fusion 360 Gallery | SIGGRAPH 2021 | |
|
For 'sketch and extrude' designs | |
FloorPlanCAD | ICCV 2021 | βοΈ | |
With instance and semantic annotations |
2. Sketch-Synthesis Approaches
1) Semantic Concept-to-sketch
2) Photo-to-sketch
- vector image generation
Data type | Paper | Source | Code/Project Link |
Facial | Style and abstraction in portrait sketching | TOG 2013 | |
Instance-level | Free-Hand Sketch Synthesis with Deformable Stroke Models | IJCV 2017 | [Project] [code] |
Learning to Sketch with Shortcut Cycle Consistency | CVPR 2018 | [Code1] [Code2] | |
Learning Deep Sketch Abstraction | CVPR 2018 | ||
CLIPasso: Semantically-Aware Object Sketching | SIGGRAPH 2022 | [Project] [Code] | |
Scene-level | CLIPascene: Scene Sketching with Different Types and Levels of Abstraction | arxiv 22.11 | [Project] |
Sketch Generation with Drawing Process Guided by Vector Flow and Grayscale | AAAI 2021 | [Code] | |
Technical Drawings | Deep Vectorization of Technical Drawings | ECCV 2020 | [Project] [code] |
- raster image generation
3) Text/Attribute-to-sketch
- raster image generation
Type | Paper | Source | Code/Project Link |
---|---|---|---|
Facial | Text2Sketch: Learning Face Sketch from Facial Attribute Text | ICIP 2018 | |
Scene-level | Sketchforme: Composing Sketched Scenes from Text Descriptions for Interactive Applications | UIST 2019 | |
Scene-level | Scones: Towards Conversational Authoring of Sketches | IUI 2020 |
- vector image generation
Type | Paper | Source | Code/Project Link |
---|---|---|---|
Arbitrary | CLIPDraw: Exploring Text-to-Drawing Synthesis through Language-Image Encoders | arxiv 21.06 | [code] |
Arbitrary | Modern Evolution Strategies for Creativity: Fitting Concrete Images and Abstract Concepts | arxiv 21.09 | [code] [project] |
Arbitrary | VectorFusion: Text-to-SVG by Abstracting Pixel-Based Diffusion Models | CVPR 2023 | [project] |
Icon | IconShop: Text-Based Vector Icon Synthesis with Autoregressive Transformers | arxiv 23.04 | [project] [code] |
Arbitrary | DiffSketcher: Text Guided Vector Sketch Synthesis through Latent Diffusion Models | arxiv 23.06 | [project] [code] |
4) 3D shape-to-sketch
Paper | Source | Code/Project Link |
---|---|---|
DeepShapeSketch : Generating hand drawing sketches from 3D objects | IJCNN 2019 | |
Neural Contours: Learning to Draw Lines from 3D Shapes | CVPR 2020 | [project] [code] |
Cloud2Curve: Generation and Vectorization of Parametric Sketches | CVPR 2021 | [project] |
Neural Strokes: Stylized Line Drawing of 3D Shapes | ICCV 2021 | [code] |
Learning a Style Space for Interactive Line Drawing Synthesis from Animated 3D Models | PG 2022 | |
CAD2Sketch: Generating Concept Sketches from CAD Sequences | SIGGRAPH Asia 2022 | [project] |
5) Art-to-sketch
Here we list sketch synthesis based on other image types, like Manga, line art, rough sketch, etc.
a) Line art
- Vector-to-Vector
Paper | Source | Code/Project Link | *-based |
---|---|---|---|
Closure-aware Sketch Simplification | SIGGRAPH Asia 2015 | [Project] | Optimization |
StrokeAggregator: Consolidating Raw Sketches into Artist-Intended Curve Drawings | SIGGRAPH 2018 | [Project] | Optimization |
StrokeStrip: Joint Parameterization and Fitting of Stroke Clusters | SIGGRAPH 2021 | [Project] [code] | Optimization |
- Raster-to-Vector (a.k.a. Vectorization)
b) Rough sketch simplification / cleanup
- Datasets and benchmark
Paper | Source | Code/Project Link |
---|---|---|
A Benchmark for Rough Sketch Cleanup | SIGGRAPH Asia 2020 | [Project] [Code] |
- Methods
Paper | Source | Code/Project Link |
---|---|---|
Learning to Simplify: Fully Convolutional Networks for Rough Sketch Cleanup | SIGGRAPH 2016 | [Code] [Project] |
Mastering Sketching: Adversarial Augmentation for Structured Prediction | SIGGRAPH 2018 | [Code] [Project] |
Real-Time Data-Driven Interactive Rough Sketch Inking | SIGGRAPH 2018 | [Code] [Project] |
Perceptual-aware Sketch Simplification Based on Integrated VGG Layers | TVCG 2019 |
c) Manga (Comics)
Paper | Source | Code/Project Link |
---|---|---|
Deep extraction of manga structural lines | SIGGRAPH 2017 | [Code] |
Manga Filling Style Conversion with Screentone Variational Autoencoder | SIGGRAPH Asia 2020 | [Project] [Code] |
Generating Manga from Illustrations via Mimicking Manga Workflow | CVPR 2021 | [Project] [Code] |
MangaGAN: Unpaired Photo-to-Manga Translation Based on The Methodology of Manga Drawing | AAAI 2021 | |
Vectorization of Raster Manga by Deep Reinforcement Learning | arxiv 2110 |
3. Vector Graphics Generation
Here we focus on learning-based vector graphics generation without depending on vector training data, and traditional vectorization algorithms.
- Learning with external black-box (non-differentiable) rendering simulator
Paper | Source | Code/Project Link |
---|---|---|
Synthesizing Programs for Images using Reinforced Adversarial Learning | ICML 2018 | [Code] |
Unsupervised Doodling and Painting with Improved SPIRAL | arxiv 1910 | [Project] |
- Learning with built-in differentiable rendering module
- Vectorization
Paper | Source | Code/Project Link |
---|---|---|
Depixelizing pixel art | SIGGRAPH 2011 | |
Perception-Driven Semi-Structured Boundary Vectorization | SIGGRAPH 2018 | [Webpage] |
PolyFit: Perception-aligned Vectorization of Raster Clip-art via Intermediate Polygonal Fitting | SIGGRAPH 2020 | [Webpage] [Code] |
ClipGen: A Deep Generative Model for Clipart Vectorization and Synthesis | TVCG 2021 | |
TCB-Spline-Based Image Vectorization | TOG 2022 | |
Image vectorization and editing via linear gradient layer decomposition | SIGGRAPH 2023 |