Semi-Automatic 3D City Model Generation from Large-Format Aerial Images

: 3D city models have become crucial for better city management, and can be used for various purposes such as disaster management, navigation, solar potential computation and planning simulations. 3D city models are not only visual models, and they can also be used for thematic queries and analyzes with the help of semantic data. The models can be produced using different data sources and methods. In this study, vector basemaps and large-format aerial images, which are regularly produced in accordance with the large scale map production regulations in Turkey, have been used to develop a workﬂow for semi-automatic 3D city model generation. The aim of this study is to propose a procedure for the production of 3D city models from existing aerial photogrammetric datasets without additional data acquisition efforts and/or costly manual editing. To prove the methodology, a 3D city model has been generated with semi-automatic methods at LoD2 (Level of Detail 2) of CityGML (City Geographic Markup Language) using the data of the study area over Cesme Town of Izmir Province, Turkey. The generated model is automatically textured and additional developments have been performed for 3D visualization of the model on the web. The problems encountered throughout the study and approaches to solve them are presented here. Consequently, the approach introduced in this study yields promising results for low-cost 3D city model production with the data at hand.


Introduction
According to United Nations World Urbanization Prospects [1], more than half of the world's population (54%) are currently living in cities, and this number will increase to 66% by 2050. For efficient management of large cities and urban population, new technologies must be developed so that higher living standards can be obtained. Geographical Information Systems (GIS) are inevitable platforms for the efficient management of cities, and 3D modeling and visualization have become a crucial component of GIS. A 3D city model is a digital representation of the building and objects in the urban area, as well as the terrain model [2]. 3D city models usually consist of digital terrain models (DTMs), building models, street-space models, and green space models [3]. They can also be used to perform simulations in different scenarios in virtual environments [4]. The focus in 3D GIS lies in the management of more comprehensive and exhaustive 3D models of the construction, management of domains, architectural, engineering, construction and facility management, and wide area and georeferenced 3D models. 3D city models are becoming important tools for urban decision-making processes and information systems, especially planning, simulation, documentation, heritage planning, mobile networking planning, and navigation. 3D city models are being produced and developed can be reduced. Such DSMs are mostly obtained by stereo and/or multi-image matching approaches and by using aerial LiDAR sensors. So far it is not possible to reconstruct building geometries fully automatically with high accuracy and level of detail (i.e., resolution). Fully-automatic 3D city model generation is still an active agenda which attracts the attention of many researchers and there are studies on automation of the production and reliability improvements [29].
One of the main criteria for 3D city model production is to create models that are close to reality both in geometry and also in appearance (visual fidelity). Textures obtained from optical images are used for providing visually correct models quickly and economically. There are also cases where untextured building models are in use, however, 3D city models should be textured where the visualization is the front planer and the user needs to have an idea of the area at first sight. Regardless of the level of detail in their geometries, untextured 3D city models will always be visually incomplete.
With the development of aerial photogrammetric systems equipped with nadir and oblique camera systems, automatic texturing of 3D city models became quite possible. Nadir cameras are the most ideal for texturing roofs of the buildings whereas the oblique cameras are better at texturing the building façades. Similarly, for automatic texturing of 3D city models, the best strategy is to select the rooftop textures from the nadir images and building façades from the oblique images. The view of the façades can be obtained clearly with this approach and the spatial resolution would also be higher. Similar to the nadir image acquisition, the season and the time of the flight would affect the radiometric quality of the oblique images. Früh et al. [30] have used an approach which combines 3D city model obtained from aerial and ground-based laser scans with oblique aerial imagery for texture mapping. Früh and Zakhor [31] presented a method that merges ground-based and airborne laser scans and images. Additional terrestrial data used in the method naturally leads to more detailed models, but also increases the size of the datasets considerably. A more effective technique to model the façades is to extract textures from terrestrial images and locate them on the polygonal models. This process is done in a manual fashion, however, texturing of a single building is a tedious task and can easily take up to several hours. For a large number of building façades, such an approach is not efficient and usually not applicable. Kada et al. [32] presented a new approach that automatically extracts façade textures from terrestrial photographs and maps them to geo-referenced 3D building models. In contrast to the application of standard viewers, this technique allows to model even complex geometric effects, like self-occlusion or lens distortion. This allows for a very fast and flexible on-the-fly generation of façade textures using real-world imagery.
Aerial photogrammetry for map production is a widely used approach throughout the world. Aerial LiDAR sensors are not yet commonly used for point cloud acquisition as it has high initial costs [33]. In addition, although LiDAR sensors can provide highly accurate and dense elevation data, the spectral and radiometric resolutions of the intensity images are quite low in comparison to large-format aerial cameras, thus, not suitable for feature extraction for basemap production purposes. Stereo data acquisition with large format aerial cameras is still the most suitable approach for 3D city model generation, as point clouds and other types of information can be extracted from those with sufficient density, accuracy, and resolution (level of detail, feature types, etc.) at the city scale. It is possible to produce a point cloud with 100 points per square meter density from stereo aerial images with a resolution of 10 cm (image matching per pixel). Such a point cloud is denser than most LiDAR datasets in practical projects [29].
Nowadays large cities are composed of hundreds of thousands of buildings and manual extraction of their geometries for city model generation purposes is very costly in terms of time and money. Considering the amount and variety of the data obtained with aerial photogrammetric methods for over decades, the possibility of using these datasets for automatic or semi-automatic 3D city model generation without additional data acquisition is discussed in this study. A new approach is introduced for this purpose and applied using the data of photogrammetric flight mission carried out over Cesme town near Izmir in 2016. The speed, accuracy and capacity of existing technologies have been investigated within the study to analyze the challenges and open issues in the overall city 4 of 20 model generation process. The generated model is then used to create a 3D GIS environment on a web platform. Queries, analysis, or different simulations can be performed on this model with the help of semantic data. The building reconstruction approach has been validated using reference data, and the problems encountered during the processing and the potential improvements to the process have been investigated. Suitability of the basemaps and aerial imagery and the outputs have also been analyzed and the results are presented here. In addition, using the proposed method, it is possible to reconstruct the cities of the past with little effort using the datasets obtained from aerial photogrammetric missions.

Study Area and Dataset
Izmir is the largest metropolitan city in Turkey's Aegean Region. Cesme is a coastal town located 85 km west of Izmir and also a very popular holiday resort with several historical sites. A large majority of the structures in the Cesme area are in the Aegean architecture style and most of the buildings are located on the coastline and are usually at low elevations. The highest building in Cesme has a height of approximately 45 m. A general view of the study area is given in Figure 1. and the problems encountered during the processing and the potential improvements to the process have been investigated. Suitability of the basemaps and aerial imagery and the outputs have also been analyzed and the results are presented here. In addition, using the proposed method, it is possible to reconstruct the cities of the past with little effort using the datasets obtained from aerial photogrammetric missions.

Study Area and Dataset
Izmir is the largest metropolitan city in Turkey's Aegean Region. Cesme is a coastal town located 85 km west of Izmir and also a very popular holiday resort with several historical sites. A large majority of the structures in the Cesme area are in the Aegean architecture style and most of the buildings are located on the coastline and are usually at low elevations. The highest building in Cesme has a height of approximately 45 m. A general view of the study area is given in Figure 1. The study area covers the whole Cesme region with a size of 260 km 2 . Within the project, a total of 4468 aerial photos were taken in May 2016 with 80% forward overlap and 60% lateral overlap using UltraCam Falcon large-format digital camera from Vexcel Imaging, Graz, Austria [34]. The photos have been taken from an average altitude of 1500 m from mean sea level and have an average GSD (ground sampling distance) of 8 cm and a footprint of 1400 m × 900 m. A total of 306 ground control points (GCPs) have been established prior to the flight with an interval of 1.5 km. Figure 2 shows the level of detail in the images and the ground signalization of one control point. The block configuration is provided in Figure 3. Orthometric heights have been measured by a leveling method and planimetric coordinates have been measured using Global Navigation Satellite System (GNSS) devices. The GCPs have been used in the photogrammetric bundle block adjustment process.
Manual feature extraction for basemap production from stereo aerial images has been done by photogrammetry operators. Contour lines (1 m, 2 m, 5 m, 10 m), slopes, and breaklines have been measured along with the generated photogrammetric height points, which have later been converted to a TIN (triangular irregular network) dataset and used for grid DTM generation. Lastly, orthophotos with 10 cm pixel size have been generated for the whole area. The study area covers the whole Cesme region with a size of 260 km 2 . Within the project, a total of 4468 aerial photos were taken in May 2016 with 80% forward overlap and 60% lateral overlap using UltraCam Falcon large-format digital camera from Vexcel Imaging, Graz, Austria [34]. The photos have been taken from an average altitude of 1500 m from mean sea level and have an average GSD (ground sampling distance) of 8 cm and a footprint of 1400 m × 900 m. A total of 306 ground control points (GCPs) have been established prior to the flight with an interval of 1.5 km. Figure 2 shows the level of detail in the images and the ground signalization of one control point. The block configuration is provided in Figure 3. Orthometric heights have been measured by a leveling method and planimetric coordinates have been measured using Global Navigation Satellite System (GNSS) devices. The GCPs have been used in the photogrammetric bundle block adjustment process.
Manual feature extraction for basemap production from stereo aerial images has been done by photogrammetry operators. Contour lines (1 m, 2 m, 5 m, 10 m), slopes, and breaklines have been measured along with the generated photogrammetric height points, which have later been converted to a TIN (triangular irregular network) dataset and used for grid DTM generation. Lastly, orthophotos with 10 cm pixel size have been generated for the whole area.

The Overall Workflow
The overall workflow of the study involves photogrammetric data production and building reconstruction together with texturing as depicted in Figure 4. The photogrammetric processing mainly includes flight planning, GCP signalization on the ground, image acquisition and triangulation, and manual feature extraction for basemap production in CAD (computer aided design) format. The buildings have been reconstructed automatically using the CAD data. A post photogrammetric data collection process has been performed to generate a dense DSM of the area with a 30 cm grid interval using Agisoft Photoscan Pro, St. Petersburg, Russia [35]. All contour lines, breaklines, and photogrammetric height points measured in Microstation from Bentley Systems, Exton, PA, USA [36] and saved in CAD format (Microstation DGN) have been converted into TIN datasets and grid DTMs using FME Workbenches developed by Safe Software, St Surrey, BC, Canada [37]. The buildings have been reconstructed using BuildingReconstruction (BREC) software from VirtualCity Systems GmbH, Berlin, Germany [38] and the generated models have been converted into CityGML format as output. The texturing has been done automatically using the CityGRID Texturizer software from UVM Systems, Klosterneuburg, Austria [39]. As a last step, textured models have been converted into the CityGML format to ensure data interoperability between different systems.

The Overall Workflow
The overall workflow of the study involves photogrammetric data production and building reconstruction together with texturing as depicted in Figure 4. The photogrammetric processing mainly includes flight planning, GCP signalization on the ground, image acquisition and triangulation, and manual feature extraction for basemap production in CAD (computer aided design) format. The buildings have been reconstructed automatically using the CAD data. A post photogrammetric data collection process has been performed to generate a dense DSM of the area with a 30 cm grid interval using Agisoft Photoscan Pro, St. Petersburg, Russia [35]. All contour lines, breaklines, and photogrammetric height points measured in Microstation from Bentley Systems, Exton, PA, USA [36] and saved in CAD format (Microstation DGN) have been converted into TIN datasets and grid DTMs using FME Workbenches developed by Safe Software, St Surrey, BC, Canada [37]. The buildings have been reconstructed using BuildingReconstruction (BREC) software from VirtualCity Systems GmbH, Berlin, Germany [38] and the generated models have been converted into CityGML format as output. The texturing has been done automatically using the CityGRID Texturizer software from UVM Systems, Klosterneuburg, Austria [39]. As a last step, textured models have been converted into the CityGML format to ensure data interoperability between different systems.

The Overall Workflow
The overall workflow of the study involves photogrammetric data production and building reconstruction together with texturing as depicted in Figure 4. The photogrammetric processing mainly includes flight planning, GCP signalization on the ground, image acquisition and triangulation, and manual feature extraction for basemap production in CAD (computer aided design) format. The buildings have been reconstructed automatically using the CAD data. A post photogrammetric data collection process has been performed to generate a dense DSM of the area with a 30 cm grid interval using Agisoft Photoscan Pro, St. Petersburg, Russia [35]. All contour lines, breaklines, and photogrammetric height points measured in Microstation from Bentley Systems, Exton, PA, USA [36] and saved in CAD format (Microstation DGN) have been converted into TIN datasets and grid DTMs using FME Workbenches developed by Safe Software, St Surrey, BC, Canada [37]. The buildings have been reconstructed using BuildingReconstruction (BREC) software from VirtualCity Systems GmbH, Berlin, Germany [38] and the generated models have been converted into CityGML format as output. The texturing has been done automatically using the CityGRID Texturizer software from UVM Systems, Klosterneuburg, Austria [39]. As a last step, textured models have been converted into the CityGML format to ensure data interoperability between different systems.

Image Georeferencing with a Photogrammetric Bundle Block Adjustment
Exterior orientation parameters (EOPs) of the aerial photos have already been measured during the photogrammetric flight mission using GNSS antenna and INS (inertial navigation system). In order to achieve sub-pixel accuracy, a photogrammetric triangulation process with self-calibration has been applied using GCPs and tie points, and the existing GNSS and INS measurements have been used as weighted observations in the adjustment. The project area has been split into seven subblocks for optimization of the bundle block adjustment process ( Figure 5). The image measurement of the GCPs and initial tie points in strip and cross-strip directions have been done manually by operators, and further tie points have been extracted automatically with the Intergraph Z/I automatic triangulation module [40]. The bundle adjustment has been performed using the same software with self-calibration and blunder removal by statistical analysis. The systematic error modeling with additional parameters include atmospheric refraction, Earth curvature, and camera distortion (radial and de-centering). The number of images in each block, the numbers and properties of the GCPs, size of the block area and the accuracy measures (sigma naught of the adjustment and the standard deviations of GCPs in image space) are shown in Table 1.

Image Georeferencing with a Photogrammetric Bundle Block Adjustment
Exterior orientation parameters (EOPs) of the aerial photos have already been measured during the photogrammetric flight mission using GNSS antenna and INS (inertial navigation system). In order to achieve sub-pixel accuracy, a photogrammetric triangulation process with self-calibration has been applied using GCPs and tie points, and the existing GNSS and INS measurements have been used as weighted observations in the adjustment. The project area has been split into seven sub-blocks for optimization of the bundle block adjustment process ( Figure 5). The image measurement of the GCPs and initial tie points in strip and cross-strip directions have been done manually by operators, and further tie points have been extracted automatically with the Intergraph Z/I automatic triangulation module [40]. The bundle adjustment has been performed using the same software with self-calibration and blunder removal by statistical analysis. The systematic error modeling with additional parameters include atmospheric refraction, Earth curvature, and camera distortion (radial and de-centering). The number of images in each block, the numbers and properties of the GCPs, size of the block area and the accuracy measures (sigma naught of the adjustment and the standard deviations of GCPs in image space) are shown in Table 1.

Image Georeferencing with a Photogrammetric Bundle Block Adjustment
Exterior orientation parameters (EOPs) of the aerial photos have already been measured during the photogrammetric flight mission using GNSS antenna and INS (inertial navigation system). In order to achieve sub-pixel accuracy, a photogrammetric triangulation process with self-calibration has been applied using GCPs and tie points, and the existing GNSS and INS measurements have been used as weighted observations in the adjustment. The project area has been split into seven subblocks for optimization of the bundle block adjustment process ( Figure 5). The image measurement of the GCPs and initial tie points in strip and cross-strip directions have been done manually by operators, and further tie points have been extracted automatically with the Intergraph Z/I automatic triangulation module [40]. The bundle adjustment has been performed using the same software with self-calibration and blunder removal by statistical analysis. The systematic error modeling with additional parameters include atmospheric refraction, Earth curvature, and camera distortion (radial and de-centering). The number of images in each block, the numbers and properties of the GCPs, size of the block area and the accuracy measures (sigma naught of the adjustment and the standard deviations of GCPs in image space) are shown in Table 1.

Building Footprint and Attribute Generation from Basemaps
Although aerial photographs contain almost all visible information related to the surface of the project area, they cannot be compared to traditional vector maps before they are interpreted by humans or computers. Any good map user can hardly understand and interpret aerial photographs directly and image interpretation for map production is still an expert task. A vector map is an abstraction of selected details of the scene/project area. Figure 6 shows an overlay of an aerial orthoimage and manually extracted features stored as vectors. In addition, maps contain symbols and text as further information. Interpretation, analysis, implementation, and use of vector map information are easier than orthophotos. Details and attribute information in vector maps are gathered by models from the stereo analysis so that they are clearer, understandable, and interpretable. Feature points and lines showing the terrain characteristics (e.g., creeks, ridges, etc.) are also produced manually or semi-automatically during the processing of aerial photos, such as contour lines, DTM grid points, break-lines and steep slopes. In addition, information stored in vector maps have been extracted to create an attribute scheme for buildings in this study.

Building Footprint and Attribute Generation from Basemaps
Although aerial photographs contain almost all visible information related to the surface of the project area, they cannot be compared to traditional vector maps before they are interpreted by humans or computers. Any good map user can hardly understand and interpret aerial photographs directly and image interpretation for map production is still an expert task. A vector map is an abstraction of selected details of the scene/project area. Figure 6 shows an overlay of an aerial orthoimage and manually extracted features stored as vectors. In addition, maps contain symbols and text as further information. Interpretation, analysis, implementation, and use of vector map information are easier than orthophotos. Details and attribute information in vector maps are gathered by models from the stereo analysis so that they are clearer, understandable, and interpretable. Feature points and lines showing the terrain characteristics (e.g., creeks, ridges, etc.) are also produced manually or semi-automatically during the processing of aerial photos, such as contour lines, DTM grid points, break-lines and steep slopes. In addition, information stored in vector maps have been extracted to create an attribute scheme for buildings in this study. BuildingReconstruction, which is used for 3D city model generation in this study, requires building footprints and attributes as input in ESRI Shapefile (.shp) format. The basemaps produced in aerial photogrammetric projects are often stored in CAD formats as standard and every mapping project generally contains more than 200 layers. The data and information stored in these layers are BuildingReconstruction, which is used for 3D city model generation in this study, requires building footprints and attributes as input in ESRI Shapefile (.shp) format. The basemaps produced in aerial photogrammetric projects are often stored in CAD formats as standard and every mapping project generally contains more than 200 layers. The data and information stored in these layers are usually adequate for extracting the building footprints and a few types of attributes. The building footprints used here can be considered as roof boundaries since it is usually not possible to see the building footprints on the ground in aerial images. The buildings are collected and stored in different CAD layers such as residential, commercial, public, school, etc., according to their use types. In addition to the buildings, other structures, such as sundries, lighting poles, or roads, are also measured by photogrammetry operators.
In BuildingReconstruction it is required to store the building geometries and attributes in a single ESRI shapefile. These geometries and attributes are later converted into CityGML format while exporting the building geometry after the reconstruction is completed. The attributes can be used to implement queries on the reconstructed city model. However, the CAD files contain just vector data and don't include the attributes as text assigned to geometries. While converting the CAD data into shapefile format, some implicit attributes about the buildings have been extracted generated using ETL (extract-transform-load) transformers of the FME software. As an example, the number of building floors is stored in a different CAD layer as text (also vector unit) and their location fall inside the building polygons as can be seen in Figure 6. A spatial transformer (i.e., "SpatialFilter" of FME) is used to transform these numbers into "number of floors" attribute of every building. The transformer compares two sets of features to see if their spatial relationships meet the selected test conditions (i.e., filter is within candidate) and if a number (i.e., text) is located inside a polygon, it is assigned as attribute to that polygon (i.e., building). In addition, center coordinates of building footprints have been extracted and saved as new attributes using another spatial operation (i.e., CenterPointExtractor). A total of eight attributes have been extracted from the CAD layers using the spatial ETLs and become ready to be input into BuildingReconstruction. A part of the project area with all CAD layers and the building footprints extracted thereof are given in Figure 7. usually adequate for extracting the building footprints and a few types of attributes. The building footprints used here can be considered as roof boundaries since it is usually not possible to see the building footprints on the ground in aerial images. The buildings are collected and stored in different CAD layers such as residential, commercial, public, school, etc., according to their use types. In addition to the buildings, other structures, such as sundries, lighting poles, or roads, are also measured by photogrammetry operators. In BuildingReconstruction it is required to store the building geometries and attributes in a single ESRI shapefile. These geometries and attributes are later converted into CityGML format while exporting the building geometry after the reconstruction is completed. The attributes can be used to implement queries on the reconstructed city model. However, the CAD files contain just vector data and don't include the attributes as text assigned to geometries. While converting the CAD data into shapefile format, some implicit attributes about the buildings have been extracted generated using ETL (extract-transform-load) transformers of the FME software. As an example, the number of building floors is stored in a different CAD layer as text (also vector unit) and their location fall inside the building polygons as can be seen in Figure 6. A spatial transformer (i.e., "SpatialFilter" of FME) is used to transform these numbers into "number of floors" attribute of every building. The transformer compares two sets of features to see if their spatial relationships meet the selected test conditions (i.e., filter is within candidate) and if a number (i.e., text) is located inside a polygon, it is assigned as attribute to that polygon (i.e., building). In addition, center coordinates of building footprints have been extracted and saved as new attributes using another spatial operation (i.e., CenterPointExtractor). A total of eight attributes have been extracted from the CAD layers using the spatial ETLs and become ready to be input into BuildingReconstruction. A part of the project area with all CAD layers and the building footprints extracted thereof are given in Figure 7.

Digital Terrain Model (DTM) Extraction
DTMs are 3D representations of the terrain elevations found on the bare Earth's surface. In this study, DTMs are required to make sure that buildings are located exactly on the terrain, not under or above of it. It is also used to calculate the base height of a building from the terrain. The resolution requirements for the DTMs are substantially lower than DSMs in the methodology proposed here. A grid resolution between 1-5 m is usually sufficient. A general recommendation from BuildingReconstruction is to use a grid interval of 1 m. The software works best with the tile-based raster data since raw point clouds data can be very massive and difficult to process. Figure 8 shows an overview of the manually extracted terrain features and a zoomed view of it.

Digital Terrain Model (DTM) Extraction
DTMs are 3D representations of the terrain elevations found on the bare Earth's surface. In this study, DTMs are required to make sure that buildings are located exactly on the terrain, not under or above of it. It is also used to calculate the base height of a building from the terrain. The resolution requirements for the DTMs are substantially lower than DSMs in the methodology proposed here. A grid resolution between 1-5 m is usually sufficient. A general recommendation from BuildingReconstruction is to use a grid interval of 1 m. The software works best with the tile-based raster data since raw point clouds data can be very massive and difficult to process. Figure 8 shows an overview of the manually extracted terrain features and a zoomed view of it.

Digital Surface Model (DSM) Generation
For the DSM generation, a number of different software has been investigated to obtain an optimum balance between the DSM quality (completeness, density, and accuracy) and the production speed. Finally several high-density DSMs have been generated using Agisoft Photoscan Pro software, since it allows parallel processing by allowing GPU (graphics processing unit) usage along with the CPU (central processing unit) during the DSM generation. The DSM of the project area has been generated in seven sub-blocks as these blocks have already been formed for the triangulation ( Figure  5). Since BuildingReconstruction can reconstruct a maximum of a couple of thousand buildings in a single process, the larger blocks have again been divided into more sub-blocks to decrease the processing area and time. While selecting the aerial photographs in every sub-block for building reconstruction step, it has been taken consideration that buildings near the outer boundary of the project area should be visible at least in six or more photographs for better reconstruction. Adjusted EOPs and camera calibration parameters have been used as input in Photoscan to provide the georeferencing of the images. However, the images have been re-oriented by generating tie points

Digital Surface Model (DSM) Generation
For the DSM generation, a number of different software has been investigated to obtain an optimum balance between the DSM quality (completeness, density, and accuracy) and the production speed. Finally several high-density DSMs have been generated using Agisoft Photoscan Pro software, since it allows parallel processing by allowing GPU (graphics processing unit) usage along with the CPU (central processing unit) during the DSM generation. The DSM of the project area has been generated in seven sub-blocks as these blocks have already been formed for the triangulation ( Figure  5). Since BuildingReconstruction can reconstruct a maximum of a couple of thousand buildings in a single process, the larger blocks have again been divided into more sub-blocks to decrease the processing area and time. While selecting the aerial photographs in every sub-block for building reconstruction step, it has been taken consideration that buildings near the outer boundary of the project area should be visible at least in six or more photographs for better reconstruction. Adjusted EOPs and camera calibration parameters have been used as input in Photoscan to provide the georeferencing of the images. However, the images have been re-oriented by generating tie points

Digital Surface Model (DSM) Generation
For the DSM generation, a number of different software has been investigated to obtain an optimum balance between the DSM quality (completeness, density, and accuracy) and the production speed. Finally several high-density DSMs have been generated using Agisoft Photoscan Pro software, since it allows parallel processing by allowing GPU (graphics processing unit) usage along with the CPU (central processing unit) during the DSM generation. The DSM of the project area has been generated in seven sub-blocks as these blocks have already been formed for the triangulation ( Figure 5). Since BuildingReconstruction can reconstruct a maximum of a couple of thousand buildings in a single process, the larger blocks have again been divided into more sub-blocks to decrease the processing area and time. While selecting the aerial photographs in every sub-block for building reconstruction step, it has been taken consideration that buildings near the outer boundary of the project area should be visible at least in six or more photographs for better reconstruction. Adjusted EOPs and camera calibration parameters have been used as input in Photoscan to provide the georeferencing of the images. However, the images have been re-oriented by generating tie points and re-measuring GCPs due to software requirements. Based on the established camera orientations, the software generates a dense point cloud (i.e., DSM). Figure 10 depicts the tie points and the dense point cloud generated in one part. and re-measuring GCPs due to software requirements. Based on the established camera orientations, the software generates a dense point cloud (i.e., DSM). Figure 10 depicts the tie points and the dense point cloud generated in one part. Although a DSM with a resolution of 25 cm is already considered to be sufficient for the BuildingReconstruction software to generate building models with optimum accuracy, five point clouds in Agisoft Photoscan have been generated with different densities (at 1, 2, 4, 8, and 16 pixels intervals) for test purposes. The optimal results with BuildingReconstruction have been achieved using DSMs with 25-50 cm resolutions for LoD2 buildings. Considering this fact, the DSMs have been generated at a resolution of 30 cm for the whole project area. An overview and a zoomed view of the generated DSMs from one sub-block is shown in Figure 11.

Automated Building Reconstruction
In this study, BuildingReconstruction 2018 software has been used for automatic reconstruction of buildings and conversion into the CityGML format. The software enables automatic generation and manual editing of building models in LoD1 and LoD2 based on DSMs and building footprints. As described in [38], the DSM is analyzed for each building outline to detect the roof shape. The following algorithms are employed for this purpose: • Rectangle intersection: Simple geometries are processed with rectangular intersections. Intersecting rectangles and squares from the basis of the footprint are created to construct the building in 3D. • Cell decomposition. The cell decomposition algorithm is used for buildings with multiple roof forms and/or with different heights [8]. A built-in library of more than 32 main and connecting roof types is used to detect the best fitting roof type for each generated cell. • Footprint extrusion: This algorithm is used to create LoD1 models of large areas and also flat LoD2 buildings.
The main advantage of this method is automatic reconstruction of the 3D city models along with Although a DSM with a resolution of 25 cm is already considered to be sufficient for the BuildingReconstruction software to generate building models with optimum accuracy, five point clouds in Agisoft Photoscan have been generated with different densities (at 1, 2, 4, 8, and 16 pixels intervals) for test purposes. The optimal results with BuildingReconstruction have been achieved using DSMs with 25-50 cm resolutions for LoD2 buildings. Considering this fact, the DSMs have been generated at a resolution of 30 cm for the whole project area. An overview and a zoomed view of the generated DSMs from one sub-block is shown in Figure 11. and re-measuring GCPs due to software requirements. Based on the established camera orientations, the software generates a dense point cloud (i.e., DSM). Figure 10 depicts the tie points and the dense point cloud generated in one part. Although a DSM with a resolution of 25 cm is already considered to be sufficient for the BuildingReconstruction software to generate building models with optimum accuracy, five point clouds in Agisoft Photoscan have been generated with different densities (at 1, 2, 4, 8, and 16 pixels intervals) for test purposes. The optimal results with BuildingReconstruction have been achieved using DSMs with 25-50 cm resolutions for LoD2 buildings. Considering this fact, the DSMs have been generated at a resolution of 30 cm for the whole project area. An overview and a zoomed view of the generated DSMs from one sub-block is shown in Figure 11.

Automated Building Reconstruction
In this study, BuildingReconstruction 2018 software has been used for automatic reconstruction of buildings and conversion into the CityGML format. The software enables automatic generation and manual editing of building models in LoD1 and LoD2 based on DSMs and building footprints. As described in [38], the DSM is analyzed for each building outline to detect the roof shape. The following algorithms are employed for this purpose:

•
Rectangle intersection: Simple geometries are processed with rectangular intersections. Intersecting rectangles and squares from the basis of the footprint are created to construct the building in 3D. • Cell decomposition. The cell decomposition algorithm is used for buildings with multiple roof forms and/or with different heights [8]. A built-in library of more than 32 main and connecting roof types is used to detect the best fitting roof type for each generated cell. • Footprint extrusion: This algorithm is used to create LoD1 models of large areas and also flat LoD2 buildings.

Automated Building Reconstruction
In this study, BuildingReconstruction 2018 software has been used for automatic reconstruction of buildings and conversion into the CityGML format. The software enables automatic generation and manual editing of building models in LoD1 and LoD2 based on DSMs and building footprints. As described in [38], the DSM is analyzed for each building outline to detect the roof shape. The following algorithms are employed for this purpose:

•
Rectangle intersection: Simple geometries are processed with rectangular intersections. Intersecting rectangles and squares from the basis of the footprint are created to construct the building in 3D.
• Cell decomposition. The cell decomposition algorithm is used for buildings with multiple roof forms and/or with different heights [8]. A built-in library of more than 32 main and connecting roof types is used to detect the best fitting roof type for each generated cell. • Footprint extrusion: This algorithm is used to create LoD1 models of large areas and also flat LoD2 buildings.
The main advantage of this method is automatic reconstruction of the 3D city models along with the rich semantic information and thematic attributes of the buildings. It works best with tile-based input files. If a large region is required to be reconstructed, the users need to generate tiles with 1 km 2 or smaller sizes with the footprint data, laser data and orthophotos. A model-driven approach is used in BuildingReconstruction to detect and reconstruct the general roof geometry and type using a library containing 32 types of roof geometry popularly used in urban areas around the world (Figure 12). For every given polygon in input footprint shapefile, a discrete 3D building geometry is reconstructed. The reconstructed geometry is ensured to be fully closed without any holes or gaps between surfaces, and also be fully compatible with given building footprint. Along with the automated reconstruction, the software offers an interactive editor for manual editing on the building geometries. input files. If a large region is required to be reconstructed, the users need to generate tiles with 1 km 2 or smaller sizes with the footprint data, laser data and orthophotos. A model-driven approach is used in BuildingReconstruction to detect and reconstruct the general roof geometry and type using a library containing 32 types of roof geometry popularly used in urban areas around the world ( Figure  12). For every given polygon in input footprint shapefile, a discrete 3D building geometry is reconstructed. The reconstructed geometry is ensured to be fully closed without any holes or gaps between surfaces, and also be fully compatible with given building footprint. Along with the automated reconstruction, the software offers an interactive editor for manual editing on the building geometries. The input data requirements for the BuildingReconstruction software are as follows: • A grid DSM with 25-50 cm grid interval, optimally • A DTM with 1-m grid interval, optimally • 2D building footprints with attributes (each building polygon must have a unique ID) • An orthophoto for visual checks Figure 13 shows screenshots of the DSM and the DTM from one sub-block. The DSMs are used to determine the roof geometry and characteristics, whereas the DTMs are used to calculate the height and the ground geometry (footprint) of the building. Footprints are also used to determine the geometric structures of the walls in the building model. The software also supports processing without a DTM, and if no terrain model is available, the base height of a building is determined from a buffer in which the lowest point around a building is determined. However, this approach is successful only in areas where building density is low. The input data requirements for the BuildingReconstruction software are as follows: • A grid DSM with 25-50 cm grid interval, optimally • A DTM with 1-m grid interval, optimally • 2D building footprints with attributes (each building polygon must have a unique ID) • An orthophoto for visual checks Figure 13 shows screenshots of the DSM and the DTM from one sub-block. The DSMs are used to determine the roof geometry and characteristics, whereas the DTMs are used to calculate the height and the ground geometry (footprint) of the building. Footprints are also used to determine the geometric structures of the walls in the building model. The software also supports processing without a DTM, and if no terrain model is available, the base height of a building is determined from a buffer in which the lowest point around a building is determined. However, this approach is successful only in areas where building density is low. Figure 13 shows screenshots of the DSM and the DTM from one sub-block. The DSMs are used to determine the roof geometry and characteristics, whereas the DTMs are used to calculate the height and the ground geometry (footprint) of the building. Footprints are also used to determine the geometric structures of the walls in the building model. The software also supports processing without a DTM, and if no terrain model is available, the base height of a building is determined from a buffer in which the lowest point around a building is determined. However, this approach is successful only in areas where building density is low. The buildings with the simple roof types and roof heights can in general be reconstructed more accurately than the complex ones. This problem arises because the software cannot match the complex roof types with the roof models in its library. Additionally, small parts on the roofs are mostly ignored by the software. The main advantage of the model-driven method is reconstructing models without any gaps or holes between surfaces with correct geometry. In addition, the production speed is slightly better than other methods. The main disadvantage is the requirement of a very comprehensive roof library for comparing roof geometries generated from given DSM. Figure 14 shows an example from the automatically generated buildings with BuildingReconstruction 2018 software from the project area.  Figure 15 shows a part of the automatically generated roof geometries overlaid on the orthophoto with 10 cm GSD. The reconstruction accuracy has been analyzed by visual checks on 1000 buildings and the results are provided in Table 2. During the visual assessments, the roof structures smaller than the DSM grid interval have been excluded and if the main roof structure is modeled correctly, it is considered as true. The buildings with the simple roof types and roof heights can in general be reconstructed more accurately than the complex ones. This problem arises because the software cannot match the complex roof types with the roof models in its library. Additionally, small parts on the roofs are mostly ignored by the software. The main advantage of the model-driven method is reconstructing models without any gaps or holes between surfaces with correct geometry. In addition, the production speed is slightly better than other methods. The main disadvantage is the requirement of a very comprehensive roof library for comparing roof geometries generated from given DSM. Figure 14 shows an example from the automatically generated buildings with BuildingReconstruction 2018 software from the project area. The buildings with the simple roof types and roof heights can in general be reconstructed more accurately than the complex ones. This problem arises because the software cannot match the complex roof types with the roof models in its library. Additionally, small parts on the roofs are mostly ignored by the software. The main advantage of the model-driven method is reconstructing models without any gaps or holes between surfaces with correct geometry. In addition, the production speed is slightly better than other methods. The main disadvantage is the requirement of a very comprehensive roof library for comparing roof geometries generated from given DSM. Figure 14 shows an example from the automatically generated buildings with BuildingReconstruction 2018 software from the project area.  Figure 15 shows a part of the automatically generated roof geometries overlaid on the orthophoto with 10 cm GSD. The reconstruction accuracy has been analyzed by visual checks on 1000 buildings and the results are provided in Table 2. During the visual assessments, the roof structures smaller than the DSM grid interval have been excluded and if the main roof structure is modeled correctly, it is considered as true.  Figure 15 shows a part of the automatically generated roof geometries overlaid on the orthophoto with 10 cm GSD. The reconstruction accuracy has been analyzed by visual checks on 1000 buildings and the results are provided in Table 2. During the visual assessments, the roof structures smaller than the DSM grid interval have been excluded and if the main roof structure is modeled correctly, it is considered as true.  Based on the investigations performed in this study, the advantages and the disadvantages of the BuildingReconstruction software can be listed as follows:

+
Large-area reconstruction of LoD1 and LoD2 building models is possible. + Building geometries are suitable for texturing with nadir/oblique aerial images. + Direct export to CityGML format with automatic and flexible attribute mapping is possible. + Fast processing of 3D Buildings with semantic information is possible. + High geometric accuracy can be obtained with a ground plan-based reconstruction. − Reconstruction is limited to existing roof library and complex roof types cannot be reconstructed. − Smaller roof parts are neglected during the reconstruction. − The manual editing interface is not user-friendly.

Automatic Building Texturing
Existing 3D city models can be textured from oriented images to increase the attractiveness of the digital city models. Building and terrain models can be textured automatically if the images of the models with accurate orientation parameters exist. Automatic-texturing of the models generated in this study has been carried out with CityGRID Texturizer software by UVM Systems GmbH [39]. Automatic texturing workflow of CityGRID Texturizer is given in Figure 16. Oriented aerial photographs can be used for the texturing of roofs and façades, as well as mobile mapping data for the high-resolution texturing of street-side façades in CityGRID Texturizer. The façade texture is assigned interactively or fully automatic from oriented images. Terrain texture is always calculated dynamically, whereas roof and façade textures need to be pre-calculated and saved for each building unit. Orthophotos of the façades can be generated by simple affine transformation in the texture tool. More details on the texturing process are elaborated in the following sub-sections.  Based on the investigations performed in this study, the advantages and the disadvantages of the BuildingReconstruction software can be listed as follows: Large-area reconstruction of LoD1 and LoD2 building models is possible. + Building geometries are suitable for texturing with nadir/oblique aerial images. + Direct export to CityGML format with automatic and flexible attribute mapping is possible. + Fast processing of 3D Buildings with semantic information is possible. + High geometric accuracy can be obtained with a ground plan-based reconstruction. − Reconstruction is limited to existing roof library and complex roof types cannot be reconstructed. − Smaller roof parts are neglected during the reconstruction. − The manual editing interface is not user-friendly.

Automatic Building Texturing
Existing 3D city models can be textured from oriented images to increase the attractiveness of the digital city models. Building and terrain models can be textured automatically if the images of the models with accurate orientation parameters exist. Automatic-texturing of the models generated in this study has been carried out with CityGRID Texturizer software by UVM Systems GmbH [39]. Automatic texturing workflow of CityGRID Texturizer is given in Figure 16. Oriented aerial photographs can be used for the texturing of roofs and façades, as well as mobile mapping data for the high-resolution texturing of street-side façades in CityGRID Texturizer. The façade texture is assigned interactively or fully automatic from oriented images. Terrain texture is always calculated dynamically, whereas roof and façade textures need to be pre-calculated and saved for each building unit. Orthophotos of the façades can be generated by simple affine transformation in the texture tool. More details on the texturing process are elaborated in the following sub-sections. There are several criteria for the acquisition of airborne images for automatic texturing. The optimal resolution for automatic texturing is usually 10 cm or better and the flight altitude to obtain this resolution with large-format cameras is usually between 800 and 2500 m from terrain, but these values can range depending on different factors, such as airport restrictions in the area, building heights, terrain elevation, camera type (e.g., camera format), camera parameters (in particular focal length), image acquisition method (vertical or oblique) and the other factors of image GSD requirements. In this project, the images have been acquired from an altitude of 1500 m with 8 cm resolution with the aim of production of basemaps for Cesme City. In this type of acquisition, the vividness of the colors is not considered as an important aspect in the "Basemap" generation process, however, in order to generate a fine texture, the sharpness of images together with the vividness of colors is of a great importance. In order to obtain a more vivid and impressive texture, the images have been pre-processed for improving the realistic look of color tones and the image sharpness. Figure 17 shows an example from the original and the enhanced images. There are several criteria for the acquisition of airborne images for automatic texturing. The optimal resolution for automatic texturing is usually 10 cm or better and the flight altitude to obtain this resolution with large-format cameras is usually between 800 and 2500 m from terrain, but these values can range depending on different factors, such as airport restrictions in the area, building heights, terrain elevation, camera type (e.g., camera format), camera parameters (in particular focal length), image acquisition method (vertical or oblique) and the other factors of image GSD requirements. In this project, the images have been acquired from an altitude of 1500 m with 8 cm resolution with the aim of production of basemaps for Cesme City. In this type of acquisition, the vividness of the colors is not considered as an important aspect in the "Basemap" generation process, however, in order to generate a fine texture, the sharpness of images together with the vividness of colors is of a great importance. In order to obtain a more vivid and impressive texture, the images have been pre-processed for improving the realistic look of color tones and the image sharpness. Figure 17 shows an example from the original and the enhanced images.

Image and Model Orientation
A basic requirement of model texturing is to ensure that the model coordinates and the image EOPs are defined in the same reference coordinate system. In addition, the camera calibration data should be provided for the accurate orientation of the images. If no errors are detected in the orientation validation, the database setup and load is carried out to establish a project space, which contains the orthophotos, DTMs, building models, and aerial photographs of the project. The predefined project (texturing) area is enlarged with a buffer zone so that the buildings near the outer border can be included completely. After importing all data into a database, aerial photographs and adjusted exterior orientation parameters are matched with buildings, DTMs and orthophotos in the database. Consistency checks between aerial photographs, interior and exterior orientation parameters, and buildings are performed and the texturing process is started if there are no errors.

Texture Mapping Process
A pre-selection of the photos for the texturing area would result in faster processing. To find the most suitable photos for a building, the algorithm splits the building into sub-parts and assigns each of them to different classes. The buildings are usually split into four different objects, such as roof, façade, base, and fringe. This object structure is similar to the object structure in CityGML specification. The software can directly use CityGML object structure in the automatic-texturing process. The parts of the buildings that will be used in the texturing process can also be selected by the user. For example, only roofs can be textured in a project and other parts of the building can be left un-textured. The nadir (vertical) stereo images in this study have been taken with 80% forward and 60% lateral overlap, which is sufficient for texturing both the roofs and the façades.
The most important factor in texturing roofs is the selection of the best image for each roof, as every object appear in multiple photos due to the high overlap ratio. The central part of the photos has the best radiometric appearance for buildings as no relief displacement occurs in this part. The best texture for each roof exists basically in the photo where the building is located close to the image center. In other words, the principal axis of the image should intersect the roof top perpendicularly, if possible. For example, in the application dataset, the same roof can be found in nine or ten different photos due to high overlap. The software finds the most suitable photograph for the texturing roof by comparing the center point coordinates of the roof and the aerial photographs. After the comparison, the photo with the closest center point to the roof center is used for texturing.
Façade texturing is done with a different approach from the roof texturing. This approach is flexible and affected mainly by the camera system and city structure. Other parameters are whether the camera is large-or medium-format, how high the buildings in the city are, how the vegetation is

Image and Model Orientation
A basic requirement of model texturing is to ensure that the model coordinates and the image EOPs are defined in the same reference coordinate system. In addition, the camera calibration data should be provided for the accurate orientation of the images. If no errors are detected in the orientation validation, the database setup and load is carried out to establish a project space, which contains the orthophotos, DTMs, building models, and aerial photographs of the project. The pre-defined project (texturing) area is enlarged with a buffer zone so that the buildings near the outer border can be included completely. After importing all data into a database, aerial photographs and adjusted exterior orientation parameters are matched with buildings, DTMs and orthophotos in the database. Consistency checks between aerial photographs, interior and exterior orientation parameters, and buildings are performed and the texturing process is started if there are no errors.

Texture Mapping Process
A pre-selection of the photos for the texturing area would result in faster processing. To find the most suitable photos for a building, the algorithm splits the building into sub-parts and assigns each of them to different classes. The buildings are usually split into four different objects, such as roof, façade, base, and fringe. This object structure is similar to the object structure in CityGML specification. The software can directly use CityGML object structure in the automatic-texturing process. The parts of the buildings that will be used in the texturing process can also be selected by the user. For example, only roofs can be textured in a project and other parts of the building can be left un-textured. The nadir (vertical) stereo images in this study have been taken with 80% forward and 60% lateral overlap, which is sufficient for texturing both the roofs and the façades.
The most important factor in texturing roofs is the selection of the best image for each roof, as every object appear in multiple photos due to the high overlap ratio. The central part of the photos has the best radiometric appearance for buildings as no relief displacement occurs in this part. The best texture for each roof exists basically in the photo where the building is located close to the image center. In other words, the principal axis of the image should intersect the roof top perpendicularly, if possible. For example, in the application dataset, the same roof can be found in nine or ten different photos due to high overlap. The software finds the most suitable photograph for the texturing roof by comparing the center point coordinates of the roof and the aerial photographs. After the comparison, the photo with the closest center point to the roof center is used for texturing.
Façade texturing is done with a different approach from the roof texturing. This approach is flexible and affected mainly by the camera system and city structure. Other parameters are whether the camera is large-or medium-format, how high the buildings in the city are, how the vegetation is covered, whether there is fringe in the buildings, and topographical characteristics. Image orientation angles along with center coordinates are of great importance for the façade texturing. The façades appear to be better for texturing in the regions closer to the outer border of the photograph. In terms of the viewing angle, the building has clearer outward appearance, but the camera distortions should also be taken into account in this case.
The software cuts out the chosen photos for all façades and saves them in separate image files. While cutting out the aerial photos, a predefined buffer zone is kept at the peripherals. Thus, if any editing is needed to be done in the building geometry, gaps in the building envelope can be prevented. Each texture is then used in that part of the building according to the CityGML data structure. The extracted image is not directly textured to the façade, but it is related one-to-one based on file names. In other words, the texture parts cut out from each aerial photograph is unique and can only be used for one façade belonging to one building. Every texture image is used only for one building or façade. A part of textured city model area is presented in Figure 18. covered, whether there is fringe in the buildings, and topographical characteristics. Image orientation angles along with center coordinates are of great importance for the façade texturing. The façades appear to be better for texturing in the regions closer to the outer border of the photograph. In terms of the viewing angle, the building has clearer outward appearance, but the camera distortions should also be taken into account in this case. The software cuts out the chosen photos for all façades and saves them in separate image files. While cutting out the aerial photos, a predefined buffer zone is kept at the peripherals. Thus, if any editing is needed to be done in the building geometry, gaps in the building envelope can be prevented. Each texture is then used in that part of the building according to the CityGML data structure. The extracted image is not directly textured to the façade, but it is related one-to-one based on file names. In other words, the texture parts cut out from each aerial photograph is unique and can only be used for one façade belonging to one building. Every texture image is used only for one building or façade. A part of textured city model area is presented in Figure 18.

Conclusions
In this study, a workflow has been introduced for the production of 3D city models, which have now become a necessity for better management of cities. Large-format aerial imagery and vector maps manually produced from this data have been used for this purpose. 3D city models in LoD2 and DSMs can be produced using existing aerial photogrammetric datasets and their project outputs without additional cost and effort as shown here. With the proposed method, it is possible to produce the model of Cesme Town (260 km 2 ) within one week by one trained person using a desktop PC. Figure 19 shows views of the resulting product of this study. The created 3D model is automatically textured from aerial images and published online on the web at www.cesme3d.com.

Conclusions
In this study, a workflow has been introduced for the production of 3D city models, which have now become a necessity for better management of cities. Large-format aerial imagery and vector maps manually produced from this data have been used for this purpose. 3D city models in LoD2 and DSMs can be produced using existing aerial photogrammetric datasets and their project outputs without additional cost and effort as shown here. With the proposed method, it is possible to produce the model of Cesme Town (260 km 2 ) within one week by one trained person using a desktop PC. Figure 19 shows views of the resulting product of this study. The created 3D model is automatically textured from aerial images and published online on the web at www.cesme3d.com. Some of the problems encountered during the work and suggestions for their solutions are as follows: • Excessive amount of preprocessing for file format conversion: Most of the data used in this study was not in the formats that the software requires, and need to be pre-processed. Most of the manual interaction has been performed for this purpose.

•
Incorrect building roof models: The automatic reconstruction of buildings has the limitation of existing roof types in the library. In addition, occluded buildings which are partially covered by trees or other objects have been reconstructed incorrectly from DSMs. In order to fix these problems, visual checks and manual editing have been required. Examples to the false roof reconstructions are provided in Figure 20. • Software limitations in processing the data of large regions: A significant example to this problem is the BuildingReconstruction software, which can only reconstruct buildings in areas less than 1 km 2 . In this study 43,158 buildings have been reconstructed automatically in an area of 270 km 2 . In order to be able to perform an automatic reconstruction on such a large area, the working area is divided into small parts and then divided into folders by producing DSM, DTM, and building footprint for each area. The segments were separately produced and exported as CityGML, and these separate files have been later converted into a single CityGML file to cover the entire city.
As a final recommendation, an automatic quality control and quality assessment (QC and QA) should be implemented for the 3D city models. Such methods are especially crucial for the QC and QA of large datasets. More research on the production of 3D city models should be conducted and Some of the problems encountered during the work and suggestions for their solutions are as follows: • Excessive amount of preprocessing for file format conversion: Most of the data used in this study was not in the formats that the software requires, and need to be pre-processed. Most of the manual interaction has been performed for this purpose. • Incorrect building roof models: The automatic reconstruction of buildings has the limitation of existing roof types in the library. In addition, occluded buildings which are partially covered by trees or other objects have been reconstructed incorrectly from DSMs. In order to fix these problems, visual checks and manual editing have been required. Examples to the false roof reconstructions are provided in Figure 20. • Software limitations in processing the data of large regions: A significant example to this problem is the BuildingReconstruction software, which can only reconstruct buildings in areas less than 1 km 2 . In this study 43,158 buildings have been reconstructed automatically in an area of 270 km 2 .
In order to be able to perform an automatic reconstruction on such a large area, the working area is divided into small parts and then divided into folders by producing DSM, DTM, and building footprint for each area. The segments were separately produced and exported as CityGML, and these separate files have been later converted into a single CityGML file to cover the entire city.
As a final recommendation, an automatic quality control and quality assessment (QC and QA) should be implemented for the 3D city models. Such methods are especially crucial for the QC and QA of large datasets. More research on the production of 3D city models should be conducted and their results should be discussed in the literature, since more results would help to open new horizons for higher-quality city models.   Funding: This research received no external funding.