VasileiosBouzas / MeshPolygonization

70 stars 17 forks source link

Code is not running complete #6

Closed sahar-github closed 3 years ago

sahar-github commented 3 years ago

after running the .exe file of polygonization, I see only the following below results and nothing further happneing Distance threshold: 2.7 Importance threshold (default: 1.0): 1

I introduced my own meshfile, as the input file for building.off. could you please let me know if you have any idea what kind of settings or changes I have to make in the code, to make it work? Thanks a lot for your help in advance

LiangliangNan commented 3 years ago

First, try a small (toy) example to test if it works. You cannot input a mesh file of a whole city. It is too slow and I am afraid the computation will not finish in a few days. Also the assumption made in the paper is that the method handles individual buildings. Then, please try to understand the meaning of the parameters (see our paper). Play a bit the parameters and see the differences.

sahar-github commented 3 years ago

I used only one individual building as an input. If I change the parameters e.g. distance threshold, I do not see any change in the resulting output of the code, I Always see 2.7 However, It changes for the importance threshold

Do you think changing the parameters will help to continue running the code? is that something you expereinced before yourself?

I am studying your paper just now, its very interesting work

sahar-github commented 3 years ago

I have also another question, what are the range that the value of these thresholds can change? how much big or small values I can decide for them? I tested currently the values you were suggested in the readme file.

LiangliangNan commented 3 years ago

@VasileiosBouzas Can you please explain a bit the parameters and give a brief guideline on how to tune the parameters? I suggest writing this in the main “ReadMe” file.

sahar-github commented 3 years ago

That would be very nice, thank you. Because whatever value I select for the distance threshold, I can not see any change, it Always remains 2.7 Is there any specific reason for that? I tried different values from 0-5 with decimal changes each time, but still no change.

and another thing is that, it seems the code is running for me only until line 53, where the structuregraph input value is given. afterwards it just stops

VasileiosBouzas commented 3 years ago

Good day, @sahar-github !

First, a question (if you do not mind...): You mentioned you have already run the code many times but in the your last comment you stated that the code is running only until line 53! Bit confused, could you clarify on that? If the code crashes, could you tell us about your configuration (in particular, the CGAL version you are using)?

No matter the distance & importance thresholds, the program should always execute up to the end. My guess is that your configuration is not perhaps compatible with our code. So, let's check it out and see!

About the distance & importance thresholds: The distance & importance threshold are related to our segmentation technique which dissolves the input mesh into planar segments.

The distance threshold defines the maximum distance of a mesh vertex from a planar region. If this threshold is satisfied, then the vertex is considered as part of the given planar region.

The importance threshold defines which planar regions should be considered for further processing after the segmentation. In other segmentation techniques, it is a function of the number of faces out of which a planar region consists. Here, we prefer to define it as the proportion of the area for a given planar region to the entire mesh area.

Unfortunately, apart from the distance threshold (the program already provides a suggested value), there are not really any recommendations on the importance value. Of course, it should be in the range (0, 100) - in other words, from 0% of the total mesh area up to 100%. To get an idea on how you can play around with these parameters and how the algorithm actually works, I urge you to first run some of the examples in our repo where each one is provided with some tested parameters.

For more theoretical details, you can always refer to the original paper or the thesis on which the paper is based. Of course, for more questions, you can always reach to us. We can always improve the "ReadMe" file with your suggestions.

Thank you for your feedback and keep safe!

Kind regards, Vasilis

LiangliangNan commented 3 years ago

@sahar-github In addition to Vasileios's comment, I also assumed you are an expert with C++ programming. If not, please make sure you build and run the code in "Release" mode (The "Debug" mode is toooooo slow)

LiangliangNan commented 3 years ago

Good day, @sahar-github !

First, a question (if you do not mind...): You mentioned you have already run the code many times but in the your last comment you stated that the code is running only until line 53! Bit confused, could you clarify on that? If the code crashes, could you tell us about your configuration (in particular, the CGAL version you are using)?

No matter the distance & importance thresholds, the program should always execute up to the end. My guess is that your configuration is not perhaps compatible with our code. So, let's check it out and see!

About the distance & importance thresholds: The distance & importance threshold are related to our segmentation technique which dissolves the input mesh into planar segments.

The distance threshold defines the maximum distance of a mesh vertex from a planar region. If this threshold is satisfied, then the vertex is considered as part of the given planar region.

The importance threshold defines which planar regions should be considered for further processing after the segmentation. In other segmentation techniques, it is a function of the number of faces out of which a planar region consists. Here, we prefer to define it as the proportion of the area for a given planar region to the entire mesh area.

Unfortunately, apart from the distance threshold (the program already provides a suggested value), there are not really any recommendations on the importance value. Of course, it should be in the range (0, 100) - in other words, from 0% of the total mesh area up to 100%. To get an idea on how you can play around with these parameters and how the algorithm actually works, I urge you to first run some of the examples in our repo where each one is provided with some tested parameters.

For more theoretical details, you can always refer to the original paper or the thesis on which the paper is based. Of course, for more questions, you can always reach to us. We can always improve the "ReadMe" file with your suggestions.

Thank you for your feedback and keep safe!

Kind regards, Vasilis

I've added an 'About the parameters' section at the end of the main 'ReadMe' file. Please correct me if I made mistakes.

VasileiosBouzas commented 3 years ago

Seems great to me!

Kind regards, Vasilis

sahar-github commented 3 years ago

Dear Vasilis, Thanks for the detailed response, and sharing your interesting research. Below is answer to your specific questions: 1- yes, I tried to run the code with different settings on my data to see if it works. 2- If i try the code on your data in the repo e.g. house-a, it works very well until the end and it creates new results which I can easily open it in cloud compare 3- CGAL version that I am using is exactly the one suggested in your work, i.e. CGAL v4.13 4- I attached a screenshot of my pointcloud data for an individual building (I created a mesh of this data to introduce it to your model) 5- if I use my data as an input, then the code will run only until line 53, or at least it seems so, I attached what I see as a result in my windows powershell, and finally I have no output also 5- thanks for the explanations about the parameters, very useful! 6- I already studied your research article which was very interesting 7- Could you please also share a link for the thesis? or let me know where can i find it? I would like to study the thesis also, for sure. 8- Okay I see, from your explanation its clear that this is normal that the distance threshold is not changing, its a suggestion by the code,so then it does not matter if I change it or not

Thank you very much for your kind and detailed response, I wish you also stay safe and healthy Kind Regards, Sahar

sahar-github commented 3 years ago

seems that attachments are missing, I'll send the files via email seperately

VasileiosBouzas commented 3 years ago

Hey Sahar,

Kind regards, Vasilis

sahar-github commented 3 years ago

Dear Nan, Thanks for your commnet, Yes, I definitely ran the code in the release mode, thank you for the suggestion Best Sahar

On Wed, Mar 3, 2021 at 12:19 PM Liangliang Nan notifications@github.com wrote:

@sahar-github https://github.com/sahar-github In addition to Vasileios's comment, I also assumed you are an expert with C++ programming. If not, please make sure you build and run the code in "Release" mode (The "Debug" mode is toooooo slow)

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/VasileiosBouzas/MeshPolygonization/issues/6#issuecomment-789641779, or unsubscribe https://github.com/notifications/unsubscribe-auth/ASRG2E4B6OOKHXJY2C337UTTBYLK7ANCNFSM4YPEKBSQ .

sahar-github commented 3 years ago

I sent also my data, via email, hope you have received them

sahar-github commented 3 years ago

Another question: Is that matter/ makes any difference if my input data (the mesh model) was produced from a pointcloud data from Lidar, instead of MVS? If yes, can i make the code compatible also for such kind of mesh model? or it works only for MVS based mesh?

VasileiosBouzas commented 3 years ago

Not sure, but I suppose not. I haven't personally received any email yet so we can check the model. What about you, @LiangliangNan ?

LiangliangNan commented 3 years ago

Me the same. Our method assumes the model is closed (not necessarily watertight) and all necessary planes can be extracted from the model.

On Wed, 3 Mar 2021 at 15:24 Vasileios Bouzas notifications@github.com wrote:

Not sure, but I suppose not. I haven't personally received any email yet so we can check the model. What about you, @LiangliangNan https://github.com/LiangliangNan ?

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub https://github.com/VasileiosBouzas/MeshPolygonization/issues/6#issuecomment-789750227, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADWOVCDIBTI2LDX322WPBALTBZBBTANCNFSM4YPEKBSQ .

-- Liangliang

sahar-github commented 3 years ago

It seems my email did not delivered because the attachement was too large, will try to share a link with my data

sahar-github commented 3 years ago

I will try another time, attaching the data, hope this will work

On Wed, Mar 3, 2021 at 3:34 PM Liangliang Nan notifications@github.com wrote:

Me the same. Our method assumes the model is closed (not necessarily watertight) and all necessary planes can be extracted from the model.

On Wed, 3 Mar 2021 at 15:24 Vasileios Bouzas notifications@github.com wrote:

Not sure, but I suppose not. I haven't personally received any email yet so we can check the model. What about you, @LiangliangNan https://github.com/LiangliangNan ?

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub < https://github.com/VasileiosBouzas/MeshPolygonization/issues/6#issuecomment-789750227 , or unsubscribe < https://github.com/notifications/unsubscribe-auth/ADWOVCDIBTI2LDX322WPBALTBZBBTANCNFSM4YPEKBSQ

.

-- Liangliang

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/VasileiosBouzas/MeshPolygonization/issues/6#issuecomment-789757136, or unsubscribe https://github.com/notifications/unsubscribe-auth/ASRG2EYNR5GSPT6UTHHPTPTTBZCHBANCNFSM4YPEKBSQ .

sahar-github commented 3 years ago

The other part of the attachments, that I talked about are here including a picture of my point cloud data that I made a mesh out of it and also the result I get after running the code on my mesh model.

On Wed, Mar 3, 2021 at 3:34 PM Liangliang Nan notifications@github.com wrote:

Me the same. Our method assumes the model is closed (not necessarily watertight) and all necessary planes can be extracted from the model.

On Wed, 3 Mar 2021 at 15:24 Vasileios Bouzas notifications@github.com wrote:

Not sure, but I suppose not. I haven't personally received any email yet so we can check the model. What about you, @LiangliangNan https://github.com/LiangliangNan ?

— You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub < https://github.com/VasileiosBouzas/MeshPolygonization/issues/6#issuecomment-789750227 , or unsubscribe < https://github.com/notifications/unsubscribe-auth/ADWOVCDIBTI2LDX322WPBALTBZBBTANCNFSM4YPEKBSQ

.

-- Liangliang

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/VasileiosBouzas/MeshPolygonization/issues/6#issuecomment-789757136, or unsubscribe https://github.com/notifications/unsubscribe-auth/ASRG2EYNR5GSPT6UTHHPTPTTBZCHBANCNFSM4YPEKBSQ .

sahar-github commented 3 years ago

according to the assumption you mentioned about the model, i.e. the method assumes the mesh is closed (not necessarily watertight), have you done any preprocessing step on your meshdata, to make it work better with the method? Thank you so much!

LiangliangNan commented 3 years ago

The method doesn't rely on any processing. It only decomposes the model into a set of planar regions, then tries to assemble planar polygons (computed by intersecting the supporting planes of the planar regions) to approximate the geometry of the original model. That is it.

sahar-github commented 3 years ago

Okay, thanks for the information alot. I already sent my data another time via email, have you received it?

VasileiosBouzas commented 3 years ago

Hey @sahar-github ,

I haven't received anything. I suggest you to use either Dropbox, WeTransfer or Google Drive and text us the link if the data is too big

sahar-github commented 3 years ago

Thats weird, sure, Here is the link for the data and thank you Download link https://we.tl/t-3EXJUmfV6B 4 items

PC_subset3.las 7.18 MB building.7z 3.18 MB pntcloud.PNG 211 KB running on my data.PNG 8.72 KB

Message Heey, here is the link for my data

On Wed, Mar 3, 2021 at 7:30 PM Vasileios Bouzas notifications@github.com wrote:

Hey @sahar-github https://github.com/sahar-github ,

I haven't received anything. I suggest you to use either Dropbox or WeTransfer and text us the link if the data is too big

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/VasileiosBouzas/MeshPolygonization/issues/6#issuecomment-789959924, or unsubscribe https://github.com/notifications/unsubscribe-auth/ASRG2EYBYKS7PVHYJFXRV2TTBZ55NANCNFSM4YPEKBSQ .

LiangliangNan commented 3 years ago

Your model demonstrates completely different characteristics (compared to our model or any model on popular platforms such as Google Earth). It is actually not a surface model, it has too many thin and long interior structures.

The typical models our method can handle are from standard photogrammetry and 3D computer vision pipelines (i.e., MVS followed by Poisson surface reconstruction). Many commercial and open-source software packages support that (e.g., COLMAP).

sahar-github commented 3 years ago

thanks for your feedback, I have a Poisson reconstruction of my data also, then I will try that one as an input to see if it works on my data thank you

sahar-github commented 3 years ago

It seems using the poisson output will not help me, however, I think as you previously mentioned, the problem might be that the mesh model is not closed yet! here is the link for my poisson reconstructed model Download link https://we.tl/t-eeXSwDQ1Mi

i will try to close the holes in my model before another test, but if there is anything else I should consider would be really thankful if you mention

sahar-github commented 3 years ago

another question, are you using any specific software for closing meshes? are you filling the holes and such mesh editing steps manually for each of your individual buildings? thanks again in advance for the information

sahar-github commented 3 years ago

I am so happy, the code is running after cleaning and remeshing the data using screened poisson in meshlab! I have to wait to see what will be the results

LiangliangNan commented 3 years ago

I think I can close this issue. Please reopen it if necessary.