Skip to content

tangnode123/MeshMamba3D

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MeshMamba3D: A State-Space Model Enabling Meshes to be Learned like Point Clouds

Abstract

The inherent non-uniformity, irregular connectivity, and complex topological structures of 3D mesh data present fundamental challenges for deep learning approaches. Existing methods predominantly rely on specialized mesh convolutional algorithms or graph-structured modeling, often requiring the design of complex operators. Given that point cloud models are insensitive to input order, can efficient mesh learning be achieved by treating mesh faces as points and feeding them into a point cloud model, with local relationships constructed via KNN? First, this paper theoretically analyzes the commonalities between point clouds and meshes, as well as the effectiveness of KNN in capturing local topological relationships in meshes. Second, to address the non-uniformity of meshes, a graph farthest point sampling method is proposed to optimize the sampling strategy. Finally, based on the Mamba3D model, MeshMamba3D is developed. To address the limitation of single-scale local geometric features in Mamba3D, a Multi-Scale Local Norm Pooling block is introduced to balance feature attention across different scales. Experimental validation demonstrates that MeshMamba3D attains a state-of-the-art accuracy of 94.81% on the Manifold40 dataset, confirming the viability and efficacy of adapting point cloud approaches to mesh learning.

Overview

image

Dataset

Here, we provide the download links of the datasets for pre-train, classification and segmentation.

Model Zoo

Task Dataset Accuracy Download
Pre-training ShapeNet - ckpt
Classification ModelNet40 (ManiFlod40) 94.81% ckpt
Classification Cube Engraving 96.21% ckpt
Classification SHREC11-Split10 99.00% ckpt
Classification SHREC11-Split16 100.00% ckpt
Segmentation COSEG-Tele-aliens 91.42% ckpt
Segmentation COSEG-Chairs 95.96% ckpt
Segmentation COSEG-Vases 92.62% ckpt

Requirements

Tested on: PyTorch == 2.0.1; python == 3.8.17; CUDA == 11.7

pip install -r requirements.txt
# Chamfer Distance
cd ./model/chamfer_dist
python setup.py install --user
# GFFS
cd ./extension/ffs_cuda
python setup.py install --user
# PointNet++
pip install "git+https://github.com/erikwijmans/Pointnet2_PyTorch.git#egg=pointnet2_ops&subdirectory=pointnet2_ops_lib"
# GPU kNN
pip install --upgrade https://github.com/unlimblue/KNN_CUDA/releases/download/0.2/KNN_CUDA-0.2-py3-none-any.whl

# Mamba install
pip install causal-conv1d==1.1.1
pip install mamba-ssm==1.1.1

Training

Pretaining:

python pretrain.py cfg/pretrain.yaml

Classification Task:

python train_cls.py cfg/***.yaml

Segmentation Task:

python train_seg.py cfg/***.yaml

Acknowledgement

MeshMamba3D is built with reference to the code of the following projects: (Mamba3D, MeshMAE). Thanks for their awesome work!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors