Skip to main content

Hi.

I want to compare two 3D-models (Buildings) to see differences, visually and statistically.

Any idea how to do it?

The buildings is in .dwg at the moment but i guess i can transform them to any 3d format first if another format would be better for this project.

The background is that i made 3D-buildings from lidar-data and want to compare the resualt of the model output to reference data (terrester lod2 buildings in .dwg).

regards,

Anton

You're basically entering the realm of computer vision here, so I think this would be quite hard (but not impossible) to achieve with FME. I also have some questions for you:

 

  1. What do you mean exactly by a "statistical" comparison in this case?
  2. Are the buildings you want to compare in both datasets tagged (e.g. ID, name) somehow, so you know that you're looking at the same building?

First i have Lod2 data with high quality measurement uncertainty i got from my municipality (Figure 1). This would be my reference data. It.s made from terrestrial laser scanning i guess and i got it in dwg.format.

Figure 1.

Then I made two models of buildings in ArcGIS Pro using "extract roof form" based on two different sets of LiDAR-data with different quality. I tested the models with root mean square error based on a train model. I exported just the buildings with least RMSE (Figure 2).

Figure 2.

I didn't know another way to export the 3D-models from ArcGIS Pro then to import them into Esri CityEngine and then export to fbx-format. Se Figure 3, maybe it would be better to use another format from the list and also convert my reference data?

Figure 3.

I made a polygon based on the choosen buildings by RMSE (Figure 2). I used the polygon to clip the reference data so exactly the same buildings could be compared somehow.

I will continue in the next post showing more pictures.

Answer on your questions.

Yes it's seems to be hard I realized unfortunately.

1. Statistically I men that if i could get numbers the show how much of the model made in ArcGIS Pro differ from the one i got from the municipality made by high quality measurement. Just in percentage or so.

2. The both models should be geotaged with swedish coordinate system sweref 99 TM (EPSG:3006)

But i don't know if the dwg. format could hold such information. Every time i import the files it says "unknown coordinate system"

And because i did so many exports and converts the model made from LiDAR-Data is solid.

I hope you understand what I'm trying to say.


Maybe possible in another software?

If I understand you well, their is a spatial relation (location) that allows the objects to be mapped. If they are volumes maybe you can first replace them with a point and give that point an ID with the Counter. That ID can be added to the two different volumes with the SpatialRelator. Next you can compare the information by the ID. To start with I would suggest to compare the 3D bounding boxes which will already show differences in height per feature between both models.

The rejected port in your last answer only shows the features that are not clipped, since they are rejected. I am not sure how well the clipper clips in 3d, but if it does correctly (by ID), you can compare the values of the parts that are outside and inside. Dividing the summing of what falls outside with what falls inside will than give you a percentage of difference.

Hope this helps


If I understand you well, their is a spatial relation (location) that allows the objects to be mapped. If they are volumes maybe you can first replace them with a point and give that point an ID with the Counter. That ID can be added to the two different volumes with the SpatialRelator. Next you can compare the information by the ID. To start with I would suggest to compare the 3D bounding boxes which will already show differences in height per feature between both models.

The rejected port in your last answer only shows the features that are not clipped, since they are rejected. I am not sure how well the clipper clips in 3d, but if it does correctly (by ID), you can compare the values of the parts that are outside and inside. Dividing the summing of what falls outside with what falls inside will than give you a percentage of difference.

Hope this helps

Could you please describe the method a little bit more?

 

 

Thank you.

Reply