Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Question about Local refinement unit #7

Open
Bear-kai opened this issue Aug 19, 2021 · 2 comments
Open

Question about Local refinement unit #7

Bear-kai opened this issue Aug 19, 2021 · 2 comments

Comments

@Bear-kai
Copy link

Bear-kai commented Aug 19, 2021

The paper says
" ... to account for the relative importance among the K neighbors, we further regress a spatial weight W ... Then, we modify F_L via a convolution with W, followed by a summation along the K-dimension to obtain the weighted rN × C feature map."

I have not run this repo yet, just looking through the local refinement code to understand what the above statement means.

In the implement, the convolution is actually the tf.matmul operation between F_L and W, and the summation is replaced by the conv2d and squeeze operations. My questions are:

  1. the conv2d + squeeze is not the same as summation (should be a weighted version of the latter);
  2. F_L is of shape [B,N,C,K] after matmul, then it is sent to conv2d without reshaping into [B,N,K,C] first. With the kernel_size=[1, get_shape()[2]]=[1,C], the resulted shape should be [B,N,1,K] rather than [B,N,1,C].
@cnjanus
Copy link

cnjanus commented Dec 4, 2021

The author feeds grouped_feat into conv2d, since the parameter out_put_channels is mpl[-1], the shape of result is [B, N, 1, C] maybe right.

@anshen666
Copy link

The paper says " ... to account for the relative importance among the K neighbors, we further regress a spatial weight W ... Then, we modify F_L via a convolution with W, followed by a summation along the K-dimension to obtain the weighted rN × C feature map."

I have not run this repo yet, just looking through the local refinement code to understand what the above statement means.

In the implement, the convolution is actually the tf.matmul operation between F_L and W, and the summation is replaced by the conv2d and squeeze operations. My questions are:

  1. the conv2d + squeeze is not the same as summation (should be a weighted version of the latter);
  2. F_L is of shape [B,N,C,K] after matmul, then it is sent to conv2d without reshaping into [B,N,K,C] first. With the kernel_size=[1, get_shape()[2]]=[1,C], the resulted shape should be [B,N,1,K] rather than [B,N,1,C].

请问方便留个联系方式吗?这个项目一直没跑通,请问一定要在ubuntu环境下才可以跑通吗?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants