twak / chordatlas

data driven urban procedural modeling

Home Page:http://www.twak.co.uk/2018/09/frankengan-guided-detail-synthesis-for.html

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Problems with importing obj file and converting to skeleton format

YininKorea opened this issue · comments

commented

Thanks for your wonderful work.

Now, I am using chordatlas to do some urban scene texturization projects and have some issues when following this pipeline. Firstly, I can not see the imported obj, should I change the world coordinate to make it visible? If so, how?

Secondly, after importing the obj (see the below figure, take the cube as the example), I can not see the "convert to skeleton" button. How can I run the ObjSkelGen to get the facade and window labels (like you showed in the video)?
Screenshot from 2023-02-16 20-32-19
Looking forward to your reply!!!

Thanks for the bug. I haven't touched this codebase in a while, so I'm afraid it will be a while before I get a chance to look into this.

I think this old video shows something similar, if you import the GIS footprints first, any meshes should appear somewhere within them:
https://www.youtube.com/watch?v=OP8PbY9XtFU

commented

Sorry for the late reply.

Your video helped a lot. However, I still can not generate the skeletons, i.e., roof and facade. I can not even see the "convert to a skeleton" button after importing the obj file (as shown in the below figure). Could you help me with it?

BTW, except chordatlas, could you recommend some hacky code that takes an obj file as input and generate the roof and facade semantic labels?
image

Sorry, can you create a video recreating your problem. This looks like the Glasgow data? Can you try the workflow as shown in the video?

I'm not certain the code is setup to work with arbitrary meshes without corresponding footprints (your white cube meshes are a long way from the GIS footprints?).

commented

Sorry for the late reply.

I am really grateful for your help and glad to see that you are still willing to maintain this project even after years.

I made two videos to recreate the problems:

  1. Invisible imported obj file: In video 1, we can not find the imported building file (our data) in the Glasgow map.

  2. Unoperable obj: In video 2, we added a "house" obj in the Glasgow project and then exported it. We tried to re-import this "house" and wanted to further process it, e.g., edit the obj and re-texturize it, but it failed. In the left toolbar, we can not find the "convert to a skeleton" button.

Besides, I also followed the pipeline as you suggested to align the mesh with the footprint. However, no matter the group data (mini mesh) or the single object, I can not see the "align tool" button (which should appear on the left side).

I also referred to the recommended undergrad project (by leekkww) and reproduced it (with the provided Glasgow map as the footprint), but failed in the importing step (see the below figure).
image

Lastly, may I get your personal contact to communicate more effectively (my mail: yinofcqudpt 'at' gmail.com)?

Best regards

Hi! Great to hear from people using the project.

  1. This is strange! What are the coordinates in the OBJ file (if you look at the file in a text editor, you can see the coordinates). Sometimes these are many kilometers from the origin in GIS systems.

  2. No, sorry once you re-import an OBJ it is only a mesh and no longer a skeleton. I don't think we have the functionality to save and restore skeletons at this time.

commented

Sorry for the late reply.

I really appreciate your patient guidance. Currently, I have solved the invisible imported mesh problem by moving mesh to the origin in Blender. Also, we successfully addressed the skeleton generation problem. Thanks again for your great work!!

However, there are two issues when converting the mesh to the skeleton. Please see the below example (from "original mesh -> converted skeleton -> rendered results"). we see that 1) some building parts can not be recognized correctly. 2) some faces are not seen as valid and, therefore, can not obtain the semantic label (see the blank part in the skeleton).
image

In this skeleton generation step, I receive an error message as follows.
image

Is this error caused by the structure characteristic of our data? If so, could you recommend some mesh-simplification solutions to address it?