GithubHelp home page GithubHelp logo

killsking / sketchsynthesis Goto Github PK

View Code? Open in Web Editor NEW

This project forked from panly099/sketchsynthesis

0.0 1.0 0.0 151.19 MB

A generative method to synthesize free-hand styled sketches from images

MATLAB 50.53% Objective-C 0.09% M 0.47% C++ 46.43% Makefile 0.38% C 1.89% Shell 0.20%

sketchsynthesis's Introduction

1. This is the linux implementation of deformable stroke model (DSM) and its relevent tools.

2. The folder structure :
------------------------------------------------------------------------------------
scripts : the training, testing and user study scripts. 

data : training and testing data.

functions : the functions invovled for DSM training and testing.

libs : the dependant 3rd-party libraries.

GUIs : this folder includes 3 apps :
       * [synGUI] the GUI for synthesizing a sketch after giving an input image.
       * [AnnoGUI] the GUI for annotating object bounding boxes for testing. It can also be used for part-based model supervision.
       * [UserStudyGUI] the GUI we use to do the perceptual studies in the paper.
         
results : the pre-trained DSMs and synthesized sketches, organized by category. They should be downloaded from https://github.com/panly099/sketchSynthesisResults. And please make the "results" folder by yourself to accommodate them.
------------------------------------------------------------------------------------

3. How to start?
It is recommended to try our sketch synthesis app first. In the folder of GUIs/synGUI, execute the 
image2sketch.m. When the app is launched, 
a) choose an image from data/images folder, e.g.,data/images/duck_img/161062752_cda17c415b.jpg; 
b) please choose the correct category in the category list and assign if this image is a flipped pose (the default pose is left-oriented, so for a right-oriented pose, you have to tick the 'Flip' radiobox); 
c) please click the Bbox button which will launch a selecting cursor for you to select the bounding box of the object (when using the cursor, once you click down the left button, please do not release the button until you finish selecting the bounding box). 
Right after you select the bounding box, the synthesizing process will begin and your result will be available 
in about 5 mins.

After tasting the synthesis app, you can explore into scripts/training and scripts/testing folders.
In scripts/training folder, you can execute the DSMtrainingScript.m file to train DSMs for the selected
category. The category is selected by a parameter called cateId, and more details can be found in the file
of DSMtrainingScript.m

For the imageSynScript.m in folder scripts/testing, you can execute it directly to synthesize sketches for 
the testing images using our pre-trained DSMs. Or alternatively, you can train your own DSMs first and then
execute this file.

Contact : 
If you have any problem, please feel free to contact 
[email protected].










sketchsynthesis's People

Contributors

panly099 avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.