This repository includes the prototype system of SketchMetaFace.
SketchMetaFace: A Learning-based Sketching Interface for High-fidelity 3D Character Face Modeling
Zhongjin Luo, Dong Du, Heming Zhu, Yizhou Yu, Xiaoguang Han, Hongbo Fu
We present SketchMetaFace, a novel sketching system designed for amateur users to create high-fidelity 3D character faces. With curvature-aware strokes (valley strokes in green and ridge strokes in red), novice users can smoothly customize detailed 3D heads. Note that our system only outputs geometry without texture and texturing is achieved using commercial modeling tools.
demo1_1.mp4
demo1_2.mp4
demo2_1.mp4
demo2_2.mp4
This system has been tested with Python 3.8, PyTorch 1.7.1, CUDA 10.2 on Ubuntu 18.04.
-
Installation:
conda create --name SketchMetaFace -y python=3.8 conda activate SketchMetaFace pip install -r requirements.txt
-
Start by cloning this repo:
git clone [email protected]:zhongjinluo/SketchMetaFace.git cd SketchMetaFace
-
Download pre-compiled user interface and checkpoints for backend algorithms from sketchmetaface_files.zip and then:
unzip sketchmetaface_files.zip unzip App.zip mv sketchmetaface_files/Stage1/Global/* /path-to-repo/Stage1/Global/ mv sketchmetaface_files/Stage2/Preview/* /path-to-repo/Stage2/Preview/ mv sketchmetaface_files/Stage2/Suggestion/* /path-to-repo/Stage2/Suggestion/ mv sketchmetaface_files/Stage2/Local/* /path-to-repo/Stage2/Local/
-
Run the backend servers for two-stage modeling:
# stage 1 cd /path-to-repo/Stage1/Global/ && bash server.sh # stage 2 cd /path-to-repo/Stage2/Preview/ && bash server.sh cd /path-to-repo/Stage2/Suggestion/ && bash server.sh cd /path-to-repo/Stage2/Local/ && bash server.sh
-
Launch the user interface and enjoy it:
cd App/ && bash run.sh
- stage 2 hot key: Y - symmetrize stroke, ↥ - zoom in stroke, ↧ - zoom out stroke, P - predict,
-
If you want to run the backend algorithms on a remote server, you may have to modify
App/config.ini
. -
This repo represents the prototype implementation of our paper. Please use this for research and educational purposes only. This is a research prototype system and made public for demonstration purposes. The user interface runs on Ubuntu 18.04 platforms only and may contain some bugs.
-
If you are interested in sketch-based 3D modeling, you can also refer to SimpModeling and Sketch2RaBit.