DEVELOPING COMPLETE URBAN DIGITAL TWINS IN BUSY ENVIRONMENTS: A FRAMEWORK FOR FACILITATING 3D MODEL GENERATION FROM MULTI-SOURCE POINT CLOUD DATA

: The proliferation of affordable LiDAR technology and photogrammetry sensors has revolutionized 3D data acquisition in built environments, enabling comprehensive data capture from citywide scales to interior structures. This data can be transformed into digital twins, providing valuable resources for city planners, architects, engineers, and decision-makers. However, current studies often overlook the limitations of real-world point cloud datasets derived from LiDAR systems, which are voluminous, noisy, incomplete, and lacking information, which hinders monitoring, interpretation, and automated analysis. To address these challenges, methods are required to prepare point cloud data, ensuring accurate and reliable 3D representations. This research proposes a detailed framework for point cloud data preparation in busy urban environments. It includes precise algorithms, software, and parameter guidelines, allowing for the creation of comprehensive point cloud datasets. The framework has been successfully implemented on datasets acquired in Toronto, converting point cloud data from various platforms and parameters into an integrated dataset. Results demonstrate the framework's effectiveness in producing accurate and complete point cloud datasets for applications such as classification, information extraction, 3D model generation, and smart cities' monitoring and management.


INTRODUCTION
LiDAR technology has revolutionized the acquisition of precise 3D spatial information, thanks to its ability to measure distances and capture useful data rapidly and accurately using laser scanning techniques (Altuntas, 2023).With recent cost reductions, LiDAR has become more accessible and affordable for various applications, including smart cities (Tong et al., 2021), urban planning, infrastructure management (Harrap and Lato, 2010), autonomous vehicles (Royo et al., 2019), and environmental monitoring (Jeong et al., 2018).
The efficient processing of point cloud data outputs from LiDAR systems has significantly contributed to effective decision-making systems and reduced labor costs (Poux et al., 2018).However, many studies tend to overlook the limitations of real-world point cloud datasets obtained from LiDAR systems, which can be voluminous, noisy, incomplete and lack comprehensive information (Xia et al., 2020).This oversight often arises from reliance on idealized, lab-prepared datasets.These limitations can hinder the monitoring, interpretation, and automated analysis of the acquired data.
Point cloud data pre-processing encompasses a set of techniques and procedures applied to raw point cloud data to enhance its quality, remove noise, extract relevant information, and make it suitable for further analysis and applications (Khoshelham and Elberink, 2012).This preparatory phase is crucial for ensuring the accuracy and reliability of 3D models derived from LiDAR data.Recognizing the need to address these challenges, researchers have developed various methods to enhance the quality and usability of point cloud datasets (e.g., Abdelazeem et al., 2021;Li et al., 2023;Lee et al., 2021.).However, most existing studies focus on individual limitations, and to the best of our knowledge, there is a lack of comprehensive frameworks that integrate all necessary steps for data preparation, particularly in the context of smart cities and built environment modeling.
In this paper, we propose a comprehensive pre-processing framework designed to effectively prepare multi-source point cloud data for subsequent processing stages.Our approach aims to address the challenges associated with real-world point cloud data in busy environments, which are critical for digital twinning and real-world digitization applications.
Our proposed framework minimizes human intervention and streamlines the conversion of raw point cloud data into comprehensive datasets suitable for various processes in the Scan-to-BIM pipeline.To evaluate the effectiveness of our approach, we applied each step of the framework to multisource datasets acquired in Toronto, Canada using our laboratory equipment and existing datasets released by the City of Toronto.
The structure of the paper is as follows.Section 2 provides a concise review of related works; Section 3 explains the methodology, including the datasets, software, tools, and algorithms used for each step of the framework (selection, sampling, denoising, colorization, fusion, and enhancement); Section 4 presents the research results; and Section 5 discusses the key findings, limitations, and future directions.

RELATED WORK
High point density settings on LiDAR devices often generate excessively dense point clouds, which can hinder effective visual exploration and interpretation.Subsampling of point cloud data aims to reduce the number of points while preserving essential geometric and spatial characteristics.This process plays a crucial role in managing the size and complexity of point cloud datasets, enabling efficient storage, transmission, and processing.Various subsampling techniques have been proposed in the literature, including random subsampling, uniform subsampling, voxel grid downsampling, and adaptive downsampling (Goldberger, 2005) some of which use deep learning methods (e.g.Qi et al., 2017, andLang et al., 2020).Each method employs specific sampling strategies to select representative points from the original point cloud, considering factors such as point density, spatial distribution, and local feature preservation.
In urban environments, data collection poses challenges due to noise sources like people, vehicles, and vegetation, leading to outliers that compromise data accuracy and processing.Point cloud data denoising is essential for removing noise artifacts caused by sensor limitations, environmental factors, and measurement errors.Denoising techniques enhance the reliability and usability of point cloud data for applications such as 3D reconstruction, object detection, and scene analysis.Various methods have been developed and can mainly be categorized into three types (Zhou et al., 2022): Filter-based methods employing point positions or point normals; Optimization-based methods employing best-fit constraints and several parameters identified through careful trial-and-error; and Deep learning-based methods through executing the algorithm on cases sharing similar geometry and noise characteristics to training datasets (Yu et al., 2018).These techniques aim to identify and eliminate noisy points while preserving the underlying structure and geometry of the scene.
Moreover, the absence of color information in some LiDAR scanners poses challenges for stakeholders and non-experts who rely on colorization for interpreting 3D point clouds.Colorization plays a crucial role in providing additional context and realism to point cloud representations.While traditional LiDAR systems capture geometric and intensity information, the incorporation of color enhances visual understanding, improving object recognition, classification, and feature extraction.Colorization techniques, such as texture mapping, image-based color transfer, and sensor data fusion, seamlessly integrate color information with geometric data, preserving spatial coherence and accuracy.Generally, image colorization techniques can be divided into two categories: Convolutional Neural Networks (CNNs) based colorization (e.g.Johnson et al., 2016;Liu et al., 2019) and Generative Adversarial Nets (GANs) based colorization (e.g.Isola et al., 2017).Furthermore, capturing LiDAR data from terrestrial, mobile, or airborne platforms presents limitations in analyzing building elements from a single viewing angle.Point cloud data fusion addresses this limitation by combining data from different perspectives and sensors, enabling a more comprehensive and detailed understanding of the captured environment.Fusion techniques enhance accuracy (Fowler and Kadatskiy, 2011), resolution, and richness in the resulting point cloud representation, benefiting applications like urban planning, infrastructure management, environmental monitoring, and virtual reality.Geometric and statistical algorithms are employed for the registration, alignment, and integration of point cloud data, ensuring geometric consistency, eliminating redundancy, and preserving complementary information from multiple sources (Huang et al., 2021).
In this brief state-of-the-art of related work, we highlighted the direction that will drive our methodology.First, we should identify the most suitable algorithms and parameters for each step along the pipeline.Second, the performance and scalability should permit extensive point cloud processing.Third, the level of human interaction should be minimized by utilizing automated algorithms where applicable which allows for a good generalization.Finally, we need to ensure having a comprehensive approach that covers all the preprocessing steps needed for the final dataset to be ready for visualization, classification, and 3D model generation.

METHODOLOGY
The applied pre-processing and preparation workflow is organized as follows: first, the appropriate datasets for the application were chosen to meet the need and availability.Second, the point cloud scans were subsampled separately to ensure efficient and easy handling of output.Third, an appropriate denoising process was identified by analyzing the elements needed for the application to eliminate moving and irrelevant objects from the scans.Fourth, RGB values were incorporated into the point cloud that had no color information to increase its realism and alignment with the rest of the colorized datasets.Fifth, the different scans from multiple platforms and sensors were integrated to form a complete outdoor scene reflecting the built environment.Finally, visualization and subsampling enhancement were applied by calculating shading values and a second iteration of simplification to the fused dataset (Figure 1).
Once the pre-processing workflow is completed, and a comprehensive dataset is achieved as an output of the workflow, it becomes ready for the main processing steps of point clouds, including mainly: classification, which identifies the different elements in the scene, such as rooftop, façade, street pole, tree, etc., and then the conversion of such elements from points to 3D models (Figure 1).Although not part of our automated workflow in this paper, it forms our next steps and aims, and the output dataset from the pre-processing workflow was also tested through both classification and 3D modeling applications.

Data Selection
The first crucial step before starting the dataset preparation for digital twinning applications was to identify which datasets to be used with appropriate properties tailored to the task at hand.In our approach, we considered two key elements for identifying suitable datasets: platforms and attributes.In a city environment, stationary LiDAR platforms, handheld LiDAR devices, and vehicle-mounted mobile LiDAR can capture street data, including street furnishings, hardscape, softscape, and building facades and interiors.However, airborne platforms, such as aircraft or drones, are required to capture rooftop details, high pole tops, and tree canopies, if necessary.
For the attributes, in addition to the default X, Y, and Z coordinates, additional information was deemed necessary for digital twinning applications, including intensity values to help with object classification, material identification, and direct analysis.RGB values were also found essential for enhancing data visualization, interpretation, and certain analysis tasks.While density is another consideration when selecting point cloud data for an application, the highest resolution is usually applied when collecting LiDAR data to suit several tasks as needed, and thus, density was not a primary focus.
Based on the specific requirements of the digital twinning applications as described above and data availability, three datasets were chosen as appropriate for the demonstration and experimenting in this research.They included: (1) low-quality outdoor airborne data covering a major region of Toronto's downtown area (Figure 2); (2) high-quality outdoor airborne dataset focused on a specific block to showcase detailed visualization and modeling (Figure 3); (3) high-quality outdoor terrestrial data capturing the same block at the street level (Figure 4).

Subsampling
Subsampling serves as the initial step in the pre-processing workflow, playing a crucial role in facilitating subsequent stages and achieving computational efficiency at an early phase.Our approach for selecting an appropriate subsampling algorithm and related parameters focuses on preserving the visual geometric characteristics of the different city elements to a level that enables automated classification methods to identify the objects, visually interpret the different entities with the naked eye, and also to serve as a foundation for manual modeling once the complete pre-processed data is obtained if needed while reducing the size of data for a better exploration and computational experience.
Random subsampling was not considered suitable due to the potential loss of data related to certain elements and the resulting imbalanced densities, which lead to visually unappealing and less interpretable outcomes.Instead, structured approaches were emphasized, and various thresholds were tested.Among them, the minimum distance method proved to be the most effective in meeting the aforementioned criteria.
The 'Space' mode of subsampling in CloudCompare involves setting a minimum distance between points to control the density of the output cloud.By specifying a value, CloudCompare selects points from the original point cloud in a way that ensures no point in the resulting cloud is closer to another point than the specified distance.The larger the specified distance, the fewer points will be retained in the output cloud.The algorithm operates by parsing the points in a somewhat arbitrary order, organized spatially by the octree structure.The first point encountered is marked as 'to be kept'.Then, for each subsequent point in the cloud, the algorithm queries its neighbors within the defined radius.If none of the neighboring points has already been marked as 'to be kept', the new point is also flagged accordingly.In the end, only the points that have been flagged as 'to be kept' will be included in the output cloud (CloudCompare Wiki, 2023).By applying a minimum distance threshold of 3 cm (0.03), the algorithm substantially reduced the number of points while maintaining a strong geometric representation of the scene's elements, as depicted in Figure 5.It is important to note that the subsampling algorithm was applied to each scan individually to ensure ease of processing and to separate the data simplification and enhancement stage from the subsequent fusion phase.

Denoising
The next step in the workflow after subsampling the data is to remove noise from the scene.Noise in point clouds can be in two forms: first, by faulty points resulting from the behavior of the LiDAR system and reaction to certain materials, and second, by unwanted objects specific to the application.It is worth noting that the latter can also be addressed during the main processing phase of classification.However, in our approach, we performed noise elimination early in the pre-processing stage, resulting in better alignment with the intended application.In busy environments like Toronto, moving objects such as cars and people can hinder effective visualization and unnecessarily complicate the classification phase, whereas buildings and streets are of primary interest in our case.
Among the investigated software and tools, the "Detect Surface Points" algorithm found in the VRMesh software has proven to be effective in eliminating faulty objects and isolating complex, unstructured elements such as vegetation (Figure 6).While this isolation can be achieved through classification, we found it faster and easier to group structured and unstructured elements in the scene, simplifying further processing.The "Detect Surface Points" algorithm was applied to the scans using a minimum threshold of 4.8, resulting in a clean separation between structured and unstructured groups as can be seen in Figure 6.The tolerance factor has also been set to 0.3 to achieve the best computational processing.
Although no specific documentation was found detailing the inner workings of VRMesh, it is widely known that such a process utilizes the RANSAC (Random Sample Consensus) algorithm to define all surfaces in the scene and then exclude those falling outside the user-defined thresholds.RANSAC is mainly an iterative method used for estimating mathematical models from data sets containing outliers (a Fischler and Bolles, 1981).
The identification of faulty points may vary from case to case and typically requires visual analysis for identification.However, by sub-grouping surface-based points from unstructured points, as we have done herein, all faulty noise points were grouped within the unstructured set, while elements such as building facades (vertical surfaces) and streets (horizontal surfaces) were grouped.If the angle and normal information are not available in the data, this group can be further split using PCA calculations to distinguish between horizontal and vertical faces.Our approach recognizes the importance of separating building facades and streets to facilitate robust meshing and develop 3D models based on surface elements, while the unstructured group can be retained as points for visualization purposes or used in further classification to identify smaller objects, trees, and actual noise.

Colorization
The subsequent step in the workflow focused on ensuring the completeness of point cloud data attributes.In the case of Dataset 1, discussed in Section 3.1, which comprised lowquality outdoor airborne data of downtown Toronto, it was observed that the dataset lacked color information.However, incorporating colorization is crucial for providing an immersive and photorealistic display that enhances the user experience.Visualizing true imagery overlaid onto point clouds offers valuable insights into the discrete characteristics of the data, aiding interactive classification, feature digitization, and establishing reference points for 3D distance measurements.
To address this, we employed a point cloud colorization technique utilizing orthoimages of the same region through the "Colorize LAS" tool in ArcGIS Pro, taking advantage of the geo-referenced nature of both the point cloud data and the orthoimage.The tool is straightforward, requiring inputs of the LAS file, image reference, and RGB band assignment from the image channels.It functions by applying the pixel's color value from the image to each point falling within the same vertical extent as that pixel.The accuracy of the results depends on the resolution of the input image, with higher-resolution images yielding more precise outcomes (ArcGIS Pro, 2023).
While the ideal scenario involves using imagery captured simultaneously with the LiDAR flight to achieve optimal feature matching, due to data availability constraints we had to rely on an orthoimage captured in the same year but with a high resolution of 8cm.Given that we are working with multiplesource point clouds, some of which are already colorized, we made efforts to select an image with color variety and tones that closely matched the existing RGB values of the colorized point clouds as well.The resulting point cloud colorization was satisfactory and well-integrated with the other colorized point clouds visually, leading to an enhanced visualization and better readability of the scene, as depicted in Figure 7 below.

Multi-source Data Fusion
The next step in the workflow involves registering and combining the subsampled, denoised, and colorized datasetswhere neededor after incorporating any additional attributes as required for the specific application.If all the datasets are geo-referenced with a known coordinate system, the process simply involves joining the point cloud sets together after applying the appropriate coordinate systems to each in the platform.However, in cases where some of the data lack a welldefined coordinate system, a fusion approach utilizing overlapping points is employed.In this research, we utilized a two-step registration process in the CloudCompare software: coarse registration followed by fine registration.
The coarse registration was performed using the semiautomated method "Align (Point Pairs Picking)" in which the two datasets were aligned by selecting at least three corresponding point pairs in both datasets.This method is particularly useful for achieving precise alignment of clouds, especially when there are significant differences between the two clouds over large extents, which may impact the effectiveness of the fine registration (ICP) (CloudCompare Wiki, 2016).In this exercise, ten points were carefully chosen for each alignment, situated at the corners of the buildings where the facades meet the roof (specifically at the parapet outer edge).These points were also distributed evenly around the overlap edges of the datasets.
Following the completion of the coarse registration, the fine registration (ICP) was applied using the same approach, with the 'Model' being the geo-referenced point cloud (dataset 1) and the 'Data' representing each of the other point cloud sets.The ICP method automatically refines the registration of two datasets assuming an initial coarse registration and a good overlap between the datasets.It is an iterative process where the registration error gradually decreases.The software terminates the process either after a maximum number of iterations is reached or when the error (RMS) difference between two iterations becomes lower than a user-defined threshold.The smaller the threshold, the longer the convergence time, but the finer the result (Besl and McKay, 1992).The outcome of this exercise was the successful registration of the three point cloud datasets with visually acceptable accuracy that can facilitate interpretation, classification, and 3D model development, and all datasets were now geo-referenced.These datasets can then be merged into a single set using the 'Merge multiple clouds' tool in CloudCompare, as depicted in Figure 8.

Visualization Enhancements
The final refinements applied to the point cloud dataset involved two aspects.First, since multiple point clouds were registered with potential overlap, density variations could occur in the overlapping sections, which might affect visualization.To address this, an additional iteration of subsampling was performed using the same method described in Section 3.2, ensuring a uniform distribution of the data with a maximum spacing of 3cm.
Second, to enhance the realism of the point cloud data, an effective visualization technique involved the application of a real-time filter called the Eye Dome Light (EDL) Shader in both ArcGIS Pro and CloudCompare software.The EDL Shader is a non-photorealistic, image-based shading technique specifically designed to improve depth perception in scientific visualization.It utilizes post-processing passes implemented on the GPU with GLSL shaders, enabling interactive rendering.The shading function is computed based solely on the projected depth information and applied to the colored scene image (Boucheny, 2009).However, it is important to note that the EDL Shader requires real-time processing, which can be computationally expensive and relies on the availability of the shader in the visualization software.
To address these limitations, a plug-in named "PCV / ShadeVis (Portion de Ciel Visible)", was applied to the data through the CloudCompare software.This plug-in calculates the illumination of the point cloud as if the light were coming from a theoretical hemisphere or sphere around the object or from user-defined light directions.Importantly, it utilizes only the graphics card for computation (Tarini et al., 2003).The algorithm produces a new monochromatic scalar field with shadow values calculated at each point, as illustrated in Figure 9.This scalar field can then be combined with the RGB values to identify shadows within the point cloud's RGB attributes, eliminating the need for real-time processing while enhancing the realism of the data output.

RESULTS
The quality and effectiveness of our framework were evaluated through various testing scenarios, which we intended to study, focusing on visualization enhancement, manual 3D modeling development, and automated processing for extracting information from the point cloud data.
In the first scenario, we tested different software tools with the point cloud output from our pre-processing framework to evaluate visualization enhancement and scene completeness for an appealing representation and ability for visual interpretation.Among the options evaluated, CloudCompare demonstrated superior results compared to VRMesh, Autodesk Recap, ArcGIS Pro, and Quick Terrain.With its extensive control over the environment and data appearance, CloudCompare facilitated effective navigation and handling of datasets containing 100 million points.Notably, the outcomes around the block with multiple viewing angles and scan data appeared more complete, as illustrated in Figure 10.Additionally, we utilized the animation plug-in in CloudCompare to create a 3D walkthrough animation, which provided diverse perspectives for interpretation.
Figure 10.Snapshot of the visualization outcomes on CloudCompare.
Another scenario involved automated classification experiments using ArcGIS Pro software to classify ground points, building facades, and rooftops.The resulting outputs were subsequently presented in CloudCompare with color adjustments to achieve non-realistic but distinctive outcomes, aiding visual interpretation, as shown in Figure 11.The output point cloud was also used as a basis for testing accuracy and data completeness in the manual modeling process.Manual modeling using point cloud data is a wellestablished industry practice, allowing surveyors to capture upto-date building conditions and shapes without relying on blueprints or original models while satisfying the spatial and texture information a modeler needs to develop a digital replica.However, having a comprehensive dataset is key to success in such an approach.For this experiment, we integrated the point cloud into SketchUp software using the Undet plug-in.The building model was developed by tracing different angles of the building elements, resulting in relatively fast and satisfactory outcomes for outdoor building models.The texture information was also extracted from the point cloud and successfully integrated into the 3D model, enhancing its realism.
Finally, we tested the output point cloud as input for a fully automated processing approach, following the (Borisov et al., 2022) method.This automated framework involved ground surface and building rooftop classification, filtering, and final multipatching.The results included a Digital Elevation Model (DEM) of the region, vector footprints of buildings based on the rooftop classification results, and 3D models at Level of Detail (LoD) 2 using the rooftop classified points, DEM, and vector footprints, as displayed in Figure 12.These outcomes further demonstrated the potential of our workflow to integrate with existing methods and frameworks, enabling the creation of comprehensive 3D models and vector representations from point cloud data.In conclusion, our comprehensive framework for point cloud data pre-processing has demonstrated its effectiveness and potential in visualization and 3D modeling for digital twinning.Through a series of experiments, we validated the framework's capabilities in visualization enhancement, manual 3D modeling development, and automated processing of point cloud data.
The results show improved visualization quality, accurate and efficient manual modeling, and the generation of detailed 3D models and vector representations.The framework successfully prepared raw data from multiple sensors and integrated them into a cohesive dataset that represents the built environment.As we continue to refine and optimize our framework, we envision its broader application in supporting digital twinning initiatives, urban planning, and infrastructure management, contributing to the advancement of smart cities and the efficient utilization of point cloud data.

DISCUSSION, FUTURE WORK, & CONCLUSION
In this article, we present a comprehensive pre-processing framework for point cloud data, specifically designed for digital twinning and smart cities applications.The framework aims to maximize the utilization of point cloud data for visualization and further processing stages, ultimately leading to the development of 3D models.Throughout each step of the framework, a set of algorithms and techniques are applied in a semi-automated approach.To evaluate the effectiveness of the framework, real-world datasets collected in downtown Toronto were utilized.
During the visualization experiments, significant improvements were observed.However, challenges related to missing data were still prevalent, particularly in street-level areas and building facades obstructed by dense vegetation.This indicates the need for improved platform selection and dataset acquisition strategies that can handle the complexities of the downtown region.One potential improvement would involve the use of a handheld mobile LiDAR system to areas hidden by trees, such as the space between facades and sidewalk trees.Additionally, including the interiors of buildings in the data collection process, using the same handheld mobile approach could enable the creation of higher Level of Detail (LoD) models.These interior datasets can be registered and combined with the selected datasets to provide a more comprehensive representation.
Figure 13.Present occlusion on the combined dataset on one of the building's facades due to tree coverage.
Throughout the various processing stages, our framework utilizes existing software and employs the best-performing algorithms.However, the process often requires jumping between different applications at each stage.While the identified methods are well-established mathematically and computationally, we are exploring opportunities to access and integrate the underlying codes for each suitable method.This integration aims to increase automation and enable the complete framework to operate within a single environment, thereby enhancing automation and ensuring better alignment of results.
Furthermore, our ongoing efforts involve incorporating the main processing phase of point clouds within the framework, to achieve a comprehensive approach to pre-processing and processing point cloud data for exporting 3D digital models, particularly focused on buildings.This will encompass tasks such as classification and generating 3D models with varying levels of detail, enabling a fully automated point-to-model pipeline that caters to digital twinning and smart city applications.To facilitate this inclusion, we will conduct benchmarking of existing classification algorithms to test and compare their outputs, specifically targeting building elements.
Similarly, we will explore 3D modeling approaches that adhere to well-known standards for building models.
Finally, there are opportunities for expansion beyond the current scope.For instance, once the framework is complete, future work can involve the inclusion of indoor modeling for buildings or the modeling of outdoor furnishing and landscaping elements.These additions would further enhance the overall capabilities of the framework and its applicability to various scenarios.

CONCLUSION
Converting LiDAR point cloud data to 3D models has several benefits to a number of industries employing digital twins.However, such data in its original form are typically voluminous, noisy, and incomplete, causing difficulties in maximizing its uses.Our pre-processing framework utilizes different tools and software to overcome such challenges and produces comprehensive point cloud sets that are appealing, and visually interpretable, and can facilitate the 3D model development through either manual, semi, or complete automated approach.Future work will explore the coding activities behind each step within the workflow, to combine, and fully automate the process in a common working environment.We are also working to expand the framework to include the 3D model generation steps as can be seen in our testing experiments using the current workflow outputs.

Figure 1 .
Figure 1.Workflow of the methodology.

Figure 5 .
Figure 5.Comparison between structured octree (top) and minimum distance (bottom) on preservation/loss of the data.

Figure 6 .
Figure 6.Denoising approach using Detect Surface Points tool.

Figure 8 .
Figure 8.All three datasets registered and combined.

Figure 9 .
Figure 9. PCV / ShadeVis plugin scalar field output applied to the combined final point cloud dataset.

Figure 11 .
Figure 11.Manual modeling output for a building with sole use of the pre-processed point cloud data.

Figure 12 .
Figure 12.Geo-referenced output of the 3D model automated workflow on ArcGIS Pro.