Tracking rehabilitation of mines cbd9c021ed824704b8715f3e9dc1acad


Land rehabilitation is an important aspect of responsible mining. For example, The Department of Mines, Industry Regulation and Safety (DMIRS) maintain a Mining Rehabilitation Fund (MRF) that Western Australian mining operators contribute to. The fund is used to rehabilitate abandoned and legacy mines, and is underpinned by the Mining Rehabilitation Fund Act 2012. As part of the fund, tenement holders report ground disturbance, which can help DMIRS monitor how a mine’s rehabilitation is going, as well as major disurbance events related to mining activity.

At the moment, most mining organisations only review disturbance annually, often contracting out the service to third party surveying and ecological consulting agencies. While these providers generally provide excellent information, there are two main issues:

  • Annual visits give a very coarse view of how the mine is changing in time.

  • There is no way to validate or sanity check consultants reports without a site visit.

Digital Earth Australia use case

Rehabilitation and land disturbance can be monitored through satellite data by tracking the amount of vegetation and bare ground on the site compared with surrounding areas. A decrease in bare ground and increase in vegetation can be linked to positive rehabilitation. A slow increase or sharp spike in the amount of bare ground over a mining site may indicate increased disturbance, which is against the trend expected during rehabilitation efforts. This tracking can be achieved using the Fractional Cover data product from the Joint Remote Sensing Research Program, which is provided through DEA.

Fractional Cover is derived from Landsat data, which has a revisit time of around two weeks for Australia, providing regular insight to a given mine’s rehabilitation. This would allow companies to identify any disturbance events early in the year and take corrective action before the yearly reporting. It would also allow DMIRS to keep detailed records of how the mines they monitor are changing in time.

Fractional Cover can also be used to validate the field reporting from surveying and ecological consultants before submitting reports. While reports from field surveys will provide more detail than most Earth Observation data products, such products provide the ability to provide context and validation of reports. For example, if the survey detects a disturbance, it may be hard to detect a reason. Fractional Cover can be used to identify the point in time, and possibly the cause of each disturbance event.


In this example, the DEA Fractional Cover product is used to assess how land cover (specifically bare soil, green vegetation and non-green vegetation) is changing over time.

The worked example below takes users through the code required to

  • Create a time series data cube over a mine site.

  • Create graphs to identify rehabilitation trends and disturbance events.

  • Interpret the results.

Getting started

To run this analysis, run all the cells in the notebook, starting with the “Load packages and apps” cell.

Load packages and apps

This notebook works via two functions, which are referred to as apps: load_miningrehab_data and run_miningrehab_app. The apps allow the majority of the analysis code to be stored in another file, making the notebook easy to use and run. To view the code behind the apps, open the file.

%matplotlib inline

import datacube

import sys
sys.path.insert(1, '../Tools/')
from import miningrehab

Load the data

The load_miningrehab_data() command performs several key steps:

  • Load DEA Fractional Cover (FC) and DEA Water Observations (WO) data for the study area.

  • Match the datasets to only retain data with the same time stamps.

  • Mask areas that are classified as water using WOs.

  • Resample the masked FC to get monthly average values.

  • Return the masked data for analysis.

The masked data is stored in the dataset_fc object. As the command runs, feedback will be provided below the cell.

Please be patient. The load is complete when the cell status goes from [*] to [number].

dataset_fc = miningrehab.load_miningrehab_data()
Loading DEA Fractional Cover
Loading DEA Water Observations

Run the mining app

The run_mining_app() command launches an interactive map. Drawing polygons within the boundary (which represents the area covered by the loaded data) will result in plots of the average bare, green and non-green cover in that area. Draw polygons by clicking the ⬟ symbol in the app.

The app works by taking the loaded data dataset_fc as an argument.

Note: When drawing polygons, draw one over the mine and one over the forest nearby, then the fractional cover values can be compared on the produced plot.

[ ]:

Drawing conclusions

Here are some questions to think about:

  • Rehabilitation can be indicated by either a decrease in bare cover, or an increase in either green or non-green cover. Can you find any evidence that rehabilitation is occurring?

  • What differences are there between polygons drawn over the mine site and those drawn over the forest? What similarities are there?

Additional information

License: The code in this notebook is licensed under the Apache License, Version 2.0. Digital Earth Australia data is licensed under the Creative Commons by Attribution 4.0 license.

Contact: If you need assistance, please post a question on the Open Data Cube Slack channel or on the GIS Stack Exchange using the open-data-cube tag (you can view previously asked questions here). If you would like to report an issue with this notebook, you can file one on GitHub.

Last modified: December 2023

Compatible datacube version:



Tags: sandbox compatible, NCI compatible, :index:``, fractional cover, water observations, real world, mining, time series, interactive, widgets, no_testing