<no title> — akhdefo 2023 documentation

akhdefo_functions.unzip(zipdir, dst_dir)

  This program unzips all the zip products into one folder

  zipdir: path to directory contains all the zipfiles

  dst_dir: path to destination folder to copy all unzipped products.

akhdefo_functions.copyImage_Data(path_to_unzipped_folders='', Path_to_raster_tifs='')

  This program copy all the raster images

akhdefo_functions.copyUDM2_Mask_Data(path_to_unzipped_folders='', Path_to_UDM2raster_tifs='')

  This program copy all raster masks

akhdefo_functions.Filter_PreProcess(unfiltered_folderPath='', UDM2_maskfolderPath='', outpath_dir='', Udm_Mask_Option=False)

  This program prepare and uses filters to balanace raster image brightness

  unfiltered_folderPath=r””

  UDM2_maskfolderPath=r””

  outpath_dir=r””

  Udm_Mask_Option=False if True the program uses planetlabs imagery unusable pixel mask to ignore and mask bad image pixels

akhdefo_functions.Crop_to_AOI(Path_to_WorkingDir='', Path_to_AOI_shapefile='', output_CroppedDir='')

  This program used to clip multiple raster files

  Path_to_WorkingDir: path to raster working directory

  Path_to_AOI_shapefile: path to Area of interest in shapefile format

  output_CroppedDir: path to save cropped raster files

akhdefo_functions.Mosaic(Path_to_WorkingDir='', output_MosaicDir='', img_mode=(0, 1))

  This program mosiacs raster images in geotif format as well grab dates the satellite image taken for further processing.

  The current version only supports Planet Labs SurfaceReflectance products.

  Path_to_WorkingDir=r””

  output_MosaicDir=r””

  img_mode=(0,1) if img_mode=0 the the programs mosaics only the raster images.

  if img_mode=1 the program mosiacs only mask rasters

akhdefo_functions.Coregistration(input_Folder='', output_folder='', grid_res=20, min_reliability=60, window_size=(64, 64), path_figures='', showFig=False, no_data=[0, 0], single_ref_path='')

  This program coregisteres multiple rasters using both structural similarity index and feature matching techniqws. This program is written based on arosics python library

  Inputs

  input_Folder: str Path to input raster folders

  grid_res: int

  min_reliability: int structural simialrity index threshold to differentaite deformation from raster shift (min=20, max=100)

  window_size: tuple

  window size for pixel search

  showFig: bool

  True to display results or False to not displat results

  no_data: list

  No data values to be ignored for both reference and target image

  single_ref_path: str

  provide path to raster if interested to coregister all rasters to a single reference, ignore this option the program uses subsequent rasters as refernce.

  Returns:

  output_folder: str

  returns coregistred and georeferenced raster in geotif format

  path_figures: str

  returns figure with plotted displaced pixels in raster coordinate system units

akhdefo_functions.DynamicChangeDetection(Path_working_Directory='', Path_UDM2_folder='', Path_to_DEMFile='', Coh_Thresh=0.75, vel_thresh=0.063, udm_mask_option=False, cmap='jet', Median_Filter=False, Set_fig_MinMax=False, show_figure=False, plot_option='origional')

  This program calculates optical flow velocity from triplets of daily optical satellite images.

  Path_working_Directory=r””

  Path_UDM2_folder=r””

  Path_to_DEMFile=r””

  Coh_Thresh=0.75

  vel_thresh=0.063

  udm_mask_option=False

  cmap=’jet’

  Median_Filter=False

  Set_fig_MinMax=False

  show_figure=False

  plot_option=”origional”

  Outputs: Raster velocity in X direction(EW) Raster Velocity in Y direction(NS) Initial Timesereis Figures (those figures are only intermediate products needs calibration)

  Note: Final Timeseris products will be a shapefile format using Time_Series function after stackprep step.

akhdefo_functions.plot_stackNetwork(src_folder='', output_folder='', cmap='tab20', date_plot_interval=(5, 30), marker_size=15)

  This Program plots temporal network of triplets to be stacked for calculating Annual Mean Velocity from stacked optical images.

  src_folder: path to georeferenced_folder

  output_folder: path to output folder to save output Figure plot

  cmap: colormap for the plot default is “tab20”

  date_plot_interval: minumum and maximum plot x axis interval dates for the plot

  marker_size: size of plotted points default is 15

akhdefo_functions.Time_Series(stacked_raster_EW='', stacked_raster_NS='', velocity_points='', dates_name='', output_folder='', outputFilename='', rasteriz_mean_products=True, std=1, VEL_Scale='year')

  This program uses candiate velocity points from stackprep function and performs linear interpolation in time-domain to calibrate stacked velocity. Additionally produces corrected timeseries velocity(daily) in a shapefile. Inputs:

  stacked_raster_EW:

  stacked_raster_NS:

  velocity_points: Velcity Candidate points

  dates_name:text file include name of each date in format YYYYMMDD

  output_folder:

  outputFilename

  Returns:

  Time-series shape file of velocity and direction EW, NS, and 2D(resultant Velocity and direction)

akhdefo_functions.akhdefo_ts_plot(path_to_shapefile='', dem_path='', point_size=1.0, opacity=0.75, cmap='turbo', Set_fig_MinMax=True, MinMaxRange=[-50, 50], color_field='VEL', user_data_points='', path_saveData_points='', save_plot=False, Fig_outputDir='', VEL_Scale='year')

  Inputs:

  This program used for analysis time-series velocity profiles

  user_data_points: provide path to csv. file contains x and y coordinate for points of interest you can generate this file by providing path to path_saveData_points (POI.csv).

  This is useful to save mouse click positions to repeat the plots for different datasets for example if you plot several TS profiles for EW velocity product, you can recreate TS for the same exact position by saving POI.csv with path_saveData_points and then use that as input for the another plot such as NS velocity product via setting user_datapoints=”POI.csv”

  path_to_shapefile: type path to timeseries shapefile in stack_data/TS folder

  dem_path=r”” path to dem raster in geotif fromat

  point_size=1.0 size of the sactter plot points

  opacity=0.75 transparency of the scater overlay

  cmap=”turbo” Matplotlib colormap options

  Set_fig_MinMax=True

  MinMaxRange=[-50,50] Normalize plot colormap range

  color_field=’VEL’ ,”VEL_2D”, ‘VEL_N’, ‘VEL_E’, ‘VELDir_MEA’

  user_data_points=””,

  path_saveData_points=””

  save_plot=False,

  Fig_outputDir=’’

  > VEL_Scale=’year’

  Outputs: Interactive figures

akhdefo_functions.Akhdefo_inversion(horizontal_InSAR='', Vertical_InSAR='', EW_Akhdefo='', NS_Akhdefo='', demFile='', output_folder='')

  This program calculates 3D displacement velocity (East-West,North-South and vertical) using combined optical and InSAR products

  Inputs:

  horizontal_InSAR: path to East Velocity InSAR product in geotif format

  Vertical_InSAR: path to Vertical Velocity InSAR product in geotif format

  EW_Akhdefo: path to east-west velocity akhdefo(optical) product in geotif format

  NS_Akhdefo: path to north-south velocity akhdefo(optical) product in geotif format

  demFile: path to DEM raster in geotif format

  output_folder: path to save raster products

  Returns:

  3D-Velocity (D3D in mm/year) raster Plunge raster in degrees Trend raster in degress

akhdefo_functions.utm_to_latlon(easting, northing, zone_number, zone_letter)

  This program converts geographic projection of shapefiles from UTM to LATLONG

  Inputs: easting: Geopandas column with Easting

  northing: Geopandas column with Northing

  zone_number: int

  zone_letter: “N” or “S”

  Returns: [lon , lat ]: List