Code Monkey home page Code Monkey logo

Comments (11)

lzhnb avatar lzhnb commented on September 13, 2024 2

Hi, thank you very much for your attention to our work.
I also foresee that someone will ask S3DIS related questions, so I hope to give a unified reply to this question here.

The code of S3DIS is too messy and I do not have enough time to organize it.

I will tell you some details about the S3DIS.

  1. The dataset and preprocess API can refer to gorilla3d's preprocess and gorilla3d's datasets. The voxelization parameters follow ScanNet's, you can see it in the default parameters in S3DISInstDev
  2. The superpoints of S3DIS are generated by the superpoint-graph, you just need to download the pretrained model and follow their S3DIS.md, and you can get the superpoints of S3DIS.
  3. In the training network setting, the S3DIS's setting is strange, it treat the cell/floor/wall as instances. And we found that most scenes just have one cell and one floor, so we will group all cell/floor points as one instance, while this operation will damage the performance slightly. And for the walls, we treat them as normal object instances.(We consider that each scene may have several walls)

I feel sorry for this. And I hope these can help you.

from sstnet.

Taochen12138 avatar Taochen12138 commented on September 13, 2024

I do appreciate for your quick reply.
Now, I have already finished the second step above. The superpoints are generated.
Since the scannetv2 is too large, I still downloading it and I try to apply s3dis directly to the network.
Here is a special question. From 146 line to 150 line in scannetv2.py, the superpoints and xyz uses the same valid_idx array. So I assume that superpoints and xyz has the same shape. But the superpoints I generate seems have a different shape. If it means I got some mistake or misunderstanding?

Here is the code:

xyz_middle = xyz_middle[valid_idxs]
xyz = xyz[valid_idxs]
rgb = rgb[valid_idxs]
semantic_label = semantic_label[valid_idxs]
superpoint = np.unique(superpoint[valid_idxs], return_inverse=True)[1]

from sstnet.

lzhnb avatar lzhnb commented on September 13, 2024

You are right. The 0-dim of superpoint ids should be equal to xyz's.

And superpoint generation in superpoint_graph will vocalize the point cloud S3DIS first, so it will downsample the number.

I guess that the superpoint_graph processing may return a point-to-voxel map, which can help you realize this.(assign the superpoint id for each point).
You can read the code in superpoint_graph partition.

I'm sorry that I forget some details about it.

from sstnet.

Taochen12138 avatar Taochen12138 commented on September 13, 2024

Thank you.
I think I get what I need, like the image shows.
image

from sstnet.

yangxin6 avatar yangxin6 commented on September 13, 2024

Thank you. I think I get what I need, like the image shows. image
I’m also dealing with a dataset that is similar to S3DIS recently. Can you share your code on S3DIS datasets?

from sstnet.

SijanNeupane49 avatar SijanNeupane49 commented on September 13, 2024

Hi, Could you please share your code on S3DIS datasets? I would be grateful if you could do that for me I am in dire need of the code for S3DIS dataset. Please. Thank you in advance.

from sstnet.

lzhnb avatar lzhnb commented on September 13, 2024

Hi, Could you please share your code on S3DIS datasets? I would be grateful if you could do that for me I am in dire need of the code for S3DIS dataset. Please. Thank you in advance.

The code for S3DIS dataset has been released in gorilla3d.

from sstnet.

SijanNeupane49 avatar SijanNeupane49 commented on September 13, 2024

@lzhnb Thank you for your quick reply. However,I have got some error and raised another issue . It would be really helpful if you could help me with that issue.

from sstnet.

SijanNeupane49 avatar SijanNeupane49 commented on September 13, 2024

I do appreciate for your quick reply. Now, I have already finished the second step above. The superpoints are generated. Since the scannetv2 is too large, I still downloading it and I try to apply s3dis directly to the network. Here is a special question. From 146 line to 150 line in scannetv2.py, the superpoints and xyz uses the same valid_idx array. So I assume that superpoints and xyz has the same shape. But the superpoints I generate seems have a different shape. If it means I got some mistake or misunderstanding?

Here is the code:

xyz_middle = xyz_middle[valid_idxs] xyz = xyz[valid_idxs] rgb = rgb[valid_idxs] semantic_label = semantic_label[valid_idxs] superpoint = np.unique(superpoint[valid_idxs], return_inverse=True)[1]

@Taochen12138 How could you solve the second step? How did you generate superpoints? Please help me. Thank you in advance.

from sstnet.

SijanNeupane49 avatar SijanNeupane49 commented on September 13, 2024

@lzhnb

I do appreciate for your quick reply. Now, I have already finished the second step above. The superpoints are generated. Since the scannetv2 is too large, I still downloading it and I try to apply s3dis directly to the network. Here is a special question. From 146 line to 150 line in scannetv2.py, the superpoints and xyz uses the same valid_idx array. So I assume that superpoints and xyz has the same shape. But the superpoints I generate seems have a different shape. If it means I got some mistake or misunderstanding?

Here is the code:

xyz_middle = xyz_middle[valid_idxs] xyz = xyz[valid_idxs] rgb = rgb[valid_idxs] semantic_label = semantic_label[valid_idxs] superpoint = np.unique(superpoint[valid_idxs], return_inverse=True)[1]

Thank you. I think I get what I need, like the image shows. image

Hi, how did you solve the issue as I am also getting dimension mismatch error, where it says my dimension of superpoint graph is not the same as the dimension of semantic label? It would be immense help if you could give me some suggestions. Thank you in advance.

from sstnet.

Related Issues (14)

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.