CN111209828B - Method and system for extracting building roof vertex from airborne laser radar point cloud - Google Patents
Method and system for extracting building roof vertex from airborne laser radar point cloud Download PDFInfo
- Publication number
- CN111209828B CN111209828B CN201911405452.7A CN201911405452A CN111209828B CN 111209828 B CN111209828 B CN 111209828B CN 201911405452 A CN201911405452 A CN 201911405452A CN 111209828 B CN111209828 B CN 111209828B
- Authority
- CN
- China
- Prior art keywords
- points
- point
- cluster
- building
- area
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
- G06V20/176—Urban or other man-made structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
The invention discloses a method and a system for extracting building roof vertexes from airborne laser radar point clouds, wherein the method for extracting the building roof vertexes divides the airborne laser radar point clouds in a survey area into a plurality of clusters through three-dimensional Euclidean clustering, calculates the Laplacian of DSM for the cluster with larger area, and divides the points in the clusters into the building roof vertexes if the pixel occupation ratio of the Laplacian smaller than a flatness threshold value is higher; for clusters with smaller areas, points on the roof of the building are extracted by adopting an improved RANSAC algorithm. The method can solve the problems of high calculation complexity and low execution efficiency when the plane roof point of the building is extracted, can also avoid classifying non-building tree points into the roof top point of the building, and improves the efficiency and the accuracy of extracting the roof point of the building.
Description
Technical Field
The invention belongs to the technical field of airborne laser radar point cloud data processing, and particularly relates to a method and a system for extracting points falling on a building roof from airborne laser radar point cloud.
Background
Airborne LiDAR (laser radar) is one of the most efficient And fastest-developed large-area surveying And mapping means in the current surveying And mapping field. The method is characterized in that the distance measurement is carried out by using a laser to emit and receive high-energy laser pulses, a GNSS (Global Navigation Satellite System) receiver gives a real-time position of the laser, an INS (Inertial Navigation System) gives a real-time three-dimensional attitude of the laser, and a three-dimensional coordinate of a scattering surface can be calculated by using a vector formula and coordinate conversion. By means of mechanical scanning devices, airborne LiDAR can achieve large area measurements. Currently, the transmission frequency of airborne LiDAR is commonly up to hundreds of KHZ and beyond, and even 2000 KHZ. This means that a lidar can acquire hundreds of thousands or even millions of points a second, without taking into account multi-echoes and no echoes. Thus, airborne LiDAR can obtain a large number of points, called point clouds, in a short amount of time.
In the preliminarily processed airborne LiDAR point cloud, point attributes provided include echo intensity, echo for the next time, data acquisition time, and the like, in addition to point coordinates. However, the system lacks semantic information, cannot give the physical properties of a scattering surface on which laser pulses are directed, and does not know whether the measurement is ground, buildings, vegetation, birds, or the like. While in constructing a DEM (Digital elevation model) points on the ground must be used, in constructing a three-dimensional building model points on the building must be used, and in forest mapping points on trees must be used. Therefore, classifying point clouds to determine on which basic ground object type the point is located is one of the most important fundamental jobs in airborne LiDAR data processing.
On-board LiDAR point clouds, particularly those covering residential areas, often contain points that fall on buildings. The points falling on the building are extracted, and the method can be used for three-dimensional modeling of the building, DSM (Digital Surface Model) generation, city planning and the like. Building point extraction is a hot problem for point cloud data processing.
Researchers have proposed many methods to extract building points from airborne LiDAR point clouds, both point cloud-based and image-based. Image-based methods (see xu literature, yangbishen, welfare, et al. LiDAR point cloud data building and crown extraction [ J ]. survey and drawing, 2013, 42 (1): 51-58.) in a multi-marker process interpolate the point cloud into an image, then typically extract the pixels containing the building by some image analysis method, thereby enabling the extraction of building points and the tracking of boundaries. Point cloud-based methods generally extract points located on a local plane from discrete point clouds as roof vertices using RANSAC (random sampling consistency, see patent CN105139379B) algorithm or Hough transform (see yuan chenxin, Hough transform-based building point cloud data feature extraction and three-dimensional modeling, 2019, the university of east china physics, university) or seed point-based region growing algorithm (see patents CN104036544B and CN 107944383 a).
However, both image-based and point cloud-based methods have significant problems. The image-based method usually loses information in the original point cloud, and particularly, the vertical structure information of ground objects reflected by the vertical distribution of the point cloud has a poor effect on extracting buildings covered by trees. In addition, the flat-topped vegetation which is manually trimmed is easily divided into roof peaks by mistake. The algorithm based on region growing needs to give a normal vector included angle threshold and a curvature threshold, and values of the two thresholds are influenced by data quality and roof flatness and are difficult to determine simply. More importantly, the roof points extracted by the method are not complete, and a large number of roof points which are missed to be detected often exist. The Hough transformation extraction plane needs three parameters, the Hough transformation of the three parameters is very complex, the three parameters need to be partitioned in a three-dimensional Hough space,used as a partition of an accumulator to vote. The granularity of spatial partitioning directly affects the effect of subsequent plane detection, and errors often exist in the detection result. The computational complexity is high in point cloud size, requiring a large amount of storage space. The RANSAC-based method has the basic idea that 3 points are randomly extracted from a point cloud to construct a plane model, and whether other points can be well fitted by using the plane is tested. The above process is repeatedly performed many times. Assuming that the point cloud has N points, randomly taking 3 points to haveA non-repeating combination. As N increases, the number of combinations increases rapidly. If N is up to ten thousand,will be an astronomical number. The number of random samples is limited, which results in a significantly reduced probability of finding a robust model. Even if the random sampling times are increased to a limited extent, the problem is not solved significantly, but the calculation time is prolonged significantly. From this point of view, the RANSAC method is not suitable for the case of a large number of points. Furthermore, RANSAC theoretically may derive some models even for randomly distributed points. For example, in forest point clouds, RANSAC can also be used to detect some planes, and the points on the planes may be enough. In this case, it is difficult for the conventional RANSAC to ensure that the plane comes from a building rather than a non-building.
In order to overcome the defects of RANSAC, the RANSAC method is urgently needed to be improved, so that the RANSAC method is more suitable for carrying out plane extraction on massive airborne LiDAR point clouds, distinguishing forests and building roofs, and improving the extraction efficiency and accuracy.
Disclosure of Invention
The purpose of the invention is as follows: the invention aims to solve the problems of high calculation complexity and low execution efficiency when plane roof points of a building are extracted by using a RANSAC method in airborne LiDAR point cloud, and avoid classifying non-building points into building roof points so as to improve the efficiency and accuracy of roof point extraction of the building.
The technical scheme is as follows: the invention discloses a method for extracting building roof points from airborne laser radar point cloud, which comprises the following steps:
(1) acquiring airborne laser radar point cloud of a survey area; performing three-dimensional Euclidean clustering on point classes possibly comprising a building roof; calculating the average ground clearance of the point clouds in each cluster, processing each cluster with the average ground clearance larger than the height threshold according to the steps 2-4, and extracting the top point of the building house;
(2) generating a current cluster CpCorresponding DSM, obtain CpNumber of active pixels N in DSMvalidCalculating CpProjected area A on XY planeC;
(3) If C is presentpProjected area A ofCGreater than or equal to the area threshold, calculating Laplacian L in DSMpLess than a flatness threshold LTOf the DSM active pixel total number NvalidRatio P ofLaplacianIf said ratio is greater than a flat-top proportion threshold PLaplacian_TThen cluster C is currentlypAll points in (a) are points on the roof of the building;
(4) if C is presentpProjected area A ofCIf the area is smaller than the area threshold, judging according to the following steps:
(4.1) translating the current cluster CpTo obtain Ctmp,CtmpThe center of gravity of (2) is at the origin of coordinates; initializing a current number of samples NS0; initialization CtmpIf all the points are not extracted, emptying the effective model sequence and the optimal model sequence;
(4.2) if the current sampling time NSUp to the maximum number of samples NS_TSkipping to step 4.5;
from CtmpThe point p in which the random extraction state is not extracted0 A 1 is to p0Is modified to extracted, find CtmpInner distance p0Three nearest neighbourhood points p1、p2、p3(ii) a If p is1、p2、p3Distance p0All the distances of (a) are sufficiently small, and four points can be fitted by using planes, and fitting is calculatedPlane Pfit(ii) a Otherwise, the current sampling times are NSAdding one, and re-executing the step 4.2;
(4.3) calculation of CtmpFrom each point to plane PfitThe distance of (d); setting the distance less than a flatness threshold LTThe points of (2) constitute an interior point set Cinlier(ii) a If set CinlierThe number of the medium points is less than the threshold value of the minimum clustering points, and the current sampling times NSAdding one, and re-executing the step 4.2; else for set CinlierPerforming three-dimensional Euclidean clustering again;
(4.4) if only one cluster is obtained in step 4.3, the plane P is assignedfitAdding an effective model sequence;
current number of samples NSAdding one, and re-executing the step 4.2;
(4.5) traversing the effective model sequence, searching the effective model with the largest number of interior points as an optimal model, and adding the optimal model sequence; from CtmpRemoving points in the internal point set corresponding to the optimal model, and initializing the current sampling times N if the remaining points are greater than the threshold of the minimum clustering pointss0; initialization CtmpIf all the points are not extracted, emptying the effective model sequence and the optimal model sequence, and skipping to the step 4.2;
(4.6) calculation of CpMinimum distance d between each point in the interior and the plane in the optimal model sequenceminD is mixingminLess than a flatness threshold LTThe points of (2) constitute a set Cinlier_all(ii) a If C is presentinlier_allNumber of points CpThe proportion of the number of the medium points is greater than the threshold value Pinlier_all_TThen C will beinlier_allThe point in (1) is divided into building roof points.
On the other hand, the invention also discloses a system for realizing the method for extracting the roof points of the building, which comprises the following steps:
the airborne laser radar point cloud clustering module is used for acquiring airborne laser radar point cloud of the survey area; clustering the acquired point cloud by adopting three-dimensional Euclidean clustering; calculating the average ground clearance of the point clouds in each cluster, and acquiring clusters with the average ground clearance larger than a height threshold; DSMA generating module for generating corresponding DSM for each cluster acquired by the airborne laser radar point cloud clustering module, acquiring the effective pixel number of the cluster in the DSM, and calculating the projection area A of the cluster in the XY planeC(ii) a And according to ACDividing the clusters into a large-area cluster and a facet cluster;
the large-area clustering classification module is used for judging whether points in the large-area accumulation classes are points on the roof of the building: the judging method comprises the following steps: calculating DSM for large area clustering, and counting Laplace operator LpLess than a flatness threshold LTTotal number of pixel occupied effective pixels NvalidRatio P ofLaplacianIf said ratio is greater than a flat-top proportion threshold PLaplacian_TThen cluster the current CpAll the points in the building are divided into building roof points;
the small-area clustering classification module is used for extracting points on the roof of the building in the small-area clustering classification, and the extraction method comprises the following steps:
(4.1) translating the current small-area cluster CpTo obtain Ctmp,CtmpThe center of gravity of (2) is at the origin of coordinates; initializing a current number of samples NS0; initialization CtmpIf all the points are not extracted, emptying the effective model sequence and the optimal model sequence;
(4.2) if the current sampling time NsUp to the maximum number of samples Ns_TSkipping to step 4.5;
from CtmpThe point p in which the random extraction state is not extracted0 A 1 is to p0Is modified to extracted, find CtmpInner distance p0Three nearest neighbourhood points p1、p2、p3(ii) a If p is1、p2、p3Distance p0Are sufficiently small, and four points can be fitted with a plane to calculate a fitted plane Pfit(ii) a Otherwise, the current sampling times are NSAdding one, and re-executing the step 4.2;
(4.3) calculation of CtmpFrom each point to plane PfitThe distance of (d); setting the distance less than a flatness threshold LTThe points of (2) constitute an interior point set Cinlier(ii) a If set CinlierThe number of the medium points is less than the threshold value of the minimum clustering points, and the current sampling times NSAdding one, and re-executing the step 4.2; else for set CinlierPerforming three-dimensional Euclidean clustering again;
(4.4) if only one cluster is obtained in step 4.3, the plane P is assignedfitAdding an effective model sequence;
current number of samples NSAdding one, and re-executing the step 4.2;
(4.5) traversing the effective model sequence, searching the effective model with the largest number of interior points as an optimal model, and adding the optimal model sequence; from CtmpRemoving points in the internal point set corresponding to the optimal model, and initializing the current sampling times N if the remaining points are greater than the threshold of the minimum clustering pointsS0; initialization CtmpIf all the points are not extracted, emptying the effective model sequence and the optimal model sequence, and skipping to the step 4.2;
(4.6) calculation of CpMinimum distance d between each point in the interior and the plane in the optimal model sequenceminD is mixingminLess than a flatness threshold LTThe points of (2) constitute a set Cinlier_all(ii) a If C is presentinlier_allNumber of points CpThe proportion of the number of the medium points is greater than the threshold value Pinlier_all_TThen C isinlier_allA point in (1) is a point on the roof of a building.
Has the advantages that: compared with the prior art, the method for extracting the building roof vertex from the airborne laser radar point cloud disclosed by the invention has the following advantages: 1. the invention adopts three-dimensional Euclidean clustering, can effectively divide the roof of a building and adjacent trees into different clusters under most conditions, and can eliminate most of non-roof tree points by carrying out Euclidean clustering on the points in the plane model after the points in the plane model are extracted, thereby improving the accuracy rate of roof point extraction; (ii) a 2. The method adopts a strategy of dividing and treating the large roof and the small roof, avoids high calculation amount and potential missing detection possibility caused by plane detection of the large roof by using RANSAC, and maintains high accuracy; 3. for the facet accumulation class, using improvementsThe RANSAC algorithm of (1); given the number of points in a cluster as N, the number of potential planar models is set fromDown to N. If N is less than the specified operation times, the random point taking actually only needs to be operated for N times; 4. the method is simple and feasible in theory and high in calculation efficiency. For 300 ten thousand points, this can typically be done in ten seconds. Multiple runs may be performed to more fully extract the roof vertices.
Drawings
FIG. 1 is a flow chart of a method for extracting a roof point of a building from an airborne laser radar point cloud according to the present disclosure;
FIG. 2 is a schematic diagram of Euclidean clustering;
FIG. 3 is a schematic diagram of construction of a DSM;
FIG. 4 is a diagram illustrating a judgment of a randomly selected point p0Whether or not to contact 3 surrounding neighborhood points p1、p2、p3A schematic diagram that can be approximately fitted with a plane;
FIG. 5 is a schematic diagram showing the components of a system for extracting the building roof vertex from the airborne lidar point cloud according to the present invention;
FIG. 6 is a diagram illustrating the effect of the present invention.
Detailed Description
The invention is further elucidated with reference to the drawings and the detailed description.
As shown in fig. 1, the invention discloses a method for extracting building roof vertex from airborne laser radar point cloud, comprising the following steps:
as shown in fig. 2, the result of euclidean clustering is to make the minimum distance d between different clusters equal to or greater than the search radius R. Parameters of the euclidean clustering algorithm include: search radius R, clustering minimumNumber of points threshold NminClustering maximum point threshold NmaxThese parameter values affect the outcome of the clustering. In the present invention, the above parameters are set as follows:
the search radius R ranges from (R)min,Rmax) R minimum value RminInversely related to the laser pulse foot point density, in this embodiment,d is the density of laser pulse foot points, which can be obtained from the aviation design. If R is less than RminThis may result in too few clusters, and a roof may be divided into multiple clusters. R maximum value RmaxThe minimum distance between adjacent buildings may be taken, such as 1.5m, 2.0m, etc. If R exceeds RmaxA plurality of roofs, trees, and the like may be gathered together, and accurate division cannot be achieved.
Nmin、NmaxPositively correlated to the minimum and maximum area of the building roof. Setting the minimum area of the roof of a building as AminMaximum area of AmaxThen N ismin、NmaxThe calculation formula of (A) is as follows:
Nmin=AminD-Q
Nmax=AmaxD+Q
where Q is an error adjustment constant, in this embodiment Q is 50. Q is used to accommodate AminD、AmaxD and the number of real minimum and maximum points of the roof.
Calculating the average ground clearance of the point clouds in the cluster, comprising:
(1.1) acquiring the ground height of each point in the cluster;
the ground height of one point can be obtained by constructing a two-dimensional index on the existing known ground points and carrying out nearest neighbor query, and can also be obtained by querying DEM data of other sources. If the known ground point calculation is used, a two-dimensional index T needs to be constructed for the known ground point by utilizing the XY coordinates of the known ground pointgrd。TgrdEither KD or octree indexing. Setting clusters to be computedThe coordinate of the nth point is (X)n,Yn,Hn) By using TgrdQuery for distance (X) in XY planen,Yn) The number of the nearest ground points G, and then obtaining the three-dimensional coordinates of G, and taking the elevation of G as the ground height H corresponding to the nth point in the clusterTn;
(1.2) calculating the height from the ground of each point in the cluster: △ Hn=Hn-HTn;
n is the total number of points within the cluster.
Since a building roof is generally at least a certain height above the ground, e.g. 2.5m, if Δ HmeanLess than a given height threshold Δ Hmean_TThen the cluster is deemed not to represent a building if Δ HmeanIs greater than or equal to Δ Hmean_TProcessing according to the step 2-4 to determine points belonging to the building roof;
in this example,. DELTA.Hmean_TThe value is 2.5 m.
(2.1) calculation of CpMinimum X coordinate of midpoint XminMaximum X coordinate XmaxMinimum Y coordinate YminMaximum Y coordinate Ymax(ii) a Will be expressed by (X)min,Ymin)、(Xmax,Ymax) Rectangular region partitioning into N for diagonal verticesrowLine, NcolA grid of column, grid size R, wherein:
Nrow=int(Ymax-Ymin)/R+ 1
Ncol=int(Xmax-Xmin)/R+ 1
r is the search radius of the three-dimensional Euclidean cluster, and int (·) is an integer function;
(2.2) adding CpThe point in (C) is assigned to the pixel in the grid according to its X, Y coordinate, resulting in the current cluster CpA corresponding DSM;
(2.3) traversing the pixels in the grid; if a pixel has a point, the pixel is identified as an effective pixel, the height index of the point is taken as the value of DSM, and the DSM value of the pixel without the point is set as Hinvalid(ii) a As shown in fig. 3, a white pixel is a pixel where no point falls, and a gray pixel is a pixel where a point falls; the height indexes are as follows: the minimum elevation value of the falling point, or the maximum elevation value of the falling point, or the average elevation value of the falling point;
(2.4) traversing DSM pixel by pixel, and counting the number N of effective pixelsvalid;CpProjected area A on XY planeCComprises the following steps: a. thec=NvalidR2。
If A isCGreater than or equal to a specified area threshold AC_TThen, consider CpClustering in large area; otherwise CpClustering for small area.
Step 3, calculating Laplacian L in DSM for large-area clusteringpLess than a flatness threshold LTTotal number of pixel occupied effective pixels NvalidRatio P ofLaplacianIf said ratio is greater than a flat-top proportion threshold PLaplacian_TThen cluster C is currentlypAll points in (a) are points on the roof of the building;
laplacian L of DSM at pixel (i, j)p(i, j) is:
flatness threshold LTOf values and point cloudsThe relative error is positively correlated, and in this example, 0.10-0.20m is taken. Let Laplace operator LpValue less than LTHas N pixelsplaneAnd then:
if P isLaplacianGreater than or equal to a given flat top ratio threshold PLaplacian_TThen, consider CpIs a building consisting of flat tops, and is characterized in thatpThe interior points are all divided into building points. Roof with larger area and simpler structure, PLaplacian_TThe larger the value can be, the value is 0.6 in this embodiment.
Step 4, if clustering the area A of the projection areaCJudging C by adopting an improved RANSAC algorithm when the area is smaller than the area threshold valuepThe midpoint classification, the steps are as follows:
(4.1) translating the current cluster CpTo obtain CtmpLet C betmpThe center of gravity of (2) is at the origin of coordinates;
compute cluster CpCenter of gravity O ofp(XOp,YOp,HOp):
CtmpThe coordinates of the nth point in (1) are: (X)n-XOp,Yn-YOp,Hn-HOp) Then C istmpThe center of gravity of (2) is at the origin of coordinates;
initializing a current number of samples NS0; initialization CtmpIf all the points are not extracted, emptying the effective model sequence and the optimal model sequence;
(4.2) if the current sampling time NSUp to the maximum number of samples NS_TSkipping to step 4.5; maximum number of samples Ns_TThe value is a preset value, the value of the preset value does not exceed the number N of the points in the current cluster at most, and the value in the embodiment is 100;
from CtmpThe point p in which the random extraction state is not extracted0A 1 is to p0Is modified to extracted, find CtmpInner distance p0Three nearest neighbourhood points p1、p2、p3(ii) a If p is1、p2、p3Distance p0Are sufficiently small, and four points can be fitted with a plane to calculate a fitted plane Pfit(ii) a Otherwise, the current sampling times are NSAdding one, and re-executing the step 4.2;
in this embodiment, p is judged1、p2、p3And p0Whether the Euclidean distances are all smaller than R or not is judged, if not, the distances are not small enough, the neighborhood relationship is not stable enough, and the four points cannot be used for stably estimating the local plane; if yes, judging whether the four points can be approximately fitted by using a plane, wherein the judgment method can adopt least square fitting to form the plane and then judge p1、p2、p3Whether the maximum distance to the plane is small enough or not can be judged based on the plane included angle. In view of the simplicity and high efficiency of the method based on the planar angle, the method will be described with reference to fig. 4.
p1、p2、p3And p0Forming three triangles, i.e. Δ p0p1p2、Δp0p2p3、Δp0p3p1. The normal vectors, Δ p, of these triangles are calculated0p1p2Normal vector N of012Comprises the following steps: n is a radical of012=(p1-p0)×(p2-p0) (ii) a To N012Modular normalization is performed. Δ p0p2p3Normal vector N of023、Δp0p3p1Normal vector N of031Calculations and normalization were performed using a similar method.
Calculating N012And N023Angle of (theta)0:θ0=cos-1(N012·N023);
N012And N031Angle of (theta)1、N023And N031Angle of (theta)2Calculations were performed using a similar method. cos (chemical oxygen demand)-1Is an inverse cosine function.
If theta is greater than theta0、θ1、θ2Are both close to 0 or 180, consider p0、p1、p2And p3Can use a certain plane PfitFitting is carried out; otherwise, considering that the four points can not be fitted by using a plane;
calculating PfitIs given by PfitThe equation of (a) is: ax + by + ch + d is 0;
a. b and a are components of the plane normal vector on three coordinate axes respectively, and d is ═ ax0+by0+ch0),(x0,y0,h0) Is p0The coordinates of (a).
(4.3) calculation of CtmpFrom each point to plane PfitWherein the nth point is to PfitDistance d offitnComprises the following steps:
(xtmpn,ytmpn,htmpn) Is CtmpCoordinates of the nth point;
setting the distance less than a flatness threshold LTThe points of (2) constitute an interior point set Cinlier(ii) a If set CinlierThe number of medium points is less than the threshold value N of the minimum clustering pointsminCurrent number of samples NsAdding one, and re-executing the step 4.2; else for set CinlierThree-dimensional euclidean clustering is performed again, where the parameters of euclidean clustering are set as follows:
the search radius is R, the threshold value of the minimum clustering points is 1, and the threshold value of the maximum clustering points is a set CinlierTotal number of points N ininlier;
(4.4) if only one cluster is obtained in step 4.3, the plane PfitAdding the effective model into an effective model sequence as an effective model;
current number of samples NsAdding one, and re-executing the step 4.2;
(4.5) traversing the effective model sequence, searching the effective model with the largest number of interior points as an optimal model, and adding the optimal model sequence; if the model with the largest number of interior points has a plurality of interior points, respectively calculating a set CinlierTaking the model with the minimum standard deviation as the optimal model, and adding the optimal model sequence;
from CtmpRemoving points in the internal point set corresponding to the optimal model, if the residual points are more than the clustering minimum point threshold value NminThen initialize the current sampling number Ns0; initialization CtmpIf all the points are not extracted, emptying the effective model sequence and the optimal model sequence, and skipping to the step 4.2;
(4.6) calculation of CpMinimum distance d between each point in the interior and the plane in the optimal model sequenceminD is mixingminLess than a flatness threshold LTThe points of (2) constitute a set Cinlier_all(ii) a If C is presentinlier_allNumber of points CpThe proportion of the number of the medium points is greater than the threshold value Pinlier_all_TThen, consider Cinlier_allThe building roof is divided into points in the building roof into building roof points. In this example, Pinlier_all_TThe value of (A) is 0.50.
And (4) skipping to the step (2) to judge and process the next cluster until all the clusters divided in the step (1) are processed.
The embodiment also discloses a system for implementing the method for extracting the roof point of the building from the point cloud of the airborne laser radar, as shown in fig. 5, the method includes:
the airborne laser radar point cloud clustering module is used for acquiring airborne laser radar point cloud of the survey area according to the step 1; clustering the acquired point cloud by adopting three-dimensional Euclidean clustering; calculating the average ground clearance of the point clouds in each cluster, and acquiring clusters with the average ground clearance larger than a height threshold;
the DSM generation module is used for generating a corresponding DSM for each cluster acquired by the airborne laser radar point cloud clustering module according to the step 2, acquiring the number of effective pixels clustered in the DSM and calculating the projection area of the cluster in an XY plane;
the large-area clustering classification module is used for judging whether the points in the large-area accumulation classes are the top points of the building houses or not according to the step 3;
and the small-area cluster classification module is used for judging whether the points in the small-area cluster are the top points of the building house or not according to the step 4.
FIG. 6 is a diagram illustrating the effect of the present invention, wherein FIG. 6- (a) is a high resolution optical image of a place, FIG. 6- (b) is input point cloud data, wherein the point cloud has been preliminarily classified, and FIG. 6- (c) is the classified point cloud data. Comparing fig. 6- (a) and 6- (c), it can be seen that the method of the present invention has good extraction effect for large and small buildings, flat-topped and non-flat-topped buildings, and building roof top with or without tree shelter.
The invention provides a method for extracting building roof vertexes from airborne LiDAR point clouds based on a divide-and-conquer strategy, and particularly relates to a method for quickly extracting planes from small-area clustering point clouds by using an improved RANSAC method and judging whether a model is effective or not by using clustering numbers for model interior points. There are numerous ways of implementing the technical solution and the above are only preferred embodiments of the present invention. It should be noted that numerous modifications and adaptations can be made by those skilled in the art without departing from the principles of the present invention. Such modifications and refinements are also to be considered within the scope of the present invention. All the components not specified in the present embodiment can be realized by the prior art.
Claims (10)
1. The method for extracting the building roof from the airborne laser radar point cloud is characterized by comprising the following steps of:
(1) acquiring airborne laser radar point cloud of a survey area; clustering the acquired point cloud by adopting three-dimensional Euclidean clustering; calculating the average ground clearance of the point clouds in each cluster, processing each cluster with the average ground clearance larger than the height threshold according to the steps (2) to (4), and extracting the top point of the building house;
(2) generating a current cluster CpCorresponding DSM, obtain CpNumber of active pixels N in DSMvalidCalculating CpProjected area A on XY planeC;
(3) If cluster CpProjected area ACGreater than or equal to the area threshold, calculating Laplacian L in DSMpLess than a flatness threshold LTTotal number of pixel occupied effective pixels NvalidRatio P ofLaplacianIf said ratio is greater than a flat-top proportion threshold PLaplacian_TThen cluster the current CpAll the points in the building are divided into building roof points;
(4) if clustering projected area ACIf the area is smaller than the area threshold, the judgment is carried out according to the following steps:
(4.1) translating the current cluster CpTo obtain Ctmp,CtmpThe center of gravity of (2) is at the origin of coordinates; initializing a current number of samples NS0; initialization CtmpIf all the points are not extracted, emptying the effective model sequence and the optimal model sequence;
(4.2) if the current sampling time NSUp to the maximum number of samples NS_TJumping to the step (4.5);
from CtmpThe point p in which the random extraction state is not extracted0A 1 is to p0Is modified to extracted, find CtmpInner distance p0Three nearest neighbourhood points p1、p2、p3(ii) a If p is1、p2、p3Distance p0Is sufficiently small, and four points can be approximated by plane fitting to calculate a fitting plane Pfit(ii) a Otherwise, the current sampling times are NSAdding one, and re-executing the step (4.2);
(4.3) calculation of CtmpFrom each point to plane PfitThe distance of (d); setting the distance less than a flatness threshold LTThe points of (2) constitute an interior point set Cinlier(ii) a If set CinlierThe number of the medium points is less than the threshold value of the minimum clustering points, and the current sampling times NSAdding one, and re-executing the step (4.2); else for set CinlierPerforming three-dimensional Euclidean clustering again;
(4.4) if only one cluster is obtained in step (4.3), the plane P is divided into twofitAdding an effective model sequence;
current number of samples NSAdding one, and re-executing the step (4.2);
(4.5) traversing the effective model sequence, searching the effective model with the largest number of interior points as an optimal model, and adding the optimal model sequence; from CtmpRemoving points in the internal point set corresponding to the optimal model, and initializing the current sampling times N if the remaining points are greater than the threshold of the minimum clustering pointsS0; initialization CtmpIf all the points are not extracted, emptying the effective model sequence and the optimal model sequence, and skipping to the step (4.2);
(4.6) calculation of CpMinimum distance d between each point in the interior and the plane in the optimal model sequenceminD is mixingminLess than a flatness threshold LTThe points of (2) constitute a set Cinlier_all(ii) a If C is presentinlier_allNumber of points CpThe proportion of the number of the medium points is greater than the threshold value Pinlier_all_TThen C will beinlier_allThe point in (1) is divided into building roof points.
2. The method for extracting the apex of the building according to claim 1, wherein the parameters of the three-dimensional euclidean cluster in the step (1) are set as follows:
the search radius R ranges from (R)min,Rmax) WhereinD is the density of the laser pulse foot spots, RmaxIs the minimum distance between adjacent buildings;
clustering minimum point threshold Nmin=AminD-Q
Threshold value N of maximum points of clustermax=AmaxD+Q
Wherein Q is an error regulation constant, AminFor the minimum area of the roof of a building, AmaxThe largest area of the roof of the building.
3. The method for extracting the apex of the building according to claim 1, wherein the step (1) of calculating the average height from the ground of the point cloud in the cluster comprises:
obtaining the ground height of each point in the cluster: the nth point has the coordinate of (X)n,Yn,Hn) Corresponding to ground height HTnIs the distance (X) on the XY planen,Yn) Elevation of the nearest ground point;
calculate the terrain clearance for each point in the cluster: Δ Hn=Hn-HTn;
n is the total number of points within the cluster.
4. The method for extracting the apex of the building house according to claim 1, wherein the step (2) specifically comprises:
(2.1) calculation of CpMinimum X coordinate of midpoint XminMaximum X coordinate XmaxMinimum Y coordinate YminMaximum Y coordinate Ymax(ii) a Will be expressed by (X)min,Ymin)、(Xmax,Ymax) Rectangular region partitioning into N for diagonal verticesrowLine, NcolA grid of column, grid size R, wherein:
Nrow=int(Ymax-Ymin)/R+1
Ncol=int(Xmax-Xmin)/R+1
r is the search radius of the three-dimensional Euclidean cluster, and int (·) is an integer function;
(2.2) adding CpThe points in (C) are assigned to pixels in the grid to obtain the current cluster CpA corresponding DSM;
(2.3) traversing the pixels in the grid; if a pixel has a point, the height index of the point is taken as the value of DSM, the pixel is an effective pixel, and the DSM value of the pixel without the point is set as Hinvalid(ii) a The height indexes are as follows: the minimum elevation value of the falling point, or the maximum elevation value of the falling point, or the average elevation value of the falling point;
(2.4) traversing DSM pixel by pixel, and counting the number N of effective pixelsvalid;CpProjected area A on XY planeCComprises the following steps: a. thec=NvalidR2。
6. system for follow extraction building roof summit in the airborne laser radar point cloud, its characterized in that includes:
the airborne laser radar point cloud clustering module is used for acquiring airborne laser radar point cloud of the survey area; clustering the acquired point cloud by adopting three-dimensional Euclidean clustering; calculating the average ground clearance of the point clouds in each cluster, and acquiring clusters with the average ground clearance larger than a height threshold;
a DSM generation module for generating corresponding DSM for each cluster acquired by the airborne laser radar point cloud clustering module and acquiring the DSMThe effective pixel number of the cluster in DSM, calculating the projection area A of the cluster in XY planeC(ii) a And according to ACDividing the clusters into a large-area cluster and a facet cluster;
the large-area clustering classification module is used for judging whether points in the large-area accumulation classes are points on the roof of the building: the judging method comprises the following steps: for large area clustered DSM, statistical Laplacian LpLess than a flatness threshold LTOf the DSM active pixel total number NvalidRatio P ofLaplacianIf said ratio is greater than a flat-top proportion threshold PLaplacian_TThen cluster the current CpAll the points in the building are divided into building roof points;
the small-area clustering classification module is used for extracting points on the roof of the building in the small-area clustering classification, and the extraction method comprises the following steps:
(4.1) translating the current small-area cluster CpTo obtain CtmpLet C betmpThe center of gravity of (2) is at the origin of coordinates; initializing a current number of samples NS0; initialization CtmpIf all the points are not extracted, emptying the effective model sequence and the optimal model sequence;
(4.2) if the current sampling time NSUp to the maximum number of samples NS_TJumping to the step (4.5);
from CtmpThe point p in which the random extraction state is not extracted0A 1 is to p0Is modified to extracted, find CtmpInner distance p0Three nearest neighbourhood points p1、p2、p3(ii) a If p is1、p2、p3Distance p0Is sufficiently small, and four points can be approximated by plane fitting to calculate a fitting plane Pfit(ii) a Otherwise, the current sampling times are NSAdding one, and re-executing the step (4.2);
(4.3) calculation of CtmpFrom each point to plane PfitThe distance of (d); setting the distance less than a flatness threshold LTThe points of (2) constitute an interior point set Cinlier(ii) a If set CinlierThe number of the medium points is less than the threshold value of the minimum clustering points, and the current sampling times NSAdding one, and re-executing the step (4.2); else for set CinlierPerforming three-dimensional Euclidean clustering again;
(4.4) if only one cluster is obtained in step (4.3), the plane P is divided into twofitAdding an effective model sequence;
current number of samples NSAdding one, and re-executing the step (4.2);
(4.5) traversing the effective model sequence, searching the effective model with the largest number of interior points as an optimal model, and adding the optimal model sequence; from CtmpRemoving points in the internal point set corresponding to the optimal model, and initializing the current sampling times N if the remaining points are greater than the threshold of the minimum clustering pointsS0; initialization CtmpIf all the points are not extracted, emptying the effective model sequence and the optimal model sequence, and skipping to the step (4.2);
(4.6) calculation of CpMinimum distance d between each point in the interior and the plane in the optimal model sequenceminD is mixingminLess than a flatness threshold LTThe points of (2) constitute a set Cinlier_all(ii) a If C is presentinlier_allNumber of points CpThe proportion of the number of the medium points is greater than the threshold value Pinlier_all_TThen C isinlier_allA point in (1) is a point on the roof of a building.
7. The system for extracting the vertices of the building house from the airborne lidar point cloud of claim 6, wherein the parameters of the three-dimensional euclidean clusters in the airborne lidar point cloud clustering module and the facet accumulation class classification module are set as:
the search radius R ranges from (R)min,Rmax) WhereinD is the density of the laser pulse foot spots, RmaxIs the minimum distance between adjacent buildings;
clustering minimum point threshold Nmin=AminD-Q
Threshold value N of maximum points of clustermax=AmaxD+Q
Wherein Q is an error regulation constant, AminFor the minimum area of the roof of a building, AmaxThe largest area of the roof of the building.
8. The system of claim 6, wherein the calculating the average ground clearance of the point clouds within the clusters in the airborne lidar point cloud clustering module comprises:
obtaining the ground height of each point in the cluster: the nth point has the coordinate of (X)n,Yn,Hn) Height of ground HTnIs the distance (X) on the XY planen,Yn) Elevation of the nearest ground point;
calculate the terrain clearance for each point in the cluster: Δ Hn=Hn-HTn;
n is the total number of points within the cluster.
9. The system for extracting building roof points from an onboard lidar point cloud of claim 6, wherein the DSM generation module generates cluster CpCorresponding DSM, get CpEffective pixel number in DSM and calculate cluster CpThe steps of projecting the area on the XY plane and dividing the clusters into large area clusters and small area clusters include:
(2.1) calculation of CpMinimum X coordinate of midpoint XminMaximum X coordinate XmaxMinimum Y coordinate YminMaximum Y coordinate Ymax(ii) a Will be expressed by (X)min,Ymin)、(Xmax,Ymax) Rectangular region partitioning into N for diagonal verticesrowLine, NcolA grid of column, grid size R, wherein:
Nrow=int(Ymax-Ymin)/R+1
Ncol=int(Xmax-Xmin)/R+1
r is the search radius of the three-dimensional Euclidean cluster, and int (·) is an integer function;
(2.2) adding CpThe points in (C) are assigned to pixels in the grid to obtain the current cluster CpA corresponding DSM;
(2.3) traversing the pixels in the grid; if a pixel has a point, the pixel is identified as an effective pixel, the height index of the point is taken as the value of DSM, and the DSM value of the pixel without the point is set as Hinvalid(ii) a The height indexes are as follows: the minimum elevation value of the falling point, or the maximum elevation value of the falling point, or the average elevation value of the falling point;
(2.4) traversing DSM pixel by pixel, and counting the number N of effective pixelsvalid;CpProjected area A on XY planeCComprises the following steps: a. thec=NvalidR2;
If clustering projected area ACIf the area is larger than or equal to the area threshold value, clustering CpClustering in large area;
if clustering projected area ACLess than the area threshold, cluster CpClustering for small area.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911405452.7A CN111209828B (en) | 2019-12-31 | 2019-12-31 | Method and system for extracting building roof vertex from airborne laser radar point cloud |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911405452.7A CN111209828B (en) | 2019-12-31 | 2019-12-31 | Method and system for extracting building roof vertex from airborne laser radar point cloud |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111209828A CN111209828A (en) | 2020-05-29 |
CN111209828B true CN111209828B (en) | 2020-09-25 |
Family
ID=70789444
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911405452.7A Active CN111209828B (en) | 2019-12-31 | 2019-12-31 | Method and system for extracting building roof vertex from airborne laser radar point cloud |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111209828B (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111736136B (en) * | 2020-06-23 | 2023-01-06 | 自然资源部四川测绘产品质量监督检验站(四川省测绘产品质量监督检验站) | Airborne laser point cloud aerial photography vulnerability detection method and system |
CN111932574B (en) * | 2020-09-01 | 2023-05-23 | 重庆市勘测院 | Building vertical point cloud extraction system and method based on multi-level semantic features |
CN112700465B (en) * | 2021-01-08 | 2024-02-09 | 上海建工四建集团有限公司 | Actually measured real quantity-oriented room main body point cloud extraction and part segmentation method and equipment |
CN112700227B (en) * | 2021-01-11 | 2022-05-24 | 飞燕航空遥感技术有限公司 | Method and system for calculating standard working hours of aerial survey interior work image amplitude and land class processing and application |
CN113129320B (en) * | 2021-03-31 | 2022-05-24 | 飞燕航空遥感技术有限公司 | Method and system for extracting culture pond boundary from aerial orthographic image |
CN117649495B (en) * | 2024-01-30 | 2024-05-28 | 山东大学 | Indoor three-dimensional point cloud map generation method and system based on point cloud descriptor matching |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101604450A (en) * | 2009-07-24 | 2009-12-16 | 武汉大学 | The method of integrated images and LiDAR data extract contour of building |
US10127685B2 (en) * | 2015-12-16 | 2018-11-13 | Objectvideo Labs, Llc | Profile matching of buildings and urban structures |
CN106970375B (en) * | 2017-02-28 | 2020-02-18 | 河海大学 | Method for automatically extracting building information from airborne laser radar point cloud |
CN109919944B (en) * | 2018-12-29 | 2022-09-27 | 武汉大学 | Combined superpixel graph-cut optimization method for complex scene building change detection |
CN109993783B (en) * | 2019-03-25 | 2020-10-27 | 北京航空航天大学 | Roof and side surface optimization reconstruction method for complex three-dimensional building point cloud |
-
2019
- 2019-12-31 CN CN201911405452.7A patent/CN111209828B/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN111209828A (en) | 2020-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111209828B (en) | Method and system for extracting building roof vertex from airborne laser radar point cloud | |
Brolly et al. | Algorithms for stem mapping by means of terrestrial laser scanning | |
Sohn et al. | Using a binary space partitioning tree for reconstructing polyhedral building models from airborne lidar data | |
Vosselman et al. | 3D building model reconstruction from point clouds and ground plans | |
CN110490888B (en) | Highway geometric feature vectorization extraction method based on airborne laser point cloud | |
JP2020514876A (en) | Apparatus, method and system for alignment of 3D data sets | |
CN116148808B (en) | Automatic driving laser repositioning method and system based on point cloud descriptor | |
CN113066162B (en) | Urban environment rapid modeling method for electromagnetic calculation | |
CN109241978B (en) | Method for rapidly extracting plane piece in foundation three-dimensional laser point cloud | |
CN112241661B (en) | Urban ground object refined classification method combining airborne LiDAR point cloud data and aerial image | |
CN111158015B (en) | Detection method and system for point cloud data of airborne laser radar to be wrongly divided into ground points | |
Ma | Building model reconstruction from LiDAR data and aerial photographs | |
CN114764871B (en) | Urban building attribute extraction method based on airborne laser point cloud | |
Polewski et al. | A voting-based statistical cylinder detection framework applied to fallen tree mapping in terrestrial laser scanning point clouds | |
CN114332134B (en) | Building facade extraction method and device based on dense point cloud | |
US11734883B2 (en) | Generating mappings of physical spaces from point cloud data | |
Maltezos et al. | Automatic extraction of building roof planes from airborne lidar data applying an extended 3d randomized hough transform | |
Salah et al. | Evaluation of the self‐organizing map classifier for building detection from lidar data and multispectral aerial images | |
Li et al. | Feature extraction and modeling of urban building from vehicle-borne laser scanning data | |
Lalonde et al. | Automatic three-dimensional point cloud processing for forest inventory | |
Jiangui et al. | A method for main road extraction from airborne LiDAR data in urban area | |
CN113721254A (en) | Vehicle positioning method based on road fingerprint space incidence matrix | |
CN116994029A (en) | Fusion classification method and system for multi-source data | |
Husain et al. | A time efficient algorithm for ground point filtering from mobile LiDAR data | |
CN113762310B (en) | Point cloud data classification method, device, computer storage medium and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |