All Projects → sjvasquez → Handwriting Synthesis

sjvasquez / Handwriting Synthesis

Handwriting Synthesis with RNNs ✏️

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Handwriting Synthesis

Rnn Trajmodel
The source of the IJCAI2017 paper "Modeling Trajectory with Recurrent Neural Networks"
Stars: ✭ 72 (-94.63%)
Mutual labels:  recurrent-neural-networks
Simplednn
SimpleDNN is a machine learning lightweight open-source library written in Kotlin designed to support relevant neural network architectures in natural language processing tasks
Stars: ✭ 81 (-93.96%)
Mutual labels:  recurrent-neural-networks
Deep Learning For Beginners
videos, lectures, blogs for Deep Learning
Stars: ✭ 89 (-93.36%)
Mutual labels:  recurrent-neural-networks
Codegan
[Deprecated] Source Code Generation using Sequence Generative Adversarial Networks
Stars: ✭ 73 (-94.55%)
Mutual labels:  recurrent-neural-networks
Ai Reading Materials
Some of the ML and DL related reading materials, research papers that I've read
Stars: ✭ 79 (-94.1%)
Mutual labels:  recurrent-neural-networks
Tnn
Biologically-realistic recurrent convolutional neural networks
Stars: ✭ 83 (-93.81%)
Mutual labels:  recurrent-neural-networks
3d Reconstruction With Neural Networks
3D reconstruction with neural networks using Tensorflow. See link for Video (https://www.youtube.com/watch?v=iI6ZMST8Ri0)
Stars: ✭ 71 (-94.7%)
Mutual labels:  recurrent-neural-networks
Easyesn
Python library for Reservoir Computing using Echo State Networks
Stars: ✭ 93 (-93.06%)
Mutual labels:  recurrent-neural-networks
Emnist
A project designed to explore CNN and the effectiveness of RCNN on classifying the EMNIST dataset.
Stars: ✭ 81 (-93.96%)
Mutual labels:  recurrent-neural-networks
Malware Classification
Towards Building an Intelligent Anti-Malware System: A Deep Learning Approach using Support Vector Machine for Malware Classification
Stars: ✭ 88 (-93.43%)
Mutual labels:  recurrent-neural-networks
Qrnn
Quasi-recurrent Neural Networks for Keras
Stars: ✭ 74 (-94.48%)
Mutual labels:  recurrent-neural-networks
Gru Svm
[ICMLC 2018] A Neural Network Architecture Combining Gated Recurrent Unit (GRU) and Support Vector Machine (SVM) for Intrusion Detection
Stars: ✭ 76 (-94.33%)
Mutual labels:  recurrent-neural-networks
Bit Rnn
Quantize weights and activations in Recurrent Neural Networks.
Stars: ✭ 86 (-93.58%)
Mutual labels:  recurrent-neural-networks
Recurrent Environment Simulators
Deepmind Recurrent Environment Simulators paper implementation in tensorflow
Stars: ✭ 73 (-94.55%)
Mutual labels:  recurrent-neural-networks
Kerasr
R interface to the keras library
Stars: ✭ 90 (-93.28%)
Mutual labels:  recurrent-neural-networks
Keras Tcn
Keras Temporal Convolutional Network.
Stars: ✭ 1,177 (-12.16%)
Mutual labels:  recurrent-neural-networks
Language Translation
Neural machine translator for English2German translation.
Stars: ✭ 82 (-93.88%)
Mutual labels:  recurrent-neural-networks
Pytorch Pos Tagging
A tutorial on how to implement models for part-of-speech tagging using PyTorch and TorchText.
Stars: ✭ 96 (-92.84%)
Mutual labels:  recurrent-neural-networks
Multitask sentiment analysis
Multitask Deep Learning for Sentiment Analysis using Character-Level Language Model, Bi-LSTMs for POS Tag, Chunking and Unsupervised Dependency Parsing. Inspired by this great article https://arxiv.org/abs/1611.01587
Stars: ✭ 93 (-93.06%)
Mutual labels:  recurrent-neural-networks
Text classification
Text Classification Algorithms: A Survey
Stars: ✭ 1,276 (-4.78%)
Mutual labels:  recurrent-neural-networks

Handwriting Synthesis

Implementation of the handwriting synthesis experiments in the paper Generating Sequences with Recurrent Neural Networks by Alex Graves. The implementation closely follows the original paper, with a few slight deviations, and the generated samples are of similar quality to those presented in the paper.

Web demo is available here.

Usage

lines = [
    "Now this is a story all about how",
    "My life got flipped turned upside down",
    "And I'd like to take a minute, just sit right there",
    "I'll tell you how I became the prince of a town called Bel-Air",
]
biases = [.75 for i in lines]
styles = [9 for i in lines]
stroke_colors = ['red', 'green', 'black', 'blue']
stroke_widths = [1, 2, 1, 2]

hand = Hand()
hand.write(
    filename='img/usage_demo.svg',
    lines=lines,
    biases=biases,
    styles=styles,
    stroke_colors=stroke_colors,
    stroke_widths=stroke_widths
)

Currently, the Hand class must be imported from demo.py. If someone would like to package this project to make it more usable, please contribute.

A pretrained model is included, but if you'd like to train your own, read these instructions.

Demonstrations

Below are a few hundred samples from the model, including some samples demonstrating the effect of priming and biasing the model. Loosely speaking, biasing controls the neatness of the samples and priming controls the style of the samples. The code for these demonstrations can be found in demo.py.

Demo #1:

The following samples were generated with a fixed style and fixed bias.

Smash Mouth – All Star (lyrics)

Demo #2

The following samples were generated with varying style and fixed bias. Each verse is generated in a different style.

Vanessa Carlton – A Thousand Miles (lyrics)

Demo #3

The following samples were generated with a fixed style and varying bias. Each verse has a lower bias than the previous, with the last verse being unbiased.

Leonard Cohen – Hallelujah (lyrics)

Contribute

This project was intended to serve as a reference implementation for a research paper, but since the results are of decent quality, it may be worthwile to make the project more broadly usable. I plan to continue focusing on the machine learning side of things. That said, I'd welcome contributors who can:

  • Package this, and otherwise make it look more like a usable software project and less like research code.
  • Add support for more sophisticated drawing, animations, or anything else in this direction. Currently, the project only creates some simple svg files.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].