PPGNet
                                
                                 PPGNet copied to clipboard
                                
                                    PPGNet copied to clipboard
                            
                            
                            
                        Source code for our CVPR 2019 paper - PPGNet: Learning Point-Pair Graph for Line Segment Detection
PPGNet: Learning Point-Pair Graph for Line Segment Detection
PyTorch implementation of our CVPR 2019 paper:
PPGNet: Learning Point-Pair Graph for Line Segment Detection
Ziheng Zhang*, Zhengxin Li*, Ning Bi, Jia Zheng, Jinlei Wang, Kun Huang, Weixin Luo, Yanyu Xu, Shenghua Gao
(* Equal Contribution)
The poster can be found HERE.
 Demonstraton of juncton-line graph representaton G={V, E}. (a) an sample image patch with 10 junctons (V); (b) the graph which describes the connectvity of all junctons (G); (c) the adjacency matrix of all junctons (E, black means the junction pair is connected).
Demonstraton of juncton-line graph representaton G={V, E}. (a) an sample image patch with 10 junctons (V); (b) the graph which describes the connectvity of all junctons (G); (c) the adjacency matrix of all junctons (E, black means the junction pair is connected).
Requirements
- Python >= 3.6
- fire >= 0.1.3
- numba >= 0.40.0
- numpy >= 1.14.5
- pytorch = 0.4.1
- scikit-learn = 0.19.2
- scipy = 1.1.0
- tensorboard >= 1.11.0
- tensorboardX >= 1.4
- torchvision >= 0.2.1
- OpenCV >= 3.4.3
Usage
- clone this repository (and make sure you fetch all .pth files right with git-lfs): git clone https://github.com/svip-lab/PPGNet.git
- download the preprocessed SIST-Wireframe dataset from BaiduPan (code:lnfp) or Google Drive.
- specify the dataset path in the train.shscript. (modify the --data-root parameter)
- run train.sh.
Please note that the code requires the GPU memory to be at least 24GB. For GPU with memory smaller than 24GB, you can use a smaller batch with --batch-size parameter and/or change the --block-inference-size parameter in train.sh to be a smaller integer to avoid the out-of-memory error.
Citation
Please cite our paper for any purpose of usage.
@inproceedings{zhang2019ppgnet,
  title={PPGNet: Learning Point-Pair Graph for Line Segment Detection},
  author={Ziheng Zhang and Zhengxin Li and Ning Bi and Jia Zheng and Jinlei Wang and Kun Huang and Weixin Luo and Yanyu Xu and Shenghua Gao},
  booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition},
  year={2019}
}