tudelft3d / City3D

Large-scale LoD2 Building Reconstruction from Airborne LiDAR Point Clouds
https://github.com/tudelft3d/City3D
GNU General Public License v3.0
223 stars 36 forks source link

question about footprint #23

Closed yoohangLiu closed 1 year ago

yoohangLiu commented 1 year ago

In your paper, I didn't understand what the specific contribution of generating corresponding footprints is to the reconstruction. Can you describe it to me? Here's my confusion : In the description of your paper, I feel that the reconstruction effect can be achieved without generating footprints.

yidahuang commented 1 year ago

While our final goal is to achieve city-scale urban building reconstruction, we typically begin with the raw input in the form of a scan of the entire city. To accomplish this, we use building footprints to effectively segment individual instances from the input data. Then, we can reconstruct the buildings one by one. Moreover, the contour of these footprints serves as a reliable boundary for the buildings.

yoohangLiu commented 1 year ago

"the contour of these footprints serves as a reliable boundary for the buildings", do you mean that data like open street map? In your algorithm process, if the input provides a footprint map, use the footprint map directly; if the input does not provide a footprint map, use the roof projection and treat its boundary as a wall. input footprint data is used for building segmentation. If it is a chunk of building data input and does not provide footprints, it also uses the roof projection as the basis for segmentation?

yidahuang commented 1 year ago

You can imagine that the footprint represents the exterior walls of the building, similar to a 2D street map. If you already have the building instance data, there is no need to perform building segmentation. However, you still need to use the roof projection to construct the exterior walls of the building.

yoohangLiu commented 1 year ago

Thanks for your reply. Do you mean that the roof projection equals to footprint and it also equals to the polyline extraction of your heightmap? And I didn't see the implementation of construction of heightmap in your code. If I miss it, please tell me where it is. Or has this process been replaced by generating footprint maps using the alphashape method?

yidahuang commented 1 year ago

Sorry for the late reply, you can find the construction of heightmap in the method/reconstruction.cpp compute_height_field function.