A large-range building photovoltaic potential calculation method based on airborne point cloud data

CN118570023BActive Publication Date: 2026-08-07NANJING NORMAL UNIVERSITY
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
NANJING NORMAL UNIVERSITY
Filing Date
2024-05-30
Publication Date
2026-08-07

AI Technical Summary

Technical Problem

[0008]本发明为了解决现有技术存在的问题,提供一种基于机载点云数据的大范围建筑光伏潜力计算方法,通过机载激光点云数据建立更为详细的建筑物三维模型,详细的表述了建筑物的屋顶形状,更加符合现实世界建筑形状,从而得到更加精确的结果,能够解决目前计算城市光伏利用2D光栅数据潜力时不能估计建筑物立面等垂直表面的辐射以及计算结果不够准确的问题

Benefits of technology

[0095] (1) This invention supports triangular facet calculation of daily to annual irradiance for any surface (including roof, front and ground); (2) This invention supports semantic segmentation of point cloud data and accurately identifies building point cloud data; (3) This invention supports the creation of LOD2 level three-dimensional building models; (4) This invention includes detailed photovoltaic potential analysis functions, such as photovoltaic potential analysis of building orientation and minimum installation height analysis of building facade.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118570023B_ABST
    Figure CN118570023B_ABST
Patent Text Reader

Abstract

The application discloses a kind of wide-range building photovoltaic potential calculation method based on airborne point cloud data, comprising the following steps: obtain the three-dimensional point cloud data of city area by airborne laser radar;Unsupervised domain adaptation training is carried out using the disclosed three-dimensional point cloud data with label of city area and the three-dimensional point cloud data needing classification;The classification result of point cloud data is obtained by using the trained deep learning model to perform forward inference on the three-dimensional point cloud data needing classification;According to the semantic segmentation result, building class point cloud is extracted, and single building point cloud data is obtained by conditional euclidean clustering, and three-dimensional reconstruction is carried out on single building point cloud data to obtain building three-dimensional model;Radiation simulation is carried out according to the building three-dimensional model of region and nearby weather data, and the photovoltaic potential of each building is obtained according to solar radiation value.The application can solve the problem that two-dimensional grating data cannot estimate the radiation of building facade and other vertical surfaces when calculating the photovoltaic potential of city at present, and the calculation result is not accurate enough.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of building photovoltaic technology, and in particular to a method for calculating the potential of large-scale building photovoltaics based on airborne point cloud data. Background Technology

[0002] Photovoltaic power generation, as a clean and renewable energy source, has many advantages. First, it does not produce greenhouse gases, making it environmentally friendly. Second, solar energy is a renewable resource and can be obtained from various areas of the land surface. Furthermore, photovoltaic power generation systems have low maintenance costs, offer long-term benefits, and can achieve distributed generation. With the increasing global energy demand, these characteristics make photovoltaic power generation a highly favored energy option, contributing to energy transition and sustainable development. It has become one of the most promising renewable energy generation methods.

[0003] Quantitatively assessing the potential of solar energy resources is fundamental to energy planning, providing basic data and engineering guidance for the development and utilization of regional solar energy resources. Traditional Geographic Information System (GIS)-based solar radiation models are mainly used to obtain spatial and temporal resolution estimates of ground solar radiation over large geographical areas. Widely used tools such as ESR, ArcGIS Solar Analyst (SA), and GRASS GIS r.sun can only operate on two-dimensional (2D) raster maps that provide surface elevations. Therefore, in most cases, they cannot be used to estimate the radiation of vertical surfaces such as building facades. When modeling solar radiation at the building scale, 2D raster maps cannot represent complex geometric features, such as vertical surfaces and protrusions, while the complexity of urban morphology can be best represented in a three-dimensional (3D) urban model using a triangular mesh.

[0004] A method, system, device, and storage medium for distributed photovoltaic resource integration, disclosed in Chinese patent literature (publication number CN113076855A), includes the following steps: acquiring original images with roof information via satellite; inputting the acquired original images into a pre-trained artificial intelligence model to select first images suitable for photovoltaic installation; identifying the coordinate information of the first images and matching the coordinate information with different customers using a big data algorithm to obtain second images associated with those customers; statistically storing the coordinate information of the second images in a database and analyzing the potential data of the second images in conjunction with meteorological and industry data; and integrating photovoltaic resources based on the obtained potential data. This solution uses a single roof identification method, is prone to interference and errors, has poor anti-interference capabilities, and cannot obtain potential data for building facades.

[0005] A method for calculating urban photovoltaic potential integrating surface mesh models and deep learning, disclosed in Chinese patent literature (publication number CN202310427530.3), includes: acquiring oblique photogrammetric images of buildings in a target city; constructing a surface mesh model of the buildings in the target city based on the oblique photogrammetric images using triangulation; obtaining climate zone data for each block of the target city based on the surface mesh model; acquiring weather data; inputting the model data of the surface mesh model, the weather data, and the climate zone data into a pre-trained deep neural network model to obtain the solar radiation intensity of each triangular facet, wherein the triangular facets are used to form the surface mesh model of the buildings; obtaining the solar radiation values ​​of all buildings in the target city based on the solar radiation intensities of all triangular facets; and obtaining the urban photovoltaic utilization potential based on the solar radiation values. This approach considers all areas of the urban region, such as ground and elevated bridges, but the suitability for laying photovoltaic panels on ground and elevated bridges is far less than that on the surfaces of urban buildings. This invention estimates the photovoltaic potential of buildings using three-dimensional models.

[0006] The paper "An, Y., Chen, T., Shi, L., Heng, CK, & Fan, J. (2023). Solar energy potential using GIS-based urban residential environmental data: A case study of Shenzhen, China. Sustainable Cities and Society, 93, 104547. https: / / doi.org / 10.1016 / j.scs.2023.104547" uses 2D contour data and building height data to build a 3D model of the LOD1 level of detail of buildings in residential areas and estimates the photovoltaic potential of buildings in some residential areas of Shenzhen. This method cannot completely match the shape of buildings in the real world, and the accuracy of the final result is not as high as that calculated by the LOD2 model.

[0007] The paper "Xu, S., Jiang, H., Xiong, F., Zhang, C., Xie, M., & Li, Z. (2021). Evaluation for block-scale solar energy potential of industrial block and optimization of application strategies: A case study of Wuhan, China. Sustainable Cities and Society, 72, 103000. https: / / doi.org / 10.1016 / j.scs.2021.103000" manually created 3D models of buildings in different industrial zones at LOD1 detail levels and used the Ladybug plugin in Rhino and Grasshopper to simulate the solar radiation of the buildings, thereby estimating the photovoltaic potential of the building area. However, all operations required manual work, which was time-consuming, labor-intensive, and not very accurate. Summary of the Invention

[0008] To address the problems existing in the prior art, this invention provides a method for calculating the potential of large-scale building photovoltaics based on airborne point cloud data. By using airborne laser point cloud data to establish a more detailed three-dimensional model of the building, the method describes the roof shape of the building in detail, which is more consistent with the shape of buildings in the real world, thus obtaining more accurate results. This method can solve the problems of not being able to estimate the radiation of vertical surfaces such as building facades and the inaccuracy of the calculation results when calculating the potential of urban photovoltaic utilization using 2D grating data.

[0009] To address the aforementioned technical problems, this invention provides a method for calculating the potential of large-scale building-integrated photovoltaics based on airborne point cloud data, comprising the following steps:

[0010] Step 1: Point cloud semantic segmentation data preprocessing: Prepare publicly labeled airborne LiDAR point cloud datasets and merge or discard labeled categories, including ground points, vegetation points, and building points; prepare unlabeled point cloud datasets to be classified; perform grid sampling on the point cloud data, build KD-Tree, and record the data index before grid sampling.

[0011] Step 2: Construct and train the RandLA-Net model, and feed the point cloud data to be classified into the model for inference: The RandLA-Net model adopts an Encoder-Decoder architecture, where the Encoder consists of 5 layers of expanded residual blocks, which are composed of local spatial location encoding and attention pooling layers; during training, domain-guided data augmentation methods are used to transfer features learned from the source domain to the target domain, and finally, pseudo-labeled data is used to fine-tune the model before feeding the point cloud data to be classified into the model for inference;

[0012] Step 3: Building point cloud height normalization: Extract ground points based on semantic segmentation results and generate DEM using Delaunay triangulation. Calculate the shortest distance from all building points to ground points and subtract the shortest distance to the ground from the height value of each building point to achieve height normalization.

[0013] Step 4: Individual Building Point Cloud: Use conditional Euclidean clustering to individualize buildings, with the condition set to a horizontal distance between points of less than 0.2m.

[0014] Step 5, Building outline extraction: Use the AlphaShape algorithm to extract boundaries and regularize the outlines by using parallelism, collinearity, and orthogonality;

[0015] Step 6: 3D Reconstruction of the Building

[0016] Step 6.1: Obtain the candidate set of building roof plans;

[0017] Step 6.2: Obtaining the candidate set of building facades;

[0018] Step 6.3: Obtain the final candidate set through binary linear optimization.

[0019] The roof plane is extracted from the building point cloud using the region growing algorithm, and the plane intersection is performed to obtain the candidate set of building roof planes. To address the problem of missing building point clouds in airborne lidar, the point cloud height map is generated by projecting the point cloud onto the plane. The Canny operator is used to detect the building outline and step lines and stretch them into the building facade and add them to the candidate set of planes to obtain the building candidate set. Finally, the final building plane is obtained through binary linear programming.

[0020] Step 7, Photovoltaic Potential Estimation:

[0021] Step 7.1: Calculate the radiation matrices of the sky and the ground based on the Perez radiation model;

[0022] Step 7.2: Establish the ray tracing scene and calculate the correlation coefficient matrix of the query points;

[0023] Step 7.3: Multiply the sky radiation matrix by the correlation coefficient matrix of the query point to obtain the radiation value of the query point.

[0024] The direct or indirect entry of natural light into building surfaces is considered using two independent variables: sky illuminance and the optical properties and geometry of the building components' surfaces. To establish a mathematical model for this process, the continuous sky model is first discretized into many small units. The impact of each sky unit on the natural light entering the building surface is modeled, and then the impacts of all sky units are summed. The impact of each unit on indoor natural light is expressed as...

[0025]

[0026] in The daylight factor (related to surrounding buildings) is ΔE, where ΔE is the illuminance of light emitted from a single sky unit reaching a point on the building surface. The brightness emitted by a single sky cell, To find the solid angle of a single sky unit, integrating the expression yields E = C. DC S, where C DC Here, S is the daylight factor matrix, and S is the sky vector.

[0027] Step 8, Photovoltaic Potential Analysis:

[0028] The solar radiation values ​​of a building obtained through simulation using a 3D model are used to analyze the building's photovoltaic potential. In this analysis, the optimal parameters of the building are mainly determined by different building orientations, the building's photovoltaic potential, the monthly variation of photovoltaic potential, and the minimum installation height of the facade.

[0029] This invention focuses on several important aspects of photovoltaic (PV) potential analysis. First, it examines the varying impacts of different building orientations on PV potential. The invention reveals significant differences in sunlight intensity across different building orientations, directly affecting the power generation efficiency of the PV system. Second, it considers the minimum installation height of the building facade. By analyzing solar radiation values, this invention determines the optimal height for installing PV panels on the building facade to ensure the PV system receives ample sunlight and maximizes its benefits. Furthermore, this invention investigates the optimal roof tilt angle to ensure the PV panels receive the best solar radiation in different seasons. Finally, this invention analyzes the monthly variations in PV potential, finding significant fluctuations in building PV potential across different seasons and months. This provides crucial information for developing reasonable power generation plans. Through this comprehensive analysis, this invention enables better utilization of solar energy resources, providing a scientific basis for the green energy utilization of buildings.

[0030] Furthermore, the specific steps for constructing and training the RandLA-Net model in step 2, and feeding the point cloud data to be classified into the model for inference, are as follows:

[0031] Step 2.1: Input the unlabeled point cloud data into the domain-guided data augmentation network (fully connected layer) to obtain the rotation, scaling and noise matrix of each point. Apply the obtained rotation, scaling and noise matrix to the source domain to obtain the data-augmented sample data.

[0032] Step 2.2: Input the enhanced source domain sample data into the local spatial coding layer;

[0033] Step 2.3: Feed the output of the local spatial coding layer into the attention pooling layer;

[0034] Step 2.3.1: Set up a weight-sharing fully connected layer to calculate the attention score, followed by a softmax layer to obtain the attention score for each point;

[0035] Step 2.3.2: Treat the learned attention score as a mask that can automatically select important features. The final feature is the weighted sum of these neighborhood feature point sets. Step 2.4: Repeat steps 2.2 and 2.3 four times.

[0036] Step 2.5: Input the obtained features of each point into the classifier to obtain the label of each point.

[0037] Furthermore, the specific steps in step 2.2 of feeding the enhanced source domain sample data into the local spatial coding layer are as follows:

[0038] Step 2.2.1: For the i-th point p in the point cloud i Find the K nearest points, set to 16;

[0039] Step 2.2.2, center point p i The K nearest neighbors are The location code is:

[0040]

[0041] Where p i and These are the absolute coordinates of the point. It is a concatenation operation; ||·|| calculates the Euclidean distance between neighboring points and the center point.

[0042] Step 2.2.3: For all neighboring points Their relative spatial positions have been encoded into Features f of all neighboring points i k and They were pieced together.

[0043] Furthermore, the specific steps for individualizing the building point cloud in step 4 are as follows:

[0044] Step 4.1: Create a KD-Tree for the point cloud data P;

[0045] Step 4.2: Create an empty list C to store the clustering results, and a checkpoint queue Q;

[0046] Step 4.3: For each point p in the point cloud i ∈P, p i Add Q, for p i ∈Q, find the center point p i Point cloud within radius for Determine if the horizontal distance between the point and the center point is less than 0.2m. If the condition is met, add it to Q. Once all points in Q have been processed, add Q to C.

[0047] Step 4.4: When all points in P have been processed, C contains the clustering results.

[0048] Furthermore, the specific steps in step 5 are as follows:

[0049] Step 5.1: Project the 3D point cloud onto the XOY plane to obtain a 2D point cloud. Randomly select a point from the 2D point cloud as the initial point p. The radius of the rolling circle is α. Search for all points Q within a distance of 2α from point p in the point cloud.

[0050] Step 5.2: Select any point p1(x1,y1) in Q, and calculate the coordinates of the center of the circle based on the coordinates of these two points and α.

[0051]

[0052]

[0053] in S 2 =(x-x1) 2 +(y-y1) 2 The center p2 and p3 are the coordinates of the center of the circle for two cases where the circle passes through points p and p1 and has a radius of α.

[0054] Step 5.3: After removing point p1 from Q, calculate the distances from all remaining points to p2 and p3; if the distances from all points to p2 and p3 are greater than α, then p is a boundary point.

[0055] Step 5.4: If the distances from the remaining points to p2 and p3 are not all greater than α, then traverse all points in the point set Q and use them as point p1 in turn; if step 5.3 is satisfied, then the point is a boundary point and the point judgment is stopped; otherwise, p is a non-boundary point.

[0056] Step 5.5: Cluster the polylines generated by the AlphaShape algorithm;

[0057] Step 5.6: For each cluster containing multiple line segments, calculate its average direction; then adjust each line segment in the cluster to align with the average direction; if a building footprint is provided, further improve the regularity of the structure by aligning the line segments with the edges in the footprint.

[0058] Furthermore, the specific steps for obtaining the candidate set of building roof plans in step 6.1 are as follows:

[0059] Step 6.1.1: Sort the points according to their curvature values;

[0060] Step 6.1.2: Pick the point with the minimum curvature value and add it to the seed point set;

[0061] Step 6.1.3: For each seed point, the algorithm finds its neighboring points; tests the angle between the normal of each neighboring point and the normal of the current seed point; if the angle is less than a threshold, the current point is added to the current region; then, the curvature value is tested for each neighbor; if the curvature is less than a threshold, the point is added to the seed; the current seed is removed from the seed.

[0062] Step 6.1.4: If the seed set becomes empty, it means that the algorithm has grown the region, and the process will be repeated from the beginning.

[0063] Furthermore, the specific steps for obtaining the candidate set of building facades in step 6.2 are as follows:

[0064] Step 6.2.1: After obtaining the point cloud of the building, project these points onto the ground plane and create a height map from them;

[0065] Step 6.2.2: Use the Canny detector to extract a set of edge points from the height map;

[0066] Step 6.2.3: The initial contour set consists of discrete pixels, denoted as S. First, a two-dimensional Delaunay triangulation T0 is constructed from the discrete points in S. Then, the initial triangulation T0 is simplified through iterative edge folding and vertex removal operations. In each iteration, the most suitable vertex to be removed is determined under the following condition: the maximum Hausdorff distance from the simplified mesh T0 to S is less than a distance threshold ∈ dThe total transport cost between S and T0 is kept to a minimum. In each iteration, a vertex satisfying the above conditions is removed from T0 by edge folding, and the total transport cost is updated. As the iterative simplification process continues, the overall transport cost will increase. The edge folding operation stops until no more vertices can be removed, or the overall transport cost increases to exceed the user-specified tolerance.

[0067] Step 6.2.4: Apply edge filtering to eliminate a set of unwanted edges caused by noise and outliers;

[0068] Step 6.2.5: Derive polylines from the remaining vertices and edges of the simplified triangulation and perform regularization;

[0069] Step 6.2.6: Stretch the boundary lines and step lines into vertical planes to obtain the candidate set of building facades.

[0070] Furthermore, the specific steps for obtaining the final candidate set through binary linear optimization in step 6.3 are as follows:

[0071] Step 6.3.1: Obtain the faces from steps 6.1 and 6.2, and perform planar intersection; obtain the generated candidate faces F = {f} i |1≤i≤N};Let variable x i To determine whether to select a candidate face f i x i =1 is the choice, x i =0 means no selection;

[0072] Step 6.3.2: Calculate the data fitting term for each face. The calculation formula is as follows:

[0073]

[0074] Where |P| is the total number of point clouds, support(f i ε is a concept of confidence, defined according to its local neighborhood at each point. dist(p,f) is the distance between point p and surface f. Only points where dist(p,f) < ε are considered. conf(p) represents the eigenvalue at scale i, and it contains two geometric properties. This implies the flatness of the tangent plane at point p. It implies local sampling uniformity;

[0075] Step 6.3.3: Calculate the model complexity term for each edge. The calculation formula is as follows:

[0076]

[0077] Where |E| represents the total number of pairwise intersections in the candidate triangle set; corner(ei ) is an indicator function whose value is determined by the edge e i The configuration of the two selected faces that are connected determines the orientation; intersecting edges can be planar or non-coplanar. Therefore, if with e i The related surfaces introduce non-coplanar edges in the final model, so corner(e) i The value of corner(e) will be 1; otherwise, the value of corner(e) will be 1. i The value of ) is zero, which means that the two faces are coplanar;

[0078] Step 6.3.4: Calculate the point cloud coverage for each face. The calculation formula is as follows:

[0079]

[0080] The point cloud is projected onto surface f, and a 2D α-shape algorithm is used to construct... area is used for area calculation;

[0081] Step 6.3.5: Using the energy terms mentioned above, under certain hard constraints, the optimal face set is obtained by minimizing the weighted sum of these terms, thus making the final model a boundless manifold. The necessary and sufficient condition for a manifold and a watertight polygon surface is that each edge of the model connects only two adjacent faces. Therefore, the final face selection formula is written as follows:

[0082] min λ f ·E f +λ m ·E m +λ c ·E c .

[0083] Furthermore, the specific steps in step 7.1 for calculating the radiation matrices of the sky and the ground based on the Perez radiation model are as follows:

[0084] Step 7.1.1: Read the EPW file and construct weather data;

[0085] Step 7.1.2: Generate the sky matrix for direct incident radiation and the sky matrix for scattered radiation based on the Perez radiation model;

[0086] Step 7.1.3: Add the sky matrix of the directly incident radiation and the sky matrix of the scattered radiation to obtain the total sky radiation matrix;

[0087] Step 7.1.4: Calculate the average value of the total sky radiation matrix and use it as the ground radiation matrix;

[0088] Step 7.1.5: Combine the sky and ground radiation matrices to obtain all radiation sources.

[0089] Furthermore, the specific steps for establishing the ray tracing scene and calculating the correlation coefficient matrix of the query points in step 7.2 are as follows:

[0090] Step 7.2.1: Sky vector generation, i.e., the direction of light emitted by the radiant block;

[0091] Step 7.2.2: Convert the occlusion model, rays, and query points to Radiance format;

[0092] Step 7.2.3: Establish an octree organizational structure for the scene;

[0093] Step 7.2.4: Perform ray tracing and calculate the correlation coefficient matrix of the query point.

[0094] The beneficial effects of this invention are as follows:

[0095] (1) This invention supports triangular facet calculation of daily to annual irradiance for any surface (including roof, front and ground); (2) This invention supports semantic segmentation of point cloud data and accurately identifies building point cloud data; (3) This invention supports the creation of LOD2 level three-dimensional building models; (4) This invention includes detailed photovoltaic potential analysis functions, such as photovoltaic potential analysis of building orientation and minimum installation height analysis of building facade. Attached Figure Description

[0096] Figure 1 This is a flowchart of the present invention;

[0097] Figure 2 This is a flowchart illustrating the construction and training of the RandLA-Net model in a specific embodiment;

[0098] Figure 3 This is a flowchart of the three-dimensional reconstruction of a building in a specific embodiment;

[0099] Figure 4 This is a flowchart for estimating photovoltaic potential in a specific embodiment. Detailed Implementation

[0100] like Figure 1 As shown, this invention provides a method for calculating the potential of large-scale building-integrated photovoltaics based on airborne point cloud data, comprising the following steps:

[0101] Step 1: Preprocessing point cloud semantic segmentation data;

[0102] Prepare a labeled publicly available airborne LiDAR point cloud dataset, and merge or discard the labeled categories, retaining only the ground point, vegetation point, and building point categories; prepare an unlabeled point cloud dataset to be classified; perform grid sampling on the point cloud data, build a KD-Tree, and record the data index before grid sampling.

[0103] Step 2: Building point cloud extraction;

[0104] The RandLA-Net model employs an Encoder-Decoder architecture, where the Encoder consists of five layers of expanded residual blocks, each composed of local spatial location encoding and attention pooling layers. During training, domain-guided data augmentation is used to transfer features learned from the source domain to the target domain. Finally, pseudo-labeled data is used to fine-tune the model, and the point cloud data to be classified is fed into the model for inference. The flowchart for building point cloud extraction is shown below. Figure 2 As shown in Table 1, the accuracy of building classification is as follows;

[0105] Table 1. Semantic segmentation accuracy of RandLA-Net for building categories

[0106]

[0107] Step 3: Normalize the height of building point clouds;

[0108] Ground points are extracted based on semantic segmentation results and Delaunay triangulation is used to generate a DEM. The nearest distance from all non-ground points to the ground is calculated, and the height of each building point is normalized by subtracting the nearest distance to the ground.

[0109] Step 4: Individualize the building point cloud;

[0110] Buildings were isolated using conditional Euclidean clustering, with the condition that the horizontal distance between points is less than 0.2m.

[0111] Step 5: Building outline extraction;

[0112] The AlphaShape algorithm is used for boundary extraction, and the contour lines are regularized by parallelism, collinearity, and orthogonality.

[0113] Step 6: 3D reconstruction of the building;

[0114] The roof plane is extracted from the building point cloud using a region growing algorithm, and plane intersection is performed to obtain a candidate set of building roof planes. Addressing the issue of missing building point clouds from airborne LiDAR, a building point cloud height map is generated by projecting the point cloud onto a plane. The Canny operator is used to detect building outlines and step lines, which are then stretched into building facades and added to the candidate plane set. Finally, a binary linear programming approach is used to obtain the final building plan. The flowchart for the 3D building modeling is shown below. Figure 3 As shown;

[0115] Step 7: Photovoltaic potential estimation;

[0116] The direct or indirect entry of natural light into building surfaces is considered using two independent variables: sky illuminance and the optical properties and geometry of the building components' surfaces. To establish a mathematical model for this process, the continuous sky model is first discretized, divided into many small units. The impact of each sky unit on the natural light entering the building surface is modeled, and then the impacts of all sky units are summed. The impact of each unit on indoor natural light can be expressed as follows:

[0117]

[0118] in The daylight factor (related to surrounding buildings) is ΔE, where ΔE is the illuminance of light emitted from a single sky unit reaching a point on the building surface. The brightness emitted by a single sky cell, To find the solid angle of a single sky unit, integrating the expression yields E = C. DC S, where C DC Here, S is the daylight factor matrix, and S is the sky vector. The flowchart for estimating photovoltaic potential is as follows: Figure 4 As shown;

[0119] Step 8: Photovoltaic potential analysis;

[0120] The solar radiation values ​​of buildings obtained through simulation are used to analyze the photovoltaic potential of buildings. In this invention, we mainly focus on several important analysis results of photovoltaic potential.

[0121] Result 1: The differences in photovoltaic potential between rooftops and facades in different urban functional areas are shown in Table 2. Industrial areas have the greatest regional photovoltaic potential and rooftop photovoltaic potential, while residential areas have the greatest facade photovoltaic potential.

[0122] Table 2 Calculation results of photovoltaic potential in different urban functional areas (unit: kWh / m²) 2 )

[0123]

[0124] Result 2: Differences in the impact of different orientations on photovoltaic potential. The experiment found significant differences in sunlight intensity for buildings facing different orientations, as shown in Table 3. Since the example is located in the Northern Hemisphere, the photovoltaic potential of the three south-facing directions is greater than that of the three north-facing directions.

[0125] Table 3. Calculation results of photovoltaic potential for different orientations of facades in urban functional areas (unit: kWh / m²) Q )

[0126]

[0127] Result 3: Minimum Installation Height for Building Facades. By analyzing solar radiation values, the optimal height for installing photovoltaic panels on building facades was determined to ensure that the photovoltaic system can fully receive sunlight and achieve maximum benefit. Since north-facing facades have low photovoltaic potential, only the minimum installation heights for south-, east-, and west-facing facades are shown in Table 4.

[0128] Table 4 Minimum Installation Height of Solar Panels for Different Facade Orientations in Urban Functional Zones (Unit: m)

[0129]

[0130] Result 5: Monthly variation analysis of photovoltaic potential revealed significant fluctuations in the photovoltaic potential of buildings across different seasons and months, as shown in Table 5. This provides an important reference for developing reasonable power generation plans.

[0131] Table 5. Calculation results of monthly photovoltaic potential in different urban functional areas (unit: kWh / m²) Q )

[0132]

[0133] Through comprehensive analysis from these perspectives, we can better utilize solar energy resources and provide a scientific basis for the green energy utilization of buildings.

[0134] Preferably, step 2 specifically includes the following steps:

[0135] Step 2-1: Input the unlabeled point cloud data into the domain-guided data augmentation network to obtain the rotation, scaling, and noise matrix for each point. Apply the obtained rotation, scaling, and noise matrices to the source domain to obtain the data-augmented sample data.

[0136] Step 2-2: Feed the enhanced sample data into the local spatial coding layer;

[0137] Steps 2-3: Feed the output of the local spatial coding layer into the attention pooling layer;

[0138] Step 2-4: Repeat steps 2-2 and 2-3 four times;

[0139] Steps 2-5: Feed the obtained features of each point into the classifier to obtain the label of each point;

[0140] Preferably, step 2-2 specifically includes the following steps:

[0141] Step 2-2-1: For the i-th point p in the point cloud i Find the K nearest points, and set the distance to 16;

[0142] Step 2-2-2: Center point pi The K nearest neighbors are The location code is:

[0143]

[0144] Where p i and These are the absolute coordinates of the point. It is a concatenation operation, and ||·|| calculates the Euclidean distance between neighboring points and the center point.

[0145] Step 2-2-3: For all neighboring points Their relative spatial positions have been encoded into Features f of all neighboring points i k and They were pieced together.

[0146] Preferably, steps 2-3 specifically include the following steps:

[0147] Step 2.3.1: Set up a weight-sharing fully connected layer to calculate the attention score, followed by a softmax layer to obtain the attention score for each point;

[0148] Step 2.3.2: Treat the learned attention score as a mask that can automatically select important features. The final feature obtained is a weighted sum of these neighborhood feature point sets. Preferably, step 4 specifically includes the following steps:

[0149] Step 4-1: Create a KD-Tree for the point cloud data P;

[0150] Step 4-2: Create an empty list C to store the clustering results, and a checkpoint queue Q;

[0151] Step 4-3: For each point p in the point cloud i ∈P, p i Add Q, for p i ∈Q, find the center point p i Point cloud within radius for Determine if the horizontal distance between the point and the center point is less than 0.2m. If the condition is met, add it to Q. Once all points in Q have been processed, add Q to C.

[0152] Step 4-3: When all points in P have been processed, C contains the clustering results;

[0153] Preferably, step 5 specifically includes the following steps:

[0154] Step 5-1: Project the 3D point cloud onto the XOY plane to obtain a 2D point cloud. Randomly select a point from the 2D point cloud as the initial point p. The radius of the rolling circle is α. Search for all points Q within a distance of 2α from point p in the point cloud.

[0155] Step 5-2: Select any point p1(x1,y1) in Q, and calculate the coordinates of the center of the circle based on the coordinates of these two points and α:

[0156]

[0157] in S 2 =(x-x1) 2 +(y-y1) 2 The center p2 and p3 are the coordinates of the center of the circle for two cases where the circle passes through points p and p1 and has a radius of α.

[0158] Step 5-3: After removing point p1 from Q, calculate the distances from all remaining points to p2 and p3. If the distance from all points to p2 and p3 is greater than α, then p is a boundary point;

[0159] Step 5-4: If the distances from the remaining points to p2 and p3 are not all greater than α, then traverse all points in the point set Q and use them as point p1 in turn. If condition 3 is satisfied, it indicates that the point is a boundary point, and the judgment of the point is stopped; otherwise, p is a non-boundary point.

[0160] Step 5-5: In this step, cluster the polylines generated by the AlphaShape algorithm;

[0161] Steps 5-6: For each cluster containing multiple line segments, calculate its average direction. Then adjust each line segment in the cluster to align with the average direction. If a building footprint is provided, the regularity of the structure can be further improved by aligning the line segments with the edges in the footprint.

[0162] Preferably, step 6 specifically includes the following steps:

[0163] Step 6-1: Obtaining the candidate set of building roof plans;

[0164] Step 6-2: Obtaining the candidate set of building facades;

[0165] Step 6-3: Obtain the final candidate set using binary linear optimization;

[0166] Preferably, step 6-1 specifically includes the following steps:

[0167] Step 6-1-1: Sort the points according to their curvature values;

[0168] Step 6-1-2: Pick the point with the minimum curvature value and add it to the seed point set;

[0169] Step 6-1-3: For each seed point, the algorithm finds its neighbors. It tests the angle between the normal of each neighboring point and the normal of the current seed point. If the angle is less than a threshold, the current point is added to the current region. Then, it tests the curvature value of each neighbor. If the curvature is less than a threshold, the point is added to the seed. Finally, the current seed is removed from the seed.

[0170] Step 6-1-4: If the seed set becomes empty, it means that the algorithm has grown the region, and the process is repeated from the beginning;

[0171] Preferably, step 6-2 specifically includes the following steps:

[0172] Step 6-2-1: After obtaining the point cloud of the buildings, project these points onto the ground plane and create a height map from them;

[0173] Step 6-2-2: Use the Canny detector to extract a set of edge points from the height map;

[0174] Step 6-2-3: The initial contour set consists of discrete pixels, denoted as S. First, a two-dimensional Delaunay triangulation T0 is constructed from the discrete points in S. Then, the initial triangulation T0 is simplified through iterative edge folding and vertex removal operations. In each iteration, the most suitable vertex to be removed is determined under the following condition: the maximum Hausdorff distance from the simplified mesh T0 to S is less than a distance threshold ∈ [0, 1]. d The total transport cost between S and T0 is kept to a minimum. In each iteration, a vertex satisfying the above condition is removed from T0 by edge folding, and the total transport cost is updated. As the iterative simplification process continues, the overall transport cost will increase. The edge folding operation stops until no more vertices can be removed, or the overall transport cost increases to exceed the user-specified tolerance;

[0175] Step 6-2-4: Apply edge filtering to eliminate a set of unwanted edges caused by noise and outliers;

[0176] Step 6-2-5: Derive polylines from the remaining vertices and edges of the simplified triangulation and regularize them;

[0177] Step 6-2-6: Stretch the boundary lines and step lines into vertical planes to obtain the candidate set of building facades;

[0178] Preferably, step 6-3 specifically includes the following steps:

[0179] Step 6-3-1: Obtain the faces from steps 6-1 and 6-2, and perform planar intersection; obtain the generated candidate faces F = {f i |1≤i≤N};Let variable x i To determine whether to select a candidate face f i x i =1 is the choice, x i =0 means no selection;

[0180] Step 6-3-2: Calculate the data fitting term for each face, using the following formula:

[0181]

[0182] Where |P| is the total number of point clouds, support(f i ε is a concept of confidence, defined according to its local neighborhood at each point. dist(p,f) is the distance between point p and surface f. Only points where dist(p,f) < ε are considered. conf(p) represents the eigenvalue at scale i, and it contains two geometric properties. This implies the flatness of the tangent plane at point p. It implies local sampling uniformity.

[0183] Step 6-3-3: Calculate the model complexity term for each edge. The calculation formula is as follows:

[0184]

[0185] Where |E| represents the total number of pairwise intersections in the candidate face set. i ) is an indicator function whose value is determined by the edge e i The configuration of the two selected faces that are connected determines this. Intersecting edges can be planar or non-coplanar. Therefore, if with e... i The related surfaces introduce non-coplanar edges in the final model, so corner(e) i The value of corner(e) will be 1. Otherwise, the value of corner(e) will be 1. i The value of ) is zero, which means that the two faces are coplanar;

[0186] Step 6-3-4: Calculate the point cloud coverage for each face. The calculation formula is as follows:

[0187]

[0188] The point cloud is projected onto surface f, and a 2D α-shape algorithm is used to construct... area is used for area calculation.

[0189] Step 6-3-5: Using the energy terms mentioned above, under certain hard constraints, the optimal set of faces can be obtained by minimizing the weighted sum of these terms, thus making the final model a boundless manifold. A necessary and sufficient condition for a manifold and a watertight polygon surface is that each edge of the model connects only two adjacent faces. Therefore, the final face selection formula can be written as:

[0190] min λ f ·E f +λ m ·E m +λ c ·E c

[0191] Preferably, step 7 specifically includes the following steps:

[0192] Step 7-1: Calculate the radiation matrices for the sky and the ground based on the Perez radiation model;

[0193] Step 7-2: Establish the ray tracing scene and calculate the correlation coefficient matrix of the query points;

[0194] Step 7-2: Multiply the sky radiation matrix by the correlation coefficient matrix of the query point to obtain the radiation value of the query point;

[0195] Preferably, step 7-1 specifically includes the following steps:

[0196] Step 7-1-1: Read the EPW file and construct weather data;

[0197] Step 7-1-2: Generate the sky matrix for direct incident radiation and the sky matrix for scattered radiation based on the Perez radiation model;

[0198] Step 7-1-3: Add the sky matrix of the directly incident radiation and the sky matrix of the scattered radiation to obtain the total sky radiation matrix;

[0199] Step 7-1-4: Calculate the average value of the total sky radiation matrix to obtain the ground radiation matrix; Step 7-1-5: Combine the sky and ground radiation matrices to obtain all radiation sources;

[0200] Preferably, step 7-2 specifically includes the following steps:

[0201] Step 7-2-1: Sky vector generation, i.e., the direction of light emitted by the radiant block;

[0202] Step 7-2-2: Convert the occlusion model, rays, and query points to Radiance format;

[0203] Step 7-2-3: Establish an octree organizational structure for the scene;

[0204] Step 7-2-4: Perform ray tracing and calculate the correlation coefficient matrix of the query point.

Claims

1. A method for calculating the potential of large-scale building-integrated photovoltaics based on airborne point cloud data, characterized in that, Includes the following steps: Step 1: Point cloud semantic segmentation data preprocessing: Prepare publicly labeled airborne LiDAR point cloud datasets and merge or discard labeled categories, including ground points, vegetation points and building points. Prepare an unlabeled point cloud dataset to be classified; perform grid sampling on the point cloud data, build a KD-Tree, and record the data index before grid sampling; Step 2: Construct and train the RandLA-Net model, and feed the point cloud data to be classified into the model for inference: The RandLA-Net model adopts an Encoder-Decoder architecture, where the Encoder consists of 5 layers of dilated residual blocks, each consisting of local spatial location encoding and attention pooling layers. During training, domain-guided data augmentation is used to transfer features learned from the source domain to the target domain. Finally, pseudo-labeled data is used to fine-tune the model, and the point cloud data to be classified is fed into the model for inference. The specific steps are as follows: Step 2.1: Input the unlabeled point cloud data into the domain-guided data augmentation network to obtain the rotation, scaling, and noise matrix for each point. Apply the obtained rotation, scaling, and noise matrices to the source domain to obtain the data-augmented sample data. Step 2.2: Feed the enhanced source domain sample data into the local spatial coding layer; the specific steps are as follows: Step 2.2.1: For the i-th point in the point cloud Find the K nearest points, and set K to 16; Step 2.2.2, Center Point The K nearest neighbors are The location code is: This is a concatenation operation; || · || calculates the Euclidean distance between neighboring points and the center point. Step 2.2.3: For all neighboring points Their relative spatial positions have been encoded into Features of all neighboring points and spliced ​​together; Step 2.3: Feed the output of the local spatial coding layer into the attention pooling layer; Step 2.3.1: Set up a weight-sharing fully connected layer to calculate the attention score, followed by a... Layer, obtain the attention score for each point; Step 2.3.2: Treat the learned attention score as a mask that can automatically select important features. The final feature is the weighted sum of these neighborhood feature point sets. Step 2.4, repeat steps 2.2 and 2.3 four times; Step 2.5: Input the obtained features of each point into the classifier to obtain the label of each point; Step 3: Building point cloud height normalization: Extract ground points based on semantic segmentation results and generate DEM using Delaunay triangulation. Calculate the shortest distance from all building points to ground points and subtract the shortest distance to the ground from the height value of each building point to achieve height normalization. Step 4: Individual Building Point Cloud: Use conditional Euclidean clustering to individualize buildings, with the condition set to a horizontal distance between points of less than 0.2m. Step 5, Building outline extraction: Use the AlphaShape algorithm to extract boundaries and regularize the outlines by using parallelism, collinearity, and orthogonality; Step 6: 3D Reconstruction of the Building Step 6.1: Obtain the candidate set of building roof plans; Step 6.2: Obtaining the candidate set of building facades; Step 6.3: Obtain the final candidate set through binary linear optimization; The roof plane is extracted from the building point cloud using the region growing algorithm, and the plane intersection is performed to obtain the candidate set of building roof planes. To address the problem of missing building point clouds in airborne lidar, the building height map is generated by projecting the point cloud onto the ground. The Canny operator is used to detect the building outline and step lines and stretch them into the building facade and add them to the candidate set of planes. Finally, the final building plane is obtained through binary linear programming. Step 7, Photovoltaic Potential Estimation: Step 7.1: Calculate the radiation matrices of the sky and the ground based on the Perez radiation model; Step 7.2: Establish the ray tracing scene and calculate the correlation coefficient matrix of the query points; Step 7.3: Multiply the sky radiation matrix by the correlation coefficient matrix of the query point to obtain the radiation value of the query point; Step 8, Photovoltaic Potential Analysis: The solar radiation values ​​of a building obtained through simulation using a 3D model are used to analyze the building's photovoltaic potential. In this analysis, the optimal parameters of the building are determined by considering different building orientations, the building's photovoltaic potential, the monthly variation of photovoltaic potential, and the minimum installation height on the facade.

2. The method for calculating the large-scale building photovoltaic potential based on airborne point cloud data according to claim 1, characterized in that, The specific steps for individualizing the building point cloud in step 4 are as follows: Step 4.1: Create a KD-Tree for the point cloud data P; Step 4.2: Create an empty list C to store the clustering results, and a checkpoint queue Q; Step 4.3: For each point in the point cloud ,Will Join Q, for Find the center point Point cloud within radius ,for Determine if the horizontal distance between the point and the center point is less than 0.2m. If the condition is met, add it to Q. When all points in Q have been processed, add Q to C. Step 4.4: When all points in P have been processed, C contains the clustering results.

3. The method for calculating the large-scale building photovoltaic potential based on airborne point cloud data according to claim 1, characterized in that, The specific steps in step 5 are as follows: Step 5.1: Project the 3D point cloud onto the XOY plane to obtain a 2D point cloud. Randomly select a point p from the 2D point cloud as the initial point. The radius of the rolling circle is α. Search for points within the point cloud at a distance p. All points Q within; Step 5.2: Select any point in Q. Based on the coordinates of these two points and Calculate the coordinates of the center of the circle: in , The center of the circle For the process Two points with radius The coordinates of the center of the circle in two different cases; Step 5.3, remove from Q After that, calculate the remaining points to... The distance from all points; if all points to The distances are all greater than If , then p is a boundary point; Step 5.4, if the remaining points reach The distances are not all greater than Then, iterate through all points in the point set Q and alternate between them. If step 5.3 is satisfied, then the point is a boundary point, and the point evaluation stops; otherwise, p is a non-boundary point. Step 5.5: Cluster the polylines generated by the AlphaShape algorithm; Step 5.6: For each cluster containing multiple line segments, calculate its average direction; then adjust each line segment in the cluster to align it with the average direction. If a building footprint is provided, the regularity of the structure can be further improved by aligning line segments with the edges in the footprint.

4. The method for calculating the large-scale building photovoltaic potential based on airborne point cloud data according to claim 1, characterized in that, The specific steps for obtaining the candidate set of building roof plans in step 6.1 are as follows: Step 6.1.1: Sort the points according to their curvature values; Step 6.1.2: Pick the point with the minimum curvature value and add it to the seed point set; Step 6.1.3: For each seed point, the algorithm will find its neighboring points; Test the angle between the normal of each adjacent point and the normal of the current seed point; If the angle is less than the threshold, add the current point to the current region; then, test the curvature value for each neighbor. If the curvature is less than the threshold, the point will be added to the seed. Remove the current seed from the seed list; Step 6.1.4: If the seed set becomes empty, it means that the algorithm has grown the region, and the process will be repeated from the beginning.

5. The method for calculating the large-scale building photovoltaic potential based on airborne point cloud data according to claim 1, characterized in that, The specific steps for obtaining the candidate set of building facades in step 6.2 are as follows: Step 6.2.1: After obtaining the point cloud of the building, project these points onto the ground plane and create a height map from them; Step 6.2.2: Use the Canny detector to extract a set of edge points from the height map; Step 6.2.3: The initial contour set is a discrete set of pixels, denoted as S. First, construct a two-dimensional Delaunay triangulation T0 from the discrete points in S, and then simplify the initial triangulation T0 through iterative edge folding and vertex removal operations. In each iteration, the most suitable vertex to remove is determined under the following condition: the maximum Hausdorff distance from the simplified mesh T0 to S is less than a distance threshold. The total transportation cost between S and T0 is kept to a minimum. In each iteration, a vertex that satisfies the above conditions is removed from T0 by edge folding, and the total transportation cost is updated. As the iterative simplification process continues, the overall transportation cost will increase; edge folding operations will stop until no vertices can be removed further, or the overall transportation cost increases to exceed the user-specified tolerance. Step 6.2.4: Apply edge filtering to eliminate a set of unwanted edges caused by noise and outliers; Step 6.2.5: Derive polylines from the remaining vertices and edges of the simplified triangulation and perform regularization; Step 6.2.6: Stretch the boundary lines and step lines into vertical planes to obtain the candidate set of building facades.

6. The method for calculating the large-scale building photovoltaic potential based on airborne point cloud data according to claim 1, characterized in that, The specific steps for obtaining the final candidate set using the bivariate linear optimization in step 6.3 are as follows: Step 6.3.1: Obtain the faces from steps 6.1 and 6.2, and perform planar intersection; obtain the generated candidate faces. ; Let variables To select a candidate face , For selection, No selection; Step 6.3.2: Calculate the data fitting term for each face. The calculation formula is as follows: in This is the total number of point clouds. It is a concept of confidence, defined at each point based on its local neighborhood. It is a point to noodles The distance between them, only considering point, It is a scale The eigenvalues ​​below, It contains two geometric properties. This implies the flatness of the tangent plane at point p. It implies local sampling uniformity; Step 6.3.3: Calculate the model complexity term for each edge. The calculation formula is as follows: in This represents the total number of pairwise intersections in the candidate triangular facet set; It is an indicator function whose value is determined by the edge. The configuration of the two selected faces to be connected determines the outcome; therefore, if with The relevant surfaces introduced non-coplanar edges in the final model, so... The value will be 1; otherwise, The value is zero, which means that the two faces are coplanar; Step 6.3.4: Calculate the point cloud coverage for each face. The calculation formula is as follows: The point cloud is projected onto surface f using 2D. Algorithm Structure area is used for area calculation; Step 6.3.5, Utilize , , The energy term, under certain hard constraints, is minimized by the weighted sum of these terms to obtain the optimal surface set, thus making the final model an unbounded manifold; The necessary and sufficient condition for manifolds and watertight polygon surfaces is that each edge of the model connects only two adjacent faces; therefore, the final face selection formula is written as follows: 。 7. The method for calculating the large-scale building photovoltaic potential based on airborne point cloud data according to claim 1, characterized in that, The specific steps for calculating the radiation matrices of the sky and the ground based on the Perez radiation model in step 7.1 are as follows: Step 7.1.1: Read the EPW file and construct weather data; Step 7.1.2: Generate the sky matrix for direct incident radiation and the sky matrix for scattered radiation based on the Perez radiation model; Step 7.1.3: Add the sky matrix of the directly incident radiation and the sky matrix of the scattered radiation to obtain the total sky radiation matrix; Step 7.1.4: Calculate the average value of the total sky radiation matrix and use it as the ground radiation matrix; Step 7.1.5: Combine the sky and ground radiation matrices to obtain all radiation sources.

8. The method for calculating the large-scale building photovoltaic potential based on airborne point cloud data according to claim 1, characterized in that, The specific steps for establishing the ray tracing scene and calculating the correlation coefficient matrix of the query points in step 7.2 are as follows: Step 7.2.1: Sky vector generation, i.e., the direction of light emitted by the radiant block; Step 7.2.2: Convert the occlusion model, rays, and query points to Radiance format; Step 7.2.3: Establish an octree organizational structure for the scene; Step 7.2.4: Perform ray tracing and calculate the correlation coefficient matrix of the query point.

Citation Information

Patent Citations

  • Distributed photovoltaic resource integration method, system and device and storage medium

    CN113076855A

  • Urban photovoltaic potential calculation method fusing surface mesh model and deep learning

    CN116452055A