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
- 1. Datasets
- 2. Sketch-Synthesis Approaches
- 3. Vector Graphics Generation (2D)
- 4. Vector Graphics Generation (3D)
Paper | Source | Code/Project Link |
---|---|---|
Deep Learning for Free-Hand Sketch: A Survey | TPAMI 2022 | [code] |
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 | ||
Icon | FIGR-8-SVG | ✔️ | ❌ | Icons with text descriptions | |
Systematic Symbol | SketchIME | ACM MM 2023 | ✔️ | ❌ | Systematic sketches with semantic annotations |
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 | |
SEVA | NeurIPS 2023 | ✔️ | ✔️ | 90K human-generated sketches that vary in detail | |
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 | CUFS | TPAMI 2009 | ❌ | ✔️ | Face-sketch pairs |
APDrawing | CVPR 2019 | ❌ | ✔️ | Portrait-sketch paired | |
SKSF-A | EG 2024 | ❌ | ✔️ | Face-sketch pairs of seven styles | |
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 | |
Anime | Danbooru2021 | / | ❌ | ✔️ | Anime images annotated with tags |
DanbooRegion | ECCV 2020 | ❌ | ❌ | Anime images with region annotations | |
Danbooru-Parsing | TOG 2023 | ❌ | ✔️ | For anime portrait parsing and anime translation | |
CreativeFlow+ | CVPR 2019 | ❌ | ✔️ | Large densely annotated artistic video dataset | |
ATD-12K | CVPR 2021 | ❌ | ✔️ | Animation frames with flow annotations | |
AnimeRun | NeurIPS 2022 | ❌ | ✔️ | Correspondence dataset for 2D-styled cartoons | |
AnimeCeleb | ECCV 2022 | ❌ | ❌ | Animation head images with pose annotations | |
PaintBucket-Character | CVPR 2024 | ❌ | ✔️ | Animation frames with region annotations | |
Sakuga-42M | arxiv 24.05 | ❌ | ✔️ | Cartoon videos with text descriptions and tags | |
Anita | online 2024 | ❌ | ✔️ | Professional hand-drawn cartoon keyframes, with 1080P sketch and color images |
- 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 | Sketch Generation with Drawing Process Guided by Vector Flow and Grayscale | AAAI 2021 | [Code] |
CLIPascene: Scene Sketching with Different Types and Levels of Abstraction | ICCV 2023 | [Project] [Code] | |
Learning Realistic Sketching: A Dual-agent Reinforcement Learning Approach | ACM MM 2024 | ||
Technical Drawings | Deep Vectorization of Technical Drawings | ECCV 2020 | [Project] [code] |
- raster image generation
- 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
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] |
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 | Deep learning? |
---|---|---|---|
Closure-aware Sketch Simplification | SIGGRAPH Asia 2015 | [Project] | No |
StrokeAggregator: Consolidating Raw Sketches into Artist-Intended Curve Drawings | SIGGRAPH 2018 | [Project] | No |
StrokeStrip: Joint Parameterization and Fitting of Stroke Clusters | SIGGRAPH 2021 | [Project] [code] | No |
StripMaker: Perception-driven Learned Vector Sketch Consolidation | SIGGRAPH 2023 | No | |
Region-Aware Simplification and Stylization of 3D Line Drawings | EG 2024 | No |
- 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 | |
MARVEL: Raster Gray-level Manga Vectorization via Primitive-wise Deep Reinforcement Learning | TCSVT 2023 |
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 |
Paper | Source | Code/Project Link |
---|---|---|
3Doodle: Compact Abstraction of Objects with 3D Strokes | SIGGRAPH 2024 | [code] |
Diff3DS: Generating View-Consistent 3D Sketch via Differentiable Curve Rendering | arxiv 24.05 | [webpage] |
- Wire Art
Paper | Source | Code/Project Link |
---|---|---|
Wired Perspectives: Multi-View Wire Art Embraces Generative AI | CVPR 2024 | [code] [webpage] |
Fabricable 3D Wire Art | SIGGRAPH 2024 |