MarkMoHR / Awesome Sketch Synthesis
Labels
Projects that are alternatives of or similar to Awesome Sketch Synthesis
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
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 | |
Scene-level | Photo-Sketching | WACV 2019 | βοΈ | βοΈ | ScenePhoto-sketch paired |
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 | |
Rough sketch | Da Vinci | CGI 2018 | β | βοΈ | Line drawing restoration dataset |
OpenSketch | SIGGRAPH Asia 2019 | βοΈ | β | Product Design Sketches | |
Rough Sketch Benchmark | SIGGRAPH Asia 2020 | βοΈ | βοΈ | Rough and clean sketch pairs |
2. Sketch-Synthesis Approaches
1) Category-to-sketch
Level | Paper | Source | Code/Project Link |
Instance-level | A Neural Representation of Sketch Drawings (sketch-rnn) | ICLR 2018 | [Code] [Project] [Demo] |
Sketch-pix2seq: a Model to Generate Sketches of Multiple Categories | [Code] | ||
AI-Sketcher : A Deep Generative Model for Producing High-Quality Sketches | AAAI 2019 | [Project] | |
Stroke-based sketched symbol reconstruction and segmentation (stroke-rnn) | |||
BΓ©zierSketch: A generative model for scalable vector sketches | ECCV 2020 | ||
Pixelor: A Competitive Sketching AI Agent. So you think you can beat me? | SIGGRAPH Asia 2020 | [Project] [Code] | |
Creative Sketch Generation | ICLR 2021 | [Project] [Code] |
2) Photo-to-sketch
- vector image generation
Data type | Paper | Source | Code/Project Link |
Facial | Style and abstraction in portrait sketching | TOG 2013 | |
Making Robots Draw A Vivid Portrait In Two Minutes | IROS 2020 | [Code] [Project] | |
RoboCoDraw: Robotic Avatar Drawing with GAN-based Style Transfer and Time-efficient Path Optimization | AAAI 2020 | [Code] | |
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 | ||
Technical Drawings | Deep Vectorization of Technical Drawings | ECCV 2020 | |
Scene-level | Sketch Generation with Drawing Process Guided by Vector Flow and Grayscale | AAAI 2021 | [Code] |
- pixelwise image generation
Level | Paper | Source | Code/Project Link |
Facial | APDrawingGAN: Generating Artistic Portrait Drawings from Face Photos with Hierarchical GANs | CVPR 2019 | [Code] [Demo] |
Instance-level | Deep Factorised Inverse-Sketching | ECCV 2018 | |
Making better use of edges for sketch generation | JEI 2018 | ||
Synthesizing human-like sketches from natural images using a conditional convolutional decoder | WACV 2020 | [Code] | |
Scene-level | Photo-Sketching: Inferring Contour Drawings from Images | WACV 2019 | [Code] [Project] |
3) Text/Attribute-to-sketch
Level | Paper | Source | Code/Project Link |
---|---|---|---|
Scene-level | Scones: Towards Conversational Authoring of Sketches | IUI 2020 | |
Scene-level | Sketchforme: Composing Sketched Scenes from Text Descriptions for Interactive Applications | UIST 2019 | |
Facial | Text2Sketch: Learning Face Sketch from Facial Attribute Text | ICIP 2018 |
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] |
5) Sketch(pixelwise)-to-sketch(vector)
This means translating a pixelwise sketch into a sequential sketch imitating human's drawing order. The appearance of the sequential sketch is exactly the same as the pixelwise one.
Paper | Source | Code/Project Link |
---|---|---|
Animated Construction of Line Drawings | SIGGRAPH ASIA 2011 | [Project] [code] [Demo] |
6) Art-to-sketch
Here we list sketch synthesis based on other image types, like Manga, line art, rough sketch, etc.
- Hand drawn line art / rough sketch (a.k.a. Vectorization / Sketch Simplification)
a) Datasets and benchmark
Paper | Source | Code/Project Link |
---|---|---|
A Benchmark for Rough Sketch Cleanup | SIGGRAPH Asia 2020 | [Project] [Code] |
b) Traditional approaches
Paper | Source | Code/Project Link |
---|---|---|
Topology-Driven Vectorization of Clean Line Drawings | TOG 2013 | |
Closure-aware Sketch Simplification | SIGGRAPH Asia 2015 | [Project] |
Fidelity vs. Simplicity: a Global Approach to Line Drawing Vectorization | SIGGRAPH 2016 | [Project] |
StrokeAggregator: Consolidating Raw Sketches into Artist-Intended Curve Drawings | SIGGRAPH 2018 | [Project] |
A Delaunay triangulation based approach for cleaning rough sketches | C&G 2018 | [Code] |
Inertia-based Fast Vectorization of Line Drawings | PG 2019 | |
Vectorization of Line Drawings via Polyvector Fields | TOG 2019 | [Code] |
Integer-Grid Sketch Simplification and Vectorization | SGP 2020 | [Project] [Code] |
c) Learning-based approaches
- Manga (Comics)
Paper | Source | Code/Project Link |
---|---|---|
Deep extraction of manga structural lines | SIGGRAPH 2017 | [Code] |
3. Vector Graphics Generation
Here we focus on learning-based vector graphics generation without depending on vector training data.
- Using 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] |
- Using built-in differentiable rendering module
Paper | Source | Code/Project Link |
---|---|---|
Im2Vec: Synthesizing Vector Graphics without Vector Supervision | CVPR 2021 | [Project] [code] |
Stylized Neural Painting | CVPR 2021 | [Code] [project] |
Learning to Paint With Model-based Deep Reinforcement Learning | ICCV 2019 | [code] |
Strokenet: A neural painting environment | ICLR 2019 | [Code] |
Neural Painters: A learned differentiable constraint for generating brushstroke paintings | arxiv 1904 | [Code] |
Learning to Sketch with Deep Q Networks and Demonstrated Strokes | arxiv 1810 | |
Unsupervised Image to Sequence Translation with Canvas-Drawer Networks | arxiv 1809 |