A building height extraction method based on a spaceborne lidar and high-resolution remote sensing images
By combining deep learning methods with spaceborne lidar and high-resolution remote sensing imagery, building heights are extracted, solving the problems of insufficient accuracy and low efficiency in existing technologies, and achieving efficient and accurate acquisition of building heights.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- NANJING NORMAL UNIVERSITY
- Filing Date
- 2025-05-22
- Publication Date
- 2026-04-17
AI Technical Summary
Existing technologies for building height extraction suffer from insufficient accuracy, poor applicability, long computation time, and difficulty in data acquisition, making it difficult to meet the needs of large-scale, high-efficiency extraction.
By combining spaceborne lidar ICESat-2 photon data and high-resolution remote sensing imagery, a deep learning model is used to extract the building roof and side facade. A correction algorithm is used to correct the building roof position, and the building height is identified through spatial analysis. Vector intersection is then performed using ICESat-2 photons to obtain the accurate building height.
It achieves high-precision, low-cost building height extraction, with publicly available and traceable data sources, making it suitable for urban planning and ecological environment research, and possessing good reliability and scalability.
Smart Images

Figure CN120314971B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of building height extraction technology, and in particular to a method for extracting building height based on spaceborne lidar and high-resolution remote sensing imagery. Background Technology
[0002] Building height information is a core data support for fields such as refined urban management, ecological environment assessment, and disaster emergency response. In urban planning, building height information provides quantitative basis for spatial layout optimization, building density control, and solar radiation and ventilation simulation. In ecological environment research, it is a key input for urban heat island effect analysis and atmospheric pollutant diffusion model construction. In disaster emergency response, it directly affects the accuracy of fire rescue plan formulation, high-rise building escape simulation, and flood inundation analysis. However, high-precision building height data is very scarce. Traditional manual measurement methods are costly and inefficient, and cannot meet the dynamic monitoring needs of large-scale urban areas. In recent years, advancements in remote sensing technology have provided new possibilities for building height extraction. By efficiently extracting and analyzing remote sensing data of urban areas, large-scale building height extraction can be achieved. Current methods mainly include estimating building height using multi-source remote sensing image fusion and estimating building height using spaceborne lidar.
[0003] The paper “Wu,W.-B.,Ma,J.,Banzhaf,E.,Meadows,ME,Yu,Z.-W.,Guo,F.-X.,Sengupta,D.,Cai,X.-X.,&Zhao,B.(2023).A first Chinese building height estimate at 10m resolution (CNBH-10m)using multi-source earth observations and machine learning.Remote Sensing of Environment,291,113578.https: / / doi.org / 10.1016 / j.rse.2023.113578” uses multi-source remote sensing imagery, including Sentinel-1, Sentinel-2, and PALSAR data, and employs a random forest regression model to create the first 10-meter resolution map of Chinese building heights. The optical data features of Sentinel-1 and Sentinel-2 played a crucial role in this process. However, the accuracy required for estimating the height of a single building may not meet the needs of some applications that require higher accuracy.
[0004] The paper "Lao, J., Wang, C., Zhu, X., Xi, X., Nie, S., Wang, J., Cheng, F., & Zhou, G. (2021). Retrieving building height in urban areas using ICESat-2 photon-counting LiDAR data. International Journal of Applied Earth Observation and Geoinformation, 104, 102596. https: / / doi.org / 10.1016 / j.jag.2021.102596" extracts building height in Beijing, China, based on ATLAS / ICESat-2 L2A global positioning photon product data. However, this method has certain limitations in practical applications: First, its algorithm mainly relies on feature separation of photon point clouds, lacking adaptability to complex urban terrain, resulting in poor applicability in different regions; second, due to the complex point cloud data processing flow and long computation time, it is difficult to meet the needs of large-scale, high-efficiency extraction.
[0005] The patent "Method for Automatically Extracting Building Height Based on Satellite Imagery," publication number CN114120140A, describes a method that includes: acquiring satellite imagery; preprocessing the acquired raw imagery; processing the preprocessed and corrected imagery into a coordinate-based image map; performing geometric correction, light and color equalization, and mosaicking / cropping on the processed coordinate-based imagery to obtain an orthophoto image; extracting building shadows based on rule-based object-oriented classification, decision tree algorithm classification, Normalized Difference Vegetation Index (NDVI) analysis, Normalized Difference Water Index (NDWI) analysis, and shadow spectral features; calculating the building shadow length by calculating the average pixel value; and constructing a building height inversion model based on the calculated shadow length, combined with the azimuth and elevation angles of the sun and satellite, and the building's location, to calculate the building height. However, this method does not fully consider that satellite imagery may be acquired at different times, leading to time-varying differences in the azimuth and elevation angles of the sun and satellite, which may affect the accuracy of the height inversion.
[0006] The patent, "A Method for Automatically Extracting Building Height Based on Stereo Satellite Imagery," published under CN106871864A, describes a method that includes: acquiring original satellite stereo image pairs, SRTM data, and DOM data of the target building; preprocessing the original satellite stereo image pairs, followed by relative and absolute orientation to generate epipolar images for extracting DSM data; extracting the initial DSM data of the target building, referencing the road and topographic layers of DLG data, and obtaining compliant checkpoints; obtaining DEM data with the target building's elevation information filtered out; integrating the data; performing stereoscopic checks and corrections on the target building's vertex elevation and foundation elevation; and combining the building's building layers in the DOM and DLG data, subtracting the building's vertex elevation and foundation elevation to obtain the building's elevation information. This method has certain limitations in practical applications, as many cities face significant difficulties in acquiring Digital Surface Model (DSM) data. Summary of the Invention
[0007] Purpose of the invention: This invention provides a method for extracting building height based on spaceborne lidar and high-resolution remote sensing imagery, which can extract building height and provide a scientific basis for urban planning and ecological environment research.
[0008] Technical solution: The present invention provides a method for extracting building height based on spaceborne lidar and high-resolution remote sensing imagery, comprising the following steps:
[0009] Step 1: Acquire ATLAS / ICESat-2 L2A global positioning photonics product data for urban areas;
[0010] Step 2: Preprocess the acquired data to obtain high-quality spaceborne lidar photons in the region, and further extract higher-quality ICESat-2 photon data;
[0011] Step 3: Acquire high-resolution remote sensing image data of urban areas, and crop and annotate the high-resolution remote sensing images;
[0012] Step 4: Construct and train deep learning models for extracting building rooftops and building side facades;
[0013] Step 5: Model predicts the extraction results of building roof and building side facade;
[0014] Step 6: Correct the building roof based on the building's side elevation to obtain the building base extraction results;
[0015] Step 7: Vectorize the extracted building base results and perform vector intersection with ICESat-2 photons. Identify building points based on spatial analysis methods and conduct accurate assessment of building height.
[0016] Furthermore, in step 1, combining high-resolution imagery with the research area, L2A global geolocation photon data from the ATLAS / ICESat-2 spaceborne lidar over the urban area is downloaded from NASA's Snow and Ice Data Center. The data is published in .hdf5 format, with photon-level information stored in heights and geographic location and other related information stored in geolocation.
[0017] Furthermore, in step 2, the acquired data undergoes preprocessing to obtain high-quality spaceborne lidar photons within the region. This specifically includes the following steps:
[0018] Step 21: Read lon_ph, lat_ph, h_ph, dist_ph_along from heights to filter ICESat-2 photons within the city and obtain their height and distance from the beginning of each segment.
[0019] Step 22: Read signal_conf_ph from heights and filter out ICESat-2 photons with a confidence level greater than 3;
[0020] Step 23: Read segment_id, ph_index_beg, segment_dist_x, and segment_ph_cn from geolocation, and calculate the orbital length of each ICESat-2 photon.
[0021] Furthermore, in step 2, the segment_id is assigned to each photon using the number of photons in each segment (segment_ph_cn) and the first photon number in each segment (ph_index_beg). The orbital length of each photon is calculated using the segment ID, the length of each segment (segment_dist_x), and the distance from the beginning of each segment (dist_ph_along). A KT tree spatial index is constructed for ICESat-2 photons with the orbital length as the x-axis and the height as the y-axis. Cluster analysis is performed using the DBSCAN algorithm to further extract higher quality ICESat-2 photon data. The DBSCAN algorithm defines clusters using two parameters: eps (radius) and min_samples (minimum number of samples).
[0022] Furthermore, in step 3, high-resolution remote sensing image data of the urban area is obtained from Google satellite high-resolution maps based on the city's latitude and longitude range. Labelme is used to crop and annotate the high-resolution remote sensing images, cropping the images to 384px*384px, and annotating the building roofs and side facades respectively.
[0023] Furthermore, step 4, which involves constructing and training deep learning models for extracting building rooftops and building side facades, specifically includes the following steps:
[0024] Step 41: Employ the open-source DeeplabV3+ deep learning model and design a loss function suitable for large-scale roof and side facade extraction; the specific loss function is as follows:
[0025] L(p i p i ')=α*L dice (p i p i ')+β*L bce (p i p i ')
[0026] Where pi is the predicted value of the i-th sample, p i ' represents the true value of the i-th sample, L dice (·) represents the dice loss function, L bce (·) represents the cross-entropy loss function, and α and β are the weight coefficients of the loss function;
[0027] Step 42: Train the model using the cropped and labeled roof and side facade datasets respectively. Divide the datasets into training, validation and test sets, accounting for 70%, 20% and 10% of the total data, respectively. Mix images without building content into each category to reduce class imbalance and improve model robustness.
[0028] Furthermore, in step 5, the model predicts the extraction results of the building roof and the extraction results of the building side facade, specifically including the following steps:
[0029] Step 51: Based on the patchsize during training, determine the size of the large remote sensing image that needs to be cut into smaller patches during inference.
[0030] Step 52: Divide the width of the remote sensing image by patchsize to get a remainder. Subtract this remainder from patchsize. The difference is the number of pixels that need to be filled in the horizontal (width) direction. Fill the rightmost part of the original image with the difference in pixels. Divide the height of the original image by patchsize to get a remainder. Subtract the remainder from patchsize. The difference is the number of pixels that need to be filled in the vertical (height) direction. Fill the bottom part of the original image with the difference in pixels.
[0031] Step 53: Fill the surrounding area with pixels again. Assuming our patch size is 1024 and the step size is 512, we need to fill the top, bottom, left and right sides. Step size / 2512 / 2 = 256 pixels can be used to cut the original image into a size of 1024*1024. The step size is 256, which cuts the remote sensing image after two fillings into an integer number of pixels.
[0032] Step 54: Put these patches into the result image obtained after model inference. Take the 512*512 area in the center of each patch in sequence and stitch them together to get the size after the first filling, which is the size of the second step image. Then, crop the newly added part on the right side of the first step and the newly added part below to get the result image of the original remote sensing large image size.
[0033] Furthermore, in step 6, the correction of the building's roof based on the building's side facade to obtain the building's base extraction results specifically includes the following steps:
[0034] Step 61: Load the black-and-white binary images of the building's roof and side facades, and separate the connected side facade outlines using a morphological erosion algorithm; the expression for the morphological erosion algorithm is:
[0035]
[0036] Where A is the eroded image and B is the eroded structural element, each element taking a value of 0 or 1;
[0037] Step 62: Filter out roofs and side facades of buildings with too small an area, and extract the outlines of the roofs and side facades;
[0038] Step 63: Traverse each side facade and match the corresponding roof for each side facade; first, check if there is a roof outline that overlaps with the side facade, and prioritize matching overlapping side facades and roof outlines. If more than one roof overlaps with the side facade, compare the overlapping areas and prioritize matching the roof with the larger overlapping area; for side facades that do not overlap with the roof outline, set a search radius and find the roof outline with the largest area within the search radius.
[0039] Step 64: For the matched roof and side facade, calculate the distance and direction the roof should move; perform rectangle fitting on the successfully matched side facade and roof, calculate the center of the roof outline, find the two sides of the side facade fitting rectangle that is farthest from the center of the roof outline, calculate the vector from the center of the roof outline to the midpoint of the two sides of the farthest side facade fitting rectangle, and move the roof outline according to the vector.
[0040] Step 65: Create a blank base map and draw the moved roof to obtain the building base.
[0041] Furthermore, in step 7, the extracted building base results are vectorized and then vector-intersected with ICESat-2 photons. This specifically includes the following steps:
[0042] Step 71: Use the GDAL library to read the projection information of the original remote sensing image and assign it to the black and white binary image of the building base.
[0043] Step 72: Import the black and white binary map of the building base into ArcGIS Pro, and use the raster reclassification function to retain only the outline of the building base;
[0044] Step 73: Use ArcGIS Pro's raster to polygon conversion function to convert the building base map into vector polygons and save it as a shapefile;
[0045] Step 74: Use Python code to batch process the intersection operations of ICESat-2 photons and building base shapefiles.
[0046] Furthermore, in step 7, building points are identified based on spatial analysis methods. The building point is the photon with the highest height within the building base shapefile after the intersection of the ICESat-2 photon and the building base shapefile. ICESat-2 photons within 50 meters of the building point are extracted, and the difference between the maximum and minimum values of these points is calculated. If the difference is greater than 4m, the next step is performed; otherwise, the next building point is selected. A window with a height of 2m is generated, and photons within 50m are traversed in 1m increments. If no photons are found within at least one window, the minimum photon is taken as the ground point. The building height is calculated by subtracting the average height of photons within 1m above the ground point from the average height of photons within 1m below the building point. The accuracy of the extracted building height is evaluated, and a scatter plot and an error histogram of the building height are plotted.
[0047] Beneficial effects: Compared with the prior art, the present invention has the following significant advantages: (1) The spaceborne lidar ICESat-2 photon data and Google high-resolution remote sensing images used in the present invention are both publicly available data resources, without relying on commercial remote sensing platforms or expensive ground measurement methods, and have a good foundation for promotion and application. The data source is clear and traceable, which is conducive to the repeated verification of results and the construction of standardization, ensuring the reliability and scalability of the technology in scientific research and practical applications; (2) The deep learning algorithm is used to extract the roof and side facade of the building, and the roof position of the building is corrected by the correction algorithm, which reduces the offset of the roof of the building in non-orthophoto remote sensing images, making the building position more accurate; (3) The method of combining spaceborne lidar and high-resolution remote sensing images is adopted to extract the spaceborne lidar photons falling within the building range, realizing the accurate screening and spatial constraint of photon data, and is more time-saving and unaffected by terrain than traditional algorithms; (4) The building height extracted by the present invention has high accuracy and low cost, which can provide data support for urban planning and environmental research of relevant departments. Attached Figure Description
[0048] Figure 1 This is a schematic diagram of the method flow of the present invention.
[0049] Figure 2 This invention extracts a scatter plot of building heights.
[0050] Figure 3 This invention extracts an error histogram of building height. Detailed Implementation
[0051] like Figure 1 As shown, a method for extracting building height based on spaceborne lidar and high-resolution remote sensing imagery includes the following steps:
[0052] Step 1: Obtain global positioning photonics product data from the ATLAS / ICESat-2 L2A spaceborne lidar in urban areas.
[0053] Combining high-resolution imagery with the research area's scope, L2A global geolocation photon data from the ATLAS / ICESat-2 spaceborne lidar system over urban areas was downloaded from NASA's Snow and Ice Data Center. The data was published in .hdf5 format, with photon-level information stored in the heights folder and geographic location and other related information stored in the geolocation folder.
[0054] This invention first selected two urban areas: Nanjing and Hong Kong.
[0055] Step 2 involves cropping the acquired data. The quality screening preprocessing operation specifically includes the following steps:
[0056] Step 21: Read lon_ph, lat_ph, h_ph, dist_ph_along from heights to filter ICESat-2 photons within the city and obtain their height and distance from the beginning of each segment.
[0057] Step 22: Read signal_conf_ph from heights and filter out ICESat-2 photons with a confidence level greater than 3;
[0058] Step 23: Read segment_id, ph_index_beg, segment_dist_x, and segment_ph_cn from geolocation, and calculate the orbital length of each ICESat-2 photon.
[0059] A KT tree spatial index is constructed for ICESat-2 photons with orbital length as the x-axis and height as the y-axis.
[0060] Cluster analysis using the DBSCAN algorithm further extracts higher-quality ICESat-2 photon data. The DBSCAN algorithm defines clusters using two parameters: eps (radius) and min_samples (minimum number of samples).
[0061] Input the above 5 features and use the random forest model to classify and extract plantations and natural forests. Divide the dataset into training set, validation set and test set, which account for 70%, 20% and 10% of the total data respectively. Use the random forest model for classification training, set 150 decision trees to improve the robustness of classification, and set random seeds to ensure the reproducibility of results.
[0062] Step 3: Obtain high-resolution remote sensing image data of the urban area from Google satellite high-resolution maps based on the city's latitude and longitude range.
[0063] Labelme was used to crop and annotate the high-resolution remote sensing image, cropping the image to 384px*384px and annotating the building roof and side facade separately.
[0064] Step 4, the specific steps for constructing and training deep learning models for extracting building rooftops and building side facades are as follows:
[0065] Step 41: Use the open-source DeeplabV3+ deep learning model and design a loss function suitable for large-scale roof and side facade extraction. The specific loss function suitable for large-scale roof and side facade extraction is as follows:
[0066] L(p i p i')=α*L dice (p i p i ')+β*L bce (p i p i ')
[0067] Where pi is the predicted value of the i-th sample, p i ' represents the true value of the i-th sample, L dice (·) represents the dice loss function, L bce (·) represents the cross-entropy loss function, and α and β are the weighting coefficients of the loss function.
[0068] Step 42: Train the model using the cropped and labeled roof and side facade datasets respectively. Divide the datasets into training, validation, and test sets, accounting for 70%, 20%, and 10% of the total data, respectively. Mix images without building content into each category to reduce class imbalance and improve model robustness.
[0069] Step 5: Use dilation prediction to predict the results for the large remote sensing image. The specific steps are as follows:
[0070] Step 51: Based on the patchsize during training, determine the size of the large remote sensing image that needs to be cut into smaller patches during inference.
[0071] Step 52: Divide the width of the remote sensing image by the patch size to get a remainder. Subtract this remainder from the patch size. The difference is the number of pixels that need to be filled in the horizontal (width) direction. Fill the rightmost edge of the original image with this difference in pixels. Similarly, divide the height of the original image by the patch size to get a remainder. Subtract this remainder from the patch size. The difference is the number of pixels that need to be filled in the vertical (height) direction. Fill the bottom edge of the original image with this difference in pixels.
[0072] Step 53: Fill the surrounding area with pixels again. Assuming our patch size is 1024 and the step size is 512, we need to fill the top, bottom, left, and right sides with 256 pixels (step size / 2512 / 2). This will allow us to cut the original image into 1024*1024 size. The step size is 256, which will cut the large remote sensing image after two fillings into an integer number of pixels.
[0073] Step 54: Put these patches into the result image obtained after model inference. Take the 512*512 area in the center of each patch in sequence and stitch them together to get the size after the first filling, which is the size of the second step image. Then, crop the newly added part on the right side of the first step and the newly added part below to get the result image of the original remote sensing large image size.
[0074] Step 6, based on the building's side elevation, corrects the building's roof to obtain the building's base extraction results. The specific steps are as follows:
[0075] Step 61: Load the black-and-white binary images of the building's roof and side facades, and separate the connected side facade outlines using a morphological erosion algorithm. The expression for the morphological erosion algorithm is:
[0076]
[0077] Where A is the eroded image and B is the eroded structural element, each element taking a value of 0 or 1.
[0078] Step 62: Filter out roofs and side facades of buildings with too small an area, and extract the outlines of the roofs and side facades;
[0079] Step 63: Traverse each side facade and match the corresponding roof for each side facade. First, check if there is a roof outline that overlaps with the side facade, and prioritize matching overlapping side facades and roof outlines. If more than one roof overlaps with the side facade, compare the overlapping areas and prioritize matching the roof with the larger overlapping area. Secondly, for side facades that do not overlap with roof outlines, set a search radius and find the roof outline with the largest area within the search radius.
[0080] Step 64: For the matched roof and side facades, calculate the distance and direction in which the roof should be moved;
[0081] Step 65: Create a blank base map and draw the moved roof to obtain the building base.
[0082] Step 7, the detailed steps for vectorizing the extracted building base results and performing vector intersection with ICESat-2 photons are as follows:
[0083] Step 71: Use the GDAL library to read the projection information of the original remote sensing image and assign it to the black and white binary image of the building base.
[0084] Step 72: Import the black and white binary map of the building base into ArcGIS Pro, and use the raster reclassification function to retain only the outline of the building base;
[0085] Step 73: Use ArcGIS Pro's raster to polygon conversion function to convert the building base map into vector polygons and save it as a shapefile;
[0086] Building points are identified based on spatial analysis methods. Python code is used to batch process the intersection operations between ICESat-2 photons and building base shapefiles (SHPs). The photon with the highest height within the building base SHP after the ICESat-2 photon intersects with the building base SHP is taken as the building point.
[0087] Extract ground points near the building point, and extract ICESat-2 photons within 50 meters of the building point; calculate the difference between the maximum and minimum values of these points. If the difference is greater than 4m, proceed to the next step; if it is less than 4m, proceed to the next building point; generate a window with a height of 2m, and traverse the photons within 50m with a step size of 1m. If there are no photons in at least one window, the minimum value photon is taken as the ground point.
[0088] To calculate the building height, subtract the average photon height within 1 meter above the ground point from the average photon height within 1 meter below the building point.
[0089] The accuracy of the extracted building heights is evaluated, and a scatter plot and an error histogram of the building heights are drawn.
Claims
1.A building height extraction method based on space-borne lidar and high-resolution remote sensing imagery, characterized in that, Includes the following steps: Step 1: Obtain global positioning photonics product data from spaceborne lidar in urban areas; Step 2: Preprocess the acquired data to obtain high-quality spaceborne lidar photons in the region, and further extract higher-quality ICESat-2 photon data; Step 3: Acquire high-resolution remote sensing image data of urban areas, and crop and annotate the high-resolution remote sensing images; Step 4: Construct and train deep learning models for extracting building rooftops and building side facades; specifically including the following steps: Step 41: Employ the open-source DeeplabV3+ deep learning model and design a loss function suitable for large-scale roof and side facade extraction; the specific loss function is as follows: Where pi is the predicted value of the i-th sample. Let be the true value of the i-th sample. Let dice loss function be used. Let α be the cross-entropy loss function, and β be the weight coefficients of the loss function. Step 42: Train the model using the cropped and labeled roof and side facade datasets respectively. Divide the datasets into training, validation and test sets, accounting for 70%, 20% and 10% of the total data respectively. Mix images without building content into each category. Step 5: Model predicts the extraction results of building roof and building side facade; Step 6: Correct the building's roof based on the building's side facade to obtain the building's base extraction results; this includes the following steps: Step 61: Load the black-and-white binary images of the building's roof and side facades, and separate the connected side facade outlines using a morphological erosion algorithm; the expression for the morphological erosion algorithm is: Where A is the eroded image and B is the eroded structural element, each element taking a value of 0 or 1; Step 62: Filter out roofs and side facades of buildings with too small an area, and extract the outlines of the roofs and side facades; Step 63: Traverse each side facade and match the corresponding roof for each side facade; first, check if there is a roof outline that overlaps with the side facade, and prioritize matching overlapping side facades and roof outlines. If more than one roof overlaps with the side facade, compare the overlapping areas and prioritize matching the roof with the larger overlapping area; for side facades that do not overlap with the roof outline, set a search radius and find the roof outline with the largest area within the search radius. Step 64: For the matched roof and side facade, calculate the distance and direction the roof should move; perform rectangle fitting on the successfully matched side facade and roof, calculate the center of the roof outline, find the two sides of the side facade fitting rectangle that is farthest from the center of the roof outline, calculate the vector from the center of the roof outline to the midpoint of the two sides of the farthest side facade fitting rectangle, and move the roof outline according to the vector. Step 65: Create a blank base map and draw the moved roof to obtain the building base; Step 7: Vectorize the extracted building base results and perform vector intersection with ICESat-2 photons. Identify building points based on spatial analysis methods and conduct accurate assessment of building height. 2.The building height extraction method based on space-borne lidar and high-resolution remote sensing imagery according to claim 1, wherein, In step 1, combining high-resolution imagery with the research area, L2A global geolocation photon data from the ATLAS / ICESat-2 spaceborne lidar over the urban area is downloaded from NASA's Snow and Ice Data Center. The data is published in .hdf5 format, with photon-level information stored in heights and geolocation-related information stored in geolocation. 3.The building height extraction method based on space-borne lidar and high-resolution remote sensing imagery according to claim 1, wherein, Step 2 involves preprocessing the acquired data to obtain high-quality spaceborne lidar photons within the region. This includes the following steps: Step 21: Read lon_ph, lat_ph, h_ph, dist_ph_along from heights to filter ICESat-2 photons within the city and obtain their height and distance from the beginning of each segment. Step 22: Read signal_conf_ph from heights and filter out ICESat-2 photons with a confidence level greater than 3; Step 23: Read segment_id, ph_index_beg, segment_dist_x, and segment_ph_cn from geolocation, and calculate the orbital length of each ICESat-2 photon. 4.The building height extraction method based on space-borne lidar and high-resolution remote sensing imagery according to claim 3, wherein, In step 2, the segment_id is assigned to each photon using the number of photons in each segment (segment_ph_cn) and the first photon number in each segment (ph_index_beg). The orbital length of each photon is calculated using the segment ID, the length of each segment (segment_dist_x), and the distance from the beginning of each segment (dist_ph_along). A KT tree spatial index is constructed for ICESat-2 photons with orbital length as the x-axis and height as the y-axis. Cluster analysis is performed using the DBSCAN algorithm to further extract higher-quality ICESat-2 photon data. The DBSCAN algorithm defines clusters using two parameters: eps and min_samples. 5.The building height extraction method based on space-borne lidar and high-resolution remote sensing imagery according to claim 1, wherein, In step 3, high-resolution remote sensing image data of the urban area is obtained from Google satellite high-resolution map according to the city's latitude and longitude range. Labelme is used to crop and annotate the high-resolution remote sensing image, cropping the image to 384px*384px, and annotating the roof and side facade of the buildings respectively. 6.The building height extraction method based on space-borne lidar and high-resolution remote sensing imagery according to claim 1, wherein, Step 5, the model predicts the extraction results of the building roof and the extraction results of the building side facade, specifically including the following steps: Step 51: Based on the patchsize during training, determine the size of the large remote sensing image that needs to be cut into smaller patches during inference. Step 52: Divide the width of the remote sensing image by patchsize to get a remainder. Subtract this remainder from patchsize. The difference is the number of pixels that need to be filled in the horizontal direction. Fill the rightmost part of the original image with the difference in pixels. Divide the height of the original image by patchsize to get a remainder. Subtract the remainder from patchsize. The difference is the number of pixels that need to be filled in the vertical direction. Fill the bottom part of the original image with the difference in pixels. Step 53: Fill the surrounding area with pixels again. Assuming our patch size is 1024 and the step size is 512, we need to fill the top, bottom, left and right sides. Step size / 2512 / 2 = 256 pixels can be used to cut the original image into 1024*1024 size. The step size is 256, which cuts the remote sensing image after two fillings into an integer number of pixels. Step 54: Put these patches into the result image obtained after model inference. Take the center 512*512 area of each patch in sequence and stitch them together to get the complete size after the first filling, which is the size of the second step image. Then, crop the newly added part on the right side of the first step and the newly added part below to get the result image of the original remote sensing large image size. 7.The building height extraction method based on space-borne lidar and high-resolution remote sensing imagery according to claim 1, wherein, Step 7 involves vectorizing the extracted building base results and performing vector intersection with ICESat-2 photons. This includes the following steps: Step 71: Use the GDAL library to read the projection information of the original remote sensing image and assign it to the black and white binary image of the building base. Step 72: Import the black and white binary map of the building base into ArcGIS Pro, and use the raster reclassification function to retain only the outline of the building base; Step 73: Use ArcGIS Pro's raster to polygon conversion function to convert the building base map into vector polygons and save it as a shapefile; Step 74: Use Python code to batch process the intersection operations of ICESat-2 photons and building base shapefiles. 8.The building height extraction method based on space-borne lidar and high-resolution remote sensing imagery according to claim 1, wherein, In step 7, building points are identified based on spatial analysis methods. The building point is the photon with the highest height within the building base shapehp after the ICESat-2 photon intersects with the building base shapehp. Extract ICESat-2 photons within 50 meters of a building point, calculate the difference between the maximum and minimum values of these points. If the difference is greater than 4m, proceed to the next step; otherwise, move to the next building point. Generate a window with a height of 2m, and iterate through the photons within 50m with a step size of 1m. If there are no photons in at least one window, treat the minimum photon as the ground point. Calculate the building height by subtracting the average photon height within 1m above the ground point from the average photon height within 1m below the building point. Evaluate the accuracy of the extracted building heights and plot a scatter plot and an error histogram of the building heights.
Citation Information
Patent Citations
Method for automatically extracting height of building based on stereoscopic satellite image
CN106871864A
Method for automatically extracting building height based on satellite image
CN114120140A
Method for extracting land for teaching by using remote sensing image, relative elevation and geographic ontology
CN102194120A
Satellite / vision / laser combined urban canyon environment UAV positioning and navigation method
CN110926474A