Automatic identification of utilizable rooftop areas in digital surface models for photovoltaics potential assessment

The considerable potential of rooftop photovoltaics (RPVs) for alleviating the high energy demand of cities has made them a proven technology in local energy networks. Identification of rooftop areas suitable for installing RPVs is of importance for energy planning. Having these suitable areas referred to as utilizable areas greatly assists in a reliable estimate of RPVs energy production. Within such a context, this research aims to propose a spatially detailed methodology that involves (a) automatic extraction of buildings footprint, (b) automatic segmentation of roof faces, and (c) automatic identification of utilizable areas of roof faces for solar infrastructure installation. Specifically, the innovations of this work are a new method for roof face segmentation and a new method for the identification of utilizable rooftop areas. The proposed methodology only requires digital surface models (DSMs) as input, and it is independent of other auxiliary spatial data to become more functional. A part of downtown Gothenburg composed of vegetation and high-rise buildings with complex shapes was selected to demonstrate the methodology performance. According to the experimental results, the proposed methodology has a high success rate in building extraction (about 95% correctness and completeness) and roof face segmentation (about 85% completeness and correctness). Additionally, the results suggest that the effects of roof occlusions and roof superstructures are satisfactorily considered in the identification of utilizable rooftop areas. Thus, the methodology is practically effective and relevant for the detailed RPVs assessments in arbitrary urban regions where only DSMs are accessible.


Introduction
Urbanization has brought about concentrated high energy demand in urban areas that are still increasing as the urban population is growing [1][2][3][4].As part of energy sustainability, a considerable portion of urban energy demand should be satisfied by on-site renewable energy to alleviate congestion on urban local networks [5][6][7].In this context, rooftop photovoltaics (RPVs) have shown high potential as rooftops offer a large unused space for solar power exploitation in cities, where land availability is limited and expensive [8][9][10][11][12].Deployment of RPVs converts each building from a passive power-consumer to an effective power-generator in local energy networks and allows each building to contribute to energy production [13][14][15].For effective long-term and informed planning of the contribution of RPVs to local networks and formulating future energy policies as well as facilitating investment decisions about RPVs, a reliable assessment of solar potential on rooftops is of importance [16].This assessment underpins the necessity of an accurate understating of suitable rooftop areas for installing RPVs.
Roofs are spatially heterogeneous in the sense that they consist of multiple major roof faces with different tilts, azimuths, and accordingly • Considering effects of roof occlusion, shadowing and discontinuity of major roof faces, in a detail-specific manner.• Leveraging digital surface models (DSMs) as the only required input data for different purposes, namely building extraction, roof plane (face) segmentation, solar irradiation modeling, and utilizable rooftop area identification.• Integration of clustering and segment growing along with planarity analysis to achieve robust plane segmentation.
The remainder of this paper is organized as follows: Section 2 gives an overview of different approaches for building reconstruction and identification of utilizable rooftop areas.Section 3 provides a comprehensive explanation of the different components of the proposed methodology.The study area and the employed input data are described in Section 4. Results are presented and discussed in Section 5. Lastly, conclusions are drawn in Section 6.

Related work
Accurate identification of available rooftop areas for installing RPVs entails knowing the shape of roofs and their partial occlusion.DSMs, which provide spatial profiles of the landscape through georeferenced regular grids of elevation data, offer the possibility of automatic extraction of the morphology of roofs and their components [18].DSMs are usually available, easy to be analyzed, and considered as effective data sources in urban applications that require elevation data.
There are two main approaches to reconstruct the shape of roofs from DSMs: model-driven and data-driven approaches.In the modeldriven approach, a library of basic roof shapes is predefined, and the shape that best matches the corresponding area of the DSM is chosen [19,20].This approach ensures regularized reconstructions [21].However, its performance depends highly on the completeness of the set of defined shapes, that is, it cannot recognize the correct shape of a roof if it does not exist in the library [22].Thus, this approach may have a high rate of failure in modeling complex roof shapes.Moreover, roof superstructures (e.g., chimneys and small dormers) are mostly overlooked in this approach [23].The data-driven approach, on the other hand, reconstructs a roof by aggregating its constituent planar patches (roof faces) extracted by a plane segmentation procedure [24][25][26].Although this approach is sensitive to noise, it is not limited to a set of predefined shapes, and therefore it can reconstruct any roof form with sufficient detail as far as the DSM resolution allows [27,28].In this research, the data-driven approach has been chosen because of its potential in recovering roof superstructures that play a pivotal role in the determination of available rooftop areas for RPVs.
As mentioned above, the data-driven approach involves a plane segmentation procedure in which pixels of DSMs are divided into homogeneous non-overlapping planar segments [29].It enables the determination of tilt, azimuth, dimension, area, and boundary of each roof face.Generally, approaches towards plane segmentation can be categorized as edge-based, model fitting-based, region growing-based, and clustering-based methods [30].
In edge-based methods, pixels located in edge regions are first identified.Then segments are generated by grouping pixels enclosed by detected edges [31].This group of methods allows for fast segmentation, but they often lead to undesirable results in complex scenes that stem from delivering disconnected edges [32].
Model-based fitting methods employ geometric primitive shapes (e.g., plane) for segmentation.The points that form a geometric shape similar to the defined primitive shape are grouped as one segment.For plane segmentation, the most popular methods are Hough transform and RANSAC.Hough transform is a voting-based method designed to recognize parametrized geometries.It firstly maps points from the spatial space to a discretized parametric domain.Then it chooses the planes whose parameters gain a significant amount of votes [33].Hough transform is characterized by high computational costs, which has led to the development of a wide range of variants of the basic Hough transform [34].RANSAC works in the spatial domain and is based on a hypothesize-and-verify routine.It generates a number of parameters for a given geometry by randomly sampling the minimum number of required data points and chooses the parameters with the highest number of inliers [35].According to Tarsha-Kurdi et al. [36], RANSAC is more efficient and robust in comparison with Hough transform.It is, however, stochastic and may detect spurious planes that do not exist in reality.A lot of research has proposed various modifications of RANSAC to overcome its adverse effects [37,38].
Region growing-based methods use some criteria or compatibility thresholds to merge spatially close points or regions with similar surface properties [26,[39][40][41].They usually consist of two main steps: (1) selecting seed points and (2) expanding the selected seeds by some growth criteria [22,27].The reliability of these methods depends largely on the growth criteria and the arrangement of seeds [30].
Clustering-based methods group points based on the similarity of their feature vectors.For each point, a feature vector is defined that often consists of the surface normal.Then, by using a clustering algorithm, such as -means [42] and fuzzy -means [43], homogeneous patterns are recognized as segments.The performance of this family of methods relies on the employed clustering algorithm.But, these methods are mainly robust and flexible, and they are independent of seed selection, unlike region growing methods [44].High time complexity and inadaptability to new datasets are two issues that may arise in clustering-based methods, depending on the clustering algorithm.Clustering methods with high computational costs may not be able to handle high-resolution DSMs.Additionally, unadaptable clustering methods are not trivial to apply and may not attain satisfactory results.
To overcome some of the mentioned issues, we propose a plane segmentation method based on the integration of clustering and region growing.The pixels' surface normal vectors are first clustered by a recently developed and statistically well-founded clustering algorithm [45].This clustering algorithm is adaptive and has an optimized computational speed, making it suitable for plane segmentation.To avoid any possible over-segmentation, the segments obtained from the clustering are used as robust seeds in a segment (region) growing procedure.Planarity analysis is also incorporated to enhance clustering.This method takes advantage of both clustering and region growing and as a result, avoids their limitations when used alone.
Building footprint (building plan) maps that indicate the boundary of buildings can considerably improve and accelerate the procedure of roof segmentation and alleviate inherent uncertainties [46].However, they may not be available in all areas, nor be up-to-date, nor show the real boundary of buildings (e.g., showing the legal boundary in cadastral maps).Therefore, it is desirable to make the roof segmentation procedure independent of auxiliary data such as building plan maps [47,48].In contrast to [15,[49][50][51][52], the proposed methodology is able to automatically distinguish building from non-building pixels by only relying on DSMs and without using ancillary data.It rests on the idea that buildings are big objects with big planar segments above the bare-ground.Geometric features (e.g., height and width) in conjunction with regional features (e.g., area) are defined to accomplish the task of building extraction.These features together are deemed sufficient to robustly distinguish building from non-building objects in DSMs.
It becomes possible to compute the overall rooftop area of the building stock once roof faces are extracted, and their tilt and extent are determined.However, different circumstances, such as obstacles (e.g., chimneys), shadow effect, and service areas, may limit the available rooftop areas to install RPVs.These available areas, referred to as utilizable areas, are the key to reliable estimates of solar energy potential and preventing any overestimates.The idea of ascertaining utilizable rooftop areas has been addressed in many studies [17,53].A common way of arriving at an estimate of the total utilizable rooftop areas is by applying a set of loss coefficients that represent the average decrease of the rooftop areas [50,[54][55][56].Although this approach is computationally fast, adapting the coefficients to the study area is a nontrivial task and has the risk of overlooking variations in heterogeneous regions [57].To address this issue, a few spatial methods based on roof shapes, using geospatial information systems (GIS), have been recently proposed for the identification of utilizable areas [28,[58][59][60][61].However, most of them still rest on some loss coefficients [58,59] or are limited to manual digitization [58] or rudimentary queries [60,62], or simplified roof shape modeling [19] that may not lead to reliable results.In this research, a detail-specific method for automatic extraction of utilizable areas of roof faces is proposed.It considers roof superstructures as far as the resolution allows and is independent of any loss coefficients.Three aspects, namely geometric, technical, and solar that represent the characteristics of utilizable rooftop areas are considered.These aspects ensure that utilizable areas are of appropriate size, satisfy panel installation requirements, and adequately receive solar irradiation.Being free of loss coefficients is another inherent advantage of the proposed method.
In summary, the contribution of the paper is a new spatially detailed methodology that incorporates methods for the automatic extraction of buildings along with their underlying roof faces, as well as the identification of RPV-utilizable rooftop areas.This methodology facilitates a realistic assessment of solar energy potential, which is indispensable for energy planning.It is based solely on DSMs allowing it to be applied in a broader context, where additional data such as 3D building models or building plans are not available.

The proposed methodology
This study presents a spatial-based methodology to facilitate the assessment of RPVs potential.Fig. 1 shows an overview of the proposed methodology.The input to the process is a DSM, and the final output is an estimate of solar electricity yield for each building.The estimation of RPVs potential is comprised of three primary processing blocks (phases).In the first block, the information required as inputs in the next phases, such as non-ground pixels and surface normal vectors, are determined.The second block involves the extraction of building footprints and roof plane (face) segmentation.Lastly, in the third block, the rooftop areas available to reasonably install RPVs are identified, and an electricity yield is estimated for each building.All steps are fully automated and do not require any manual operations.

Filtering bare-ground pixels
With the overall aim being to extract buildings and utilizable rooftop areas, bare-ground pixels of the DSM should first be filtered out.The progressive morphological filter proposed in [63] is applied to accomplish this task of separating bare-ground pixels from aboveground ones.This method identifies bare-ground pixels by applying a series of morphological opening filters upon the DSM, whose kernel size gradually increases.A digital terrain model (DTM) necessary to determine objects' height is produced by resampling the extracted pixels.

Planarity analysis
Plane segmentation, in which pixels are partitioned into coherent planar patches (roof faces), is carried out by a clustering approach.In plane segmentation by clustering, a suitable feature space that characterizes pixels as being planar has to be defined.A satisfactory feature space definition has to provide the potential of distinctly outlining planar segments.In other terms, pixels belonging to the same planar segments in the spatial space (DSM) should be mapped close to each other and far from pixels of other segments in the feature space to make clusters discernible.In this research, we chose the feature space to be defined based on the normal vector of each pixel (  ,   ,   ) obtained by fitting a plane to its neighborhood.This 3D feature space is effective because pixels on the same planar segment usually have similar normal vectors, and thus they can be distinguished from other planar segments.In Fig. 2(a), two planar segments of a building rooftop,  and , are highlighted.Fig. 2(b) visualizes some normal vectors of these two segments.As is evident from Fig. 2, the normal vectors of each segment are parallel and dissimilar to another segment's vectors, making them theoretically appropriate for identifying planar segments.
In practice, however, each plane may contain some pixels whose normal vectors are ambiguous and not consistent with others.For instance in Fig. 3, which visualizes the normal vectors along the yellow line on the rooftop, the red vectors are not entirely consistent (parallel) with the majority of green vectors representing the roof face normal vectors.These inconsistent pixels, here referred to as non-planar pixels, are located in the vicinity of more than only one plane.Non-planar pixels are observed at roof edges, roof ridges, and noise.They are randomly scattered in the feature space, make the boundary of clusters (i.e., planar segments in the feature space) less well-defined, and may disturb the partitioning of planar segments.It is, therefore, necessary to identify and exclude non-planar pixels from the clustering process.
In the preprocessing phase, planarity analysis is applied to pixels of the DSM to check their planarity and to determine their normal vectors.First, a 3D covariance matrix for each pixel  and its neighbors is calculated by Eq. ( 1), where   is defined as a vector showing the 3D position of the th pixel in the neighborhood of  and  represents the 3D position of the neighborhood centroid.
Next, eigenvalues ( 1 ≥  2 ≥  3 ) along with their associated eigenvectors ( 1 ,  2 ,  3 ) of the covariance matrix are calculated.The eigenvalues denote the variances along the corresponding eigenvectors. 3 approximates the surface normal at pixel  and is equal to the normal vector of a tangential plane to pixel . 3 measures the amount of nonplanarity, and the bigger it is, the more likely the neighborhood of  is to be non-planar.Thus, if  3 is smaller than a threshold   , it can be hypothesized that pixel  is located on a single plane and is planar (please refer to Section 5 for the chosen value of   ).

Solar analysis
To get a comprehensive description of the solar suitability of roof faces, solar irradiation, which reflects the solar potential of roof faces, is taken into account.The average solar irradiation of each roof face is the average global irradiation, the sum of direct and diffuse irradiation that is incident on the roof plane in a given period (e.g., a day).The solar model of ArcGIS Desktop is employed to estimate this attribute.It is accurate and computationally efficient, and it has been broadly applied to a multitude of solar energy studies [64][65][66].The model developed in [67,68] is able to map direct and diffuse components of solar irradiation over a geographic region.
The model encompasses atmospheric effects, site elevation and orientation, daily and seasonal changes of the sun position, and the shadow effect of surrounding objects (e.g., trees and buildings) to determine the spatio-temporal variability of the solar potential.Transmittance and diffuse proportion are two parameters used to estimate the atmospheric effects.Transmittance, a function of atmospheric absorbers and scatters, estimates the average proportion of the incoming solar flux reaching the earth's surface.The typical values of transmittance are between 0.4 for cloudy sky conditions and 0.7 for very clear sky conditions.Diffuse proportion estimates the proportion of global normal irradiation flux that reaches the ground after having been scattered by the molecules in the atmosphere.It typically ranges from 0.2 for very clear skies to 0.7 for dense clouds.Transmittance and diffuse proportion parameters contribute to the calculation of direct and diffuse components of solar irradiation, respectively.
To take into account atmospheric scattering, a sky map is constructed by discretizing the sky-dome into a number of sectors delineated by zenith divisions and azimuth divisions.The common number of divisions are 8, 16, 32, and 64.The shifts of the sun position are modeled by a sun map that consists of discrete sectors showing the sun track at a particular time interval within a defined period.In the sun map, the sun's path is discretized based on the temporal granularity defined by hour interval and/or day interval.A finer temporal granularity offers the potential for a more detailed (in time) estimation of solar irradiation but leads to longer computational time.
The model includes viewshed analysis to incorporate shadowing effects and to obtain a more realistic estimate of solar irradiation.The viewshed analysis generates a Boolean image that indicates the sky occlusion from surrounding objects when looking towards the sky from a particular point of the DSM.The accuracy of the viewshed analysis and its computational speed are determined by the granularity of the viewshed images, as specified by the sky size parameter, that defines the length of each side of the viewshed images in pixels (e.g., 200,500,2000).Increasing sky size may lead to more accurate and visually appealing results in shadow modeling.However, it also makes the computation intractable.It should be noted that the sky and sun maps have the same resolution as the viewshed image.The overlay of the viewshed and sun map showing visible sun angles (positions) is used to calculate direct solar irradiation for a given location.The diffuse component of solar irradiation is computed based on the overlay of the sky map and viewshed.Please refer to Table 5 in Section 5 for the values of the mentioned parameters.

Extraction of buildings and roof faces
This phase aims to separate buildings from other above-ground objects (e.g., trees) as well as partitioning rooftops into planar segments.Two groups of features are employed: • Geometric features including the height and greatest width of an above-ground object and • Regional features including the area of an object and the area of its constituent planar segments.
The heights of objects are obtained per pixel by subtracting the DTM from the DSM.Fig. 4(a) shows the subtraction of the DTM from the DSM (DSM−DTM) in a sample scene that contains an Lshaped building and vegetation.A height threshold   representing the minimum height of buildings in the area is defined to remove lowheight objects such as grass, small trees, and road furniture.The result of this step is a binary mask whose foreground represents regions above the height threshold (Fig. 4(b)).The binary mask still may cover some non-building objects, including tall trees and streetlights, that need to be removed.Thereby, the height feature alone may not be sufficient for robust building extraction, and some shape-based features may be necessary.
Connected component labeling [69] is performed on the resulting binary image to distinguish different objects (regions).Connected component labeling groups foreground pixels of the mask into connected objects and assigns a unique label to all pixels of each object.It allows for further calculation of objects' shape features, such as greatest width and area, as each object can be readily retrieved by its unique label.The greatest width of an object is measured as twice the maximum distance of any pixel in the object to the closest pixel outside of it.The surface area of an object is obtained based on the mask's spatial resolution  and the number of pixels of the object.  and   are two thresholds determining the minimum greatest width and minimum area of a building.Both are used to eliminate narrow and small objects (Figs.4(c) and 4(d)).The resulting mask obtained by applying   ,   , and   represents potential building candidates (Fig. 4(d)).It is evident that height, greatest width, and area help the elimination of trees that are not high and dense.To distinguish high dense trees from buildings, the area of planar patches is used as a complementary feature.This is because trees, in contrast to buildings, are composed of many small planar patches that can be removed by applying a threshold for the minimum allowed planar area.Thus, in the next stage, each building candidate, which still may include trees, is split into planar segments.

Plane segmentation and removing non-building segments
In this section, a new plane segmentation method based on the integration of clustering and region growing is proposed.Planar segments of each building candidate are initially extracted by clustering that is carried out in the 3-dimensional feature space based on normal vectors.As mentioned in Section 3.1.2,to make clusters explicitly separable, the non-planar pixels obtained in the planarity analysis are excluded from the clustering process as they have ambiguous normal vectors and are randomly distributed in the feature space.In clustering, pixels with similar normal vectors are grouped into the same cluster.Building candidates are large in size, and clustering their normal vectors involves handling big datasets that consist of a myriad of normal vectors.The distribution of the normal vectors along with the shape and the number of clusters vary among building candidates, which makes setting clustering parameters a non-trivial task.Therefore, it is necessary to use a clustering algorithm that is able to handle big datasets and to adaptively find the shape and number of clusters.
A statistically well-founded clustering algorithm called minimum density divisive clustering (MDDC) [45] is employed because of its adaptation and optimal computational performance.MDDC delineates clusters by identification of decision boundaries that avoid intersections with high-density regions.In essence, it recursively partitions data points by what is called low-density hyperplanes that pass through regions with low probability density.A kernel density estimator based on isotropic Gaussian functions is employed to compute the density on hyperplanes.In MDDC, data points are projected onto the normal vector of hyperplanes to make kernel density estimation one-dimensional and accordingly render the computations of optimization tractable.It uses improved fast Gauss transform [70] to accelerate the calculation of Gaussian summations in kernel density estimation.The time complexity of MDDC is linear with respect to the number of data points, which is suitable for coping with big data.It has to be noted that MDDC adaptively determines the shape and number of clusters inherent within data on the basis of local contexts.
Each resulting planar patch may contain multiple planar faces that are either parallel or coplanar but spatially separated.In other words, detached planar faces parallel or mathematically the same are clustered into the same patch.It is because partitioning by MDDC is performed based on only normal vectors, and spatial connectivity of pixels is not taken into account.To address this issue, the density-based spatial clustering algorithm [71], which is based on density and connectivity analysis, is applied to each obtained patch in the original spatial space (i.e.,  and  coordinates of pixels) to separate such parallel or coplanar faces.
To assign the initially excluded non-planar pixels (e.g., roof ridges) to the best segments and to merge planar faces that might be oversegmented, we propose a segment growing procedure based on plane fitting.We use the extracted patches produced by clustering as robust seeds.First, the patches on the list are sorted based on their size (number of pixels) in ascending order, and a plane is fitted to the biggest patch selected as the most robust seed.Then, adjacent non-planar pixels are added to the seed if their perpendicular (point-to-plane) distance to the fitted plane is smaller than the threshold of   .This threshold is determined by the accuracy of the DSM and is usually between 10 and 30 cm.In addition, to be able to merge over-segmented patches, an adjacent segment is added to the seed if the angle between its normal vector and that of the seed is smaller than   .Next, the neighbors of the expanded seed are examined further, and the process is continued until no additional patches or non-planar pixels are merged to the current seed.The initial seed and its merged patches are then excluded from the list.Afterward, the remaining patches are sorted based on size, and segment growing starts again from the biggest segment.The mentioned steps are repeated until no patch remains on the list.
During the segment growing procedure, non-planar pixels can be assigned to multiple seeds.At the end of the procedure, the best segment for each non-planar pixel is selected based on proximity.In other terms, for each non-planar pixel, the distances to the corresponding segments are first calculated.Then, the non-planar pixel is attached to the segment that has the minimum distance.This ensures that the order of seeds in the segment growing procedure does not affect the assignment of non-planar pixels, which enhances its robustness.
The result of the plane segmentation procedure is a set of planes in which the normal and the belonging pixels of each segment are all obtained.Fig. 5 depicts the results of the plane segmentation achieved by the integration of clustering and segment growing in the sample scene.Clearly, roof faces are well represented by large planar segments, whereas vegetation is characterized by many small groups of pixels that happen to meet the planarity conditions.The area of planar segments, which are small in vegetation, can be a useful attribute to distinguish trees from buildings.Thus, segments whose areas are below a certain threshold   , showing the minimum area of planar segments, are removed.To avoid the removal of small roof faces such as chimneys, small dormers, and pipelines, small segments surrounded by large segments are maintained.This is because roof faces typically lie within the accepted segments.In the end, the building candidate mask is updated, and the regions that satisfy geometric and regional conditions are preserved.

Extraction of utilizable rooftop areas and estimation of energy yield
Due to the reasons explained below, all rooftop areas are usually not suitable for installing RPVs; hence estimating solar energy based on the overall rooftop area might result in an overestimate of the aggregated solar potential.Roof superstructures (e.g., chimneys), shadowing, and panel installation limitations practically restrict where RPVs can be mounted.Thus, it is first required to determine the areas utilizable to install solar panels.A utilizable roof face area is defined as a sub-area of the roof face where RPVs can reasonably be installed.
In this research, three different aspects are considered to derive the utilizable area of roof faces: (1) Technical aspect that eliminates panel setbacks, reserved areas for accessibility and safety purposes, as nonutilizable areas.(2) Geometric aspect that excludes areas of a roof face that cannot accommodate an RPV in terms of its dimensions.(3) Solar aspect that excludes roof patches that are not sufficiently exposed to the sun due to shadows cast by surrounding objects and/or due to their orientation.Fig. 6 illustrates the effects of technical, geometric, and solar aspects.In our study, the reduction of rooftop areas is performed in a spatial manner instead of just using some general loss coefficients defined in [50,55,56].A more detailed explanation of these aspects and the proposed spatial analyzes to apply them will be presented in Sections 3.3.2,3.3.3,and 3.3.5.Only common installations, which attach RPVs to the roof itself (i.e., parallel to the roof face), are regarded in this study.

3D-2D conversion
Acquiring utilizable areas requires further analysis of segmented roof faces.Although each roof face is a 3D shape, they are 2D by nature (as they consist of planar points), and analyzing them in a 3D manner not only adds some unnecessary complexities but also makes  3) and ( 4), where  and  are the azimuth and tilt (slope) of ⃖⃖⃖ ⃗ , respectively.Fig. 7 shows a schematic example of this coordinate transformation.It has to be noted that the origins of the coordinate systems are not of importance in this figure.(4) A binary image with the pixel size of  is created based on the set of 2D plane points {   ,   } representing the boundary of the roof face.The original shape of 3D roof faces (e.g., inner angle, length, and width) are preserved through this conversion.Fig. 8(a) shows a sample 3D roof face converted to 2D.

Technical aspect
Depending on the employed RPV system, there should be a margin between the edge of the RPVs and the roof face referred to as an exclusion zone or a setback area to ease accessibility and prevent wind uplift on modules.The exclusion zones usually have a low amount of solar irradiation because of shadows cast by their neighboring roof faces; thus, disregarding them mitigates the shadow effect and raises the average solar irradiation over utilizable areas.In most studies, Fig. 7. Schematic example of the coordinate system transformation for converting 3D to 2D.The - plane is parallel to the highlighted roof face, and the cross product of  and  vectors is perpendicular to the roof face.exclusion zones were incorporated in non-spatial manners such as multiplying the roof area by a constant coefficient [59].In this study, they are, however, excluded in a spatial manner, i.e., in terms of actual areas calculated from existing roof geometries.
The proposed way for eliminating them is by utilizing a morphological erosion operation [73].The utilized structuring element has a circular shape with a radius equal to the width of the requested exclusion zone   .The erosion geometrically shrinks the roof face by the radius of the structuring element.Let  be a roof face and  be a structuring element.The erosion of  by  is denoted by   =   [𝑅𝐹 ], where   is the shrunken roof face.Fig. 8(b) shows the exclusion zone specified by the erosion operation.

Geometric aspect
Some parts of the shrunken roof faces yet may not offer enough space for installing RPVs, and it is necessary to identify and remove them (e.g., the area between the dormer and ridge of the building in Fig. 6(b)).In most studies, the geometric aspect is either overlooked or considered in a naïve way.One of the most common ways described in the literature is to remove roof faces whose areas are below a specific threshold [59,62,[74][75][76].However, this method is binary and rigid in the sense that the total area of a roof face is either preserved or removed.In other terms, it does not have the necessary flexibility to scrutinize the shape of the roof face to find its potential subareas that may satisfy geometric conditions, e.g., suitable length and width.For example, although the area of the roof face shown in Fig. 9 is considerable (36 m 2 ) and it is quite likely to satisfy any area condition, a part of it (cross-hatched area in Fig. 9) does not offer enough space for installing an RPV with the size of 1.7 m × 1.0 m and must therefore be considered non-utilizable.This is because the width of the highlighted area (0.8 m) is less than the width of the RPV (1.0 m).
We suggest a new algorithm based on the morphological opening operation to remove geometrically unsuitable parts of roof faces.This algorithm uses various structuring elements with the size of the employed RPV in different rotations.Indeed, it iteratively applies a number of opening operations in which their structuring elements have different orientations.The results of all iterations then are combined (union) to extract every part of the roof face where an RPV can be possibly installed on.
The pseudocode of the proposed method for determining geometrically suitable areas of a roof face is presented in Algorithm 1.The inputs of the algorithm are a roof face   derived from the previous step, a structuring element representing a solar panel  , and a set of angles  for rotating  .The size of  depends on the length and width of the utilized RPV, denoted by    , and the chosen spatial Algorithm 1 Pseudocode of the proposed algorithm for applying the geometric aspect.

Input: A shrunken roof face 𝑅𝐹 𝑇
A solar panel  with the size of    A set of rotation angles  = {0 end if 12: end for resolution .The matrix expression of  is according to Eq. ( 5).
At every iteration, the rotated  around its center by  ∈ , denoted by   , is used as a structuring element in the opening operation.A limited number of angles with the steps of 10 , the area of the roof face where the RPV with a specific rotation can fit is obtained.As RPVs can be practically installed with different rotations, the structuring element rotates inside the for-loop.The final output    is the integration of all suitable areas acquired in the iterations.In this way, all areas that can accommodate the RPV with one of the directions are obtained.In the end, the resulting roof face regions whose areas are less than the area of the RPV are removed.The regions are calculated by connected component labeling [69].Figs.8(c) and 8(d) depict the geometrically unsuitable areas highlighted in pink and the final disposable areas, respectively.

2D-3D conversion
Given a 2D roof face derived by applying the technical and geometric aspects, its corresponding 3D roof face is calculated by the following two steps.(1) The constituent points of the corresponding initial 3D roof face are converted to 2D by Eqs. ( 2), (3), and ( 4).(2) The points that fall inside the boundary of the 2D roof face, obtained by applying the technical and geometric aspects, are preserved (Fig. 8(e)).These steps are simple and do not need the inverse form of Eqs. ( 2), (3), and (4).

Solar aspect
The rooftop areas obtained by applying geometric and technical aspects still may not be entirely suitable for RPVs placement.This is because utilizable areas must be sufficiently exposed to the sun as well.As explained in Section 3.1.3,average solar irradiation as an important attribute reflecting solar potential is utilized for this purpose.In other words, solar irradiation is first calculated for a given period.Then its average over each roof face is recorded as its attribute.It should be underlined that solar irradiation is computed by considering occlusion (shadowing) that significantly affects solar potential.A threshold   showing the minimum acceptable average solar irradiation is defined to exclude unsuitable roof patches.If the average solar irradiation of a roof face is above   , it is preserved.Applying a suitable threshold value ensures that roof faces that are frequently in shadow or the ones that receive a low amount of irradiation, due to their azimuth or tilt, are excluded.

Estimation of energy yield
Finally, an estimate of energy output from the deployment of RPVs on the utilizable rooftop areas is obtained.The solar electricity yield of a utilizable roof face in a given period of time (in kWh) is calculated according to Eq. ( 6).
In this equation,   is the total amount of global irradiation incident on the utilizable roof face in a given period of time (in kWh/m 2 ),  is the spatial resolution of the DSM in meter,  is the tilt (slope) angle of the roof face,   is the module efficiency, and   is the performance ratio.The term  2 ∕ cos  calculates the area of each pixel in 3D.Module efficiency relies on the technology used in RPVs and is determined in an ideal lab setting [77].Typical efficiency values of commercial RPVs range from 15% to 25%.In this research, a conservative efficiency of 16% is assumed.The performance ratio describes the relationship between the actual energy output of the RPV system and its nominal capacity at standard test conditions (without losses of any kind).It accounts for the environmental and engineering-related factors, such as shading, ambient temperature, inverter efficiency, and dirt, and it helps to provide mathematical accounts of the expected energy in reality.The performance ratio is set to 0.75, which is in line with the experimental results reported in [55,78].The total energy yield of a rooftop is an aggregate of the energy produced by its constituent utilizable roof faces.As the main focus of this study is on roof shape modeling and deriving utilizable rooftop areas, non-linear power generation models are not used.

Study area
Gothenburg is the second biggest city in Sweden and has a population of approximately 600,000 inhabitants.The city has several ports and various large industries.It is located on the Swedish west coast and experiences mild winters and cool summers.It features dominant westerly winds and a mean annual temperature of 9.8 • c 1 .The shortest and longest daytime of the year are approximately 6 and 17 h, and 44% of daylight hours are sunny.Gothenburg is among the most suitable cities in terms of the global destination sustainability index 2 ; showing its advancements in adopting renewable energy sources such as solar energy.Its goal for 2030 is to produce 500 GWh of renewable energy to significantly offset fossil fuel use and cost [79].The deployment of RPVs is steadily growing in Gothenburg because of both municipality support and ongoing reduction in the price of RPVs.
A part of downtown Gothenburg was selected as the study area in this research (Fig. 11).It contains a heterogeneous mix of buildings with variations in shape, orientation, and usage.As mentioned earlier, this research leverages DSMs as they have a prominent place for extracting existing infrastructures and estimating solar potential by providing spatial and geometric descriptions of the region.The DSM of the study area, the solely necessary input data for the proposed methodology, is obtained from the Swedish mapping, cadastral, and land registration authority (lantmäteriet) 3 .It has a spatial resolution  of 10 cm and has been produced in 2018. 1 www.smhi.se/data/meteorologi/nederbord 2 www.greengothenburg.se 3 www.lantmateriet.se

Results and discussion
In this Section, the proposed methodology outlined in Fig. 1 is applied to the study area.The results of the automatic building extraction and rooftop segmentation are first presented and evaluated.The evaluation is carried out from two different perspectives, namely building and roof plane assessments.Afterward, the results regarding the extraction of utilizable rooftop areas as well as solar irradiation and electrical energy yield estimation are shown and analyzed.Most of the implementations were done in MATLAB 2019 4 on a computer with an Intel(R) CoreTM i7-8700 CPU @ 3.6 GHz and 32 GB RAM.ArcGIS Desktop 105 was used only to produce the solar irradiation map.

Building extraction and rooftop segmentation
The methodology was executed on the DSM by using the values of the parameters listed in Table 1.As mentioned earlier, it has been designed such that its parameters can be simply adapted to any region.The values of the parameters in Table 1 were determined by a trial and error approach, as the most reliable way, and applied on a small part of the study area.Fig. 12 shows the results of extracting some buildings.Small holes have been removed by applying a morphological closing filter.The figure illustrates that buildings even with complex roof forms are accurately extracted and successfully distinguished from other objects.Vegetation objects are substantially removed and not considered as building regions.
Three evaluation metrics, namely completeness, correctness, and quality in both pixel-based and object-based levels, are used to quantitatively assess the extracted buildings [80].Completeness is the percentage of the reference entities identified by our algorithms.Correctness is the percentage of correctly extracted entities in the results and is relevant to the false alarm rate.Quality is the compound of completeness and correctness [81].These three quantitative metrics are calculated according to Eqs. ( 7), (8), and (9).
In the equations,   ,   , and   are true positive, false positive, and false negative, respectively, and they are computed by comparing the extracted buildings with the ground truth ones.The ground truth data (reference data) were obtained by manually digitizing the buildings of the study area.In the pixel-based level   ,   , and   are computed by using the number of pixels, whereas in the objectbased level they are calculated by counting the number of objects (buildings) [82].A building is accepted as a   in the object-based metrics if it has more than 50% overlap with a building in the reference data [81].A satisfactory classification should lead to high correctness, completeness, and quality at per-object and per-pixel levels.Table 2 shows the object-and pixel-based evaluation results of all the extracted buildings in the study area.Only buildings bigger than 30 (m 2 ) are considered in the reference data to make the evaluation consistent with the adopted thresholds.Table 2 suggests that most of the buildings are correctly detected, and the proposed methodology is effective in separating buildings from other above-ground objects.
However, the procedure has failed in some cases.Fig. 13(a) shows a building merged with a part of the tree standing close to it.The reason is that the building is partially occluded by the tree that is tall and has a flat local surface.In Fig. 13(b), the building is only partly detected.This is because the missed parts have domed shapes that are not properly captured by the plane segmentation.Although this issue lowers the building extraction performance in theory, it is in practice not of importance as dome roofs are usually not suitable for RPVs placement, and missing them does not considerably affect the estimation of the utilizable areas.
The detection of roof planes is performed by planarity analysis and clustering, followed by segment growing (Section 3.2).The method is based on the surface normal vectors and planarity of pixels and   assumes that roofs are composed of some planar patches.Fig. 14 shows the plane segmentation results of some buildings.Visual inspection shows roof faces have been correctly captured.Additionally, it is seen that most pixels on the roof ridges are correctly segmented.This is because the proposed assignment of non-planar pixels (e.g., roof ridges) is independent of the order of seeds, and it is determined based on the proximity at the end of the segment growing procedure, resulting in more reliable segmentation.In some roof faces, holes occur due to noise or minor roof superstructures such as plumbing vents, attic vents, and small chimneys that are not recognized as planar segments.Their impacts on the identification of utilizable areas (e.g., panel setback) are nevertheless completely taken into account.
The reliability of the proposed plane segmentation method is analyzed by measuring the completeness, correctness, and quality metrics in both pixel and object levels.The reference roof faces were prepared by manual digitization on the basis of true orthophotos and hillshade maps calculated from the DSM.Similar to the evaluation of building extraction, a minimum overlap of 50% with the reference is required to consider an extracted roof plane as a true positive.Table 3 summarizes the quantitative evaluation results for the study area.According to [83,84], the proposed plane segmentation method is regarded to be practically effective and relevant because the completeness and correctness are greater than 70% and 85%, respectively.We benchmark the performance of the proposed method against region growing that has been widely used in roof planes segmentation [30].Table 4 summarizes the evaluation results of region growing.Comparing Tables 3 and 4 indicates that the proposed method leads to significantly better results in both pixel and object levels.

Utilizable rooftop areas and RPVs electricity production
Identification of utilizable areas and estimation of RPVs potential require solar irradiation maps, which show the spatial distribution of solar energy over the study area.The solar model of ArcGIS Desktop is used to produce the solar irradiation map.As detailed in Section 3.1.3,the solar model requires setting an array of input parameters that specifies the atmospheric effects and spatio-temporal granularity for computation.Table 5 lists the applied values of the parameters to construct the solar irradiation map.Diffuse proportion and transmittance were objectively calibrated using the monthly global horizontal irradiance obtained from NASA surface meteorology and solar energy database 6 for the study area.The global solar irradiation on a horizontal plane (in W/m 2 ) inside the study area was calculated  using the solar model for different combinations of diffuse proportion ∈ {0.2, 0.3, 0.4, 0.5, 0.6, 0.7} and transmittance ∈ {0.4,0.5, 0.6, 0.7}, i.e., 24 combinations, for a given month.Then the combination whose output best matches the actual global horizontal irradiance of the month was chosen.The remaining parameters (relating to granularity) were set for a favorable balance between accuracy and computational speed.
Fig. 15 maps the estimated global solar irradiation for some scenes of the study area for a typical year.The effects of occlusion and shadowing are noticeable in all the scenes.For instance, the average solar irradiation on the rooftop of the bottom left building is much lower than others, which is attributed to shadows cast by its surrounding objects (high-rise buildings).Furthermore, as expected, the amounts of irradiation on the roofs are mainly higher when compared with the ground surfaces, showing roofs' great potential in solar energy harvesting.
The mean annual solar irradiation incident on all extracted roof faces as a function of tilt and azimuth is shown in Fig. 16.Roof faces with tilts less than 5 • are considered flat, and no azimuth is defined Having the spatial distribution of solar irradiation along with planar segments of roofs, utilizable rooftop areas can be automatically identified.As detailed in Section 3.3, technical, geometric, and solar limitations are considered to accomplish this task.Table 6 lists all the employed parameter values for this purpose.The parameter    used to exclude geometrically unsuitable roof parts is set to the standard size of commercial photovoltaics 1.7 m × 1.0 m.The width of the exclusion zone   can vary widely depending on the country or even the city under the study.The bigger it is, the more rooftop areas are eliminated.We set it to 0.5 m based on our consultations with experts and RPVs installers.The minimum amount of solar irradiation suitable for installing panels   is set to 1000 kWh/m 2 /year, which is consistent with several studies [19,85,86].The value of   can be easily adapted according to the technological-economic progress of  RPVs, location, and expected energy needs [87][88][89][90][91].The impacts of   and   on the utilizable areas will be further analyzed in this Section.Fig. 17 shows the top view upon the identified utilizable areas of a few buildings in the study area.Clearly, the proposed methodology has thoroughly considered the impacts of small roof details (e.g., chimneys, plumbing vents, and attic vents) on the identification of utilizable areas.Even some big roof planes that are geometrically suitable have been removed due to the lack of sufficient solar irradiation.For instance, the bottom left building in the figure that consists of four major roof faces does not contain any suitable area.It can be inferred that the methodology explicitly takes into account the geometry and details of roofs along with their irradiation level for the identification of utilizable areas.
Table 7 quantitatively summarizes the effect of technical, geometric, and solar aspects on all rooftops of the study region in terms of area, annual solar irradiation, and energy yield.In this table,  means a rooftop,    implies parts of the  derived by applying technicalgeometric ( ) aspects, and    means utilizable parts of the  obtained by analyzing technical-geometric-solar ( ) aspects.Energy yield in this table has been calculated with Eq. ( 6) explained in Section 3.3.6.Regarding area, 27.4% of a building rooftop is utilizable for installing RPVs on average, which is quite a considerable proportion when it comes to the urban scale.The technical-geometric aspects lower the utilizable areas of rooftops by 33.5%, whereas adding the solar aspect leads to a 72.6% reduction, which demonstrates the high impact of the solar factor.Interestingly, the average solar irradiation on    is greater than  .This is owing to the elimination of exclusion zones that are less illuminated in comparison with central parts of roof faces.Of note is that exclusion zones not only ease accessibility to RPVs but also account for shadowing effects that are commonly found in the boundary areas of roof faces nearby other roof superstructures.As expected, the average solar irradiation on    is bigger than  and    because of applying   .The comparison of the energy yield of  ,    , and    reveals the noticeable role of rooftop occlusions, shading effects, and panel setbacks in the estimates of energy yield.The energy yield of    is one-third of that of  , which is a significant decrease.This indicates the amount of overestimated energy yield that may occur when the above-mentioned considerations are ignored.The monthly average solar irradiation estimates over all  ,    , and    are compared in Fig. 18.The irradiation estimates over    are consistently the largest, followed by    .It shows the methodology identifies, on average, the most efficient rooftop areas.Differences are more noticeable in the summer than in other seasons.The proportion of utilizable areas identified by the procedure depends on the chosen values for    ,   , and   .   can be safely assumed as an invariant parameter as RPVs usually come in a standard size.However, the value of   and   may change depending on the location and the employed technology.To analyze the effects of   and   , they are varied over specific ranges, and the outcome is determined.The area of    in the percentage of the total rooftop area as a function of   is depicted in Fig. 19 by blue dots.The area of    is not equal to that of  when   = 0, showing the impact of the geometric aspect.It has also an inverse relationship with   , i.e., it decreases as   increases.Specifically, increasing   from 0 to 0.5 m and from 0.5 to 1 m result in 30% (from 94% to 64%) and 26% (from 64% to 38%) reductions, respectively.The relationship between   and the area of    is quadratic, determined through a -fold cross-validation scheme [92].The dashed red curve in Fig. 19 shows the fitted quadratic function.
Regarding   , its value gradually changes from 0 to 1300 kWh/m 2 , and the total area of    is computed for each value.Fig. 20 indicates how the total area of    varies with respect to   values in different azimuth and tilt classes, shown as a percentage of the total area of    .The results show that almost all northfacing roof faces are excluded when   is set to 1000 kWh/m 2 .Furthermore, north-facing roof faces present the highest sensitivity to the changes of   , whereas south-facing roof faces have the lowest sensitivity compared to other azimuth classes.Flat roof faces account for the highest proportion of utilizable areas for   smaller than 1000 kWh/m 2 , while south-facing roof faces dominate for   greater than 1000 kWh/m 2 .Roof faces with a tilt angle of 0 • to 20 • show fairly low sensitivity to changes in   from 0 to 900 kWh/m 2 , whereas roof faces tilted more than 35 • show higher sensitivity.Regarding the total utilizable areas (Fig. 20(a)), they decrease by 21% (from 71% to 50%) as the threshold increases from 900 to 1000 kWh/m 2 .Rising the threshold from 1000 to 1100 kWh/m 2 , however, leads to a 32% reduction (from 50% to 18%).

Conclusion
RPVs have acquired a prominent place in satisfying energy demand in cities as they turn buildings into power stations without occupying additional land areas.Accurate estimates of rooftop solar potential and their spatial variations, which are critical for energy planning, entail finding parts of rooftops that are practically effective for installing RPVs.DSMs provide an ability to pinpoint those areas and improve the fidelity of their potential assessment.
To this end, a spatially detailed methodology was proposed for the extraction and analysis of roof faces with the purpose of identifying utilizable rooftop areas for installing RPVs.In the proposed methodology after performing the initial processes, outlines of rooftops and their roof faces were extracted.Rooftop outlines were identified by using geometric and regional features such as heights, width, and area.Roof faces were captured by a new segmentation method based on the integration of clustering, segment growing, and planarity analysis.In the next step, a new detail-specific method for the identification of utilizable rooftop areas was proposed.Three aspects, namely technical, geometric, and solar, were taken into consideration in an automatic manner to account for the impacts of roof shape and rooftop occlusion on the identification of utilizable areas and accordingly the estimate of solar energy potential.The method is free of any loss coefficients, which makes it reliable for heterogeneous regions.To validate the performance of the methodology, it was applied to a part of Gothenburg city that consists of buildings with complex roof forms.The results showed that buildings and roof faces were successfully identified with 95% completeness and 97% correctness and 85% completeness and 88% correctness, respectively.The results also indicated that the proposed roof face segmentation method outperforms region growing, a widely used plane segmentation method.It was found that 27% of rooftop areas in the study area are utilizable for RPV systems if the technical, geometric, and solar constraints are taken into consideration.It shows that the detail-specific estimation of utilizable rooftop areas, as proposed in this study, is critical to avoid overestimating actual RPVs potential of buildings.Additionally, the impacts of   and   on utilizable rooftop areas were analyzed.The results showed that north-facing roof faces have high sensitivity regarding   .Moreover, setting   to 0.5 m eliminates 36% of the total rooftop areas.The high performance of the methodology and its reliance on only DSMs make it reliable and practicable in the assessment of RPVs potential in city districts.

Fig. 1 .
Fig. 1.Block diagram representing a detailed overview of the proposed methodology.

Fig. 2 .
Fig. 2. (a) Two planar segments labeled as  and .(b) Visualization of subsets of normal vectors of the highlighted planar segments.The normal vectors of segment  () are similar and different from those of segment  ().Normal vector directions are used for the segmentation of planar patches.

Fig. 3 .
Fig. 3. Normal vectors along the yellow line.Red vectors are dissimilar to green ones as they are placed in the vicinity of more than one plane.

Fig. 4 .
Fig. 4. Example of applying height, greatest width, and area thresholds.(a) Differential height model of the DSM and DTM (DSM−DTM), (b) Mask of regions above a height threshold, (c) Mask obtained by applying a greatest width threshold, and (d) Regions (building candidates) that satisfy height, greatest width, and area conditions.

Fig. 5 .
Fig. 5. Segmentation of building candidates into planar segments using MDDC combined with the segment growing.

Fig. 6 .
Fig. 6.Schematic presentation of utilizable rooftop area extraction process.(a) Segmented roof faces of the building are shown in red, green, and blue.(b) Rooftop areas that are obtained by applying the technical aspect.It removes buffer zones around the edges of roof faces dedicated to accessibility and safety.(c) Impact of the geometric aspect.Areas that cannot accommodate a solar panel are excluded.For example, a small patch over the dormer or the area between the dormer and ridge.(d) Final utilizable areas for RPVs installation after eliminating the segments that have a low average amount of solar irradiation (e.g., mainly shadowed).All the steps are fully automated.
the process computationally intensive.To avoid these issues, we suggest first converting 3D roof faces into 2D faces.Given a 3D roof face, four steps are required to convert it from 3D to 2D and to create a binary image.(1) Boundary points of the roof face are extracted [72].(2) Each boundary point is orthogonally projected onto the roof face according to Eq. (2), where ⃖⃖⃖ ⃗  and  are the normal vector and intercept of the roof face, and ⃖⃖⃖ ⃗   is a 3D point belonging to the roof face.(3) The 2D plane coordinate of each 3D projected point, ⃖⃖⃖ ⃗  ′  , is calculated by Eqs. (

Fig. 8 .
Fig. 8. (a) Top view of a sample 3D roof face, (b) Converted roof face into 2D (the top view of the roof face shown in (a) is underestimating the area), (c) Exclusion zones in pink, (d) Geometrically unsuitable areas in pink, (e) Disposable (available) areas of the roof face, and (f) Top view of the disposable areas.

Fig. 12 .
Fig. 12.Some detected buildings in the study area.The true orthophotos were obtained from lantmäteriet.True orthophotos are here only used for illustration purposes and not for processing.

Fig. 13 .
Fig. 13.Some difficult cases: (a) Occluded building merged with a tree, (b) Partially detected building.True orthophotos are used only for visualization purposes.

Fig. 14 .
Fig. 14.Segmented roofs of some of the buildings in the study area.

Fig. 15 .
Fig. 15.Annual global solar irradiation incident on some buildings of the study area.

Fig. 16 .
Fig. 16.Mean annual global solar irradiation received by all extracted roof faces for different ranges of tilt and azimuth.Mean annual solar irradiation is calculated by considering occlusions.

Fig. 17 .
Fig. 17.Top-view upon the identified utilizable rooftop areas of some buildings in the study area.The top-view represents areas smaller than their actual size in 3D.True orthophotos are used only for visualization purposes.

Fig. 18 .
Fig. 18.Monthly average solar irradiation over  ,    , and    . indicates all rooftop areas.   and    imply the rooftop areas obtained by applying the technical-geometric and technical-geometric-solar aspects, respectively.

Fig. 19 .
Fig. 19.Variations of    area with respect to   , shown by blue dots. indicates all rooftop areas and    shows the rooftop areas obtained by applying the technical-geometric aspects.The dashed red curve indicates the fitted quadratic function.

Fig. 20 .
Fig. 20.Effect of   on (a) the entire utilizable areas for different (b) azimuth classes and (c) tilt classes.   and    indicate the rooftop areas obtained by applying the technical-geometric and technical-geometric-solar aspects, respectively.

Table 1
Parameters and their values used for building extraction and roof plane segmentation.

Table 2
Assessment results of all the extracted buildings in the study area.

Table 3
Roof plane evaluation results of the proposed method over the entire study area.

Table 4
Roof plane evaluation results of the region growing method over the entire study area.

Table 5
Values of the solar model parameters.

Table 6
Summary of the parameters employed to extract utilizable rooftop areas.

Table 7
Summary statistics of the impact of the technical, geometric, and solar considerations on all rooftops in the study area.