This repository investigates methods of spatial graph convolutions for 3D Shape classification.
Academic datasets such as ModelNet10 dataset is included as well as a self-assembled dataset of IFC geometries.
Check out the Dockerfile for the required packages to run this code
For specific installations regarding pytorch geometric please refer to the library's documentation https://pytorch-geometric.readthedocs.io/en/latest/notes/installation.html
In experiments.py parameters are configured for training Several values can be input and all possible input configurations are run. Check the first lines of experiments.py for the default values.
- RUN python geometric-ifc/experiments.py --batch_size 32 42 --learning_rate=0.01 0.001 --samplePoints 1024 --rotation [0,0,180] [180,180,180] --model PN2NET GCNConv GCNPool
During training the following output is saved:
- best performing model is saved as model_state_best_val.pth.tar
- a class report of the final model evaluated on the test set
- epoch losses and accuracies
- class confusion matrix
- and a file showing the parameter configuration of this specific run
TODO: Output final embedding space for similarity analysis
In evaluate.py the following will be available soon
- Class similarity analysis