Skip to content

Commit

Permalink
Merge pull request #381 from GeoscienceAustralia/feature/wo-wofs-table
Browse files Browse the repository at this point in the history
Water Observations tables
  • Loading branch information
benji-glitsos-ga authored Jan 19, 2025
2 parents d1dae67 + e4dc440 commit aafe0d2
Show file tree
Hide file tree
Showing 4 changed files with 281 additions and 12 deletions.
206 changes: 206 additions & 0 deletions docs/_components/water-observations-combination-decimals-table.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,206 @@
<div class="scroll-horizontally">
<table class="colour-coded-table water-observations-combination-decimals-theme">
<caption>Combination decimal values</caption>
<thead>
<tr>
<th></th>
<th></th>
<th class="classification">No Data</th>
<th class="classification">Contiguity</th>
<th class="classification">Low Solar Angle</th>
<th class="classification">Terrain Shadow</th>
<th class="classification">High Slope</th>
<th class="classification">Cloud Shadow</th>
<th class="classification">Cloud</th>
<th class="classification">High Slope + Cloud</th>
<th class="classification">Water</th>
<th class="classification">Cloud Shadow + Water</th>
<th class="classification">Cloud + Water</th>
</tr>
</thead>
<tbody>
<tr>
<td></td>
<td></td>
<td class="classification">1</td>
<td class="classification">2</td>
<td class="classification">4</td>
<td class="classification">8</td>
<td class="classification">16</td>
<td class="classification">32</td>
<td class="classification">64</td>
<td class="classification">80</td>
<td class="classification">128</td>
<td class="classification">160</td>
<td class="classification">192</td>
</tr>
<tr>
<td class="classification"><strong>No Data</strong></td>
<td class="classification">1</td>
<td class="impossible">2</td>
<td class="impossible">3</td>
<td class="impossible">5</td>
<td class="impossible">9</td>
<td class="impossible">17</td>
<td class="impossible">33</td>
<td class="impossible">65</td>
<td class="impossible">81</td>
<td class="impossible">129</td>
<td class="impossible">161</td>
<td class="impossible">193</td>
</tr>
<tr>
<td class="classification"><strong>Contiguity</strong></td>
<td class="classification">2</td>
<td class="impossible">3</td>
<td class="impossible">4</td>
<td class="impossible">6</td>
<td class="impossible">10</td>
<td class="impossible">18</td>
<td class="impossible">34</td>
<td class="impossible">66</td>
<td class="impossible">82</td>
<td class="impossible">130</td>
<td class="impossible">162</td>
<td class="impossible">194</td>
</tr>
<tr>
<td class="classification"><strong>Low Solar Angle</strong></td>
<td class="classification">4</td>
<td class="impossible">5</td>
<td class="impossible">6</td>
<td class="impossible">8</td>
<td>12</td>
<td>20</td>
<td>36</td>
<td>68</td>
<td>84</td>
<td>132</td>
<td>164</td>
<td>196</td>
</tr>
<tr>
<td class="classification"><strong>Terrain Shadow</strong></td>
<td class="classification">8</td>
<td class="impossible">9</td>
<td class="impossible">10</td>
<td>12</td>
<td class="impossible">16</td>
<td>24</td>
<td>40</td>
<td>72</td>
<td>88</td>
<td>136</td>
<td>168</td>
<td>200</td>
</tr>
<tr>
<td class="classification"><strong>High Slope</strong></td>
<td class="classification">16</td>
<td class="impossible">17</td>
<td class="impossible">18</td>
<td>20</td>
<td>24</td>
<td class="impossible">32</td>
<td>48</td>
<td>80</td>
<td class="impossible">96</td>
<td>144</td>
<td>176</td>
<td>208</td>
</tr>
<tr>
<td class="classification"><strong>Cloud Shadow</strong></td>
<td class="classification">32</td>
<td class="impossible">33</td>
<td class="impossible">34</td>
<td>36</td>
<td>40</td>
<td>48</td>
<td class="impossible">64</td>
<td>96</td>
<td>112</td>
<td>160</td>
<td class="impossible">192</td>
<td>224</td>
</tr>
<tr>
<td class="classification"><strong>Cloud</strong></td>
<td class="classification">64</td>
<td class="impossible">65</td>
<td class="impossible">66</td>
<td>68</td>
<td>72</td>
<td>80</td>
<td>96</td>
<td class="impossible">128</td>
<td class="impossible">144</td>
<td>192</td>
<td>224</td>
<td class="impossible">256</td>
</tr>
<tr>
<td class="classification"><strong>High Slope + Cloud</strong></td>
<td class="classification">80</td>
<td class="impossible">81</td>
<td class="impossible">82</td>
<td>84</td>
<td>88</td>
<td class="impossible">96</td>
<td>112</td>
<td class="impossible">144</td>
<td class="impossible">160</td>
<td>208</td>
<td>240</td>
<td class="impossible">272</td>
</tr>
<tr>
<td class="classification"><strong>Water</strong></td>
<td class="classification">128</td>
<td class="impossible">129</td>
<td class="impossible">130</td>
<td>132</td>
<td>136</td>
<td>144</td>
<td>160</td>
<td>192</td>
<td>208</td>
<td class="impossible">256</td>
<td class="impossible">288</td>
<td class="impossible">320</td>
</tr>
<tr>
<td class="classification"><strong>Cloud Shadow + Water</strong></td>
<td class="classification">160</td>
<td class="impossible">161</td>
<td class="impossible">162</td>
<td>164</td>
<td>168</td>
<td>176</td>
<td class="impossible">192</td>
<td>224</td>
<td>240</td>
<td class="impossible">288</td>
<td class="impossible">320</td>
<td class="impossible">352</td>
</tr>
<tr>
<td class="classification"><strong>Cloud + Water</strong></td>
<td class="classification">192</td>
<td class="impossible">193</td>
<td class="impossible">194</td>
<td>196</td>
<td>200</td>
<td>208</td>
<td>224</td>
<td class="impossible">256</td>
<td class="impossible">272</td>
<td class="impossible">320</td>
<td class="impossible">352</td>
<td class="impossible">384</td>
</tr>
</tbody>
</table>
</div>

<br />
17 changes: 17 additions & 0 deletions docs/_static/styles/components/_colour_coded_table.scss
Original file line number Diff line number Diff line change
Expand Up @@ -35,5 +35,22 @@ table.colour-coded-table {
}
}
}

&.water-observations-combination-decimals-theme {
th, td {
&.classification {
background-color: $blue-background-color;
}

&.impossible{
background-color: $grey-background-color;
color: var(--pst-color-text-muted, #48566b)
}
}

& th:first-of-type {
min-width: 200px;
}
}
}

1 change: 1 addition & 0 deletions docs/_static/styles/global/_theme.scss
Original file line number Diff line number Diff line change
Expand Up @@ -25,4 +25,5 @@ $yellow-background-color: #ffffc8;
$orange-background-color: #ffe9db;
$green-background-color: #ffe3e6;
$blue-background-color: #e1f1fd;
$grey-background-color: gainsboro;

69 changes: 57 additions & 12 deletions docs/data/product/dea-water-observations-landsat/_description.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,18 +34,63 @@ Version 1.6.0 was updated with changes to the way different factors impeding wat

Version 2.0.0 introduces the integration of Landsat 9, providing an increase in available observations from November 2021 onwards.

The table below describes the meaning of each bit set per pixel in each WOFL. Where multiple factors impeding a clear observation are detected all the respective bits will be set. For example a value of 136 indicates water (128) AND terrain shadow (8) were observed for the pixel.

| Bit | Flagging | Decimal Value | Description |
|-----|-----------------|---------------|--------------------------------------------------------------------------|
| 0 | no data | 1 | Pixel masked out due to NO_DATA in NBART source, 0 = valid data in NBART |
| 1 | contiguity | 2 | Pixel masked out due to lack of data contiguity |
| 2 | solar incidence | 4 | Pixel masked out due to solar incidence > 10 degrees |
| 3 | terrain shadow | 8 | Pixel masked out due to terrain shadow |
| 4 | high slope | 16 | Pixel masked out due to high slope |
| 5 | cloud shadow | 32 | Pixel masked out due to cloud shadow |
| 6 | cloud | 64 | Pixel masked out due to cloud |
| 7 | water | 128 | Water detected |
The table below describes the meaning of each bit set per pixel in each WOFL.

:::{list-table} Classification bit sets
:header-rows: 1

* - Classification
- Bit
- Decimal
- Description

* - **No Data**
- 0
- 1
- Missing or invalid data. Pixel masked out due to NO_DATA in NBART source, 0 = valid data in NBART.

* - **Contiguity**
- 1
- 2
- Some data is missing in the original image (usually missing bands). Pixel masked out due to lack of data contiguity.

* - **Low Solar Angle**
- 2
- 4
- Also known as Solar Incidence. The angle of the sun can cast a large shadow which can be misclassified as water. Pixel masked out due to solar incidence of less than 10 degrees.

* - **Terrain Shadow**
- 3
- 8
- Topographic features can cast shadows which can be misclassified as water. Pixel masked out due to terrain shadow.

* - **High Slope**
- 4
- 16
- A highly sloped terrain is less likely to contain water, so therefore, a detection of water on this surface is often incorrect. Pixel masked out due to high slope.

* - **Cloud Shadow**
- 5
- 32
- Shadows are likely to be misclassified as water. Pixel masked out due to cloud shadow.

* - **Cloud**
- 6
- 64
- Cloud is affecting the output data. Pixel masked out due to cloud.

* - **Water**
- 7
- 128
- This pixel is classified as water.
:::

Where multiple factors impeding a clear observation are detected, a combination of the decimal values will be set by adding the relevant decimal values together. These combinations include 'High Slope + Cloud' (64 + 16 = 80), 'Cloud Shadow + Water' (128 + 32 = 160), and 'Cloud + Water' (128 + 64 = 192). Any number of these values can be combined, for example 'High Slope + Cloud' + 'Cloud Shadow + Water' (which is 240).

The following table shows these combinations of decimal values. Some values cannot occur, for any of several reasons, and these values are greyed-out in the table.

:::{include} ../../../_components/water-observations-combination-decimals-table.md
:::

Full details of the original algorithms and features of DEA Water Observations can be found in the Water Observations from Space paper by Mueller et al. (2015).

Expand Down

0 comments on commit aafe0d2

Please sign in to comment.