Brief introduction on Structure from Motion (SfM): SfM is a photogrammetric technique used to create 3D models from 2D images. This technique is used in creation and reconstruction of 3D models, develop 3D environments which subsequently can be used to generate Orthomosaics and Digital Surface Models (DSMs) for crop phenotypic feature extraction. There are several software platforms available to process raw UAS imagery. These include Agisoft Metashape, ArcGis Pro, PIX4D Mapper, OpenDroneMap, DroneMapper. Comparisons and workflows for these individual software are as follows. 

Software Comparison

Name Cost Trial Platform Supported Output Country of Origin
Agisoft Metashape
Professional Edition
$3499 (Standard) & $549 (Educational) 30 Days Windows, Mac, Linux Orthomosaic, DSM, Report Russia
ArcGIS Pro $100/yr 21 Days Windows Orthomosaic, DSM, Report USA
PIX4Dmapper $5990 (perpetual) &
$3500/yr
15 Days Windows Orthomosaic, DSM, Report Switzerland
OpenDroneMap Free (code installation) & $57 (executable installer) N/A Windows, Linux Orthomosaic, DSM, Report USA
DroneMapper $999 (perpetual) for Remote Expert &
$159/yr for Rapid
14 Days Windows, Linux Orthomosaic, DSM USA

 

   Workflow on processing UAS data using the SfM software listed above.

This workflow uses the images collected over a cotton variety trial in Texas A&M AgriLife Research and Extension Center at Corpus Christi. DJI Phantom 4 RTK was flown at 25 meters with 85 percent front and side overlap collect the data. 9 GCPs were placed across the field.

Agisoft Metashape

Setting Up Project

  1. Open Metashape.
  2. Make sure you have activated the product by making use of your
    purchased license.
  3. Click “Workflow” > “Add Photos/Add Folder.”
  4. Select “Single cameras” for RGB > “OK.”
  5. Select “Multi-camera system” for MULTISPECTRUM > Select “Arrange images based on metadata” > “OK.”
    Repeat the steps above for as many folders exist.
    If using sensor “Altum-PT” or “RedEdge-P,” click “Tools” > “Set Primary Channel…”>“Panchro.”
  6. Click on the “Save” symbol to save the project.
  7. Create a folder with the naming convention: YYYYMMDD (date of
    data collection).
  8. Inside, create a folder according to sensor and drone: p4r, p4m, m2p, s3p, etc.
  9. Save as the following naming convention: YYYYMMDD_location_
    platform&sensor_sublocation.
    Example: 20220427_CC_p4m_ParkingLot
  10. After saving, press “5” to turn on Orthographic view.

    Processing

    1. Click “Workflow” > “Align photos.”
    2. Accuracy: HIGH
    3. Select the following:
    4. “Generic preselection”
    5. “Reference preselection: Source”
    6. Click “Advanced.”
    7. Key point limit: 40,000
    8. Tie point limit: 4,000
    9. Select the following:
    10. “Exclude stationary tie points”
    11. “Adaptive camera model fitting”
    12. Click “OK” > For the question, “Schedule processing over network?” select “YES.”
    13. This might take several minutes or even several hours depending on
      the number of images being processed and the specifications of the
      PC(s) being used.

      Rotate/Resize Regions

      1. Click “Model” > “Transform Region.”
      2. Rotate and resize region as needed.

      Verify Photo Alignment

      1. On the Photos section, click on the “Aligned” column to order the photos
        and see if there are any “not aligned.” If so, select them > Right-click > “Align
        Selected Cameras.”
      2. If cameras cannot be aligned after a second try, select them > Right-click >
        “Disable Cameras.”

      Detect Markers (Only if Using GCPs)

      1. Click “Tools” > “Markers” > “Detect Markers.”
      2. Marker type: Cross (non-coded)
      3. Tolerance: 15
      4. Maximum residual (pix): 10
      5. Click “OK” > For the question, “Schedule processing over network?” select “NO.”

      Import GCP Information (Only if Using GCPs)

      1. Click “Reference” > “Import Reference.”
      2. Import the CSV file with GCP information to Metashape.
      3. Verify the column names match (label, longitude, latitude, altitude) > “OK.”
      4. Create new marker? YES TO ALL.
      5. Remove detected markers that are far away from imported markers.
      6. Rename detected markers to match their name with the imported markers.
      7. Remove all imported markers.
      8. Once again, import the CSV file with GCP information to Metashape.
      9. You should end up only with markers that have been imported from your CSV file.

      Verify Markers (Only if Using GCPs)

      1. Right-click on a marker > “Filter Photos by Markers.”
      2. Make sure at least four markers’ photos with white flags are changed to green
        flags by clicking and dragging the “dot” to the center of the GCP.
        If the center of the GCP is not clearly visible, do not adjust. Ignore the
        photo and continue with the next image.

      Optimize Camera

      1. Click “Update Transform”
      2. Click “Optimize Cameras.”
      3. From “Advanced,” select “Adaptive camera model fitting” > “OK.”
        If no GCP is being used, select “Fit additional corrections,” and then click
        “OK.”
      4. Click “OK” > For the question, “Schedule processing over network?” select “NO.”

      Verify Error Margin (Only if Using GCPs)

      1. If the error is bigger than 0.02 (m), repeat optimize camera steps from above up to
        two times to try to reduce the error.

      Radiometric Calibration (Only for MicaSense)

      1. Click “Tools” > “Calibrate Reflectance…”
      2. Click “Locate panels.”
      3. If prompted about the calibration panel, email support@MicaSense.zendesk.
        com and ask for a calibration CSV file for your panel.
      4. Click “YES” > Load the CSV calibration file.
      5. Select “Use reflectance panels” > “Use sun sensor” > “OK.”
      6. For the question, “Schedule processing over network?” select “NO.”

      Radiometric Calibration (Only for Phantom 4 Multispectrum)

      1. Click “Tools” > “Calibrate Reflectance…”
      2. Select “Use sun sensor” > “OK.”
      3. For the question, “Schedule processing over network?” select “NO.”

      Batch Process List

      1. Click “Workflow” > “Batch Process…”
      2. Check “Save project after each step” > “Add …”
      3. Job type: Build Dense Cloud
      4. Quality: HIGH
      5. Depth filtering: MILD
      6. “OK” > “Add…”
      7. Job type: Build DEM
      8. Quality: HIGH
      9. Projection: EPSG::32614 (for Corpus Christi, Texas area)
      10. “OK” > “Add…”
      11. Job type: Build Orthomosaic
      12. Surface: DEM
      13. Enable “Refine seamlines”
      14. Projection: EPSG::32614 (for Corpus Christi, Texas area)
      15. “OK” > “Add…”
      16. Job type: Generate report
      17. Click “…” from the Path value column > Go to the desired folder to
        save the report.
      18. Generate report: follow the same project name rules and add “_report” at the end > “Save.”
      19. “OK” > “Add…”
      20. Job type: Export DEM
      21. Click “…” from the Path value column > Go to the desired folder to
        save the DSM (DEM).
      22. Follow the same project name rules and add “_dsm” at the end > “Save.”
      23. Projection: EPSG::32614 (for Corpus Christi, Texas area)
      24. Write BigTIFF File: YES
      25. “OK” > “Add…”
      26. Job type: Export Orthomosaic
      27. Click “…” from the Path value column > Go to the desired folder to
        save the DSM (DEM).
      28. Follow the same project name rules and add “_mosaic” at the end > “Save.”
      29. Projection: EPSG::32614 (for Corpus Christi, Texas area)
      30. Write BigTIFF File: YES
      31. Save alpha channel: YES
      32. Click “OK” > Check that the Job Type column matches the appropriate list
        above > “OK” > For the question, “Schedule processing over network?” select “YES.”

      To Continue Processing

      1. Click “Disconnect,” and start all over again from importing images/folders.

       

      ArcGIS Pro Workflow

      Setting Up Project

      1. Open ArcGIS Pro
      2. Login or configure license.
      3. Create a new project by selecting a template.
      4. Name the project and save to desired folder.
      5. Hover over to the Imagery tab and click “New Workspace”.
      6. Once Workspace pane opens, name the project using the following naming convention: YYYYMMDD_location_sensor&drone_sublocation.
      7. Enter description if applicable.
      8. Select “Drone” for Type > Click “Next”.
      9. Add images into the Image Collection pane > Click “Next”.
      10. Leave settings default in Data Loader Options pane (might change) > Click “Finish”.

        Block Adjustment

        1. Once finished, click “Adjust” from the Ortho Mapping tab to perform a block adjustment.
        2. When “Adjust” box pops up, make sure “Fix Image Location for High Accuracy GPS” is checked and “Image Location Accuracy” is set to “High”.
        3. Leave all other settings default for now > Click “Run”.

          Ortho Mapping

          1. Click “Custom” from the Ortho Mapping Tab.
          2. Make sure DEM and Orthomosaic are checked >Click “Next”.
          3. Leave the Point Cloud Settings at default> Click “Next”. (or change ETM to SM)
          4. Change Surface Type to DSM> Click “Next”.
          5. Leave Orthorectification Settings on “Use Product DEM”> Click “Next”.
          6. Change Max Area Overlap to 80%> Target Raster dropdown to “Image Collection”> Click “Next”.
          7. Leave Seamline Settings default> Click “Next”.
          8. Leave Ortho Settings default> Click “Finish”.

          DroneMapper Workflow

          1. GCP file must contain 6 columns, space delimited.
          2. GCP name> Easting Coordinate> Northing Coordinate> Elevation> Horizontal Survey Precision> Vertical Survey Precision.
          3. Name GCP file as “DroneMapperGCP_3D” as txt file> Save inside images folder

          Setting Up

          1. Open DroneMapper> File> Load Image Set> Select image folder that also contains GCPs> OK.
          2. Once image set is uploaded, Click the Ground Control Point button in the left panel above where it says “Remote Export”> New dialog box will open (DM 2D GCP build).
          3. Open GCP 1 image> Zoom to GCP> Hold Shift & left click the center to mark target. Link as many image targets to GCP 1> Move on to GCP 2 using the down arrow and repeat.
          4. Once all GCPs have images linked, click “Apply GCP”. (A new GCP folder will be automatically saved)
          5. Under DroneMapper Processing> Click the play button under the Preview section.
          6. One Preview is done you can continue to click the play button for an Orthomosaic>DSM.

          WebODM Workflow

          Setting up GCPs

          1. Click the GCP Interface tab> Drag GCP file into the box> Click “Okay.”
          2. Note: The following GCP format must be entered as:
          3. Name of coordinate (Ex. WGS84 or EPSG#)
          4. GCP# Long Lat Altitude (no commas in between).
          5. Once finished, GCPs should automatically pop up on the map shown to the right.
          6. Drag at least 3 images that contain all the GCPs used. (The more GCPs or objects in one photo, the better). Note: There needs to be at least 5 GCP/objects linked.
          7. Click the first image and delete the yellow GCP on both the image and map if not centered.
          8. Zoom into an GCP/object> Click the + button> Click the center of the GCP/object> Then click the same GCP/object on map to link. Repeat multiple GCPs/objects in one photo.
          9. Once finished, go back to the images, and continue linking until done.
          10. Export> Save to folder with images.

            Start a Project

            1. From the dashboard, click “+Add Project”> name it> Click “+Create Project”.
            2. Click “Select Images and GCP”> Select all images (and exported file from GCP Interface if using GCPS) and click okay.
            3. Create new name for Project> Leave options on default> Do not resize images> Click “Review”> “Start Processing”.