No description
create_card.py | ||
create_dataset.py | ||
generate_svg.py | ||
README.md | ||
Sketch_RNN.ipynb |
Turn numbered svgs into usable arrays:
python create_dataset.py --dataset_dir datasets/naam6/
Train algorithm: (save often, as we'll use the intermediate steps)
sketch_rnn_train --log_root=models/naam6 --data_dir=datasets/naam6 --hparams="data_set=[diede.npz,blokletters.npz],dec_model=layer_norm,dec_rnn_size=450,enc_model=layer_norm,enc_rnn_size=300,save_every=50,grad_clip=1.0,use_recurrent_dropout=0,conditional=True,num_steps=5000"
Generate a card:
python create_card.py --data_dir datasets/naam6 --model_dir models/naam6 --max_checkpoint_factor .8 --columns 5 --rows 13 --split_paths --last_is_target --last_in_group
- max_checkpoint_factor
- set was trained for too many iterations in order to generate a nice card (~half of the card looks already smooth), by lowering this factor, we use eg. only the first 80% (.8) iteration
- split_paths
- Drawings that consist of mulitple strokes are split over paths, which are split over a given number of groups (see nr_of_paths)
- last_is_target
- Last item (bottom right) is not generated but hand picked from the dataset (see target_sample)
- last_in_group
- Puts the last drawing in a separate group