-
Notifications
You must be signed in to change notification settings - Fork 445
Description
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.
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.
