Code Monkey home page Code Monkey logo

rsnet's People

Contributors

qianguih avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rsnet's Issues

Quesion about Blocks

Hi,
Thanks for sharing your codes.
I found that each room is splited into several blocks based on stride and block_size, and each block forms a batch which is segmented by the network independently, am I right?
If so, there will be a situation that one object (like a chair) is splited into different blocks, then the chair in a block will not be complete, so how could the network segment the incomplete chair well?

Thanks very much.

Some error occur when doing the forward process

slice_pool_layer.slice_pool_max_forward_cuda(input, slice_idx_mat, num_slice, num_batch, channels, num_points, out, pool_mask)
ctypes.ArgumentError: argument 1: <class 'TypeError'>: Don't know how to convert parameter 1

I changed the original code of "slice_pool_layer.py" from "from _ext import slice_pool_layer" to implementing ctypes module to import "_slice_pool_layer.so" because of the ImportModuleNotFoundError (cannot find the _ext). However, I encountered the problem above. I don't know how to address it. Could you please give me some advice? Thanks a lot!
(Actually, because I am unfamiliar with CUDA programming, I initially think that maybe it is the end of some functions in "slice_pool_layer.c" and "slice_pool_layer_cuda.c", which is "return 1", that causes the problem because I see "convert parameter 1". So I modify the source code to adapt to my understanding, which in fact may be wrong. LOL.)

Error of -- indoor3d_sem_seg_hdf5_data_Area_5_1.0m_0.5s_train --

INDOOR3D_DATA_DIR/Area_1_hallway_6.npy
(474, 4096, 9), (474, 4096)
INDOOR3D_DATA_DIR/Area_1_hallway_7.npy
(390, 4096, 9), (390, 4096)
Traceback (most recent call last):
File "gen_indoor3d_h5.py", line 125, in
insert_batch(data, label, i == len(data_label_files)-1)
File "gen_indoor3d_h5.py", line 90, in insert_batch
data_prep_util.save_h5(h5_filename, h5_batch_data, h5_batch_label, data_dtype, label_dtype)
File "/home/yunus/Downloads/RSNet-master/data/utils/data_prep_util.py", line 80, in save_h5
h5_fout = h5py.File(h5_filename)
File "/home/yunus/anaconda3/lib/python3.8/site-packages/h5py/_hl/files.py", line 424, in init
fid = make_fid(name, mode, userblock_size,
File "/home/yunus/anaconda3/lib/python3.8/site-packages/h5py/_hl/files.py", line 190, in make_fid
fid = h5f.open(name, flags, fapl=fapl)
File "h5py/_objects.pyx", line 54, in h5py._objects.with_phil.wrapper
File "h5py/_objects.pyx", line 55, in h5py._objects.with_phil.wrapper
File "h5py/h5f.pyx", line 96, in h5py.h5f.open
OSError: Unable to open file (unable to open file: name = './indoor3d_sem_seg_hdf5_data_Area_5_1.0m_0.5s_train/ply_data_all_0.h5', errno = 2, error message = 'No such file or directory', flags = 0, o_flags = 0)

RuntimeError: cuda runtime error (77) : an illegal memory access was encountered at /pytorch/torch/lib/THC/generic/THCTensorCopy.c:20

Hello!

I met some questions when I run the script. It seems like some issues about cuda, but I can't
fix it by lots of google methods. Like adding CUDA_LAUNCH_BLOCKING=1 before the command, or using smaller batchsize.

I wonder if anyone have run into this trouble. Thanks a lot!

python train.py 
loading raw data...
training set:  ((16733, 4096, 9), (16733, 4096))
testing set:  ((2239, 4096, 9), (2239, 4096))
THCudaCheck FAIL file=/pytorch/torch/lib/THC/generic/THCTensorCopy.c line=20 error=77 : an illegal memory access was encountered
Traceback (most recent call last):
  File "train.py", line 209, in <module>
    output = model(input_var, x_indices_var, y_indices_var, z_indices_var, hidden_list)
  File "/home/han/.conda/envs/py27_torch030/lib/python2.7/site-packages/torch/nn/modules/module.py", line 325, in __call__
    result = self.forward(*input, **kwargs)
  File "RSNet_py27/net.py", line 91, in forward
    x_pooled = self.pool_x( conv_3, x_slice_idx )  # num_batch, 64, numSlices, 1
  File "/home/han/.conda/envs/py27_torch030/lib/python2.7/site-packages/torch/nn/modules/module.py", line 325, in __call__
    result = self.forward(*input, **kwargs)
  File "RSNet_py27/layers/slice_pool_layer/slice_pool_layer.py", line 101, in forward
    return self.sp(input, slice_idx_mat, self.pool_type, slice_counts)
  File "RSNet_py27/layers/slice_pool_layer/slice_pool_layer.py", line 41, in forward
    out = out.cuda()
  File "/home/han/.conda/envs/py27_torch030/lib/python2.7/site-packages/torch/_utils.py", line 69, in _cuda
    return new_type(self.size()).copy_(self, async)
RuntimeError: cuda runtime error (77) : an illegal memory access was encountered at /pytorch/torch/lib/THC/generic/THCTensorCopy.c:20

some issues

Hi , Thanks for sharing the great work
I have a puzzle that in Diagram of RSNet ,what is the essence of the Input Feature Extraction module output? I mean, what does independent feature representations for each point mean ?
Thanks a lot

AttributeError: 'NoneType' object has no attribute 'data'

Hi @qianguih
Have you ever met this bug? Thanks.

srun -p PV100q -n 1 -w node09 python train.py
/export/home/hanxiaobing/Documents/PlaneNet_PlaneRCNN/DGCNN_PointNet2/SensatUrban/RSNet-code/RSNet_PlaneMask/load_data.py:35: H5pyDeprecationWarning: The default file mode will change to 'r' (read-only) in h5py 3.0. To suppress this warning, pass the mode you need to h5py.File(), or set the global default h5.get_config().default_file_mode, or set the environment variable H5PY_DEFAULT_READONLY=1. Available modes are: 'r', 'r+', 'w', 'w-'/'x', 'a'. See the docs for details.
f = h5py.File(h5_filename)
loading raw data...
training set: ((16733, 4096, 9), (16733, 4096))
testing set: ((2212, 4096, 9), (2212, 4096))
Traceback (most recent call last):
File "train.py", line 155, in
model = RSNet(pool_type, num_slice)
File "/export/home/hanxiaobing/Documents/PlaneNet_PlaneRCNN/DGCNN_PointNet2/SensatUrban/RSNet-code/RSNet_PlaneMask/net.py", line 105, in init
self._initialize_weights()
File "/export/home/hanxiaobing/Documents/PlaneNet_PlaneRCNN/DGCNN_PointNet2/SensatUrban/RSNet-code/RSNet_PlaneMask/net.py", line 249, in initialize_weights
m.bias.data.zero
()
AttributeError: 'NoneType' object has no attribute 'data'

AttributeError: 'module' object has no attribute 'slice_unpool_forward_cuda'

Hello @qianguih
How to solve this bug? Thanks.

Traceback (most recent call last):
File "train.py", line 209, in
output = model(input_var, x_indices_var, y_indices_var, z_indices_var, hidden_list)
File "/export/home/hanxiaobing/anaconda3/envs/RSNet27/lib/python2.7/site-packages/torch/nn/modules/module.py", line 477, in call
result = self.forward(*input, **kwargs)
File "/export/home/hanxiaobing/Documents/PlaneNet_PlaneRCNN/DGCNN_PointNet2/SensatUrban/RSNet-code/RSNet/net.py", line 130, in forward
x_rnn_6 = self.un_pool_x( x_rnn_6, x_slice_idx )
File "/export/home/hanxiaobing/anaconda3/envs/RSNet27/lib/python2.7/site-packages/torch/nn/modules/module.py", line 477, in call
result = self.forward(*input, **kwargs)
File "/export/home/hanxiaobing/Documents/PlaneNet_PlaneRCNN/DGCNN_PointNet2/SensatUrban/RSNet-code/RSNet/layers/slice_unpool_layer/slice_unpool_layer.py", line 53, in forward
return self.su(input, slice_idx_mat)
File "/export/home/hanxiaobing/Documents/PlaneNet_PlaneRCNN/DGCNN_PointNet2/SensatUrban/RSNet-code/RSNet/layers/slice_unpool_layer/slice_unpool_layer.py", line 25, in forward
slice_unpool_layer.slice_unpool_forward_cuda(input, slice_idx_mat, num_slice, num_batch, channels, num_points, out)
AttributeError: 'module' object has no attribute 'slice_unpool_forward_cuda'

Question about Scannet

Hi , Thanks for sharing such a work . In your code, there are not much details about how to deal with the Scannet dataset. Can you give me some advice? Here is my email : [email protected]. I am looking forward for your reply !

ValueError: Wrong number of columns at line 180389

When I process the S3DIS dataset by numpy.loadtxt, I got the error: ValueError: Wrong number of columns at line 180389,after debug, I found it's probably due to little problem in Stanford3dDataset_v1.2_Aligned_Version/Area_5/hallway_6/Annotations/ceiling_1.txt
Some content of ceiling_1.txt is presented below by the command 'nl ceiling_1.txt | grep -a -C 1 180389'
180388 22.359 6.835 3.050 152 152 162
180389 22.350 6.692 3.048 185187 182
180390 22.314 6.638 3.048 170 171 175
so we can add space between 185 and 187

Testing results don't match the original room data.

Hi, qian gui

Thanks for the share of this excellent work and it's really nice! I have some questions on the testing results on Area5.

Actually, the visualization results in folder ./results, i.e. Area_5_conferenceRoom_1_gt seems like a different room with the RAW_DATA/Area5/conferenceRoom_1. It's the same case for the other rooms.

Do you have idea about that?

Question about Scannet dataset

Hello @qianguih, thanks for sharing your code!
I have some question about your work on scannet dataset. Since your repo and paper doesn't include too much details about this dataset, I wonder how you preprocess the whole dataset? Did you split a whole scene into several small blocks when training, like what you did in S3DIS dataset, or randomly drop points in a big scene like pointnet++ (I know your work didn't use norm)?
I am looking forward to your replying. Thank you!

Compatibility with Pytorch 0.4

I am trying to run code using python 3.5 and I have pytorch 0.4.1 installed. I always end up getting error below:
Traceback (most recent call last):
File "train.py", line 205, in
hidden_list = repackage_hidden(hidden_list)
File "train.py", line 94, in repackage_hidden
return tuple(repackage_hidden(v) for v in h)
File "train.py", line 94, in
return tuple(repackage_hidden(v) for v in h)
File "train.py", line 94, in repackage_hidden
return tuple(repackage_hidden(v) for v in h)
File "train.py", line 94, in
return tuple(repackage_hidden(v) for v in h)
File "train.py", line 94, in repackage_hidden
return tuple(repackage_hidden(v) for v in h)
File "train.py", line 94, in
return tuple(repackage_hidden(v) for v in h)
File "train.py", line 94, in repackage_hidden
return tuple(repackage_hidden(v) for v in h)
File "train.py", line 94, in
return tuple(repackage_hidden(v) for v in h)
File "train.py", line 94, in repackage_hidden
return tuple(repackage_hidden(v) for v in h)
File "/home/usr/.local/lib/python3.5/site-packages/torch/tensor.py", line 381, in iter
raise TypeError('iteration over a 0-d tensor')
TypeError: iteration over a 0-d tensor

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.