{"id":13444093,"url":"https://github.com/KuangenZhang/ldgcnn","last_synced_at":"2025-03-20T18:30:41.204Z","repository":{"id":47898531,"uuid":"182593922","full_name":"KuangenZhang/ldgcnn","owner":"KuangenZhang","description":"Linked Dynamic Graph CNN: Learning through Point Cloud by Linking Hierarchical Features","archived":false,"fork":false,"pushed_at":"2021-11-25T00:37:19.000Z","size":44576,"stargazers_count":75,"open_issues_count":12,"forks_count":19,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-08-01T03:45:53.923Z","etag":null,"topics":["cnn","dynamic-graphs","modelnet-dataset","point-cloud","point-cloud-classification","point-cloud-segmentation","shapenet-dataset"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/KuangenZhang.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-04-21T23:49:43.000Z","updated_at":"2024-05-28T03:38:28.000Z","dependencies_parsed_at":"2022-08-12T14:00:42.989Z","dependency_job_id":null,"html_url":"https://github.com/KuangenZhang/ldgcnn","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KuangenZhang%2Fldgcnn","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KuangenZhang%2Fldgcnn/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KuangenZhang%2Fldgcnn/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KuangenZhang%2Fldgcnn/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KuangenZhang","download_url":"https://codeload.github.com/KuangenZhang/ldgcnn/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":221786139,"owners_count":16879967,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cnn","dynamic-graphs","modelnet-dataset","point-cloud","point-cloud-classification","point-cloud-segmentation","shapenet-dataset"],"created_at":"2024-07-31T03:02:18.796Z","updated_at":"2025-03-20T18:30:41.195Z","avatar_url":"https://github.com/KuangenZhang.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"﻿# Linked Dynamic Graph CNN: Learning through Point Cloud by Linking Hierarchical Features\n\n\u003cimg src='./LDGCNN_architecture.png' width=800\u003e\n\nWe propose a linked dynamic graph CNN (LDGCNN) to classify and segment point cloud directly. We remove the transformation network, link hierarchical features from dynamic graphs, freeze feature extractor, and retrain the classifier to increase the performance of LDGCNN.\n\nWe have also uploaded the code and data to the codeocean and prepared the environment to run the code. You can run the code online and reproduce the experiments easily without installing any packages. You can view and run the code on: https://codeocean.com/capsule/0220918/tree/v1\n\n## Contact\n\nFor more related works and codes, please view my homepage: https://sites.google.com/view/kuangenzhang\n\nFurther information please contact Kuangen Zhang (kuangen.zhang@alumni.ubc.ca).\n\n## Citation\nIf you find our work useful in your research, please consider citing:\n```bash\n@article{zhang_linked_2019,\n\ttitle = {Linked dynamic graph cnn: learning on point cloud via linking hierarchical features},\n\tshorttitle = {Linked {Dynamic} {Graph} {CNN}},\n\turldate = {2019-04-24},\n\tjournal = {arXiv:1904.10014 [cs]},\n\tauthor = {Zhang, Kuangen and Hao, Ming and Wang, Jing and de Silva, Clarence W. and Fu, Chenglong},\n\tmonth = apr,\n\tyear = {2019}\n}\n```\nK. Zhang, M. Hao, J. Wang, C. W. de Silva, and C. Fu, “Linked dynamic graph cnn: learning on point cloud via linking hierarchical features,” arXiv:1904.10014 [cs], Apr. 2019.\n\n## Overview\n`LDGCNN` is the improved version of Dynamic Graph CNN. We have evaluated our network on the point cloud classification dataset (ModelNet40) and segementation dataset (ShapeNet):\n\n* Classification accuracy on the ModelNet40: **92.9%**.\n* Mean IoU on the ShapeNet: **85.1%**\n\n## Requirements\n* [TensorFlow](https://www.tensorflow.org/)\n* h5py\n```bash\nsudo apt-get install libhdf5-dev\nsudo pip install h5py\n```\n\n## Point cloud classification\n### Dataset \n\n* ModelNet40 dataset is downloaded automatically through the `provider.py`.\n\n\n* We upload our pretrained model, you can evaluate the performance of our network directly by running the evaluation script:\n``` bash\npython evaluate.py\n```\n* Run the training script:\n``` bash\npython train.py\n```\n\n## Point cloud segmentation\n\nEnter the \"part_seg\" file folder.\n\n### Dataset \nLoad the data for part segmentation.\n```\nsh +x download_data.sh\n```\n\n### Evaluation\nWe upload our trained model. You can evaluate the trained model by running: \n```\npython test.py\n```\n\n### Train\nTrain the model on 2 GPUs, each with 12 GB memeory. \n```\npython train_multi_gpu.py\n```\nModel parameters with the highest validation accuracy are saved in \"log/ldgcnn_seg.ckpt*\".\n\n## License\nMIT License\n\n## Acknowledgement\nWe acknowledge that we borrow the code from [PointNet](https://github.com/charlesq34/pointnet) and [DGCNN](https://github.com/WangYueFt/dgcnn) heavily. We have marked our own parts in the code, otherwise the code is borrowed from PointNet and DGCNN.\n\n## Reference\n* C.  R.  Qi,  H.  Su,  K.  Mo,  and  L.  J.  Guibas,  “PointNet:Deep  Learning  on  Point  Sets  for  3d  Classification  andSegmentation,”  in2017  IEEE  Conference  on  ComputerVision  and  Pattern  Recognition  (CVPR),  Jul.  2017,  pp.77–85, read.\n* Y. Wang, Y. Sun, Z. Liu, S. E. Sarma, M. M. Bronstein,and J. M. Solomon, “Dynamic Graph CNN for Learningon  Point  Clouds,”arXiv:1801.07829  [cs],  Jan.  2018,arXiv: 1801.07829.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FKuangenZhang%2Fldgcnn","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FKuangenZhang%2Fldgcnn","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FKuangenZhang%2Fldgcnn/lists"}