Skip to content

Question regarding sparsity convolution #83

@imransai

Description

@imransai

Hi Chris,
Sorry for bugging you again! So I was planning to implement sparsity convolution from the paper: Sparse 3D convolutional neural network (link: https://arxiv.org/pdf/1505.02890.pdf ) using ME engine.

image

What the top image shows is that the active ouput coordinates will simply expand/dilate based on the kernel size/receptive field (2 x 2 in this case) applied the input active site. So the output coordinate will turn on if the receptive field of that coordinate covers any of the input active site. For my application, I would need to slowly densify the active sites (Sparse to Dense application) from sparse active sites as we go deep in the network.

From my understanding, the default sparse convolution in ME engine performs a different variant of sparsity convolution, atleast not from the diagram you put in the link https://stanfordvl.github.io/MinkowskiEngine/convolution_on_sparse.html (please correct me if I am wrong).

I was trying to use MinowskiConvolutionTranspose (with stride 1, so that it has same size as input) which seems to have generate_coordinates feature available that claims to generate output coordinates based on the 'outer product' of kernel shape and input coordinates, but it is throwing me some error like COORDS_KEY_DIFFERENT_ERROR.

The paper (link provided above) already seems to have an implementation available. But I would love to use ME engine since it offers a variety of features, and also highly efficient.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions