Skip to main content

Unoccupied Aerial System (UAS) workshop

Provided by: SCINet

The focus of this workshop is to process Unoccupied Aerial System (UAS) image data using the open-source software Open Drone Map (ODM) on Atlas. The sessions will go through the entire process of image processing, from collecting UAS imagery and corresponding Ground Control Points (GCPs), to creating the GCP file needed for processing, to moving UAS images to Atlas and submitting a SLURM script using ODM in a container. There will also be discussion about improvements to the workflow and creating a working group.

There will be four sessions over Nov 7th and 9th. To register, please fill out this form.

Instructors:

  • Andrea Albright, SCINet Postdoctoral Fellow, ARS Southeast Watershed Research Laboratory
  • Aleksandra Badaczewska (Alex), Research Scientist IV, Iowa State University VRSC-GIF-ISU

Event flier

Workshop materials

Recordings and slides from the sessions are available:

Tutorial instructions

Steps to prepare for the tutorial:

  1. Login to Ceres Open OnDemand at https://ceres-ondemand-dev.scinet.usda.gov/. For more information on SCINet login procedures, see the SCINet access user guide.

  2. Launch a Jupyter session. Under the Interactive Apps menu, select Jupyter. Specify the following input values on the page:

    • Account Name: scinet_workshop1
    • Queue: medium—————- Max Time: 7-00:00:00
    • QOS: 400thread
    • Number of hours: 4
    • Number of cores: 2
    • Memory required: 6000M
    • Job name: Jupyter
    • Extra Optional Slurm Arguments: --reservation=scinet_workshop1
    • Jupyter Notebook vs Lab: Lab
    • Working Directory: $HOME

    Click Launch. The screen will update to the Interactive Sessions page. When your Jupyter session is ready, the top card will update from Queued to Running and a Connect to Jupyter button will appear. Click Connect to Jupyter.

  3. Open a terminal session within JupyterLab. Within JupyterLab, open the “File” menu, then “New” -> “Terminal”.

  4. Copy the from the workshop files to your temporary workshop folder. Copy/paste into the terminal.

     /project/scinet_workshop1/workshop_setup.sh
    
  5. Setup the Julia kernel for JupyterLab. Load Julia and install a Jupyter notebook kernel. Load the Julia module (version 1.7.0). Note: this is not the most recent version of Julia available on Ceres, but it’s the version needed for this demo.

     module load julia/1.7.0
     julia
    

This text output appears indicates the Julia REPL (read–eval–print loop):

$ julia

               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.7.0 (2021-11-30)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |


julia>
using Pkg
Pkg.add("IJulia")
using IJulia
installkernel("Julia")

Next, activate the kernel environment for the demo (this may take 10-20 minutes).

using Pkg
Pkg.activate("/project/scinet_workshop1/julia_geo")
Pkg.instantiate()

Now the kernel should be ready in the notebook: 01_Open_Drone_Map_Processing_v1.ipynb


    • Ground Control Point collection and image organization - Tuesday, November 7, 2023, 11:00AM-1:00PM ET
    • Make the GCP file for ODM - Tuesday, November 7, 2023, 2:00PM-4:30PM ET
    • Submit SLURM script on Atlas using ODM - Thursday, November 9, 2023, 11:00AM-1:00PM ET
    • Final discussion and future work - Thursday, November 9, 2023, 2:00PM-3:30PM ET