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

How to generate the 3D Shape? #1

Open
duzhenjiang113 opened this issue Oct 17, 2021 · 14 comments
Open

How to generate the 3D Shape? #1

duzhenjiang113 opened this issue Oct 17, 2021 · 14 comments
Labels
enhancement New feature or request

Comments

@duzhenjiang113
Copy link

Thanks for releasing your code. And could you please tell me how to generate the 3D shape? I would be grateful!!! :-)

@kampta
Copy link
Owner

kampta commented Oct 17, 2021

We use this repo for pre-processing the PartNet data. I'll try to release the generation code soon.

@kampta kampta added the enhancement New feature or request label Oct 17, 2021
@duzhenjiang113
Copy link
Author

We use this repo for pre-processing the PartNet data. I'll try to release the generation code soon.

okay, thanks

@CRISZJ
Copy link

CRISZJ commented Nov 2, 2021

We use this repo for pre-processing the PartNet data. I'll try to release the generation code soon.

Hello, can we directly use your open-source code to process PartNet data, and then generate it as described in the paper?

@duzhenjiang113
Copy link
Author

I have another question, that is, during your training, did you not add any labels like PQ-NET?

@suikei-wang
Copy link

I am confusing how do you use the data from PQ-NET for 3D generation as the voxelized data does not have a bounding box like the layout elements. There're also hundreds of labels in PQ-NET's data. Another big problem is the alignment. In 2D layout generation, it'll be much more easier to align elements but in 3D, we need to consider the deformation issues. How did you do this?

@duzhenjiang113
Copy link
Author

I am confusing how do you use the data from PQ-NET for 3D generation as the voxelized data does not have a bounding box like the layout elements. There're also hundreds of labels in PQ-NET's data. Another big problem is the alignment. In 2D layout generation, it'll be much more easier to align elements but in 3D, we need to consider the deformation issues. How did you do this?

Hi, the data of the PQ-NET has been processed as alignment and it also provides the bounding box of each part. For me, my question is how to deal with label of each part, because each category of the shape has a lot of labels. In addition, how to restore the learned feature vector to shape is also a problem.

@suikei-wang
Copy link

suikei-wang commented Dec 2, 2021

I am confusing how do you use the data from PQ-NET for 3D generation as the voxelized data does not have a bounding box like the layout elements. There're also hundreds of labels in PQ-NET's data. Another big problem is the alignment. In 2D layout generation, it'll be much more easier to align elements but in 3D, we need to consider the deformation issues. How did you do this?

Hi, the data of the PQ-NET has been processed as alignment and it also provides the bounding box of each part. For me, my question is how to deal with label of each part, because each category of the shape has a lot of labels. In addition, how to restore the learned feature vector to shape is also a problem.

Thank you so much for your reply. You're right, there are A LOT of labels. I am stuck here and not sure how to deal with it appropriately. Did you come out with any solution? Thanks!

@duzhenjiang113
Copy link
Author

I am stuck here and not sure how to deal with it appropriately. Did you come out with any solution? Thanks!

I try to reduce the number of parts for each shape. And label the part. Such as a chair, I only split as back, seat, arm, and leg.

@suikei-wang
Copy link

suikei-wang commented Dec 2, 2021

I am stuck here and not sure how to deal with it appropriately. Did you come out with any solution? Thanks!

I try to reduce the number of parts for each shape. And label the part. Such as a chair, I only split as back, seat, arm, and leg.

Ah but not all chairs have an arm right? It may cause some issues when you generate some new chairs. It'll be great if the author can release the code of this part. According to the paper, they just mentioned this part in a small paragraph, so it may not be completed.

@duzhenjiang113
Copy link
Author

I am stuck here and not sure how to deal with it appropriately. Did you come out with any solution? Thanks!

I try to reduce the number of parts for each shape. And label the part. Such as a chair, I only split as back, seat, arm, and leg.

Ah but not all chairs have an arm right? It may cause some issues when you generate some new chairs. It'll be great if the author can release the code of this part. According to the paper, they just mentioned this part in a small paragraph, so it may not be completed.

yes, not all chairs have arms. So we can use the mask to do padding.

@suikei-wang
Copy link

I am stuck here and not sure how to deal with it appropriately. Did you come out with any solution? Thanks!

I try to reduce the number of parts for each shape. And label the part. Such as a chair, I only split as back, seat, arm, and leg.

Ah but not all chairs have an arm right? It may cause some issues when you generate some new chairs. It'll be great if the author can release the code of this part. According to the paper, they just mentioned this part in a small paragraph, so it may not be completed.

yes, not all chairs have arms. So we can use the mask to do padding.

So I end up removing those redundant and duplicate parts from the json file and getting the bounding box from another partnet dataset in .mat file. Hope it's helpful for you in your experiment. :)

@duzhenjiang113
Copy link
Author

I am stuck here and not sure how to deal with it appropriately. Did you come out with any solution? Thanks!

I try to reduce the number of parts for each shape. And label the part. Such as a chair, I only split as back, seat, arm, and leg.

Ah but not all chairs have an arm right? It may cause some issues when you generate some new chairs. It'll be great if the author can release the code of this part. According to the paper, they just mentioned this part in a small paragraph, so it may not be completed.

yes, not all chairs have arms. So we can use the mask to do padding.

So I end up removing those redundant and duplicate parts from the json file and getting the bounding box from another partnet dataset in .mat file. Hope it's helpful for you in your experiment. :)

Does this work well?

@suikei-wang
Copy link

I am stuck here and not sure how to deal with it appropriately. Did you come out with any solution? Thanks!

I try to reduce the number of parts for each shape. And label the part. Such as a chair, I only split as back, seat, arm, and leg.

Ah but not all chairs have an arm right? It may cause some issues when you generate some new chairs. It'll be great if the author can release the code of this part. According to the paper, they just mentioned this part in a small paragraph, so it may not be completed.

yes, not all chairs have arms. So we can use the mask to do padding.

So I end up removing those redundant and duplicate parts from the json file and getting the bounding box from another partnet dataset in .mat file. Hope it's helpful for you in your experiment. :)

Does this work well?

Nope :(( the loss cannot converge and we don't have enough time to retrain before the course deadline lol.

@suikei-wang
Copy link

I am stuck here and not sure how to deal with it appropriately. Did you come out with any solution? Thanks!

I try to reduce the number of parts for each shape. And label the part. Such as a chair, I only split as back, seat, arm, and leg.

Ah but not all chairs have an arm right? It may cause some issues when you generate some new chairs. It'll be great if the author can release the code of this part. According to the paper, they just mentioned this part in a small paragraph, so it may not be completed.

yes, not all chairs have arms. So we can use the mask to do padding.

So I end up removing those redundant and duplicate parts from the json file and getting the bounding box from another partnet dataset in .mat file. Hope it's helpful for you in your experiment. :)

Does this work well?

BTW tbh, I don't think this layout generation model has good generalization on other tasks. You can find in their paper, the results on the room layout are so bad (two ppl on the top of the fridge??). Their results on UI layout is good but not performing well on other applications. So it's reasonable it doesn't work on voxels.

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

No branches or pull requests

4 participants