153ZODH / 12. cvičení: Porovnání verzí

Z GeoWikiCZ
Řádek 76: Řádek 76:
   echo "$LIST"
   echo "$LIST"
   r.series -n input=$LIST output=lst_200209${DAY}_avg method=average
   r.series -n input=$LIST output=lst_200209${DAY}_avg method=average
   d.rast.leg map=1st_200209${DAY}_avg
   d.rast.leg map=lst_200209${DAY}_avg
   d.vect map=us_natlas_urban type=boundary
  d.vect map=us_natlas_hydrogp type=boundary color=blue
   d.vect map=us_natlas_urban type=boundary color=brown
  d.vect map=us_natlas_urban display=attr attrcol=NAME type=centroid where="AREA >= 0.002" lsize=12
  sleep 1
  done
  done


Řádek 84: Řádek 87:
Podobně vytvoříme vrstvu průměrné LST za měsíc září 2002.
Podobně vytvoříme vrstvu průměrné LST za měsíc září 2002.


  LIST=`g.mlist type=rast pattern="1st_200209* sep=","`
  LIST=`g.mlist type=rast pattern="*lst_200209*" sep=","`
  echo "$LIST"
  echo "$LIST"
  r.series input=$LIST output=1st_200209_avg method=average
  r.series input=$LIST output=lst_200209_avg method=average
  r.colors map=1st_200209_avg color=gyr
  r.colors map=1st_200209_avg color=gyr
[[Image:ZOD-cv12-prumerna-teplota-mesic.png|frame|center|Obr č.4: Průměrná teplota povrchu září 2002]]


Určíme počet validních pixelů (not NULL) v časové řadě.
Určíme počet validních pixelů (not NULL) v časové řadě.
Řádek 96: Řádek 101:
  d.rast.leg map=1st_200209_avg_count
  d.rast.leg map=1st_200209_avg_count
  d.vect map=us_natlas_hydrogp type=boundary color=blue
  d.vect map=us_natlas_hydrogp type=boundary color=blue
  d.vect map=us_natlas_urban type=boundary
  d.vect map=us_natlas_urban type=boundary color=brown
  d.vect map=us_natlas_urban diplay=attr attrcol=NANE type=centroid where="AREA >= 0.002" lcolor=black lsize=12
  d.vect map=us_natlas_urban diplay=attr attrcol=NANE type=centroid where="AREA >= 0.002" lsize=12
 
[[Image:ZOD-cv12-prumerna-teplota-mesic-pocet.png|frame|center|Obr č.5: Počet validních pixelů (not NULL)]]


Na základě počtu validních pixelu nastavíme filtr.
Na základě počtu validních pixelu nastavíme filtr.
Řádek 107: Řádek 114:
  d.vect map=us_natlas_urban type=boundary
  d.vect map=us_natlas_urban type=boundary
  d.vect map=us_natlas_urban diplay=attr attrcol=NANE type=centroid where="AREA >= 0.002" lcolor=black lsize=12
  d.vect map=us_natlas_urban diplay=attr attrcol=NANE type=centroid where="AREA >= 0.002" lcolor=black lsize=12
[[Image:ZOD-cv12-prumerna-teplota-mesic-filtr.png|frame|center|Obr č.6: Průměrná teplota povrchu září 2002 (odfiltrovány místa s nízkým počtem validních pixelů]]


Zastavěné plochy přirozeně vykazují vyšší průměrnou teplotu v porovnání např. s vodními plochami.
Zastavěné plochy přirozeně vykazují vyšší průměrnou teplotu v porovnání např. s vodními plochami.

Verze z 5. 1. 2009, 21:15

< Stránky předmětuPředchozí cvičení

Multitemporální analýza

Osnova

Pokročilé analýzy jsou založeny na monitorování zemského povrchu a atmosféry v různých prostorových rozlišení a časových intervalech. Zaměříme se na analýzu časové řady dat MODIS (Moderate Resolution Imaging Spectroradiometer, satelit Terra a Aqua NASA).

Seznam příkazů

Multitemporální analýza

K dispozici jsou následující data:

  • Aqua (nosič, čas přeletu 1:30h)
  • Terra (10:30h)
  • Aqua (13:30h)
  • Terra (22:30h)

Nejprve přidáme mapset obsahující data MODIS do vyhledávací cesty.

g.mapsets add=modis2002lst
g.list rast mapset=modis2002lst

Data zobrazíme.

# noc, 22:30h, teplota ve stupních Celsia
g.region rast=terra_lst_night20020921
d.rast.leg map=terra_lst_night20020921
d.vect map=us_natlas_hydrogp type=boundary color=blue
d.vect map=us_natlas_urban type=boundary color=brown
d.vect map=us_natlas_urban display=attr attrcol=NAME type=centroid where="AREA >= 0.002" lsize=12
Obr. č.1: Teplota povrchu - 21.09.02, noc 22:30h, terra_lst_night20020921 (bílá místa představují odfiltrované mraky)
# den, 10:30h
d.rast.leg map=terra_lst_night20020922
d.vect map=us_natlas_hydrogp type=boundary color=blue
d.vect map=us_natlas_urban type=boundary color=brown
d.vect map=us_natlas_urban display=attr attrcol=NAME type=centroid where="AREA >= 0.002" lsize=12
Obr. č.2: Teplota povrhu - 22.09.02, noc 22:30h, terra_lst_night20020922

Rozdíl LST noc-den vypočteme pomocí r.mapcalc.

r.mapcalc "diff_den_noc = terra_lst_day20020922 - terra_lst_day20020921"
d.rast.leg map=diff_den_noc
d.vect map=us_natlas_hydrogp type=boundary color=blue
d.vect map=us_natlas_urban type=boundary color=brown
d.vect map=us_natlas_urban display=attr attrcol=NAME type=centroid where="AREA >= 0.002" lsize=12
Obr. č.3: Rozdíl teplot povrchu za 1 den

Závěr: Na rozdíl od zastavěných ploch se teplotně stabilní se jeví vodní plochy.

Indikátory časových řad

Data jsou již předzpracována, tj. byly odstraněny digitální hodnoty odpovídající mraků. Během výpočtu musíme s NULL hodnotami počítat, např. při určování průměrné teploty povrchu.

Vypočteme denní LST průměry v měsíci září 2002, pomocí modulu r.series.

for d in `seq 1 30` ; do
 DAY=`echo $d | awk '{printf "%02d\n", $1}'`
 LIST=`g.mlist type=rast pattern="*lst*200209${DAY}" separator=","`
 echo "$LIST"
 r.series -n input=$LIST output=lst_200209${DAY}_avg method=average
 d.rast.leg map=lst_200209${DAY}_avg
 d.vect map=us_natlas_hydrogp type=boundary color=blue
 d.vect map=us_natlas_urban type=boundary color=brown
 d.vect map=us_natlas_urban display=attr attrcol=NAME type=centroid where="AREA >= 0.002" lsize=12
 sleep 1
done

V důsledku NULL hodnot ve vstupních datech některé výstupní vrstvy obsahují částečně nebo zcela NULL hodnoty. Odstranění tohoto efektu by vyžadovalo komplexní rekonstrukci časové řady.

Podobně vytvoříme vrstvu průměrné LST za měsíc září 2002.

LIST=`g.mlist type=rast pattern="*lst_200209*" sep=","`
echo "$LIST"
r.series input=$LIST output=lst_200209_avg method=average
r.colors map=1st_200209_avg color=gyr
Soubor:ZOD-cv12-prumerna-teplota-mesic.png
Obr č.4: Průměrná teplota povrchu září 2002

Určíme počet validních pixelů (not NULL) v časové řadě.

r.series input=$LIST output=1st_200209_avg_count method=count
r.colors map=1st_200209_avg_count color=gyr
d.rast.leg map=1st_200209_avg_count
d.vect map=us_natlas_hydrogp type=boundary color=blue
d.vect map=us_natlas_urban type=boundary color=brown
d.vect map=us_natlas_urban diplay=attr attrcol=NANE type=centroid where="AREA >= 0.002" lsize=12
Soubor:ZOD-cv12-prumerna-teplota-mesic-pocet.png
Obr č.5: Počet validních pixelů (not NULL)

Na základě počtu validních pixelu nastavíme filtr.

r.mapcalc "1st_200209_avg_filt = if(1st_200209_avg_count > 5, 1st_200209_avg, null()"
d.rast.leg map=1st_200209_avg_filt
d.vect map=us_natlas_hydrogp type=boundary color=blue
d.vect map=us_natlas_urban type=boundary
d.vect map=us_natlas_urban diplay=attr attrcol=NANE type=centroid where="AREA >= 0.002" lcolor=black lsize=12
Soubor:ZOD-cv12-prumerna-teplota-mesic-filtr.png
Obr č.6: Průměrná teplota povrchu září 2002 (odfiltrovány místa s nízkým počtem validních pixelů

Zastavěné plochy přirozeně vykazují vyšší průměrnou teplotu v porovnání např. s vodními plochami.



< Stránky předmětuPředchozí cvičení