Available with Advanced license.
In ArcGIS Pro, you can photogrammetrically correct scanned aerial imagery to remove geometric distortions induced by the sensor, platform, and terrain displacement. After removing these distortions, you can generate ortho mapping products.
First, you will set up an ortho mapping workspace to manage your scanned imagery collection. Next, you will refine the interior orientation parameters using fiducials, followed by a bundle block adjustment, and a refined adjustment using ground control points. Finally, you will generate an orthorectified mosaic, or orthomosaic.
Computing the photogrammetric solution for aerial imagery is determined by its exterior orientation (EO), which represents a transformation from the ground to the camera and its interior orientation (IO), which represents a transformation from camera to image. Required exterior orientation parameters include perspective center (x, y, z), and Omega, Phi, and Kappa, and are provided in an Esri Frames Table. Interior orientation parameters include focal length, pixel size, principal point, lens distortion, and the fiducial film coordinates of the camera. This information can be found in the camera calibration report associated with your imagery and is provided in an Esri Camera Table. If the fiducial film coordinates are not available for the camera, you can still process the imagery and generate an orthomosaic; however, this may result in less-accurate products.
ArcGIS Pro 2.6 or later is required to complete this tutorial.
Create an ortho mapping workspace
An ortho mapping workspace is an ArcGIS Pro subproject that is dedicated to ortho mapping workflows. It is a container within an ArcGIS Pro project folder that stores the resources and derived files that belong to a single image collection in an ortho mapping task.
A small collection of six scanned aerial images and a DEM is provided for this tutorial. The folder labeled “InputTables” contains the frame and camera tables and includes a point feature class that will be used to collect ground control points.
- Download the tutorial dataset and save it to C:\scanned_tutorial.
- In ArcGIS Pro, create a project using the Map template and sign in to your ArcGIS Online account if necessary.
- The default Parallel Processing Factor is set to 50%. In order to accelerate the adjustment process, you can increase the Parallel Processing Factor. Under the Analysis tab, click Environments. Locate the Parallel Processing parameter in the Environments window and enter 80% in the dialog box.
- On the Imagery tab, in the Ortho Mapping group, click the New Workspace drop-down menu and select New Workspace.
- In the Workspace Configuration window, type a name for your workspace.
- In the Type drop-down menu, choose Aerial - Scanned.
- In the Basemap drop-down menu, choose Topographic.
- Click Next.
- In the Image Collection window, under Exterior Orientation File / Esri Frames Table navigate to the tutorial data folder on your machine and select the Frames table file (frame6_utm18.csv). This table specifies parameters that are used to compute the exterior orientation (EO) of your imagery.
Make sure that the data paths listed in the raster column in the Frames table file match the location of the image files on your machine.
- Click OK.
- For Cameras, click the Import button , navigate to the tutorial data folder on your machine and select the Camera table file (camera_Fiducial). This file contains the interior orientation (IO) for the camera. Click OK.
- Make sure the Spatial Reference and Camera Model are correct. The default projection for the workspace is defined based on the latitude, longitude, and altitude of your images. This projection determines the spatial reference for your ortho products, including the orthomosaic and DEM. For this dataset, we’ll use the default projection. Click Next.
- Accept the default settings in the Data Loader window and click Finish.
Note:The Frame Spatial Reference parameter will be automatically set by the spatial reference of the perspective points defined in the Esri Frames Table.
Once the workspace has been created, the images and image footprints will be displayed. An Ortho Mapping category has also been added to the Contents pane. The source imagery data and derived ortho mapping products will be stored here.
The initial display of imagery in the workspace confirms that all images and necessary metadata were provided to initiate the workspace. The images have not been aligned or adjusted, so the mosaic may not look correct.
Refine interior orientation
Creating an ortho mapping workspace initializes the image interior orientation based on the entire scanned aerial photograph, without considering the valid areas defined within fiducial marks. Additionally, the orientation of the photograph during scanning may introduce systematic anomalies that can be compensated for in the preprocessing workflow. Image interior orientation can be refined by detecting image fiducials using a fiducial template and constructing the affine transformation from computed fiducial image coordinates to known fiducial film coordinates.
- In the Ortho Mapping tab, in the Preprocessing group, click Refine Interior Orientation to define the template and compute fiducials for the image collection.
- In the Refine Interior Orientation pane, click on the template in the fiducial template table.
- Zoom in to the center of the left edge fiducial mark and click the Capture button .
- Click the center of the fiducial mark and drag the cursor outward to capture a picture of the fiducial and define the fiducial template. The captured picture is automatically written to the fiducial template table in the ortho mapping workspace. To change the picture of a template, recapture it. Once you have defined the fiducial template, you can compute the fiducials.
- Click the Compute Fiducial Coordinates button to compute fiducials for all images defined in the image list.
You can review and edit fiducial points using the Edit tab. In the fiducial point table, values in the Image X and Image Y fields are calculated image fiducials, and values in the Film X and Film Y fields are the film fiducial coordinates of the camera, which are provided during the creation of a workspace. The Score field describes the similarity of pixel values in the template to those at the other fiducial positions in the image. The Score value range is 0 - 100, where 100 indicates a perfect match. The Residual field is the transformation error at that fiducial position.
- Click the Edit tab and click the Filter Images button .
- Click the Enable filter option in the filter window and choose Unresolved from the Filter by fiducial computation accuracy drop-down menu. This will list any images where fiducial matching failed and no image fiducial points were detected. Use the Resolved with only 3 match points filter to find images that need to be reviewed and edited.
- Click OK.
- Click the Filter Images button and turn off the filter.
- Select a fiducial point row in the table and examine the corresponding values.
Some of the fiducial points may have low values for Score, although the marker is accurately placed near the center of the fiducial. The matching algorithm uses a combination of factors to compute matches, including pixel values and patterns. Variations in pixel values between the image template and other fiducial locations may produce low scores, while the marker is placed in the correct location.
- Check the preview window to make sure that the associated marker is located near the center of the fiducial. To edit the location of the marker, click the edit button and click the desired location on the fiducial center. The values for Image X and Image Y will be automatically updated in the table.
- Once you have inspected the fiducial markers for each image, click the Update Interior Orientation button to compute the transformation from fiducial coordinates to image coordinates.
After you have refined the interior orientation using fiducials, the next step is to perform block adjustment using the tools in the Adjust and Refine groups. The block adjustment will first calculate tie points, which are common points in areas of image overlap. The tie points will then be used to calculate the orientation of each image, known as "exterior orientation" in photogrammetry.
- In the Ortho Mapping tab, in the Adjust group, click Adjust .
- In the Adjust window, make sure Quick adjust at coarse resolution only is unchecked. If this option is checked, an approximate adjustment will be performed at a coarse, user-defined resolution. If this option is not checked, tie points are first computed at a coarse resolution, followed by a refined adjustment at image source resolution. A one-step adjustment is OK for the sample data in this tutorial, since the sample dataset is small, and the adjustment will be performed quickly.
- The Perform Camera Calibration parameters should be unchecked by default for scanned aerial imagery, as most airborne sensors have been calibrated and provide results in a camera calibration report. Automatic camera calibration computes and improves the camera’s geometric parameters, while determining image orientation and image ground coordinates. For scanned imagery, camera calibration refines only the lens distortion parameters.
- Under Blunder Point Threshold, use the default value. Tie points with a residual error greater than this value will not be used in computing the adjustment. The unit of measure is pixels.
- Under Image Resolution Factor, use the default setting, 8 x Source Resolution. This parameter is used to define the resolution at which tie points will be calculated. Larger values will allow the adjustment to run more quickly. This default value is suitable for most imagery that includes a diverse set of features.
- Under Image Location Accuracy, use the default setting, Low. This indicates the accuracy level of your GPS data collected concurrently with your imagery. This is used in the tie point calculation algorithm to determine the number of images in the neighborhood to use. Airborne GPS may not have been collected with historical imagery, so the location accuracy for scanned aerial images is typically low or unknown.
- Click Run to perform block adjustment.
Collect Ground Control Points (GCPs)
GCPs are points with known x,y,z ground coordinates, often obtained from ground survey and used to ensure that the images will be accurately georeferenced in the ground coordinate system. Block adjustment can be applied without GCPs and still ensure relative accuracy, but adding GCPs increases the absolute accuracy of the adjusted imagery. If you do not have GCPs from ground survey, but you have a georeferenced raster layer (raster dataset, mosaic dataset, or image service), you can add it as a reference to compute GCPs. This is particularly useful for historical scanned imagery, where the original ground survey data might not be available. When choosing a reference image for GCP computation, make sure your reference image has good georeferencing quality in terms of geopositional accuracy and clarity, and the resolution is similar to your source imagery. For this tutorial, we'll collect GCPs from the National Agriculture Imagery Program (NAIP) image service layer, available through ArcGIS Living Atlas of the World.
While it is recommended to use a reference image with known geopositional accuracy, the Imagery basemap is sufficient in cases where suitable reference images are not available.
- In the Catalog pane, in the Portal tab, click the Living Atlas button .
- Type "NAIP" in the search dialog.
- Select USA NAIP Imagery: Color Infrared image and add it to the map.
- Next, right-click Databases in the Catalog pane, select Add database. Browse to the InputTables folder in the tutorial dataset and select the file geodatabase.
- In the Catalog, under Databases, expand the GCP_Scanned_Tutorial and add the GCP_Locations feature class to the map. You will use the points in this layer to locate and select GCPs on the NAIP image layer.
- In the Contents pane, click on the symbol for the GCP_Locations point layer and change it to "Cross 1."
- In the Ortho Mapping tab, in the Refine group, click Manage GCPs to open the GCP Manager.
- Click the Define Z Correction button . This tool is used to define any vertical transformations that are required to accurately transform heights extracted from the basemap.
- In the Define Z Correction window, click the Browse button .
- In the Spatial Reference window, click the Current Z box. Then, under Z Coordinate System Available, scroll up and select None.
A vertical coordinate system (VCS) was not selected because the DEM attached to the Ortho Mapping workspace does not have a defined VCS. If a VCS is defined for the workspace DEM, a VCS and transformation must be selected. To determine the VCS of your DEM, right-click on the layer in the Catalog pane, select Properties, and expand Spatial Reference.
- Click OK twice to accept the changes and close the Spatial Reference and Define Z Correction windows.
- In the GCP Manager window, click the Add GCP or Tie Point button .
- Make sure the USA NAIP Imagery: Color Infrared layer is selected in the Contents pane. Navigate to one of the points in the GCP_Locations layer and click on the corresponding feature in the NAIP imagery layer to place a GCP.
If GCPs are collected from a reference image, they should be collected from the ground surface. GCPs should also be collected using identifiable features that are present in both the scanned images and the reference image, such as road intersections, street corners, or the corner of driveways.
- The approximate location of the GCP in the scanned imagery will appear in the image viewer. Locate the same feature in the image viewer and click on the feature to place a tie point. The tie points for other images will be automatically calculated when possible, but each tie point should be checked for location accuracy. When a tie point has been successfully added to an image, the gray tie point symbol will change to blue in the image viewer list. Use the pointer to change the location of the tie point.
The x and y GCP coordinates will be derived from the NAIP imagery, while the z value will be collected from the workspace DEM.
- Repeat this process for each of the seven GCP locations.
- After each GCP has been added and measured with tie points, click the Set GCP Accuracy button and enter 5 for the XY Accuracy and 1.5 for the Z Accuracy for each row in the table.
- Confirm that Update is set to All and click OK.
- select the GCP associated with GCP 07 in the point layer and right-click to change it a Check Point. This will provide a measure of the absolute accuracy of the adjustment, as this point will not be used in the adjustment process.
- After adding GCPs and checkpoints, the adjustment must be run again to incorporate these points. Click Adjust and then clickRun to perform the adjustment with GCPs.
Review adjustment results
Adjustment quality results can be viewed in the GCP Manager by analyzing the residuals for each GCP. Residuals represents the difference between the measured and computed position of a point. They are measured in the units of the project spatial referencing system. After completing adjustment with GCPs, three new fields, dX, dY, dZ, are added to the GCP Manager table and display the residuals for each GCP. The quality of the fit between the adjusted block and the map coordinate system can be evaluated using these values. The Root Mean Square Error (RMSE) of the residuals can be viewed by expanding the Residual Overview section of the GCP Manager.
Generate an orthomosaic
An orthomosaic is an orthorectified image product mosaicked from an image collection. Geometric distortion has been corrected and the imagery has been color balanced to produce a mosaic. Elevation can be derived when the image collection has a good amount of overlap to form the stereo pairs. The resulting DEM can then be used to orthorectify the image collection. However, the number of images and percent image overlap for this collection is not sufficient to produce a DEM to orthorectifiy the final mosaic.
Typical image overlap to produce point clouds is 60 percent forward overlap along a flight line and 30 percent overlap between flight lines for aerial imagery.
- Browse to the DEM provided in the tutorial dataset and add it the map.
- In the Ortho Mapping tab, In the Product group, click Orthomosaic to start the Orthomosaic Wizard.
- Click Next.
- In the Orthorectification Settings window, under Elevation Source, check Use Input DEM .
- Select CONUS_NED10m.tif from the drop-down and click Next.
- In the Color Balance Settings, uncheck Select Mosaic Candidates and accept all other default options. Click Next.
- In the Seamline Settings window, under the Computation Method drop-down menu, choose Veroni. Click Next.
- In Orthomosaic Settings window, for Pixel Size, use the default value. This will determine the final resolution of the orthomosaic.
- Click Finish to generate the final orthomosaic.
In this tutorial, you created an ortho mapping workspace for scanned aerial imagery and used tools in the Ortho Mapping tab to apply a photogrammetric adjustment. You then applied a refined adjustment using ground control points collected from a reference image. Finally, you used the Ortho Mapping Products Wizard to generate an orthomosaic. For more information on these topics, see the following: