Architectural planar graph automatic generation method and system based on three-dimensional point cloud
By preprocessing and projecting slices of three-dimensional point cloud data, and using area growth segmentation and topological structure to generate building floor plans, the problem of being unable to accurately segment room areas and identify doors and windows in the prior art is solved, and a higher precision floor plan generation is achieved, improving residential measurement efficiency and user experience.
Patent Information
- Application Number
- CN202510747741.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-06
- Publication Date
- 2025-07-04
- Estimated Expiration
- 2045-06-06
AI Technical Summary
In the prior art, the building plan generation method cannot accurately divide different room areas from the point cloud, and cannot identify and locate key elements such as doors and windows, resulting in low detection accuracy and affecting residential measurement efficiency and user experience.
By acquiring three-dimensional point cloud data, preprocessing and projecting slices, using area growth segmentation and topological structure to generate building floor plans, including regional growth segmentation of projected slice images, establishing a topological structure between fitted straight lines, and identifying and positioning key elements such as doors and windows.
More precise room segmentation and key structure extraction are achieved, and complete floor plans are generated, improving residential measurement efficiency and user experience.
Smart Images

Figure CN120259570A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a method and system for automatically generating building floor plans based on 3D point clouds. Background Art
[0002] The technology for automatically generating residential floor plans is an important technology in the fields of modern interior design and building informatization. This technology aims to convert 3D point cloud data (such data is usually collected by devices such as RGB-D cameras and laser scanners) into accurate and easy-to-understand 2D floor plans.
[0003] The generated floor plans are presented from a bird's-eye view and are used to represent information such as the internal space layout of the residence, room partitions, and door and window positions, providing key information support for fields such as interior design, robot navigation, and augmented reality (AR) / virtual reality (VR) applications. The 3D point clouds involved are data sets composed of a large number of points in 3D space, and these points carry information such as spatial coordinates, colors, and normal vectors, and can accurately describe the 3D shape of objects.
[0004] Existing floor plan generation algorithms can generally be divided into two categories: geometric reconstruction-based methods and deep learning-based methods. Geometric reconstruction-based methods usually rely on accurate 3D reconstruction results, but this method has poor performance when dealing with non-Manhattan structures (i.e., non-rectangular layouts). Deep learning-based methods generate floor plans by learning features in a large amount of data. Although they have stronger generalization ability, they still have the defect of poor performance when dealing with complex scenarios.
[0005] In the prior art, the method for automatically generating building floor plans cannot accurately segment different room areas from the point cloud and cannot identify and locate key elements such as doors and windows. Summary of the Invention
[0006] The technical problem to be solved by the present invention is to overcome the defect that the method for automatically generating building floor plans in the prior art cannot accurately segment different room areas from the point cloud and cannot identify and locate key elements such as doors and windows, and to provide a method and system for automatically generating building floor plans based on 3D point clouds that can significantly improve the accuracy of line detection, can be used for refined design, and can improve the efficiency of residential measurement and the user experience in the home improvement scenario.
[0007] The present invention solves the above technical problems through the following technical solutions:
[0008] A method for automatically generating building floor plans based on 3D point clouds, characterized in that the method for automatically generating building floor plans includes:
[0009] Obtain 3D point cloud data of a residence;
[0010] Preprocess the three-dimensional point cloud data to obtain a residential model;
[0011] Perform projection slicing on the residential model, where the projection slicing is perpendicular to the Z-axis direction;
[0012] Perform region growing segmentation on the projection slice image;
[0013] Use the partitioning result of region growing segmentation to establish the topological structure between the straight lines fitted in the projection slice;
[0014] Generate the floor plan of the residence using the topological structure.
[0015] The residence in this application refers to a residential unit. The dataset is the result of collecting three-dimensional point cloud data of typical Chinese urban residential units. The target object is the standard household unit (such as a three-bedroom-one-living-room / two-bedroom-one-living-room layout) in high-rise buildings in the community. The data completely covers all functional spaces within the residence, including: independent partitions such as the living room, bedroom×N, kitchen, bathroom, balcony, etc., and also includes transitional areas such as corridors and doorways connecting the spaces. The point cloud data is obtained through multi-station laser scanning, completely recording the building structure features (partition walls, beams, columns, door and window openings) and spatial scale information, and also including the point cloud features of some fixed furniture (embedded cabinets, bathroom facilities).
[0016] Preferably, the performing projection slicing on the residential model includes:
[0017] Obtain the coordinate unit using the three-dimensional point cloud data and filter the point cloud data according to the coordinate unit;
[0018] Perform iterative calculations on the three-dimensional point cloud data to obtain the maximum and minimum values in the height direction within the height range;
[0019] Perform projection slicing on the residential model within the interval of the maximum and minimum values.
[0020] Preferably, the performing projection slicing on the residential model further includes:
[0021] Perform binarization processing on the projection slice image based on millimeter-level resolution;
[0022] Use the MLSD algorithm to extract the long line segments in the picture;
[0023] Perform clustering analysis on the extracted line segments, extract the median line of one cluster, and calculate the average angle of the line segments;
[0024] A rotation matrix is calculated based on the difference between the median line segment angle and the X-axis, and the point cloud data is rotated into a unified XY coordinate system using the rotation matrix.
[0025] Preferably, the formula for calculating the rotation matrix is:
[0026]
[0027] where θ is the rotation angle around the origin,
[0028] The formula for calculating the line segment angle is:
[0029]
[0030] where, and are the starting coordinates and ending coordinates of the line segment respectively. The line segment angle is calculated using the arctangent function. α is used as an adjustment constant. When the calculated angle is positive, its value is zero. When the calculated angle value is negative, it is made positive by adding 180 degrees to α.
[0031] Preferably, the region growing segmentation of the projection slice image includes:
[0032] Performing region growing segmentation on the projection slice image to generate a preliminary room segmentation map;
[0033] Simulating obstacles and door frames through dilation operations, growing after finding the contour by dilating with the door width as a coefficient, and dividing the projection slice image into regions;
[0034] Assigning rooms to the same region through the sparse region of the point cloud.
[0035] Preferably, the establishment of the topological structure between the straight lines obtained by fitting in the projection slice using the division result of the region growing segmentation includes:
[0036] Extracting the maximum contour of the room from the projection slice image;
[0037] Performing point cloud to line segment matching on the room boundary and converting the boundary points into normalized line segments;
[0038] Clustering the line segments and classifying and labeling the components to generate the topological structure of the structural components.
[0039] Preferably, the generation of the topological structure of the structural components includes:
[0040] Extracting the lines in the projection slice image and performing linearization processing;
[0041] Merging regions of similar lines;
[0042] Obtaining sub-structural components for the merged regions;
[0043] Analyze and adjust the topological structure of the point cloud line segments for topological processing of sub-structure components;
[0044] Perform region growing processing on the projected slice images according to distance criteria;
[0045] Generate the final room segmentation map based on the region growing processing;
[0046] Cluster and semantically analyze the walls, doors, and windows.
[0047] Preferably, the method for automatically generating the building floor plan includes:
[0048] Obtain the topological structure of the structural components by using the distance from the data points to the line segments in the dilation operation.
[0049] Specifically, establish the topological structure between the straight lines obtained by fitting in the projected slices by using the division results of region growing segmentation, including:
[0050] Obtain the outer boundary points of the shapes of multiple regions filled in the residence by region growing of the projected slice image area;
[0051] Extract the long line segments in the picture from the projected slice image by using the MLSD algorithm;
[0052] Match the outer boundary points with the long line segments, arrange the long line segments in counterclockwise order, and establish the topological relationship between points and lines among the line segments;
[0053] Intersect, merge, and complete the long line segments of a single region according to the sequential relationship, and standardize them into right-angled polygons;
[0054] Project the wall point cloud near the line segments onto the line segments, mark the vacancies as holes, and identify the holes as doors and windows according to the topological distribution of the centers of all regions and the wall line segments, and establish the topological structure of doors, windows, and walls
[0055] Preferably, the distance formula from the data point to the line segment is:
[0056]
[0057] Where The coordinates of the current data point in the dilation operation, Are the coordinates of the midpoint of the line segment;
[0058] The angle formula between the data point and the midpoint of the line segment is:
[0059]
[0060] The matching index of the line segment is:
[0061]
[0062] Among them, when the number of line segments is not zero, it is necessary to calculate the average value of the number of line segments.
[0063] The present invention also provides a floor plan automatic generation system, characterized in that the floor plan automatic generation system is used to implement the above-mentioned method for automatically generating a building floor plan based on 3D point cloud.
[0064] On the basis of conforming to the common knowledge in the art, the above-mentioned preferred conditions can be combined arbitrarily to obtain various preferred embodiments of the present invention.
[0065] The positive and progressive effects of the present invention are as follows:
[0066] The present invention can more accurately process 3D point cloud data for room segmentation, generate a complete room floor plan including all doors, windows and wall distributions, which is convenient for construction workers and users, and improves the building production efficiency.
[0067] Based on 3D point cloud data, this application completes the accurate extraction and visualization of key building structures (doors, windows, walls) through a designed combination of advanced algorithm models. BRIEF DESCRIPTION OF THE DRAWINGS
[0068] Figure 1 It is a flowchart of the method for automatically generating a building floor plan according to Embodiment 1 of the present invention.
[0069] Figure 2 It is an effect diagram of the method for automatically generating a building floor plan according to Embodiment 1 of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0070] The present invention will be further described below by way of examples, but the present invention is not limited to the scope of the described examples.
[0071] Embodiment 1
[0072] This embodiment provides a floor plan automatic generation system based on 3D point cloud. The floor plan automatic generation system includes a laser scanning device and a processing module. The processing module can be integrated in the laser scanning device or can be a processing terminal capable of receiving the scanning data of the laser scanning device.
[0073] The processing module is used for:
[0074] Obtain the 3D point cloud data of a residence;
[0075] Preprocess the 3D point cloud data to obtain a residence model;
[0076] Perform projection slicing on the residence model, and the projection slicing is perpendicular to the Z-axis direction;
[0077] Perform region growing segmentation on the projected slice image;
[0078] Use the division result of region growing segmentation to establish the topological structure between the straight lines obtained by fitting in the projected slice;
[0079] Generate the floor plan of the residence using the topological structure.
[0080] Furthermore, the processing module is used for:
[0081] Obtain the coordinate unit using the three-dimensional point cloud data, and filter the point cloud data according to the coordinate unit;
[0082] Perform iterative calculations on the three-dimensional point cloud data to obtain the maximum and minimum values in the height direction within the height range;
[0083] Project and slice the residential model within the interval of the maximum and minimum values.
[0084] Furthermore, the processing module is used for:
[0085] Perform binarization processing on the projected slice image based on millimeter-level resolution;
[0086] Use the MLSD algorithm to extract the long line segments in the picture;
[0087] Perform clustering analysis on the extracted line segments, extract the median line of one cluster, and calculate the average angle of the line segments;
[0088] Calculate the rotation matrix according to the difference between the median line segment angle and the X-axis, and use the rotation matrix to rotate the point cloud data into a unified XY coordinate system.
[0089] The formula for calculating the rotation matrix is:
[0090]
[0091] where θ is the rotation angle around the origin,
[0092] The formula for calculating the line segment angle is:
[0093]
[0094] where, and are the starting coordinates and ending coordinates of the line segment respectively. Use the arctangent function to calculate the line segment angle. α is used as an adjustment constant. When the calculated angle is positive, the value is zero. When the calculated angle value is negative, add 180 degrees to α to make it positive.
[0095] Furthermore, the processing module is used for:
[0096] Perform region growing segmentation on the projected slice image to generate a preliminary room segmentation map;
[0097] Simulate obstacles and door frames through dilation operations, grow after obtaining the contour by dilating with the door width as a coefficient, and separate the regions of the projected slice image;
[0098] Classify rooms into the same region through the sparse region of the point cloud.
[0099] Furthermore, the processing module is used for:
[0100] Extract the maximum contour of the room from the projected slice image;
[0101] Perform point cloud to line segment matching on the room boundary and convert the boundary points into normalized line segments;
[0102] Cluster the line segments and classify and label the components to generate the topological structure of the structural components.
[0103] Furthermore, the processing module is used for:
[0104] Extract the lines in the projected slice image and perform linearization processing;
[0105] Merge the regions of similar lines;
[0106] Obtain sub-structural components for the merged region;
[0107] Analyze and adjust the topological structure of the point cloud line segments for the topological processing of the sub-structural components;
[0108] Perform region growing processing on the projected slice image according to the distance standard;
[0109] Generate the final room segmentation map according to the region growing processing;
[0110] Perform clustering processing and semantic analysis on the walls, doors and windows.
[0111] Furthermore, the processing module is used for:
[0112] Obtain the topological structure of the structural components by using the distance from the data points to the line segments in the dilation operation.
[0113] Specifically, the processing module is used for:
[0114] Obtain the shape outer boundary points of multiple regions filled in the residence from the region growing of the projected slice image;
[0115] Extract the long line segments in the picture from the projected slice image using the MLSD algorithm;
[0116] Match the outer boundary points and the long line segments, arrange the long line segments in counterclockwise order, and establish the topological relationship between the points and lines among the line segments;
[0117] Intersect, merge, and complete the long line segments of a single area in sequence, and standardize them into right-angled polygons;
[0118] Project the wall point cloud near the line segment onto the line segment, mark the vacancies as holes, and identify the holes as doors and windows according to the topological distribution of the centers of all areas and the wall line segments, and establish the topological structure of doors, windows, and walls.
[0119] Furthermore, the processing module is used for:
[0120] The distance formula from a data point to a line segment is:
[0121]
[0122] where the coordinates of the current data point in the dilation operation, are the coordinates of the midpoint of the line segment;
[0123] The angle formula between a data point and the midpoint of a line segment is:
[0124]
[0125] The matching index of the line segment is:
[0126]
[0127] where, when the number of line segments is not zero, the average value of the number of line segments needs to be calculated.
[0128] The floor plan automatic generation system of this embodiment realizes the generation of floor plans, including the following steps: screening the height range of the residential point cloud data and projecting the multi-layer slices onto the X-Y plane; analyzing the point cloud density using a grid with a size of 5 mm and extracting the wall point cloud. Using a lightweight convolutional neural network to extract features from the sliced images, generating a pixel-level line heat map and a line vector field to accurately locate the line regions and regress the direction and length of the lines. By analyzing the line slope, performing a rotation transformation on the point cloud data to make the wall parallel to the X-Y axis. Further performing region growing segmentation and dilation processing on the image to achieve room partitioning; combining the extracted line boundary information with the partitioning results, performing line matching, closing, and regularization, and generating right-angled polygons for individual room partitions. By projecting the vectorized partition lines onto the point cloud and analyzing the distance from the line to the point cloud for accurate fitting, identifying all void regions and marking them as doors and windows. Based on the global topological information and the morphological distribution of the doors and windows, constructing a complete room topological structure including elements such as walls, doors, and windows, and exporting it as a PNG image, JSON format data, and DXF vector graphic file. The present invention combines traditional methods with deep learning technology, has strong versatility, and can adapt to various room structures and complex scenarios; through the RANSAC fitting technology (Random Sample Consensus), significantly improving the accuracy of line detection, and can be used for refined design, improving the residential measurement efficiency and the user experience in the home improvement scenario.
[0129] See Figure 1 , using the above floor plan automatic generation system, this embodiment also provides a method for automatically generating a building floor plan, including:
[0130] Step 100, obtaining the three-dimensional point cloud data of a residence;
[0131] Step 101, preprocessing the three-dimensional point cloud data to obtain a residential model;
[0132] Step 102, performing projection slicing on the residential model;
[0133] Step 103, performing region growing segmentation on the projection slice image;
[0134] Step 104, establishing a topological structure between the lines obtained by fitting in the projection slice using the division result of the region growing segmentation;
[0135] Step 105, generating the floor plan of the residence using the topological structure.
[0136] In this embodiment, preprocessing and region segmentation operations are performed on the input 3D point cloud; the input 3D point cloud data includes: using a lidar scanner to perform multi-point scanning on indoor or outdoor scenes to obtain high-density point cloud data. The scanning device provides millimeter-level accuracy to ensure the integrity and accuracy of the data, and the scanning results are saved in a standardized point cloud format (such as.pts); the data preprocessing operations include: data screening, iterative calculation, and projection slicing; performing binary processing on the sliced point cloud; calculating the rotation matrix, and rotating and straightening the point cloud data according to the rotation matrix; performing region growing segmentation on the sliced image; generating a closed topological structure of the sliced image, and performing annotation of doors, windows, and walls. The output module is used to generate and output a residential floor plan, and the floor plan can be exported as a PNG image, JSON format data, and DXF vector graphic file.
[0137] Among them, step 102 specifically includes:
[0138] 1021. Obtain the coordinate unit using the 3D point cloud data, and screen the point cloud data according to the coordinate unit;
[0139] 1022. Perform iterative calculation on the 3D point cloud data to obtain the maximum and minimum values in the height direction within the height range;
[0140] 1023. Perform projection slicing on the residential model within the interval of the maximum and minimum values;
[0141] 1024. Perform binary processing on the projection slice image based on millimeter-level resolution;
[0142] 1025. Use the MLSD algorithm to extract long line segments in the picture;
[0143] 1026. Perform clustering analysis on the extracted line segments, extract the median line of a cluster, and calculate the average angle of the line segments;
[0144] 1027. Calculate the rotation matrix according to the difference between the median line segment angle and the X-axis, and use the rotation matrix to rotate the point cloud data into a unified XY coordinate system.
[0145] In this embodiment, the point cloud data is screened by judging the coordinate unit through the input point cloud; the iterative calculation of the maximum and minimum values in the z-axis direction of the point cloud data is performed to limit the point cloud height range between 2 meters and 5 meters; the point cloud data is projected into multiple layers of slices to facilitate subsequent partition processing; the point cloud slices are binarized based on millimeter-level resolution to generate high-precision slice images; the MLSD algorithm (long line detection) is used to extract long line segments in the slices, and for wall points, a lightweight convolutional neural network is used to extract features to predict the line segment heat map and vector field; clustering analysis is performed on the extracted line segments, the midline of each cluster is extracted, and the average angle of the line segments is calculated; according to the line segment angle, a rotation matrix is calculated to rotate the point cloud data into a unified XY coordinate system.
[0146] Among them, the formula for calculating the rotation matrix is:
[0147]
[0148] Among them, θ is the rotation angle around the origin. If the selected line angle is closer to the X coordinate axis, θ is the negative value of the calculated line segment angle. If the line segment is closer to the Y coordinate axis, then θ is the difference between the line segment angle and 90 degrees.
[0149] The formula for calculating the line segment angle is:
[0150]
[0151] Among them, and are the starting coordinate and ending coordinate of the line segment respectively. The arctangent function is used to calculate the line segment angle. α is used as an adjustment constant. When the calculated angle is positive, its value is zero. When the calculated angle value is negative, it is made positive by adding 180 degrees to α.
[0152] Among them, step 103 specifically includes:
[0153] Step 1031: Perform region growing segmentation on the projected slice image to generate a preliminary room segmentation map;
[0154] Step 1032: Simulate obstacles and door frames through dilation operations. After dilating with the door width as a coefficient to find the contour and then growing, the projected slice image is regionally separated;
[0155] Step 1033: Classify rooms into the same region through the sparse region of the point cloud.
[0156] Among them, step 104 specifically includes:
[0157] Step 1041: Extract the maximum contour of the room from the projected slice image;
[0158] Step 1042: Perform point cloud to line segment matching on the room boundary and convert the boundary points into normalized line segments;
[0159] Step 1043: Cluster the line segments and classify and label the components to generate the topological structure of the structural components.
[0160] Among them, Step 1043 specifically includes:
[0161] Extract the lines in the projection slice image and perform linearization processing;
[0162] Perform region merging on similar lines;
[0163] Obtain sub-structural components for the merged regions;
[0164] Analyze and adjust the topological structure of the point cloud line segments for topological processing of sub-structural components;
[0165] Perform region growing processing on the projection slice image according to the distance criterion;
[0166] Generate the final room segmentation map according to the region growing processing;
[0167] Perform clustering processing and semantic analysis on the walls, doors and windows.
[0168] The method for automatically generating the building floor plan includes:
[0169] Obtain the topological structure of the structural components by using the distance from the data points to the line segments in the dilation operation.
[0170] Specifically, establish the topological structure between the straight lines obtained by fitting in the projection slice by using the division result of region growing segmentation, including:
[0171] Obtain the shape outer boundary points of the multiple regions filled in the residence by region growing of the projection slice image region;
[0172] Extract the long line segments in the picture from the projection slice image by using the MLSD algorithm;
[0173] Match the outer boundary points and the long line segments, arrange the long line segments in counterclockwise order, and establish the topological relationship between points and lines among the line segments;
[0174] Perform intersection, merging and complementing on the long line segments of a single region according to the sequential relationship, and standardize them into right-angled polygons;
[0175] Project the wall point cloud near the line segment onto the line segment, mark the vacancies as holes, and identify the holes as doors and windows according to the topological distribution of the centers of all regions and the wall line segments, and establish the topological structure of doors, windows and walls
[0176] The distance formula from the data point to the line segment is:
[0177]
[0178] Among them, The coordinates of the current data point in the dilation operation are the coordinates of the median point in the line segment;
[0179] The formula for the angle between the data point and the median point of the line segment is:
[0180]
[0181] The matching index of the line segment is:
[0182]
[0183] Among them, when the number of line segments is not zero, the average value of the number of line segments needs to be calculated.
[0184] In this embodiment, region growing segmentation is performed on the slice image to generate a preliminary room segmentation map; the obstacle and door frame are simulated through dilation operation to naturally separate the room area; in the case of double-leaf doors or roughcast houses, the rooms are classified into the same area through the sparse point cloud area; the maximum contour of the room is extracted from the slice image, the line segments are matched to the boundary to form a closed topological structure of the room; the point cloud to line matching is performed on the room boundary to convert the boundary points into normalized line segments; the line segments are clustered and the walls, doors and windows are classified and labeled to generate a complete room topological structure. The point cloud extracts lines for linearization processing; similar point cloud areas are merged; the merged areas are further divided into smaller parts; the topological structure of the point cloud line segments is analyzed and adjusted for topological processing; the point cloud is processed by region growing according to the distance standard; the point cloud data is segmented into different partial areas; the walls, doors and windows are clustered and semantically analyzed. Specifically, according to the topological structure, a room layout plan is generated, including the distribution of all walls, doors and windows; all wall and door and window data are output; the processed data is exported in PNG, JSON and DXF formats.
[0185] See Figure 2 , where (a) is the effect of preprocessing data; (b) is the room partitioning effect; (c) is the output result. Specifically, in this embodiment, the growth segmentation is used to generate the color image in (b). During the dilation process, the dilated data points are digital points, and their coordinates and the distances between the coordinates are known. The distance between two points is obtained by using the dilated data points. According to this distance, it can be determined whether the current area is a door frame area, and the semantics of the boundary points of the color image are known. In this embodiment, the semantics of the boundary points and the distances from the dilated data points on the boundary points to the point cloud and line segments on the point cloud slice are used to obtain the distances and positional relationships of each line segment to the boundary points. Using these distances and positional relationships, the semantics of the image points on the point cloud slice can be obtained.
[0186] Although the specific embodiments of the present invention have been described above, those skilled in the art should understand that these are only examples, and the protection scope of the present invention is defined by the appended claims. Without departing from the principle and essence of the present invention, those skilled in the art can make various changes or modifications to these embodiments, but such changes and modifications all fall within the protection scope of the present invention.
Claims
1. An automatic generation method for building floor plans based on 3D point clouds, characterized in that, The method for automatically generating the architectural floor plan includes: Obtaining the three-dimensional point cloud data of a residence; Preprocessing the three-dimensional point cloud data to obtain a residence model; Performing projection slicing on the residence model, where the projection slicing is perpendicular to the Z-axis direction; Performing region growing segmentation on the projection slice image; Using the division result of the region growing segmentation to establish the topological structure between the straight lines obtained by fitting in the projection slice; Generating the floor plan of the residence using the topological structure.
2. The method for automatically generating a building floor plan based on a three-dimensional point cloud according to claim 1, wherein The performing projection slicing on the residence model includes: Obtaining the coordinate unit using the three-dimensional point cloud data and screening the point cloud data according to the coordinate unit; Performing iterative calculation on the three-dimensional point cloud data to obtain the maximum and minimum values in the height direction within the height range; Performing projection slicing on the residence model within the interval of the maximum and minimum values.
3. The automatic building floor plan generation method based on 3D point cloud according to claim 2, characterized in that, The performing projection slicing on the residence model further includes: Performing binarization processing on the projection slice image based on millimeter-level resolution; Using the MLSD algorithm to extract the long line segments in the picture; Performing clustering analysis on the extracted line segments and extracting the median line of one cluster; Calculating the rotation matrix according to the difference between the median line segment angle and the X-axis, and using the rotation matrix to rotate the point cloud data into a unified XY coordinate system.
4. The method for automatically generating an architectural floor plan based on 3D point clouds according to claim 3, wherein The formula for calculating the rotation matrix is: where θ is the rotation angle around the origin, The formula for calculating the line segment angle is: Among them, and are the starting coordinate and the ending coordinate of the line segment respectively. The arctangent function is used to calculate the angle of the line segment. α is used as an adjustment constant. When the calculated angle is positive, the value is zero. When the calculated angle value is negative, it is made positive by adding 180 degrees to α.
5. The automatic generation method of building floor plans based on 3D point clouds according to claim 1, wherein, The performing region growing segmentation on the projection slice image includes: Performing region growing segmentation on the projection slice image to generate a preliminary room segmentation map; Simulating obstacles and door frames through dilation operations, growing according to the door width as a coefficient to find the contour, and separating the projection slice image into regions; Assigning rooms to the same region through the sparse region of the point cloud.
6. The method for automatically generating a building floor plan based on a three-dimensional point cloud according to claim 5, characterized in that, The using the division result of the region growing segmentation to establish the topological structure between the straight lines obtained by fitting in the projection slice includes: Extracting the maximum contour of the room from the projection slice image; Performing point cloud to line segment matching on the room boundary and converting the boundary points into normalized line segments; Clustering the line segments and classifying and labeling the components to generate the topological structure of the structural components.
7. The method for automatically generating a building floor plan based on a three-dimensional point cloud according to claim 6, characterized in that, The generating the topological structure of the structural components includes: Extracting the lines in the projection slice image and performing linearization processing; Performing region merging on the similar lines; Obtaining sub-structural components for the merged regions; Analyzing and adjusting the topological structure of the point cloud line segments for the topological processing of the sub-structural components; Performing region growing processing on the projection slice image according to the distance standard; Generating the final room segmentation map according to the region growing processing; Performing clustering processing and semantic analysis on the walls, doors and windows.
8. The method for automatically generating a building floor plan based on a three-dimensional point cloud according to claim 5, characterized in that The using the division result of the region growing segmentation to establish the topological structure between the straight lines obtained by fitting in the projection slice includes: Obtaining the shape outer boundary points of the multiple regions filled in the residence from the region growing of the projection slice image; Obtaining the long line segments in the picture by using the MLSD algorithm from the projection slice image; Matching the outer boundary points and the long line segments, arranging the long line segments in the counterclockwise order, and establishing the topological relationship between points and lines between the line segments; Performing intersection, merging, and complementing on the long line segments of a single region according to the sequential relationship, and normalizing them into right-angled polygons; Project the wall point cloud near the line segment onto the line segment, mark the vacant area as a hole, and identify the hole as a door or window according to the topological distribution of all area centers and wall line segments, and establish the topological structure of doors, windows and walls.
9. The method for automatically generating an architectural floor plan based on a three-dimensional point cloud according to claim 8, wherein Obtain the topological structure of structural members by using the distance from data points to line segments in the dilation operation. The distance formula from a data point to a line segment is: Among them, The coordinates of the current data point in the dilation operation, Are the coordinates of the midpoint of the line segment; The angle formula between a data point and the midpoint of a line segment is: The matching index of a line segment is: Among them, when the number of line segments is not zero, the average value of the number of line segments needs to be calculated.
10. An automatic floor plan generation system, characterized in that, The floor plan automatic generation system is used to implement the method for automatically generating a building floor plan based on 3D point cloud as described in any one of claims 1 to 9.
Citation Information
Patent Citations
Optimal reconstruction method for a complex three-dimensional building point cloud roof and a side surface
CN109993783A
Multi-floor indoor structured three-dimensional modeling method and system based on laser point cloud
CN110189412A
Generation method of two-dimensional plane graph in building, storage equipment and terminal
CN110599569A
Building intelligent three-dimensional mapping method based on multi-source remote sensing data
CN112489212A
Indoor three-dimensional point cloud automatic registration method for pole extraction
CN113052881A
Cited By
Indoor point cloud automatic rotation alignment method based on maximum plane detection and medium
CN121746440A