Enigma-li / Free2CAD

MIT License
132 stars 21 forks source link

Free2CAD: Parsing Freehand Drawings into CAD Commands

Introduction

This repository contains the implementation of Free2CAD proposed in our SIGGRAPH 2022 paper.

It contains two parts: 1) network training, 2) training dataset and trained network deployment (e.g., for interactive modeling).

The code is released under the MIT license.

Network training

This part contains the Python code for building, training and testing the nueral network using TensorFlow.

💡 Great news: we have released the docker image used for training to ease the burden for configuration, please read README file within the networkTraining folder for more details.

Training dataset and network deployment

This part contains the code for deploying the trained network in a C++ project that can be an interactive 3D modeling application. It also provides instructions to download the training dataset we generated, and our trained networks.

Please read the README file in dataAndModel folder for more details.

🔴 IMPORTANT about data downloading❗🔴

The current data hosting is broken, we are working on it to find more permanent alternative places. Hopefull, we can make it alive soon.

Citation

If you use our code or model, please cite our paper:

@Article{Li:2022:Free2CAD, 
    Title = {Free2CAD: Parsing Freehand Drawings into CAD Commands}, 
    Author = {Changjian Li and Hao Pan and Adrien Bousseau and Niloy J. Mitra}, 
    Journal = {ACM Trans. Graph. (Proceedings of SIGGRAPH 2022)}, 
    Year = {2022}, 
    Number = {4}, 
    Volume = {41},
    Pages={93:1--93:16},
    numpages = {16},
    DOI={https://doi.org/10.1145/3528223.3530133},
    Publisher = {ACM} 
}

Contact

Any questions you could contact Changjian Li (chjili2011@gmail.com) or Hao Pan (haopan@microsoft.com) for help.