Package: dea-tools
Python functions and algorithms developed to assist in analysing Digital Earth Australia (DEA) data (e.g. loading data, plotting, spatial analysis, machine learning). This includes the following modules:Loading datadea_tools.datahandling: Loading and handling DEA data (e.g. combining multiple products, handling CRSs, pansharpening)Plotting and transforming datadea_tools.plotting: Plotting DEA data (e.g. RGB plots, animations, interactive maps)dea_tools.bandindices.py: Calculating remote sensing band indices (e.g. NDVI, NDWI)Spatial and temporal analysisdea_tools.spatial: Spatial analysis tools (e.g. rasterising, vectorising, contour extraction, image processing)dea_tools.temporal: Temporal analysis tools (e.g. phenology, temporal statistics, multi-dimensional regression)Classification and segmentationdea_tools.classification.py: Machine learning classification (e.g. training and applying machine learning models on satellite data)dea_tools.segmentation.py: Image segmentation tools (e.g. applying image segmentation with RSGISLIB)Parallel processingdea_tools.dask: Parallel processing with Dask (e.g. creating Dask clusters for scalable analysis)Domain-specific analysisdea_tools.land_cover: Functions for plotting Digital Earth Australia Land Cover data.dea_tools.coastal: Coastal and intertidal analysis tools (e.g. tidal tagging, coastal change timeseries)dea_tools.bom: Loading Bureau of Meteorology water data service data (e.g. gauge data, discharge data)dea_tools.climate: Retrieving and manipulating gridded climate data (e.g. ERA5)dea_tools.waterbodies: Loading and processing DEA Waterbodies data (e.g. finding and loading waterbody timeseries data)InstallationWith condawget-Oconda-environment.ymlhttps://raw.githubusercontent.com/opendatacube/datacube-core/develop/conda-environment.ymlmambaenvcreate-fconda-environment.ymlcondaactivatecubeenvInstall dea-toolsYou can installdea-toolswithpipin a Python environment whereGDALandpyprojare already installed.pipinstalldea-toolsTo work with this module on the DEA Sandbox or National Computational Infrastructure environments without installing it, you can add theToolsdirectory to the system path from within thedea-notebooksrepository:importsyssys.path.insert(1,'../Tools/')importdea_tools.datahandling# or some other submoduleYou can alsopip installthe module directly from the localToolsdirectory. To do this on the DEA Sandbox, runpipfrom the terminal:pipinstall-eTools/Importing functions in PythonTo use functions fromdea-tools, import them using:fromdea_tools.datahandlingimportload_ardfromdea_tools.plottingimportrgbCiting DEA ToolsIf you use any of the notebooks, code or tools in this repository in your work, please reference them using the following citation:Krause, C., Dunn, B., Bishop-Taylor, R., Adams, C., Burton, C., Alger, M., Chua, S., Phillips, C., Newey, V., Kouzoubov, K., Leith, A., Ayers, D., Hicks, A., DEA Notebooks contributors 2021. Digital Earth Australia notebooks and tools repository. Geoscience Australia, Canberra.https://doi.org/10.26186/145234Building and ReleasingThis section is only relevant to you if you are a developer of this package.Building and releasing dea-tools requires that the package is built in-place. Either build with an editable pip installation or withpip>=21.2and--use-feature=in-tree-build. Building will generate a file,dea_tools/__version__.py, that is dynamic on release. It should not be committed.setup.pywill detect if__version__.pyexists and change its behaviour accordingly.Build instructions:cdToolsrmdea_tools/__version__.py# if necessarypipinstall.--use-feature=in-tree-buildpython-mbuild