MS-DGCNN++: Hierarchical Multi-Scale Graph CNN
- The paper introduces MS-DGCNN++, a novel architecture that hierarchically fuses scale-specific features (local, branch, canopy) to enhance point cloud classification.
- It addresses limitations of parallel multi-scale methods by using dedicated EdgeConv operators and cross-scale information propagation for improved semantic differentiation.
- Experimental results on forestry LiDAR and standard 3D benchmarks demonstrate significant accuracy gains and efficient convergence through optimal neighborhood size selection.
Searching arXiv for the target paper and key related work to ground the article. MS-DGCNN++ is a hierarchical, biologically inspired multi-scale Dynamic Graph CNN for classifying individual trees from terrestrial LiDAR point clouds, with additional evaluation on standard 3D object recognition benchmarks. It was introduced to address a specific limitation of prior multi-scale dynamic graph methods: parallel multi-scale processing with different neighborhood sizes does not explicitly capture semantic relationships among hierarchical levels of tree architecture. MS-DGCNN++ replaces that design with hierarchically fused, scale-specific processing aligned with three semantic levels—local, branch, and canopy—and uses cross-scale information propagation before a DGCNN-style feature extractor. In the reported experiments, it achieves accuracy on STPCTLS with the best ablated configuration, on FOR-species20K, on ModelNet40, and on ModelNet10 (Ohamouddou et al., 16 Jul 2025).
1. Problem formulation and motivating context
The principal task is supervised classification of individual trees from TLS point clouds. The input is an individual tree point cloud downsampled to 3D points, and the output is a tree species label. The same architecture is also evaluated on ModelNet10 and ModelNet40 to assess generalization beyond forestry data (Ohamouddou et al., 16 Jul 2025).
The method is motivated by several properties of tree point clouds. The geometry is inherently multi-scale: fine bark and leaf structure, branch organization at an intermediate scale, and crown-level form all contribute to species discrimination. The sampling is irregular and non-uniform, with dense trunk regions and sparse canopy regions. The data are also affected by occlusion, limited viewpoints, and missing branches or crown sections. In addition, tree species classification is complicated by high intra-class variability and inter-class similarity.
Within this setting, DGCNN is characterized as a single-scale dynamic -NN graph model with fixed for all points and all parts of the tree. The paper argues that this is problematic when density and local structure vary substantially, because the same in dense and sparse regions corresponds to very different physical extents. The baseline MS-DGCNN improves on this by using parallel multi-scale branches with different neighborhood sizes, but those branches use the same raw point features, the same EdgeConv design, and are concatenated only at the end. According to the paper, this leads to no semantic differentiation of scales, no structured cross-scale information flow, and redundant feature extraction (Ohamouddou et al., 16 Jul 2025).
2. Architectural organization
MS-DGCNN++ is organized into three major modules: a Multi-scale Fusion Module, a DGCNN Feature Extraction Module, and a Classification Module. The architecture starts from a batched point tensor
where is the batch size, 0 the feature dimension, and 1 the number of points. A dynamic 2-NN graph is constructed by computing the pairwise negative squared distance matrix
3
followed by
4
for each scale 5, yielding the neighbor indices for local, branch, and canopy neighborhoods (Ohamouddou et al., 16 Jul 2025).
The model uses EdgeConv both in the scale-specific feature initialization and in the later DGCNN backbone. For an edge 6, the edge feature is written as
7
with the typical parameterization
8
The updated point feature is then obtained through symmetric aggregation, such as max pooling over neighbors.
The defining architectural change is the replacement of uniform parallel multi-scale branches by a semantically differentiated hierarchy. The three scales are local, branch, and canopy, typically associated with 9, 0, and 1, respectively. For each scale, the network constructs a different edge representation, processes it with a dedicated scale-specific operator 2, and then fuses the resulting three 64-dimensional per-point embeddings into a unified 64-dimensional feature 3. That fused representation is then refined by a DGCNN-style feature extractor using 4 in the EdgeConv layers, and a classification head maps the global feature to class logits (Ohamouddou et al., 16 Jul 2025).
3. Hierarchical multi-scale fusion and scale-specific feature engineering
The core mechanism of MS-DGCNN++ is hierarchical multi-scale fusion. Unlike the original MS-DGCNN, which runs three parallel branches with different neighborhood sizes and concatenates them at the end, MS-DGCNN++ builds three semantically distinct feature sets directly from the full point set and fuses them before the main DGCNN feature extractor. The paper describes this as hierarchical because information from local, branch, and canopy levels is integrated into a single per-point embedding before later graph layers operate on it (Ohamouddou et al., 16 Jul 2025).
For each scale, the network gathers neighbor and center features,
5
and computes the relative displacement
6
At the local scale, intended to capture fine geometric detail, the feature is
7
assuming 8. These are described as “standard geometric features,” and in the explicit implementation they are simply relative displacement and absolute center coordinates.
At the branch scale, intended to reflect structural pattern and branch orientation, the model augments displacement with normalized relative vectors,
9
and defines
0
The paper’s interpretation is that 1 isolates directional information and is therefore better aligned with branch direction and branching-angle patterns.
At the canopy scale, intended to represent global topology and crown extent, the model adds a scalar Euclidean distance feature,
2
and uses
3
The paper explicitly notes that this “distance information” is not a distance to trunk or ground; it is the Euclidean distance between a point and its neighbors after normalization to a unit sphere. This clarification addresses a potential misconception that the canopy feature encodes explicit botanical axes or terrain references.
Each 4 is processed by a scale-specific EdgeConv-like operator,
5
followed by max pooling over neighbors to obtain
6
The three per-scale embeddings are concatenated,
7
and fused through an MLP 8 into
9
This suggests that the method’s central innovation is not merely multiple neighborhood sizes, but a semantic factorization of point neighborhoods combined with early fusion (Ohamouddou et al., 16 Jul 2025).
4. Biological knowledge integration
The biological component of MS-DGCNN++ is implemented through scale design, feature choice, and domain-specific data augmentation rather than through explicit hard constraints such as trunk-axis enforcement or leaf–wood separation. The local scale is associated with fine anatomical detail, the branch scale with branch architecture, and the canopy scale with crown-level organization. The paper describes this as mirroring the botanical hierarchy local 0 branch 1 canopy (Ohamouddou et al., 16 Jul 2025).
The branch-scale use of normalized relative vectors is specifically motivated by the intuition that branch angle, rather than absolute length, is discriminative. The canopy-scale use of distance features is presented as a way to encode neighborhood radius and, at larger 2, approximate global shape and canopy extent. This is a biologically informed but still purely geometric representation; there is no claim of explicit morphology reconstruction.
A second biological component appears in the augmentation strategy used for the tree datasets. Height-dependent jitter adds more perturbation to higher points, mimicking foliage motion and sparser canopy structure. Rotation is restricted to the vertical axis, representing different viewpoints while preserving upright growth. Uniform scaling models size variation within species. Random point deletion simulates occlusion, missing data, and dead branches or leaves. The paper annotates these transformations with biological interpretations such as “Foliage Plasticity/Wind Response” and “Heliotropism.” A common misconception would be that “biological knowledge integration” means an explicit plant-science model embedded in the network; the paper instead uses biologically motivated semantics and augmentation design (Ohamouddou et al., 16 Jul 2025).
5. Data processing, optimization, and experimental protocol
For all datasets, the point clouds are downsampled to 1024 points and normalized to a unit sphere. For STPCTLS and ModelNet, farthest point sampling is applied directly to 1024 points. For FOR-species20K, a two-stage procedure is used: recursive voxel downsampling to approximately 30,000 points with a tolerance threshold of 500, then farthest point sampling to 1024. Unit-sphere normalization is defined by centroid subtraction and division by the maximum radius,
3
For the tree datasets, class imbalance is handled with weighted cross-entropy using per-class weights 4. If 5 is the class count, 6, and 7, then
8
The resulting loss is the weighted multiclass cross-entropy. For ModelNet, standard unweighted cross-entropy is used (Ohamouddou et al., 16 Jul 2025).
The augmentation pipeline for STPCTLS and FOR-species20K includes four operations. Height-dependent jitter computes a normalized height term and scales Gaussian perturbation accordingly. Rotation samples 9 and applies a rotation matrix around the 0-axis. Uniform scaling samples from 1. Random point deletion uses a Bernoulli mask with approximately 2 deletion, while forcing at least 3 of the points to remain. For ModelNet10 and ModelNet40, the paper states that the same hyperparameters as DGCNN’s original paper are used; standard augmentations are acknowledged but not re-listed in full.
The reported training settings for STPCTLS and FOR-species20K are: batch size 16, learning rate 4, weight decay 5, Adam, 300 epochs, CosineAnnealingLR with 6, global embedding dimension 1024, point cloud size 1024, dropout 7, and LeakyReLU slope 8. The classifier uses fully connected layers 9, with BatchNorm1d, LeakyReLU, and dropout in the hidden layers. Convolutional layers use BatchNorm2d, and dropout is restricted to the classification head (Ohamouddou et al., 16 Jul 2025).
6. Datasets, quantitative performance, and efficiency profile
The evaluation covers two tree-species benchmarks and two standard CAD benchmarks. STPCTLS is a TLS dataset with 691 individual trees from 7 species, split into 552 training and 139 test examples. FOR-species20K is a large benchmark with 33 species across 19 genera; the paper uses the original 90/10 train/dev and test split and then a subset of 3,542 specimens from the dev partition as the test set for the reported experiments. ModelNet40 contains 12,311 models across 40 classes, with 9,843 train and 2,468 test samples, while ModelNet10 contains 4,900 models across 10 classes, with 3,991 train and 909 test samples (Ohamouddou et al., 16 Jul 2025).
| Dataset / setting | Reported result | Notes |
|---|---|---|
| STPCTLS, best ablation 0 | 1 OA | 2, BA 3 |
| STPCTLS, default 4, with augmentation | 5 OA | 6, BA 7 |
| STPCTLS, default 8, without augmentation | 9 OA | 0, BA 1 |
| FOR-species20K, default 2 | 3 OA | BA 4, 5 |
| ModelNet40 | 6 OA | Standard 3D object recognition |
| ModelNet10 | 7 OA | Standard 3D object recognition |
On STPCTLS with augmentation, the default MS-DGCNN++ 8 reaches 9 OA, compared with 0, 1, and 2 for DGCNN at 3, respectively, and 4 and 5 for the two MS-DGCNN baselines listed in the comparison table. In the same table, PPT reaches 6, PointGPT-S reaches 7, and PointBERT reaches 8. The paper therefore characterizes MS-DGCNN++ as second on STPCTLS OA among the compared methods when the default 9 configuration is used, while also noting that the best ablated configuration 0 reaches 1 (Ohamouddou et al., 16 Jul 2025).
On FOR-species20K, MS-DGCNN++ 2 achieves 3 OA, compared with 4 for MS-DGCNN 5 and a best DGCNN score of 6 at 7. The paper summarizes this as approximately 8 absolute improvement over MS-DGCNN and about 9 over the best DGCNN. Convergence plots are reported to show faster and more stable convergence than DGCNN and MS-DGCNN.
On ModelNet40, the model improves over DGCNN (00) and over the authors’ own MS-DGCNN implementation (01), reaching 02, though it remains below large transformer-based models such as PointGST (03), ReCon++ (04), and PointGPT (05). On ModelNet10, MS-DGCNN++ reaches 06, above DGCNN (07) and the authors’ MS-DGCNN implementation (08), but below the “MS-DGCNN (paper)” entry of 09. The paper interprets this pattern as an efficiency–accuracy tradeoff rather than absolute dominance (Ohamouddou et al., 16 Jul 2025).
The parameter count of MS-DGCNN++ is approximately 10M, compared with approximately 11M for MS-DGCNN and 12M for DGCNN. The STPCTLS epoch time for MS-DGCNN++ 13 is reported as 14–15 seconds per epoch, versus 16–17 seconds for DGCNN(20). On FOR-species20K, epoch times are approximately 18 seconds for DGCNN(20), 19 seconds for MS-DGCNN 20, and 21 seconds for MS-DGCNN++ 22. The paper frames this as a modest runtime increase over MS-DGCNN for a substantial accuracy gain (Ohamouddou et al., 16 Jul 2025).
7. Ablation findings, generalization, and stated limitations
A central ablation evaluates 30 triplets 23 subject to 24. The best overall STPCTLS accuracy is obtained with 25, yielding 26 OA. Other high-performing settings include 27, 28, and 29, each at 30. The paper identifies 31 in 32 as optimal for the branch scale, and reports that moderate canopy neighborhoods such as 33–34 perform better than very large values such as 35, suggesting that overly global neighborhoods may dilute informative structure. The best 36 configuration has an epoch time of 37 seconds per epoch (Ohamouddou et al., 16 Jul 2025).
The model is also presented as generalizing beyond tree-specific data. The same architecture and the same three scale-specific feature constructions are applied to ModelNet10 and ModelNet40 without reported structural modification. The paper argues that, although the local/branch/canopy terminology is biological, the underlying decomposition transfers to generic 3D shape understanding: local scale captures small surface detail, intermediate scale captures mesostructure, and large scale approximates global form. A plausible implication is that the model’s primary contribution is a general hierarchical multi-scale representation mechanism whose initial motivation happened to be botanical geometry.
The paper also states several limitations. Performance depends on careful selection of 38, and choosing these values requires ablation. FOR-species20K remains challenging, especially for rare species, heavy occlusion, very sparse sampling, and species with extremely similar geometry. The listed future directions include adaptive or data-driven neighborhood-size selection, multimodal fusion with hyperspectral or RGB imagery, incorporation of more detailed biological priors such as explicit trunk axis estimation or leaf–wood separation, and extension to semantic or instance-level segmentation, tree health assessment, and growth monitoring (Ohamouddou et al., 16 Jul 2025).
The implementation is reported in PyTorch and PyTorch Geometric, with Open3D for preprocessing and scikit-learn for metrics, and the official code repository is provided as https://github.com/said-ohamouddou/MS-DGCNN2. The experimental hardware is listed as an NVIDIA RTX 4060 Ti with 16 GB VRAM, 32 GB RAM, an AMD Ryzen 7 5700X, and Ubuntu 22.04 (Ohamouddou et al., 16 Jul 2025).