mit-han-lab / torchsparse

[MICRO'23, MLSys'22] TorchSparse: Efficient Training and Inference Framework for Sparse Convolution on GPUs.
https://torchsparse.mit.edu
MIT License
1.19k stars 139 forks source link

Stride of Conv3d has no effect in z-direction? #227

Closed Minzhao1995 closed 1 year ago

Minzhao1995 commented 1 year ago

Hi there,

I'm currently attempting to use Conv3d to downsample voxels. However, I noticed that the stride parameter only seems to have effect in the x and y directions, and not in the z direction. Is this normal behavior for Conv3d, or is there something else I need to do to make it work in the z direction?

Thanks!

zhijian-liu commented 1 year ago

Thanks for reporting this issue! This is not the expected behavior. Could you please share a short code snippet to reproduce the issue you mentioned? Thanks!

Minzhao1995 commented 1 year ago

Thanks for reporting this issue! This is not the expected behavior. Could you please share a short code snippet to reproduce the issue you mentioned? Thanks!

Thanks for quickly reply. I found out that I mixed up the order of the xyz coordinates and batch index.

However, I am confused because I noticed some discrepancies between the latest code (commit 897096a) and the documentation (https://torchsparse-docs.github.io/getting_started/basics.html). According to the documentation, the batch index should be the first dimension, but in the code, the batch index appears to be in the last dimension, similar to version < 2.0.0. Could you please clarify this for me?

Thanks!

ys-2020 commented 1 year ago

Hi @Minzhao1995. Your understanding is correct. The batch index should be the first dimension in coordinates since v2.1.0. For example.py in commit 897096a, I think we have already moved batch index to the first dimension.

Minzhao1995 commented 1 year ago

Hi @Minzhao1995. Your understanding is correct. The batch index should be the first dimension in coordinates since v2.1.0. For example.py in commit 897096a, I think we have already moved batch index to the first dimension.

Hi, I am a little confused. The sparse_collate() function in collate.py seems to concat batch index to the last dimension.

ys-2020 commented 1 year ago

I see. That is not the code for v2.1.0. The source code of TorchSparse 2.1.0 is currently undergoing internal quality checks. We have only release the wheels at this stage. Please stay tuned if you want to read the source code. Thanks :)

Minzhao1995 commented 1 year ago

I see. That is not the code for v2.1.0. The source code of TorchSparse 2.1.0 is currently undergoing internal quality checks. We have only release the wheels at this stage. Please stay tuned if you want to read the source code. Thanks :)

OK, I see. Thanks again and looking forward to the release.