drprojects / superpoint_transformer

Official PyTorch implementation of Superpoint Transformer introduced in [ICCV'23] "Efficient 3D Semantic Segmentation with Superpoint Transformer" and SuperCluster introduced in [3DV'24 Oral] "Scalable 3D Panoptic Segmentation As Superpoint Graph Clustering"
MIT License
601 stars 75 forks source link

minimalistic_horizontal_edge_features #137

Closed MenglinQiu closed 3 months ago

MenglinQiu commented 3 months ago

Hi, bro. Is there something wrong with the _minimalistic_horizontal_edge_features function in the src/transforms/graph.py?

    base = base_vectors_3d(se_mean_off)[se_id]
    u = (offset * base[:, 0]).sum(dim=1).view(-1, 1)
    v = (offset * base[:, 0]).sum(dim=1).view(-1, 1)
    w = (offset * base[:, 0]).sum(dim=1).view(-1, 1)
    se_std_off = scatter_std(torch.cat((u, v, w), dim=1), se_id, dim=0)

The results of u, v, and w will be exactly equal.

drprojects commented 3 months ago

Ooh nice catch ! You are perfectly right, there is indeed something fishy there, I just fixed it in the latest commit. This error was computing incorrect 'std_off' egde features. This might have a small positive impact on model performance but I do not expect major changes.

Thanks for finding this error and thanks for the support you have been providing in issue #134 😉