Mesh Convolution With Continuous Filters for 3-D Surface Parsing

Geometric feature learning for 3-D surfaces is critical for many applications in computer graphics and 3-D vision. However, deep learning currently lags in hierarchical modeling of 3-D surfaces due to the lack of required operations and/or their efficient implementations. This journal work is a sigificant extension of our original work presented in CVPR 2021. Together, we provide PicassoPlus for deep learning over heterogeneous 3D meshes. We propose a series of modular operations for effective geometric feature learning from 3-D triangle meshes. These operations include novel mesh convolutions, efficient mesh decimation, and associated mesh (un)poolings. Our mesh convolutions exploit spherical harmonics as orthonormal bases to create continuous convolutional filters. The mesh decimation module is GPU-accelerated and able to process batched meshes on-the-fly, while the (un)pooling operations compute features for upsampled/downsampled meshes. Leveraging the modular operations of PicassoPlus, we further contribute a neural network, PicassoNet++, for 3-D surface parsing. It achieves highly competitive performance for shape analysis and scene segmentation on prominent 3-D benchmarks.
Note: PicassoPlus has been moved to Pytorch. We no longer provide tensorflow support.
If you find our work useful in your research, please consider citing:
@article{lei2023mesh,
title={Mesh Convolution With Continuous Filters for 3-D Surface Parsing},
author={Lei, Huan and Akhtar, Naveed and Shah, Mubarak and Mian, Ajmal},
journal={IEEE Transactions on Neural Networks and Learning Systems},
year={2023},
publisher={IEEE}
}
@inproceedings{lei2021picasso,
title={Picasso: A CUDA-based Library for Deep Learning over 3D Meshes},
author={Lei, Huan and Akhtar, Naveed and Mian, Ajmal},
booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition},
pages={13854--13864},
year={2021}
}
Please also cite the original dataset if you use their data or our reprocessed data, and follow their original terms of use.
$ git clone https://github.com/EnyaHermite/PicassoPlus
$ bash install_picasso.sh$ cd data
$ python download_extract_shapes.py
$ python download_extract_scenes.sh
$ cd ../preprocess
$ python process_coseg_label.py
$ python process_cubes_shrec_label.py
$ python process_human_label.py$ python prepare_faust_label.py
Shape Analysis
$ bash train_shapes.sh coseg_vases 0
Scene Segmentation
$ bash train_scenes.sh s3dis 0 $ bash eval_scenes.sh s3dis 0 /path/to/trained_model$ claude mcp add PicassoPlus \
-- python -m otcore.mcp_server <graph>