Urban three-dimensional model construction method and device and storage medium
Through the processing and semantic standardization of point cloud data, the problem of low accuracy of urban three-dimensional models in the existing technology is solved, and the construction of urban three-dimensional models with high accuracy and resolution is achieved, which is in line with the standards of urban semantic models.
Patent Information
- Application Number
- CN202411778958.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-05
- Publication Date
- 2025-05-02
- Estimated Expiration
- 2044-12-05
Smart Images

Figure CN119919597A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of model construction technology, and in particular to a method, device and storage medium for constructing a three-dimensional urban model. Background Art
[0002] With the rapid advancement of urbanization and the booming development of Internet of Things technology, the importance of smart cities has become increasingly prominent. As a convenient application of digital twin technology in urban management, smart cities can provide information for urban planning, energy management, transportation, etc. However, due to the large scale and complex environment of cities, building a three-dimensional model of cities is extremely challenging.
[0003] The current city semantic model standard OGC CityGML (City Geography Markup Language) defines multiple levels of detail (LoD) of urban three-dimensional models, including level 0 LoD0 (building footprint projection, usually used to represent the macro view of the entire city), level 1 LoD1 (external structure of the building, which can be represented as a simple geometric shape), level 2 LoD2 (detailed external structure of the building, including windows, doors and other details) and level 3 LoD3 (internal structure of the building, including rooms, corridors, stairs, etc.), and LoD0-LoD3 can contain indoor and outdoor elements, and no separate level of detail is required to distinguish indoor and outdoor parts. In the related art, the information of building monomers can be extracted from satellite images by two-dimensional image detection, and a three-dimensional urban model can be constructed based on the extracted information. However, limited by the resolution and accuracy of satellite images, the accuracy of the urban three-dimensional model constructed in this way is not high, and only the extraction of the urban three-dimensional model at the LoD0-LoD1 level can be achieved. There is another method to build a 3D city model, which can generate a 3D grid model of the city by collecting a large amount of dense point cloud data and using a surface reconstruction algorithm. However, the point cloud data collected from real scenes often contains a lot of noise and holes, which seriously affects the accuracy of geometric features at LoD1 and higher levels of detail, so it is still difficult to obtain a more accurate 3D city model. Based on this, how to improve the accuracy of the 3D city model is an issue that needs to be discussed and solved urgently. Summary of the invention
[0004] The present application aims to solve at least one of the technical problems existing in the prior art. To this end, the present application proposes a method, device and storage medium for constructing a three-dimensional city model, which can improve the accuracy of the three-dimensional city model.
[0005] In order to solve the above technical problems, this application proposes the following technical solutions:
[0006] The first embodiment of the present application provides a method for constructing a three-dimensional city model, including:
[0007] Acquire a building point cloud and preset processing parameters of a city, wherein the preset processing parameters include a neighborhood radius;
[0008] Determine the normal direction of each point cloud data in the building point cloud based on the neighborhood radius;
[0009] Dividing the point cloud data in the building point cloud into a vertical point cloud and a non-vertical point cloud based on the normal direction, determining a plurality of first plane regions corresponding to the vertical point cloud, and determining building footprint information based on projections of the non-vertical point cloud on the first plane regions;
[0010] generating building outline information based on the height of the non-vertical point cloud projected within the first plane area;
[0011] Filtering the point cloud data, dividing the filtered point cloud into a wall point cloud and a roof point cloud, and performing spatial division on the three-dimensional space based on the wall point cloud and the roof point cloud to obtain building surface information;
[0012] Semantic information standardization is performed on the building footprint information, the building outline information and the building surface information to obtain a three-dimensional city model.
[0013] According to the method for constructing a city three-dimensional model of the first embodiment of the present application, there are at least the following beneficial effects: compared with the traditional method of extracting the information of a building unit from a satellite image using two-dimensional image detection, the present application can determine the building footprint information and the building outline information through the point cloud data of the city, thereby improving the accuracy and resolution of the city three-dimensional model. Moreover, when determining the building surface information with high accuracy requirements, the present application can use filtering technology to denoise the point cloud data to preliminarily reduce the influence of noise in the point cloud data on the accuracy of the building surface information. After obtaining the filtered point cloud, the present application divides the filtered point cloud into a wall point cloud and a roof point cloud, and spatially divides the three-dimensional space through the wall point cloud and the roof point cloud to reduce the influence of noise and voids based on straight line and plane features, thereby generating more accurate building surface information. Further, after obtaining the building footprint information equivalent to the level of detail 0, the building outline information equivalent to the level of detail 1, and the building surface information equivalent to the level of detail 2, the present application performs semantic standardization processing on the building footprint information, the building outline information, and the building surface information to convert these three types of information into a unified standard format, thereby generating a high-precision city three-dimensional model.
[0014] According to some embodiments of the first aspect of the present application, obtaining a building point cloud of a city and preset processing parameters includes:
[0015] Acquire the preset processing parameters and the point cloud file path, wherein the point cloud file path indicates the storage location of the building point cloud;
[0016] The building point cloud is read based on the point cloud file path.
[0017] According to some embodiments of the first aspect of the present application, the preset processing parameters further include a maximum number of neighborhood points, and determining the normal direction of each point cloud data in the building point cloud based on the neighborhood radius includes:
[0018] For each point cloud data in the building point cloud, determine a plurality of neighborhood point cloud data within a neighborhood range with the point cloud data as the center and the neighborhood radius as the radius;
[0019] Sort the neighborhood point cloud data from near to far according to the distance between the neighborhood point cloud data and the point cloud data, and determine the neighborhood point cloud data with the largest number of neighborhood points in the front sort as candidate neighborhood point cloud data;
[0020] Calculating the point cloud covariance of each candidate neighborhood point cloud data and the point cloud data, and performing fitting processing based on the point cloud covariance to obtain a fitting plane;
[0021] The normal vector of the fitting plane is determined as the normal direction of the point cloud data.
[0022] According to some embodiments of the first aspect of the present application, determining a plurality of first plane areas corresponding to the vertical point cloud includes:
[0023] Projecting the vertical point cloud onto a first horizontal plane;
[0024] Divide the first plane into a plurality of plane grids, and determine the projection of the vertical point cloud on the plane grids as a first voxel point;
[0025] Performing straight line detection processing on the first voxel point by using a random sampling consistency algorithm to obtain a plurality of projection straight lines;
[0026] The first plane is divided into a plurality of first plane regions based on the projection straight line.
[0027] According to some embodiments of the first aspect of the present application, the performing straight line detection processing on the first voxel point by using a random sampling consistency algorithm to obtain a plurality of projected straight lines includes:
[0028] Selecting one of the first voxel points in each of the two different plane grids, and fitting the two first voxel points to obtain a plane fitting line;
[0029] Calculating the distances from other first voxel points except the first voxel points at both ends of the plane fitting line to the plane fitting line, and if the distance from the first voxel point to the plane fitting line is less than a preset distance threshold, determining the first voxel point as an inner point corresponding to the plane fitting line;
[0030] For each plane fitting line, when the number of inner points corresponding to the plane fitting line reaches a preset inner point threshold, the plane fitting line is determined as the projection line, and the first voxel points at both ends of the plane fitting line and the inner points corresponding to the plane fitting line are removed from the multiple first voxel points, and the process returns to the step of selecting one first voxel point in each of the two different plane grids until the number of the first voxel points is less than the preset voxel point number threshold, or the number of fittings performed on the two first voxel points reaches the preset fitting number threshold.
[0031] According to some embodiments of the first aspect of the present application, the preset processing parameters further include a projection threshold, and determining the building footprint information based on the projection of the non-vertical point cloud on the first plane area includes:
[0032] Projecting the non-vertical point cloud onto the first plane;
[0033] Divide the first plane into a plurality of plane grids, and determine the projection of the non-vertical point cloud on the plane grids as a second voxel point;
[0034] For each of the first plane regions, a projection area of the second voxel point in the first plane region is calculated; if a ratio of the projection area of the second voxel point to the area of the first plane region reaches the projection threshold, the first plane region is determined as building footprint information.
[0035] According to some embodiments of the first aspect of the present application, generating building outline information based on the height of the non-vertical point cloud projected within the first plane area includes:
[0036] If the first plane area is building footprint information, determining an average point cloud height based on heights of a plurality of the non-vertical point clouds projected within the first plane area;
[0037] Taking the first plane area as a building cross section, taking the average value of the point cloud height as the building height, and generating a building prism based on the building cross section and the building height;
[0038] The building outline information is generated based on a plurality of the building prisms.
[0039] According to some embodiments of the first aspect of the present application, the filtering process on the point cloud data includes:
[0040] Dividing the three-dimensional space into a plurality of first three-dimensional spaces, and determining the first three-dimensional space where the point cloud data exists as a second three-dimensional space;
[0041] The center point of the second stereoscopic space is determined as the filtered point cloud data after filtering, and the set of the filtered point cloud data is used as the filtered point cloud.
[0042] According to some embodiments of the first aspect of the present application, dividing the filtered point cloud after filtering into a wall point cloud and a roof point cloud includes:
[0043] Determine the normal direction of each filtered point cloud data in the filtered point cloud based on the neighborhood radius;
[0044] The filtered point cloud data whose normal direction is parallel to the horizontal plane is determined as the wall point cloud, and the other filtered point cloud data except the wall point cloud is determined as the roof point cloud.
[0045] According to some embodiments of the first aspect of the present application, the spatial division of the three-dimensional space based on the wall point cloud and the roof point cloud to obtain the building surface information includes:
[0046] Determine the plurality of second plane regions corresponding to the wall point cloud and the plurality of third plane regions corresponding to the roof point cloud respectively by a random sampling consistency algorithm;
[0047] Dividing the three-dimensional space into a plurality of third three-dimensional spaces based on the second plane area and the third plane area;
[0048] The third three-dimensional space is subjected to space planning processing, and the building surface information is determined based on a plurality of semantic information obtained after space planning.
[0049] According to some embodiments of the first aspect of the present application, performing space planning processing on the third three-dimensional space and determining the building surface information based on multiple semantic information obtained after space planning includes:
[0050] Obtaining the point cloud distribution density of the filtered point cloud data in each third stereoscopic space;
[0051] Determining semantic information corresponding to each third three-dimensional space based on a preset optimization condition and the point cloud distribution density;
[0052] The interface between the third three-dimensional space whose semantic information is the interior of the building and the third three-dimensional space whose semantic information is the exterior of the building is taken as the building surface;
[0053] The building surface information is generated based on each of the building surfaces.
[0054] According to some embodiments of the first aspect of the present application, the optimization conditions include:
[0055] If there are multiple adjacent third three-dimensional spaces whose point cloud distribution densities are all greater than a preset first density threshold, the filtered point cloud data in the multiple third three-dimensional spaces are obtained, and the semantic information of the third three-dimensional space where the center point of the multiple filtered point cloud data is located is determined as the interior of the building;
[0056] If the filtered point cloud data in two adjacent third three-dimensional spaces are concentrated on the interface of the two third three-dimensional spaces, the semantic information of the third three-dimensional space closest to the third three-dimensional space whose semantic information is the interior of the building is determined as the interior of the building, and the semantic information of the other third three-dimensional space is determined as the exterior of the building;
[0057] For a third three-dimensional space whose semantic information is not determined, if the filtered point cloud data in the third three-dimensional space is not concentrated on the interface between the third three-dimensional space and other adjacent third three-dimensional spaces, and the number of third three-dimensional spaces whose semantic information is the interior of a building adjacent to the third three-dimensional space reaches a preset planning threshold, the semantic information of the third three-dimensional space is determined to be the interior of the building;
[0058] For the third three-dimensional space with undetermined semantic information, if the filtered point cloud data in the third three-dimensional space is not concentrated on the interface between the third three-dimensional space and other adjacent third three-dimensional spaces, and the number of third three-dimensional spaces whose adjacent semantic information is inside the building is less than the planning threshold, the semantic information of the third three-dimensional space is determined to be outside the building.
[0059] According to some embodiments of the first aspect of the present application, the performing semantic information standardization processing on the building footprint information, the building outline information and the building surface information to obtain a three-dimensional city model includes:
[0060] Performing semantic identification processing on the building surface information to obtain surface semantic information;
[0061] Based on the surface semantic information, surface triangulation processing is performed on the building footprint information, the building outline information and the building surface information respectively to determine a first reconstruction model corresponding to the building footprint information, a second reconstruction model corresponding to the building outline information and a third reconstruction model corresponding to the building surface information;
[0062] The three-dimensional city model is generated based on the first reconstruction model, the second reconstruction model and the third reconstruction model.
[0063] According to some embodiments of the first aspect of the present application, the performing semantic identification processing on the building surface information to obtain surface semantic information includes:
[0064] For the building surface in the building surface information, calculate the distance between each filtered point cloud data and the building surface, sort the filtered point cloud data from near to far according to the distance between the filtered point cloud data and the building surface, and determine the filtered point cloud data with the largest number of neighborhood points in the front sort as candidate filtered point cloud data;
[0065] If the average value of the distances between the plurality of candidate filtered point cloud data and the ground is less than a preset distance threshold, determining the surface semantic information of the building surface as the ground;
[0066] If the ratio of the number of candidate filtered point cloud data as the roof point cloud to the total number of candidate filtered point cloud data is greater than the first ratio threshold, and the average value of the distances between the plurality of candidate filtered point cloud data and the ground is greater than the distance threshold, the surface semantic information of the building surface is determined to be a roof;
[0067] For a building surface whose surface semantic information has not been determined, the surface semantic information of the building surface is determined as a wall surface.
[0068] According to some embodiments of the first aspect of the present application, generating the three-dimensional city model based on the first reconstruction model, the second reconstruction model and the third reconstruction model includes:
[0069] Performing semantic normalization processing on the first reconstruction model, the second reconstruction model, and the third reconstruction model to obtain a first geometric attribute corresponding to the first reconstruction model, a second geometric attribute corresponding to the second reconstruction model, and a third geometric attribute corresponding to the third reconstruction model;
[0070] Determine the first geometric attribute as a first detail level of the city three-dimensional model, determine the second geometric attribute as a second detail level of the city three-dimensional model, and determine the third geometric attribute as a third detail level of the city three-dimensional model;
[0071] The three-dimensional city model is generated based on the first level of detail, the second level of detail, and the third level of detail.
[0072] A second aspect of the present application provides an electronic device, including:
[0073] at least one memory;
[0074] at least one processor;
[0075] at least one program;
[0076] The program is stored in the memory, and the processor executes at least one of the programs to implement:
[0077] A method for constructing a three-dimensional city model as described in any one of the first aspects of the present application.
[0078] A third aspect of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer-executable signal, and the computer-executable signal is used to execute:
[0079] A method for constructing a three-dimensional city model as described in any one of the first aspects of the present application.
[0080] Additional aspects and advantages of the present application will be given in part in the description below, and in part will become apparent from the description below, or will be learned through the practice of the present application. BRIEF DESCRIPTION OF THE DRAWINGS
[0081] Additional aspects and advantages of the present application will become apparent and easily understood from the description of the embodiments in conjunction with the following drawings, in which:
[0082] Figure 1 A main flow chart of a method for constructing a three-dimensional urban model provided in some embodiments of the present application;
[0083] Figure 2 A schematic diagram of a three-dimensional urban model with a detail level of 0 to a detail level of 3 provided in some embodiments of the present application;
[0084] Figure 3 A flowchart of obtaining a building point cloud of a city and presetting processing parameters provided in some embodiments of the present application;
[0085] Figure 4 A flowchart for determining the normal direction of each point cloud data in a building point cloud based on a neighborhood radius provided in some embodiments of the present application;
[0086] Figure 5 A flowchart for determining a plurality of first plane areas corresponding to a vertical point cloud provided in some embodiments of the present application;
[0087] Figure 6 A schematic diagram of projecting a vertical point cloud onto a horizontal first plane provided in some embodiments of the present application;
[0088] Figure 7 A flowchart of performing straight line detection processing on a first voxel point by a random sampling consistency algorithm to obtain multiple projected straight lines provided in some embodiments of the present application;
[0089] Figure 8A schematic diagram of selecting a first voxel point in each of two different plane grids and fitting the two first voxel points provided in some embodiments of the present application;
[0090] Fig. 9 A flowchart for determining building footprint information based on projection of a non-vertical point cloud on a first plane area provided in some embodiments of the present application;
[0091] Fig.10 A flowchart for generating building outline information based on the height of a non-vertical point cloud projected within a first plane area provided in some embodiments of the present application;
[0092] Fig.11 Schematic diagram of a building prism provided for some embodiments of the present application;
[0093] Fig.12 A flowchart of filtering point cloud data provided in some embodiments of the present application;
[0094] Fig.13 A flowchart of dividing a filtered point cloud into a wall point cloud and a roof point cloud provided in some embodiments of the present application;
[0095] Fig.14 A flowchart of obtaining building surface information by spatially dividing a three-dimensional space based on a wall point cloud and a roof point cloud provided in some embodiments of the present application;
[0096] Fig.15 A schematic diagram of dividing a three-dimensional space into a plurality of third three-dimensional spaces based on a second plane area and a third plane area provided in some embodiments of the present application;
[0097] Fig.16 A flowchart of performing space planning processing on a third three-dimensional space and determining building surface information based on multiple semantic information obtained after space planning provided in some embodiments of the present application;
[0098] Fig.17 A flowchart of performing semantic information standardization processing on building footprint information, building outline information and building surface information to obtain a three-dimensional city model provided in some embodiments of the present application;
[0099] Fig.18 A flowchart of performing semantic identification processing on building surface information to obtain surface semantic information provided in some embodiments of the present application;
[0100] Fig.19 A flowchart of generating a three-dimensional city model based on a first reconstruction model, a second reconstruction model and a third reconstruction model provided in some embodiments of the present application;
[0101] Fig. 20A schematic diagram of spatial division of a three-dimensional space based on a wall point cloud and a roof point cloud provided in some embodiments of the present application;
[0102] Fig.21 A module block diagram of an electronic device provided for some embodiments of the present application. DETAILED DESCRIPTION
[0103] In order to make the purpose, technical solution and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not used to limit the present invention.
[0104] It should be noted that although a logical order is shown in the flowchart, in some cases, the steps shown or described may be performed in a different order than in the flowchart. Terms in the specification, claims and the above drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.
[0105] In the description of this application, if there is a description of first or second, it is only for the purpose of distinguishing technical features, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features or implicitly indicating the order of the indicated technical features.
[0106] In the description of this application, unless otherwise clearly defined, terms such as setting, installing, connecting, etc. should be understood in a broad sense, and technicians in the relevant technical field can reasonably determine the specific meanings of the above terms in this application based on the specific content of the technical solution.
[0107] First, some terms used in this application are explained:
[0108] LoD (Level of Detail) is a technology used to optimize rendering performance in computer graphics and 3D modeling. The core idea is to dynamically adjust the detail level of an object based on its distance from the observer (such as a camera or player's perspective), thereby improving rendering efficiency while maintaining visual quality. For example, in a game, when a player is close to a building, the game engine renders a high-detail version of it, and when the player is far away, it switches to a low-detail version to increase the frame rate. Furthermore, in the city semantic model standard, the level of detail can describe the geometric and semantic detail levels of objects in a 3D city model.
[0109] Random sample consensus (RANSAC) is an iterative method for estimating mathematical model parameters from a data set containing outliers. The basic assumption of the algorithm is that the data consists of inliers and outliers. Inliers can explain the data within a certain error range, while outliers do not conform to the model. RANSAC randomly selects sample data as inliers and iteratively searches for the model parameters that best explain or fit the data.
[0110] A watertight model is a model that, during the 3D modeling and manufacturing process, ensures that the model surface is intact, without holes or incompletely stitched adjacent surfaces, thus preventing liquids (such as water) from penetrating. The importance of a watertight model lies in its ability to provide a closed and complete geometric structure, allowing the model to maintain its functionality and reliability in various applications.
[0111] The current city semantic model standard OGC CityGML (City Geography Markup Language) 3.0 defines multiple levels of detail (LoD) of the city three-dimensional model, including level 0 LoD0 (building footprint projection, usually used to represent the macro view of the entire city), level 1 LoD1 (external structure of the building, which can be represented as a simple geometric shape), level 2 LoD2 (detailed external structure of the building, including windows, doors and other details) and level 3 LoD3 (internal structure of the building, including rooms, corridors, stairs, etc.), and LoD0-LoD3 can contain indoor and outdoor elements, and no separate level of detail is required to distinguish indoor and outdoor parts. In the related art, the information of building monomers can be extracted from satellite images by two-dimensional image detection, and the city three-dimensional model can be constructed based on the extracted information. However, limited by the resolution and accuracy of satellite images, the accuracy of the city three-dimensional model constructed in this way is not high, and only the extraction of the city three-dimensional model at the LoD0-LoD1 level can be achieved. There is another method to build a 3D city model, which can generate a 3D grid model of the city by collecting a large amount of dense point cloud data and using a surface reconstruction algorithm. However, the point cloud data collected from real scenes often contains a lot of noise and holes, which seriously affects the accuracy of geometric features at LoD1 and higher levels of detail, so it is still difficult to obtain a more accurate 3D city model. Based on this, how to improve the accuracy of the 3D city model is an issue that needs to be discussed and solved urgently.
[0112] Based on this, the method for constructing a three-dimensional urban model of the present application can improve the accuracy of the three-dimensional urban model.
[0113] Reference Figure 1In a first aspect, an embodiment of the present application provides a method for constructing a three-dimensional city model, and the construction method includes but is not limited to steps S110, S120, S130, S140, S150, and S160.
[0114] S110, obtaining a building point cloud and preset processing parameters of a city, wherein the preset processing parameters include a neighborhood radius;
[0115] S120, determining the normal direction of each point cloud data in the building point cloud based on the neighborhood radius;
[0116] S130, dividing the point cloud data in the building point cloud into a vertical point cloud and a non-vertical point cloud based on the normal direction, determining a plurality of first plane regions corresponding to the vertical point cloud, and determining the building footprint information based on the projection of the non-vertical point cloud on the first plane region;
[0117] S140, generating building outline information based on the height of the non-vertical point cloud projected within the first plane area;
[0118] S150, filtering the point cloud data, dividing the filtered point cloud into a wall point cloud and a roof point cloud, and performing spatial division on the three-dimensional space based on the wall point cloud and the roof point cloud to obtain building surface information;
[0119] S160, performing semantic information standardization processing on the building footprint information, the building outline information and the building surface information to obtain a three-dimensional city model.
[0120] According to the embodiment of the present application, the urban three-dimensional model refers to the technology of three-dimensionally expressing urban buildings by digital means. Figure 2 ,The construction of urban 3D models usually adopts different levels of detail (LoD). Level 0 LoD0 refers to the macro view of the entire city, and the buildings are only represented in LoD0 as basic outlines or roof edge polygons, without detailed walls, doors and windows, etc. Level 1 LoD1 The external structure of the building can be represented as a simple geometric shape without including detailed information such as the building's material and roof shape. Level 2 LoD2 is more detailed than Level 1, and usually includes the detailed structure of the building (such as balconies, outdoor stairs, etc.). Level 3 LoD3 includes the internal structure of the building, including rooms, corridors, stairs, etc. In OGCCityGML3.0, LoD0-LoD3 can include indoor and outdoor elements, and there is no need for a separate level of detail to distinguish between indoor and outdoor parts.
[0121] It is understood that a building point cloud refers to a collection of three-dimensional data of a building surface obtained through laser scanning, photogrammetry and other technologies, that is, a collection of point cloud data. These data are usually represented in the form of points, each of which contains its three-dimensional coordinates and other attributes (such as reflection intensity, color information, etc.). Furthermore, in this application, a building point cloud can be obtained by airborne laser radar and drone multi-view stereo measurement technology.
[0122] It is understandable that the preset processing parameters refer to the processing parameters preset by the user before building the three-dimensional model of the city. The preset processing parameters include the neighborhood radius, which refers to the radius of an open interval centered on a certain point cloud data. The larger the neighborhood radius, the larger the neighborhood of the point cloud data. Similarly, the smaller the neighborhood radius, the smaller the neighborhood of the point cloud data. The present application can determine the normal direction of each point cloud data p = (x, y, z) in the building point cloud based on the neighborhood radius. Whether the point cloud data is perpendicular to the horizontal plane (i.e., the ground) is determined based on the normal direction of the point cloud data, wherein the normal direction refers to the direction of a straight line starting from the point cloud data and perpendicular to the tangent or plane of the point cloud data.
[0123] Furthermore, after determining the normal direction of each point cloud data, the multiple point cloud data can be divided into vertical point clouds and non-vertical point clouds based on the normal direction. If the normal direction of the point cloud data is parallel to the horizontal plane, the point cloud data is determined as a vertical point cloud. If the normal direction of the point cloud data is not parallel to the horizontal plane, the point cloud data is determined as a non-vertical point cloud. A vertical point cloud generally refers to point cloud data obtained after scanning the exterior wall of a building. When the density of the vertical point cloud in a certain area is particularly high, it means that there is a building in the area. The multiple first plane areas corresponding to the vertical point cloud refer to the multiple polygonal areas obtained after dividing the plane space based on the vertical point cloud. The polygonal area can also be understood as the projection of a certain building relative to the horizontal ground. Since the non-vertical point cloud is generally the roof of a building, after determining the first plane area equivalent to the projection of the building, the projection of the non-vertical point cloud in the first plane area can be combined to comprehensively determine the building footprint information, that is, the physical boundary of the building in the geographic space. The building footprint information is equivalent to the level of detail LoD0 at level 0.
[0124] The building outline information includes the external structure of the building, and the building outline information is equivalent to the level 1 detail level LoD1. After obtaining the building footprint information equivalent to the physical boundary of the building in the previous step, the building outline information can be generated in combination with the height of the building. Among them, since the non-vertical point cloud projected into the first plane area generally refers to the roof of the building, the height of the building can be determined by the height of the non-vertical point cloud projected into the first plane area. Compared with the traditional method of extracting building monomer information from satellite images using two-dimensional image detection, the present application can determine the building footprint information and building outline information through the city's point cloud data, thereby improving the accuracy and resolution of the city's three-dimensional model.
[0125] Building surface information includes detailed external structures such as roof shape and accessories. Building surface information is equivalent to level 2 detail level LoD2. Based on this, building surface information has relatively high requirements for accuracy. In order to obtain watertight building surface information, this application uses filtering technology to denoise point cloud data and weaken the noise in the original building point cloud to preliminarily reduce the impact of noise in point cloud data on the accuracy of building surface information. Furthermore, after obtaining the filtered point cloud, this application divides the filtered point cloud into wall point cloud and roof point cloud to utilize the surface regularity of the building, reduce the impact of noise and voids based on straight line and plane features, and generate more accurate building surface information.
[0126] Finally, after determining the building footprint information equivalent to level 0 of detail, the building outline information equivalent to level 1 of detail, and the building surface information equivalent to level 2 of detail, this application performs semantic standardization on the building footprint information, the building outline information, and the building surface information to convert these three types of information into a unified standard format, thereby generating a highly accurate three-dimensional urban model that complies with the urban semantic model standard OGC CityGML3.0.
[0127] In one embodiment, referring to Figure 3 , step 110 comprises:
[0128] Step 310: Obtain preset processing parameters and a point cloud file path, wherein the point cloud file path indicates a storage location of the building point cloud;
[0129] Step 320: Read the building point cloud based on the point cloud file path.
[0130] According to the embodiment of the present application, the point cloud file path refers to the storage location of the file storing the building point cloud in the system. The preset processing parameters and the point cloud file path are both user-defined inputs. After obtaining the preset processing parameters and the point cloud file path, the software will automatically read the folder storing the building point cloud based on the point cloud file path, and then read the building point cloud in the folder.
[0131] Reference Figure 4 The preset processing parameters also include the maximum number of neighborhood points. Step 120 includes:
[0132] Step 410: for each point cloud data in the building point cloud, determine a plurality of neighborhood point cloud data within a neighborhood range with the point cloud data as the center and the neighborhood radius as the radius;
[0133] Step 420, sorting the neighborhood point cloud data from near to far according to the distance between the neighborhood point cloud data and the point cloud data, and determining the neighborhood point cloud data with the largest number of neighborhood points in the front as the candidate neighborhood point cloud data;
[0134] Step 430: Calculate the point cloud covariance of each candidate neighborhood point cloud data and the point cloud data, and perform fitting processing based on the point cloud covariance to obtain a fitting plane;
[0135] Step 440: determine the normal vector of the fitting plane as the normal direction of the point cloud data.
[0136] According to an embodiment of the present application, neighborhood point cloud data refers to other point cloud data in a neighborhood range with a certain point cloud data as the center and a neighborhood radius as the radius. The point cloud data and the multiple neighborhood point cloud data corresponding to the point cloud data can reflect the general outline of the building in the neighborhood range.
[0137] It can be understood that the maximum number of neighborhood points refers to the maximum number of points in the neighborhood point cloud center within the neighborhood range with the point cloud data as the center and the neighborhood radius as the radius. Therefore, after determining that multiple neighborhood point cloud data within the neighborhood range with the point cloud data as the center and the neighborhood radius as the radius are obtained, it is also necessary to sort the neighborhood point cloud data from far to near according to the distance between the neighborhood point cloud data and the point cloud data, and determine the neighborhood point cloud data with the maximum number of neighborhood points closest to the point cloud data as the candidate neighborhood point cloud data.
[0138] Furthermore, since the candidate neighborhood point cloud data are all represented in the form of coordinate points in three-dimensional space, in order to measure the strength of the linear relationship between any candidate neighborhood point cloud data and the point cloud data as the center point, it is necessary to calculate the covariance of each candidate neighborhood point cloud data and the point cloud data, that is, the point cloud covariance. When the covariance is positive, it means that the point cloud data and the candidate neighborhood point cloud data change in the same direction. When the covariance is negative, it means that the point cloud data and the candidate neighborhood point cloud data change in opposite directions. When the covariance is 0, it means that there is no linear relationship between the point cloud data and the candidate neighborhood point cloud data.
[0139] After determining the covariance between each candidate neighborhood point cloud data and the point cloud data, a fitting process can be performed based on the multiple point cloud covariances to obtain a fitting plane. The fitting plane can be understood as a mathematical model, and the fitting process is used to describe how this mathematical model best adapts to the covariances of multiple point clouds. The fitting plane obtained by fitting the covariances of multiple point clouds can accurately describe the relationship between each candidate neighborhood point cloud data and the point cloud data.
[0140] It can be understood that the fitting plane is not only a mathematical model for describing the relationship between each neighborhood point cloud data and the point cloud data, but also accurately represents the tangent plane of the point cloud data. Based on this, the direction of the normal vector of the fitting plane can be determined as the normal direction of the point cloud data. Among them, the normal vector refers to a non-zero vector perpendicular to the fitting plane.
[0141] In one embodiment, referring to Figure 5 , step 130 comprises:
[0142] Step 510, projecting the vertical point cloud onto a first horizontal plane;
[0143] Step 520: Divide the first plane into a plurality of plane grids, and determine the projection of the vertical point cloud on the plane grid as a first voxel point;
[0144] Step 530, performing straight line detection processing on the first voxel point by using a random sampling consistency algorithm to obtain a plurality of projection straight lines;
[0145] Step 540: Divide the first plane into a plurality of first plane regions based on the projection straight line.
[0146] According to the embodiment of the present application, since the building footprint information reflects the situation of the building occupying the land, in order to determine the first plane area corresponding to the vertical point cloud, it is first necessary to project the vertical point cloud onto the horizontal first plane, such as Figure 6 As shown in Figure 2, the projection of the vertical point cloud on the first plane reflects the horizontal distribution of the vertical point cloud.
[0147] It is understandable that in order to simplify the first plane into a structure that is easier to handle and reduce the difficulty of calculation, it is also necessary to divide the first plane into multiple plane grids, and the plane grids can also be understood as pixels in a two-dimensional image. However, the plane grid is expressed in the form of a rectangle, not a point. If there is a vertical point cloud in the plane grid, the projection of the vertical point cloud on the plane grid is determined as the first voxel point. Among them, there can be multiple first voxel points in a plane grid.
[0148] Furthermore, the random sampling consensus algorithm can be used to perform straight line detection processing on any two first voxel points in different plane grids to identify and eliminate outliers, and obtain multiple projection lines as the mathematical model of the first voxel points, thereby improving the robustness of the model estimation. Among them, for any two first voxel points, outliers refer to other first voxel points that offset the projection lines corresponding to the two first voxel points. Through the random sampling consensus algorithm, multiple projection lines can be effectively estimated even in the presence of a large number of outliers, thereby improving the accuracy of the determined building footprint information.
[0149] It can be understood that since the projection straight line is a line segment on the first plane, and multiple projection straight lines can enclose a closed polygon. Based on this, multiple closed polygons can be determined on the first plane based on the projection straight line, and each closed polygon corresponds to a first plane area. Since the first plane area is determined based on the vertical point cloud, and the vertical point cloud is mostly obtained by scanning the walls of the building, the first plane area can reflect the projection of the building relative to the horizontal ground to a certain extent. Combined with the projection of the building relative to the horizontal ground, the present application can more accurately determine the building footprint information. Compared with satellite images that can only provide a bird's-eye view image of the roof of the building, the present application can achieve higher accuracy by scanning the building point cloud to determine the first plane area and the building footprint information.
[0150] In one embodiment, referring to Figure 7 , step 530 includes:
[0151] Step 710: Select a first voxel point in each of two different plane grids, and fit the two first voxel points to obtain a plane fitting line;
[0152] Step 720, calculating the distances from the first voxel points other than the first voxel points at both ends of the plane fitting line to the plane fitting line, and if the distance from the first voxel point to the plane fitting line is less than a preset distance threshold, determining the first voxel point as an inner point corresponding to the plane fitting line;
[0153] Step 730: for each plane fitting line, when the number of inner points corresponding to the plane fitting line reaches a preset inner point threshold, the plane fitting line is determined as a projection line, and the first voxel points at both ends of the plane fitting line and the inner points corresponding to the plane fitting line are removed from the multiple first voxel points, and the process returns to the step of selecting one first voxel point in each of two different plane grids until the number of first voxel points is less than the preset voxel point number threshold, or the number of fittings performed on the two first voxel points reaches the preset fitting number threshold.
[0154] According to an embodiment of the present application, Figure 8The dashed lines in the figure divide the first plane into multiple plane grids. Figure 8 The step of "performing straight line detection processing on the first voxel point by random sampling consistency algorithm" is explained as follows: First, a first voxel point is selected in each of two different plane grids to obtain the first voxel point A and the first voxel point B. The plane fitting straight line AB can be obtained by fitting the first voxel point A and the first voxel point B. Then, the distances from the other first voxel points except the first voxel point A and the first voxel point B to the plane fitting straight line AB are calculated. Figure 8 In addition to the first voxel point A and the first voxel point B, the other first voxel points include the first voxel point C, the first voxel point D and the first voxel point E. Based on this, it is necessary to calculate the distance from the first voxel point C to the plane fitting line AB, the distance from the first voxel point D to the plane fitting line AB, and the distance from the first voxel point E to the plane fitting line AB. Assuming that the preset distance threshold is the width of the plane grid, if the distance from the first voxel point to the plane fitting line AB is less than the width of the plane grid, it means that this first voxel point is the inner point corresponding to the plane fitting line AB. Through Figure 8 It can be obtained that the distances from the first voxel point D and the first voxel point E to the plane fitting line AB are less than the width of the plane grid, and the distance from the first voxel point C to the plane fitting line AB is greater than the width of the plane grid. Therefore, the first voxel point D and the first voxel point E are determined as the inner points corresponding to the plane fitting line AB.
[0155] Further, if the preset inlier threshold is 2, for the plane fitting line AB, the number of inliers corresponding to the plane fitting line AB has reached the preset inlier threshold, and the plane fitting line AB can be determined as the projection line. At the same time, since it has been determined that the first voxel point A, the first voxel point B, the first voxel point D and the first voxel point E are all inliers corresponding to the plane fitting line AB, the first voxel point A, the first voxel point B, the first voxel point D and the first voxel point E can be removed from the multiple first voxel points to avoid the first voxel point A, the first voxel point B, the first voxel point D and the first voxel point E interfering with the subsequent fitting process.
[0156] It is understandable that, since the random sampling consistency algorithm is an iterative algorithm, it is necessary to continuously perform iterative calculations. Therefore, after the plane fitting straight line AB is determined as the projection straight line, it is necessary to return to step 710 until the number of first voxel points is less than the preset voxel point number threshold, or the number of times the two first voxel points are fitted reaches the preset fitting number threshold. The multiple projection lines determined based on the first voxel points are the solutions sought by the random sampling consistency algorithm. Among them, the voxel point number threshold and the fitting number threshold can be set by the user. The voxel point number threshold can be the minimum number of first voxel points required to perform a straight line fitting operation, and the fitting number threshold can be specifically determined based on the total number of first voxel points. Specifically, if the total number of first voxel points is large, a larger fitting number threshold can be set, and if the total number of first voxel points is small, a smaller fitting number threshold can be set.
[0157] In one embodiment, the preset processing parameters also include a projection threshold, referring to Fig. 9 , step 130 comprises:
[0158] Step 910: Project the non-vertical point cloud onto the first plane;
[0159] Step 920: Divide the first plane into a plurality of plane grids, and determine the projection of the non-vertical point cloud on the plane grid as a second voxel point;
[0160] Step 930: For each first plane region, calculate the projection area of the second voxel point in the first plane region. If the ratio of the projection area of the second voxel point to the area of the first plane region reaches a projection threshold, determine the first plane region as building footprint information.
[0161] According to the embodiment of the present application, because the first plane area can reflect the projection of the building relative to the horizontal ground to a certain extent, and the building footprint information reflects the situation of the building occupying the land. Therefore, on the basis of determining the first plane area, it is necessary to further divide the first plane area based on the non-vertical point cloud to increase the accuracy of the building footprint information. Because the building footprint information is plane information, it is first necessary to project the non-vertical point cloud onto the first plane.
[0162] It is understandable that in order to simplify the first plane into a structure that is easier to handle and reduce the difficulty of calculation, in step 920, it is also necessary to divide the first plane into multiple plane grids. In order to distinguish the projection of the vertical point cloud in the plane grid from the projection of the non-vertical point cloud in the plane grid, if there is a non-vertical point cloud in the plane grid, the projection of the non-vertical point cloud in the plane grid is determined as the second voxel point. There can be multiple second voxel points in one plane grid.
[0163] Furthermore, because the vertical point cloud may contain noise and there are some vertical point clouds that are used to describe some decorations on the building walls and cannot reflect the boundaries of the physical walls, the first plane area determined based on the vertical point cloud may not be accurate enough. Based on this, in order to accurately describe the building, for each first plane area determined by the vertical point cloud, it is necessary to calculate the projection area of the second voxel point in the first plane area. If the ratio of the projection area of the second voxel point to the area of the first plane area reaches the projection threshold, it means that the first plane area is the projection of the building relative to the horizontal ground and is relatively accurate. At this time, the first plane area can be determined as the building footprint information. Among them, the projection threshold refers to the minimum value of the ratio of the projection area of the second voxel point to the area of the first plane area allowed when determining the building footprint information.
[0164] In one embodiment, referring to Fig.10 , step 140 comprises:
[0165] Step 1010: if the first plane area is building footprint information, determine the average point cloud height based on the heights of multiple non-vertical point clouds projected in the first plane area;
[0166] Step 1020: taking the first plane area as the building cross section, taking the average point cloud height as the building height, and generating a building prism based on the building cross section and the building height;
[0167] Step 1030: Generate building outline information based on the multiple building prisms.
[0168] It is understandable that, because the building footprint information reflects the projection of the building on the horizontal ground, the extraction of the building outline information depends on the building footprint information obtained at the detail level LoD0 equivalent to level 0. However, the extraction of the building outline information also requires obtaining the height of the building. In this application, the height of the building can be determined based on the height of multiple non-vertical point clouds projected in the first plane area.
[0169] Specifically, since the non-vertical point cloud is generally obtained by scanning the roof structure of the building, if the first plane area is the building footprint information, the average value of the heights of the multiple non-vertical point clouds projected in the first plane area can be determined as the height of the building, that is, the building height. The point cloud height average value in step 1010 refers to the average value of the non-vertical point cloud heights.
[0170] It can be understood that after determining the first plane area equivalent to the projection of the building on the horizontal ground and the average point cloud height equivalent to the building height, the first plane area can be used as the cross section of the building, and the average point cloud height can be used as the building height to generate a building prism, such as Fig.11As shown. Based on this, a corresponding building prism can be generated based on each first plane area determined as building footprint information. After multiple building prisms are determined on the horizontal plane, it is also necessary to delete the vertical facades on the adjacent lines of each first plane area to delete noise information and generate accurate building outline information.
[0171] In one embodiment, referring to Fig.12 , step 150 comprises:
[0172] Step 1210: divide the three-dimensional space into a plurality of first three-dimensional spaces, and determine the first three-dimensional space having point cloud data as the second three-dimensional space;
[0173] Step 1220: determine the center point of the second three-dimensional space as the filtered point cloud data after filtering, and use the set of filtered point cloud data as the filtered point cloud.
[0174] It is understandable that the three-dimensional space where the point cloud data is located is equivalent to the three-dimensional space corresponding to an entire city. In this case, the larger the city, the greater the difficulty of calculation. Based on this, in order to simplify the three-dimensional space into a structure that is easier to handle and reduce the difficulty of calculation, in step 1210, the three-dimensional space needs to be divided into multiple first three-dimensional spaces. The first three-dimensional space can also be understood as a pixel in a two-dimensional image, but the first three-dimensional space is a cube shape, not a point.
[0175] Furthermore, not every first three-dimensional space has point cloud data. In order to distinguish the first three-dimensional space with point cloud data from the first three-dimensional space without point cloud data, the present application determines the first three-dimensional space with point cloud data as the second three-dimensional space.
[0176] It is understandable that since the point cloud data in the collected building point cloud is not only too dense, but also contains too much noise and holes, it increases the difficulty of calculation and also reduces the accuracy of the three-dimensional model of the city. The present application can reduce the noise in the point cloud data by determining the center point of the second three-dimensional space as the filtered point cloud data after filtering, so as to reduce the density of the point cloud data while maintaining its shape characteristics. There are as many filtered point cloud data as there are second three-dimensional spaces in the three-dimensional space, and a set of multiple filtered point cloud data can be determined as a filtered point cloud. Determining the building surface information based on the filtered point cloud can greatly reduce the impact of noise and holes while maintaining the shape characteristics of the point cloud data, thereby improving the accuracy of the building surface information.
[0177] In one embodiment, referring to Fig.13 , step 150 comprises:
[0178] Step 1310, determining the normal direction of each filtered point cloud data in the filtered point cloud based on the neighborhood radius;
[0179] Step 1320: determine the filtered point cloud data whose normal direction is parallel to the horizontal plane as the wall point cloud, and determine the other filtered point cloud data except the wall point cloud as the roof point cloud.
[0180] It is understandable that since the filtered point cloud data is the point re-determined after filtering the point cloud data, the normal direction of the filtered point cloud data cannot be determined according to the normal direction of the point cloud data, so the normal direction of the filtered point cloud data needs to be re-determined. Specifically, the method for determining the normal direction of the filtered point cloud data is similar to the steps of determining the normal direction of the point cloud data (steps 410 to 440 above), and will not be repeated here.
[0181] Furthermore, after determining the normal direction of each filtered point cloud data, the multiple filtered point cloud data can be divided into wall point clouds and roof point clouds in the normal direction. If the normal direction of the filtered point cloud data is parallel to the horizontal plane, the filtered point cloud data is determined as a wall point cloud. If the normal direction of the filtered point cloud data is not parallel to the horizontal plane, the filtered point cloud data is determined as a roof point cloud. The wall point cloud refers to the filtered point cloud data obtained after filtering the point cloud data obtained after scanning the wall structure of the building. When the density of the wall point cloud in a certain area is particularly high, or it is particularly concentrated in a certain area, it means that there is a wall of the building in the area. The roof point cloud refers to the filtered point cloud data obtained after filtering the point cloud data obtained after scanning the roof structure of the building. When the density of the roof point cloud in a certain area is particularly high, or the features are concentrated in a certain area, it means that there is a roof of the building in the area.
[0182] In one embodiment, referring to Fig.14 , step 150 comprises:
[0183] Step 1410: Determine a plurality of second plane regions corresponding to the wall point cloud and a plurality of third plane regions corresponding to the roof point cloud respectively by using a random sampling consistency algorithm;
[0184] Step 1420: dividing the three-dimensional space into a plurality of third three-dimensional spaces based on the second plane area and the third plane area;
[0185] Step 1430: Perform space planning processing on the third three-dimensional space, and determine the building surface information based on the multiple semantic information obtained after the space planning.
[0186] It can be understood that the multiple second plane areas corresponding to the wall point cloud are determined by the random sampling consistency algorithm, including: randomly selecting a number of wall point clouds from the multiple wall point clouds as a parameter estimation subset of the initial wall model; using the selected parameter estimation subset to fit the initial wall model, and adding other wall point clouds from the multiple wall point clouds except the parameter estimation subset to the initial wall model, and calculating whether the other wall point clouds are internal points; recording the number of internal points corresponding to the current initial wall model, if the number of internal points corresponding to the initial wall model exceeds a preset internal point number threshold, the initial wall model is used as the second plane area, and the internal points corresponding to the initial wall model are removed from the wall point cloud; returning to the step of randomly selecting a number of wall point clouds from the multiple wall point clouds as the parameter estimation subset of the initial wall model, until the number of wall point clouds is less than the preset wall point cloud number threshold.
[0187] It can be understood that the multiple third plane areas corresponding to the roof point cloud are determined by the random sampling consistency algorithm, including: randomly selecting a number of roof point clouds from the multiple roof point clouds as a parameter estimation subset of the initial roof model; using the selected parameter estimation subset to fit the initial roof model, and adding other roof point clouds from the multiple roof point clouds except the parameter estimation subset to the initial roof model, and calculating whether the other roof point clouds are inner points; recording the number of inner points corresponding to the current initial roof model, if the number of inner points corresponding to the initial roof model exceeds a preset inner point number threshold, the initial roof model is used as the third plane area, and the inner points corresponding to the initial roof model are removed from the roof point cloud; returning to the step of randomly selecting a number of roof point clouds from the multiple roof point clouds as the parameter estimation subset of the initial roof model, until the number of roof point clouds is less than the preset roof point cloud number threshold.
[0188] Further, after the second plane area and the third plane area are determined, since the second plane area and the third plane area have an intersecting relationship, the three-dimensional space can be divided into a plurality of third three-dimensional spaces based on the second plane area and the third plane area, such as Fig.15 and Fig. 20 It can be understood that the plurality of third three-dimensional spaces correspond to the spaces inside the building and the spaces outside the building.
[0189] According to an embodiment of the present application, semantic information refers to the structure corresponding to each third stereoscopic space. Exemplarily, the semantic information of the third stereoscopic space can be the interior of the building, and the semantic information of the third stereoscopic space can also be the exterior of the building. In the present application, the spatial planning process can also be understood as an integer planning process, by marking the third stereoscopic space whose semantic information is the interior of the building as 1, and marking the third stereoscopic space whose semantic information is the exterior of the building as 0, and performing integer planning processing based on this, so as to determine the semantic information corresponding to each third stereoscopic space. Finally, based on the semantic information corresponding to each third stereoscopic space, the building surface information can be determined.
[0190] In one embodiment, referring to Fig.16 , step 1430 includes:
[0191] Step 1610: Obtain the point cloud distribution density of the filtered point cloud data in each third three-dimensional space;
[0192] Step 1620: Determine semantic information corresponding to each third three-dimensional space based on preset optimization conditions and point cloud distribution density;
[0193] Step 1630: taking the interface between the third three-dimensional space whose semantic information is the interior of the building and the third three-dimensional space whose semantic information is the exterior of the building as the building surface;
[0194] Step 1640: Generate building surface information based on each building surface.
[0195] It can be understood that the point cloud distribution density refers to the density of the filtered point cloud data. The greater the point cloud distribution density, the more filtered point cloud data there is in the space. Since the building has surface regularity, after obtaining the point cloud distribution density of the filtered point cloud data in each third stereoscopic space, the semantic information corresponding to each third stereoscopic space can be determined by the preset optimization conditions and the point cloud distribution density of each area in each third stereoscopic space.
[0196] Furthermore, in the present application, the spatial planning process can be understood as integer planning process, and the third three-dimensional space whose semantic information is the interior of the building is marked as 1, and the third three-dimensional space whose semantic information is the exterior of the building is marked as 0, and integer planning process is performed based on this. Specifically, the optimization conditions include: if there are multiple adjacent third three-dimensional spaces whose point cloud distribution densities are all greater than a preset first density threshold, the filtered point cloud data in these multiple third three-dimensional spaces are obtained, and the semantic information of the third three-dimensional space where the center point of these multiple filtered point cloud data is located is determined as the interior of the building (which can be understood as marking this third three-dimensional space as 1); if the filtered point cloud data in two adjacent third three-dimensional spaces are concentrated at the interface of the two third three-dimensional spaces, the semantic information of the third three-dimensional space closest to the third three-dimensional space whose semantic information is the interior of the building is determined as the interior of the building (this third three-dimensional space is marked as 1), and the semantic information of the other third three-dimensional space is determined as the exterior of the building (this third three-dimensional space is marked as 0); for the third three-dimensional space whose semantic information is not determined, if the filtered point cloud data in the third three-dimensional space is not concentrated, the semantic information of the third three-dimensional space closest to the third three-dimensional space whose semantic information is the interior of the building is determined as the interior of the building (this third three-dimensional space is marked as 1), and the semantic information of the other third three-dimensional space is determined as the exterior of the building (this third three-dimensional space is marked as 0); for the third three-dimensional space whose semantic information is not determined, If the filtered point cloud data in the third stereoscopic space is not concentrated on the interface between the third stereoscopic space and other adjacent third stereoscopic spaces, and the number of third stereoscopic spaces whose adjacent semantic information is that the third stereoscopic space is inside the building reaches a preset planning threshold (the number of third stereoscopic spaces whose adjacent semantic information is marked as 1 reaches the preset planning threshold), the semantic information of the third stereoscopic space is determined as the inside of the building (the third stereoscopic space is marked as 1); for the third stereoscopic space whose semantic information is not determined, if the filtered point cloud data in the third stereoscopic space is not concentrated on the interface between the third stereoscopic space and other adjacent third stereoscopic spaces, and the number of third stereoscopic spaces whose adjacent semantic information is that the third stereoscopic space is inside the building is less than the planning threshold (the number of third stereoscopic spaces whose adjacent semantic information is marked as 1 is less than the planning threshold), the semantic information of the third stereoscopic space is determined as the outside of the building (the third stereoscopic space is marked as 0).
[0197] It can be imagined that the wall of the building separates the interior of the building from the exterior of the building. Based on this, after determining the semantic information corresponding to each third three-dimensional space, the semantic information of the interface of the third three-dimensional space can be determined based on the semantic information corresponding to each third three-dimensional space. Specifically, the interface between the third three-dimensional space whose semantic information is the interior of the building and the third three-dimensional space whose semantic information is the exterior of the building can be used as the building surface. That is, the interface between the third three-dimensional space marked as 0 and the third three-dimensional space marked as 1 is used as the building surface. Multiple adjacent building surfaces can be enclosed into a closed building surface. Based on this, multiple closed building surfaces, that is, building surface information, can be generated based on generating multiple building surfaces.
[0198] In one embodiment, referring to Fig.17 , step 160 comprises:
[0199] Step 1710: semantically identify the building surface information to obtain surface semantic information;
[0200] Step 1720: Perform surface triangulation processing on the building footprint information, the building outline information, and the building surface information respectively based on the surface semantic information to determine a first reconstruction model corresponding to the building footprint information, a second reconstruction model corresponding to the building outline information, and a third reconstruction model corresponding to the building surface information;
[0201] Step 1730: Generate a three-dimensional city model based on the first reconstruction model, the second reconstruction model, and the third reconstruction model.
[0202] It is understandable that the urban semantic model standard OGC CityGML3.0 requires the semantics of each surface to be marked in the level 2 detail level LoD2, that is, whether the surface belongs to the roof, wall or ground. Therefore, it is necessary to perform semantic identification processing on the building surface information equivalent to LoD2 to obtain the surface semantic information.
[0203] Then, based on the surface semantic information, the building footprint information, building outline information and building surface information are respectively subjected to surface triangulation processing to simplify the complex surface into small triangular meshes that are easy to process, thereby obtaining the first reconstruction model corresponding to the building footprint information, the second reconstruction model corresponding to the building outline information and the third reconstruction model corresponding to the building surface information. Compared with the original data, the first reconstruction model, the second reconstruction model and the third reconstruction model can reduce the amount of calculation caused by subsequent calculations. Among them, surface triangulation processing refers to the process of dividing a complex surface into a series of interconnected but non-overlapping triangles.
[0204] Finally, by integrating the first reconstruction model, the second reconstruction model and the third reconstruction model, a city 3D model can be obtained. In this application, the city 3D model can be expressed not only as a visual 3D model, but also as a CityJson file, which is a file format that complies with the city semantic model standard OGC CityGML3.0.
[0205] In one embodiment, referring to Fig.18 , step 1710 includes:
[0206] Step 1810: for the building surface in the building surface information, calculate the distance between each filtered point cloud data and the building surface, sort the filtered point cloud data from near to far according to the distance between the filtered point cloud data and the building surface, and determine the filtered point cloud data with the largest number of neighborhood points in the front sort as the candidate filtered point cloud data;
[0207] Step 1820: If the average value of the distances between the plurality of candidate filtered point cloud data and the ground is less than a preset distance threshold, the surface semantic information of the building surface is determined as the ground;
[0208] Step 1830: if the ratio of the number of candidate filtered point cloud data as the roof point cloud to the total number of candidate filtered point cloud data is greater than a first ratio threshold, and the average value of the distances between the plurality of candidate filtered point cloud data and the ground is greater than a distance threshold, the surface semantic information of the building surface is determined to be a roof;
[0209] Step 1840: For a building surface whose surface semantic information has not been determined, determine the surface semantic information of the building surface as a wall surface.
[0210] It can be understood that in order to determine the semantics corresponding to each building surface in the building surface information, it is first necessary to calculate the distance between each filtered point cloud data and the building surface. Specifically, assuming that the filtered point cloud data can be represented as (x0, y0, z0) in three-dimensional space, and the building surface can be represented as ax+by+cz+d=0 in three-dimensional space. Then the distance between the filtered point cloud data and the building surface is
[0211] After determining the distance between each filtered point cloud data and the building surface, the filtered point cloud data can be sorted from near to far according to the distance between the filtered point cloud data and the building surface to determine the several filtered point cloud data closest to the building surface, that is, the filtered point cloud data with the largest number of neighborhood points sorted in front. In order to distinguish these filtered point cloud data closest to the building surface from other filtered point cloud data, these filtered point cloud data are determined as candidate filtered point cloud data.
[0212] According to an embodiment of the present application, if the average value of the distances between multiple candidate filtered point cloud data and the ground is less than a preset distance threshold, it means that the distances between most of the candidate filtered point cloud data on the building surface and the ground are very small, and the surface semantic information of the building surface can be determined as the ground. The distance threshold refers to the maximum value of the average value of the distances between the candidate filtered point cloud data and the ground on the building surface whose semantic information is the ground as allowed by the present application.
[0213] If the ratio of the number of candidate filtered point cloud data as roof point clouds to the total number of candidate filtered point cloud data is greater than the first ratio threshold, and the average value of the distances between multiple candidate filtered point cloud data and the ground is greater than the distance threshold, it means that most of the candidate filtered point cloud data on the building surface are roof point clouds, and the distances between these candidate filtered point cloud data and the ground are large. At this time, the surface semantic information of the building surface can be determined as the roof.
[0214] Since the building surfaces at the LoD2 level in the urban semantic model standard can have three semantics, namely ground, roof and wall. In the above steps, the building surfaces whose surface semantic information is ground and the building surfaces whose surface semantic information is roof have been determined. At this time, the surface semantic information of the building surfaces whose surface semantic information has not been determined can be determined as wall.
[0215] In one embodiment, referring to Fig.19 , step 1730 includes:
[0216] Step 1910: perform semantic normalization processing on the first reconstructed model, the second reconstructed model, and the third reconstructed model to obtain a first geometric attribute corresponding to the first reconstructed model, a second geometric attribute corresponding to the second reconstructed model, and a third geometric attribute corresponding to the third reconstructed model;
[0217] Step 1920: determining the first geometric attribute as a first detail level of the city three-dimensional model, determining the second geometric attribute as a second detail level of the city three-dimensional model, and determining the third geometric attribute as a third detail level of the city three-dimensional model;
[0218] Step 1930: Generate a three-dimensional city model based on the first level of detail, the second level of detail, and the third level of detail.
[0219] It is understandable that the expressions of the first reconstruction model, the second reconstruction model and the third reconstruction model are different. In order to facilitate subsequent better understanding and processing, the first reconstruction model, the second reconstruction model and the third reconstruction model can be semantically normalized. The semantic normalization process refers to converting the vocabulary and grammatical structures in the three reconstruction models into a unified standard form.
[0220] Furthermore, when the expression form of the city three-dimensional model is a file in the format of the city semantic model standard OGC CityGML3.0, after determining the first geometric attribute corresponding to the first reconstruction model, the second geometric attribute corresponding to the second reconstruction model, and the third geometric attribute corresponding to the third reconstruction model, the first geometric attribute can be written into the file of the LoD0 level corresponding to the city three-dimensional model, that is, the first geometric attribute is determined as the first detail level of the city three-dimensional model. Similarly, the second geometric attribute can be written into the file of the LoD1 level corresponding to the city three-dimensional model, that is, the second geometric attribute is determined as the second detail level of the city three-dimensional model. The third geometric attribute can be written into the file of the LoD2 level corresponding to the city three-dimensional model, that is, the third geometric attribute is determined as the third detail level of the city three-dimensional model. Based on the above steps, a file in the format of the city semantic model standard OGC CityGML3.0 can be generated.
[0221] Second, refer to Fig.21 , an embodiment of the present application provides an electronic device, including:
[0222] at least one memory 200;
[0223] at least one processor 100;
[0224] at least one program;
[0225] The program is stored in the memory 200, and the processor 100 executes at least one program to implement:
[0226] A method for constructing a three-dimensional city model as in any embodiment of the first aspect of the present application.
[0227] The processor 100 and the memory 200 may be connected via a bus or in other ways.
[0228] The memory 200, as a non-transitory readable storage medium, can be used to store non-transitory software instructions and non-transitory instructables. In addition, the memory 200 may include a high-speed random access memory 200, and may also include a non-transitory memory 200, such as at least one disk storage device 200, a flash memory device, or other non-transitory solid-state storage device 200. It is understood that the memory 200 may optionally include a memory 200 remotely arranged relative to the processor 100, and these remote memories 200 may be connected to the processor 100 via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0229] The processor 100 executes non-transitory software instructions, commands and signals stored in the memory 200, thereby performing various functional applications and data processing, that is, implementing the method for constructing a three-dimensional urban model of the first aspect of the embodiment.
[0230] The non-transient software instructions and instructions required to implement the method for constructing a three-dimensional urban model of the above-mentioned embodiment are stored in the memory 200. When executed by the processor 100, the method for constructing a three-dimensional urban model of the first aspect of the present application is executed, for example, the above-described method is executed. Figure 1 Steps S110 to S160 of the method, Figure 3 Steps S310 to S320 of the method, Figure 4 Steps S410 to S440, Figure 5 Steps S510 to S520, Figure 7 Steps S710 to S730, Fig. 9 Steps S910 to S930, Fig.10 Steps S1010 to S1030, Fig.12Steps S1210 to S1220, Fig.13 Steps S1310 to S1320, Fig.14 Steps S1410 to S1430, Fig.16 Steps S1610 to S1640, Fig.17 Steps S1710 to S1730, Fig.18 Steps S1810 to S1840, Fig.19 Steps S1910 to S1930 in .
[0231] In a third aspect, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer-executable signal, and the computer-executable signal is used to execute:
[0232] A method for constructing a three-dimensional city model according to any embodiment of the first aspect of the application.
[0233] For example, executing the above description Figure 1 Steps S110 to S160 of the method, Figure 3 Steps S310 to S320 of the method, Figure 4 Steps S410 to S440, Figure 5 Steps S510 to S520, Figure 7 Steps S710 to S730, Fig. 9 Steps S910 to S930, Fig.10 Steps S1010 to S1030, Fig.12 Steps S1210 to S1220, Fig.13 Steps S1310 to S1320, Fig.14 Steps S1410 to S1430, Fig.16 Steps S1610 to S1640, Fig.17 Steps S1710 to S1730, Fig.18 Steps S1810 to S1840, Fig.19 Steps S1910 to S1930 in .
[0234] The device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, i.e., may be located in one place, or may be distributed over multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0235] Through the description of the above embodiments, it will be appreciated by those skilled in the art that all or some steps and systems in the disclosed methods above can be implemented as software, firmware, hardware and appropriate combinations thereof. Some physical components or all physical components can be implemented as software executed by a processor, such as a central processing unit, a digital signal processor or a microprocessor, or implemented as hardware, or implemented as an integrated circuit, such as an application-specific integrated circuit. Such software can be distributed on a readable medium, and the readable medium can include a computer storage medium (or a non-transitory medium) and a communication medium (or a temporary medium). As known to those skilled in the art, the term computer storage medium includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (such as a computer-readable signal, a data structure, an instruction module or other data). Computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical disk storage, magnetic cassette, magnetic tape, disk storage or other magnetic storage device, or any other medium that can be used to store desired information and can be accessed by a computer. Furthermore, it is well known to those skilled in the art that communication media generally include computer readable signals, data structures, instruction modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and may include any information delivery media.
[0236] The embodiments of the present application are described in detail above in conjunction with the accompanying drawings, but the present application is not limited to the above embodiments, and various changes can be made within the knowledge scope of ordinary technicians in the relevant technical field without departing from the purpose of the present application.
Claims
1. A method for constructing a three-dimensional urban model, characterized in that: include: Acquire a building point cloud and preset processing parameters of a city, wherein the preset processing parameters include a neighborhood radius; Determine the normal direction of each point cloud data in the building point cloud based on the neighborhood radius; Dividing the point cloud data in the building point cloud into a vertical point cloud and a non-vertical point cloud based on the normal direction, determining a plurality of first plane regions corresponding to the vertical point cloud, and determining building footprint information based on projections of the non-vertical point cloud on the first plane regions; generating building outline information based on the height of the non-vertical point cloud projected within the first plane area; Filtering the point cloud data, dividing the filtered point cloud into a wall point cloud and a roof point cloud, and performing spatial division on the three-dimensional space based on the wall point cloud and the roof point cloud to obtain building surface information; Semantic information standardization is performed on the building footprint information, the building outline information and the building surface information to obtain a three-dimensional city model.
2. The method for constructing a three-dimensional urban model according to claim 1, characterized in that: The step of obtaining the building point cloud of the city and presetting processing parameters includes: Acquire the preset processing parameters and the point cloud file path, wherein the point cloud file path indicates the storage location of the building point cloud; The building point cloud is read based on the point cloud file path.
3. The method for constructing a three-dimensional urban model according to claim 1, characterized in that: The preset processing parameters also include a maximum number of neighborhood points, and the determining of the normal direction of each point cloud data in the building point cloud based on the neighborhood radius includes: For each point cloud data in the building point cloud, determine a plurality of neighborhood point cloud data within a neighborhood range with the point cloud data as the center and the neighborhood radius as the radius; Sort the neighborhood point cloud data from near to far according to the distance between the neighborhood point cloud data and the point cloud data, and determine the neighborhood point cloud data with the largest number of neighborhood points in the front sort as candidate neighborhood point cloud data; Calculating the point cloud covariance of each candidate neighborhood point cloud data and the point cloud data, and performing fitting processing based on the point cloud covariance to obtain a fitting plane; The normal vector of the fitting plane is determined as the normal direction of the point cloud data.
4. The method for constructing a three-dimensional urban model according to claim 1, characterized in that: The determining of a plurality of first plane areas corresponding to the vertical point cloud comprises: Projecting the vertical point cloud onto a first horizontal plane; Divide the first plane into a plurality of plane grids, and determine the projection of the vertical point cloud on the plane grids as a first voxel point; Performing straight line detection processing on the first voxel point by using a random sampling consistency algorithm to obtain a plurality of projection straight lines; The first plane is divided into a plurality of first plane regions based on the projection straight line.
5. The method for constructing a three-dimensional urban model according to claim 4, characterized in that: The performing straight line detection processing on the first voxel point by using a random sampling consistency algorithm to obtain a plurality of projection straight lines includes: Selecting one of the first voxel points in each of the two different plane grids, and fitting the two first voxel points to obtain a plane fitting line; Calculating the distances from other first voxel points except the first voxel points at both ends of the plane fitting line to the plane fitting line, and if the distance from the first voxel point to the plane fitting line is less than a preset distance threshold, determining the first voxel point as an inner point corresponding to the plane fitting line; For each plane fitting line, when the number of inner points corresponding to the plane fitting line reaches a preset inner point threshold, the plane fitting line is determined as the projection line, and the first voxel points at both ends of the plane fitting line and the inner points corresponding to the plane fitting line are removed from the multiple first voxel points, and the process returns to the step of selecting one first voxel point in each of the two different plane grids until the number of the first voxel points is less than the preset voxel point number threshold, or the number of fittings performed on the two first voxel points reaches the preset fitting number threshold.
6. The method for constructing a three-dimensional urban model according to claim 4, characterized in that: The preset processing parameters also include a projection threshold, and the determining of the building footprint information based on the projection of the non-vertical point cloud on the first plane area includes: Projecting the non-vertical point cloud onto the first plane; Divide the first plane into a plurality of plane grids, and determine the projection of the non-vertical point cloud on the plane grids as a second voxel point; For each of the first plane regions, a projection area of the second voxel point in the first plane region is calculated; if a ratio of the projection area of the second voxel point to the area of the first plane region reaches the projection threshold, the first plane region is determined as building footprint information.
7. The method for constructing a three-dimensional urban model according to claim 1, characterized in that: The generating building outline information based on the height of the non-vertical point cloud projected within the first plane area comprises: If the first plane area is the building footprint information, determining an average point cloud height based on the heights of a plurality of the non-vertical point clouds projected within the first plane area; Taking the first plane area as a building cross section, taking the average value of the point cloud height as the building height, and generating a building prism based on the building cross section and the building height; The building outline information is generated based on a plurality of the building prisms.
8. The method for constructing a three-dimensional urban model according to claim 1, characterized in that: The filtering process on the point cloud data comprises: Dividing the three-dimensional space into a plurality of first three-dimensional spaces, and determining the first three-dimensional space where the point cloud data exists as a second three-dimensional space; The center point of the second stereoscopic space is determined as the filtered point cloud data after filtering, and the set of the filtered point cloud data is used as the filtered point cloud.
9. The method for constructing a three-dimensional urban model according to claim 1, characterized in that: The step of dividing the filtered point cloud into a wall point cloud and a roof point cloud comprises: Determine the normal direction of each filtered point cloud data in the filtered point cloud based on the neighborhood radius; The filtered point cloud data whose normal direction is parallel to the horizontal plane is determined as the wall point cloud, and the other filtered point cloud data except the wall point cloud is determined as the roof point cloud.
10. The method for constructing a three-dimensional urban model according to claim 1, characterized in that: The spatial division of the three-dimensional space based on the wall point cloud and the roof point cloud to obtain the building surface information includes: Determine the plurality of second plane regions corresponding to the wall point cloud and the plurality of third plane regions corresponding to the roof point cloud respectively by a random sampling consistency algorithm; Dividing the three-dimensional space into a plurality of third three-dimensional spaces based on the second plane area and the third plane area; The third three-dimensional space is subjected to space planning processing, and the building surface information is determined based on a plurality of semantic information obtained after space planning.
11. The method for constructing a three-dimensional urban model according to claim 10, characterized in that: The performing space planning processing on the third three-dimensional space and determining the building surface information based on a plurality of semantic information obtained after the space planning includes: Obtaining the point cloud distribution density of the filtered point cloud data in each third stereoscopic space; Determining semantic information corresponding to each third three-dimensional space based on a preset optimization condition and the point cloud distribution density; The interface between the third three-dimensional space whose semantic information is the interior of the building and the third three-dimensional space whose semantic information is the exterior of the building is taken as the building surface; The building surface information is generated based on each of the building surfaces.
12. The method for constructing a three-dimensional urban model according to claim 11, characterized in that: The optimization conditions include: If there are multiple adjacent third three-dimensional spaces whose point cloud distribution densities are all greater than a preset first density threshold, the filtered point cloud data in the multiple third three-dimensional spaces are obtained, and the semantic information of the third three-dimensional space where the center point of the multiple filtered point cloud data is located is determined as the interior of the building; If the filtered point cloud data in two adjacent third three-dimensional spaces are concentrated on the interface of the two third three-dimensional spaces, the semantic information of the third three-dimensional space closest to the third three-dimensional space whose semantic information is the interior of the building is determined as the interior of the building, and the semantic information of the other third three-dimensional space is determined as the exterior of the building; For a third three-dimensional space whose semantic information is not determined, if the filtered point cloud data in the third three-dimensional space is not concentrated on the interface between the third three-dimensional space and other adjacent third three-dimensional spaces, and the number of third three-dimensional spaces whose semantic information is the interior of a building adjacent to the third three-dimensional space reaches a preset planning threshold, the semantic information of the third three-dimensional space is determined to be the interior of the building; For the third three-dimensional space with undetermined semantic information, if the filtered point cloud data in the third three-dimensional space is not concentrated on the interface between the third three-dimensional space and other adjacent third three-dimensional spaces, and the number of third three-dimensional spaces whose adjacent semantic information is inside the building is less than the planning threshold, the semantic information of the third three-dimensional space is determined to be outside the building.
13. The method for constructing a three-dimensional urban model according to claim 1, characterized in that: The step of performing semantic information standardization processing on the building footprint information, the building outline information and the building surface information to obtain a three-dimensional city model includes: Performing semantic identification processing on the building surface information to obtain surface semantic information; Based on the surface semantic information, surface triangulation processing is performed on the building footprint information, the building outline information and the building surface information respectively to determine a first reconstruction model corresponding to the building footprint information, a second reconstruction model corresponding to the building outline information and a third reconstruction model corresponding to the building surface information; The three-dimensional city model is generated based on the first reconstruction model, the second reconstruction model and the third reconstruction model.
14. The method for constructing a three-dimensional urban model according to claim 13, characterized in that: The performing semantic identification processing on the building surface information to obtain surface semantic information includes: For the building surface in the building surface information, calculate the distance between each filtered point cloud data and the building surface, sort the filtered point cloud data from near to far according to the distance between the filtered point cloud data and the building surface, and determine the filtered point cloud data with the largest number of neighborhood points in the front sort as candidate filtered point cloud data; If the average value of the distances between the plurality of candidate filtered point cloud data and the ground is less than a preset distance threshold, determining the surface semantic information of the building surface as the ground; If the ratio of the number of candidate filtered point cloud data as the roof point cloud to the total number of candidate filtered point cloud data is greater than the first ratio threshold, and the average value of the distances between the plurality of candidate filtered point cloud data and the ground is greater than the distance threshold, the surface semantic information of the building surface is determined to be a roof; For a building surface whose surface semantic information has not been determined, the surface semantic information of the building surface is determined as a wall surface.
15. The method for constructing a three-dimensional urban model according to claim 13, characterized in that: The generating the city three-dimensional model based on the first reconstruction model, the second reconstruction model and the third reconstruction model comprises: Performing semantic normalization processing on the first reconstruction model, the second reconstruction model, and the third reconstruction model to obtain a first geometric attribute corresponding to the first reconstruction model, a second geometric attribute corresponding to the second reconstruction model, and a third geometric attribute corresponding to the third reconstruction model; Determine the first geometric attribute as a first detail level of the city three-dimensional model, determine the second geometric attribute as a second detail level of the city three-dimensional model, and determine the third geometric attribute as a third detail level of the city three-dimensional model; The three-dimensional city model is generated based on the first level of detail, the second level of detail, and the third level of detail.
16. An electronic device, characterized in that: include: at least one memory; at least one processor; at least one program; The program is stored in the memory, and the processor executes at least one of the programs to implement: A method for constructing a three-dimensional city model as claimed in any one of claims 1 to 15.
17. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer-executable signal, wherein the computer-executable signal is used to execute: A method for constructing a three-dimensional city model as claimed in any one of claims 1 to 15.
Citation Information
Patent Citations
City building entity modeling method based on content awareness
CN115619963A
Three-dimensional city building simple model reconstruction method and system based on global optimization
CN116797758A
Computer-implemented method for computing an envelope for a building complying with shadow duration requirements
US20190065632A1
Cited By
Wall surface adjacent floor height difference over-limit identification and positioning method
CN120612361A
