[GRASS-user] calibration of the Landsat thermal data

Dear Grass users,

does anybody have experience with the calibration of the Landsat thermal data ? I have a few ground measurements of temperature (air temperature in 2 m above surface) and want to relate them to a corresponding Landsat image (band 6). In the papers which I read there are listed a lot of working steps like calibration for at sensor radiance, surface radiance, etc. Is it necessary to do all those steps or does anybody know a more simple algorithm ?

Best regards

Niels

--

-----------------------------------------------------
Dr. Niels Thevs
Chair of Geobotany and Landscape Ecology
Institute of Botany and Landscape Ecology
Greifswald University
Grimmer Strasse 88
17487 Greifswald
Germany

Tel.: +49-3834-86-4137
Fax: +49-3834-86-4114

-----------------------------------------------------

Hi Niels,

in grass-Addons/gipe/ there are a couple of functions to get L1b
Landsat 5/7 into radiant temperature at top of atmosphere.

i.dn2full.l5
i.dn2full.l7

this corrects standard images having .met standard metadata file or
NLAPS metadata (.txt) file.

You may try and see if you get to some useful ends.

You may also see some fast method to get surface temperature from this
product by using emissivity. As it was used for AVHRR 15 years ago.

in Grass-Addons, i.landsat.toar may also help you out, but it is a
long time I have had a look at it.

Cheers,
Yann

2008/9/25 Niels Thevs <thevs@uni-greifswald.de>:

Dear Grass users,

does anybody have experience with the calibration of the Landsat thermal
data ? I have a few ground measurements of temperature (air temperature in 2
m above surface) and want to relate them to a corresponding Landsat image
(band 6). In the papers which I read there are listed a lot of working steps
like calibration for at sensor radiance, surface radiance, etc. Is it
necessary to do all those steps or does anybody know a more simple algorithm
?

Best regards

Niels

--

-----------------------------------------------------
Dr. Niels Thevs
Chair of Geobotany and Landscape Ecology
Institute of Botany and Landscape Ecology
Greifswald University
Grimmer Strasse 88
17487 Greifswald
Germany

Tel.: +49-3834-86-4137
Fax: +49-3834-86-4114

-----------------------------------------------------

_______________________________________________
grass-user mailing list
grass-user@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-user

--
Yann Chemin
International Rice Research Institute
Office: http://www.irri.org/gis
Perso: http://www.freewebs.com/ychemin
YiKingDo: http://yikingdo.unblog.fr/

Dear Yann Chemin,

have many thanks for your reply regarding i.dn2full.l5/17:

The background of my question was that we want to calculate evapotranspiration from desert and semi desert areas. According to your and other users' experience, which add on performs better: i.evapo.potrad, i.evapo.senay, or i.eb.evapfr ?

Regarding the required input parameter for i.evapo.potrad and i.evapo.senay, can I use r.albedo and where do I find it ? Can I derive the surface skin temperature through i.dn2full.l5/17 ? I was wundering because in the description for i.dn2full.l5/17 there was written that DN is calculated into radiance at top of the athmosphere. Furthermore, what is the single way transmissivity ?

Best regards

Niels

Yann Chemin schrieb:

Hi Niels,

in grass-Addons/gipe/ there are a couple of functions to get L1b
Landsat 5/7 into radiant temperature at top of atmosphere.

i.dn2full.l5
i.dn2full.l7

this corrects standard images having .met standard metadata file or
NLAPS metadata (.txt) file.

You may try and see if you get to some useful ends.

You may also see some fast method to get surface temperature from this
product by using emissivity. As it was used for AVHRR 15 years ago.

in Grass-Addons, i.landsat.toar may also help you out, but it is a
long time I have had a look at it.

Cheers,
Yann

2008/9/25 Niels Thevs <thevs@uni-greifswald.de>:

Dear Grass users,

does anybody have experience with the calibration of the Landsat thermal
data ? I have a few ground measurements of temperature (air temperature in 2
m above surface) and want to relate them to a corresponding Landsat image
(band 6). In the papers which I read there are listed a lot of working steps
like calibration for at sensor radiance, surface radiance, etc. Is it
necessary to do all those steps or does anybody know a more simple algorithm
?

Best regards

Niels

--

-----------------------------------------------------
Dr. Niels Thevs
Chair of Geobotany and Landscape Ecology
Institute of Botany and Landscape Ecology
Greifswald University
Grimmer Strasse 88
17487 Greifswald
Germany

Tel.: +49-3834-86-4137
Fax: +49-3834-86-4114

-----------------------------------------------------

_______________________________________________
grass-user mailing list
grass-user@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-user

--

-----------------------------------------------------
Dr. Niels Thevs
Chair of Geobotany and Landscape Ecology
Institute of Botany and Landscape Ecology
Greifswald University
Grimmer Strasse 88
17487 Greifswald
Germany

Tel.: +49-3834-86-4137
Fax: +49-3834-86-4114

-----------------------------------------------------

Dear Niels,

r.albedo is now i.albedo, few days back it has been moved from
AddonsSVN to mainSVN of GRASS.

I.evapo.potrad is the potential evapotranspiration from incoming sun
radiation, meaning non-water stressed ET. It would be useless in areas
where there is any water stress like a desert.

i.evapo.SENAY refers to a simple water stress estimation based on
temperature from satellite. This has proven useful by Senay (2007)
while mapping the whole of Afghanistan at once. We found limitations
when dealing with small areas.

i.eb.evapfr is certainly going to push you further into water stress
sensitivity anaylsis, but for that you'll need to use many GIPE
modules, this is why there is a script_generator/ in GIPE directory,
it will automatize the set up of all of the modules function into an
easy script to perform several evapotranspiration mapping under
various water stress estimation systems (various models are in GIPE:
i.eb.h_SEBAL95/01, i.eb.h_iter, etc...). However, the script generator
is not updated to the latest changes I had to make to integrate those
GIPE modules into the main GRASS SVN. So you'll need to run the script
generator, and then run the lines one by one to check the changes
according to your set up. Once the GIPE modules are integrated into
main GRASS, I'll update the script_generator.

i.dn2full.l5/7 generates top of atmosphere radiative temperature. You
will still need to pull out a correction to get the radiative
temperature corrected to skin surface temperature. In very clear and
dry conditions, there should be very less correction to make.

Transmissivity of the atmosphere is an efficiency factor [0-1] that
expresses the loss of radiation from 100% arriving at top of
atmosphere. Single-way transmissivity, is a one-way ticket either from
top of atmosphere to the skin surface of the Earth or from the skin
surface of the Earth to the Top of Atmosphere. Try 0.7 for a start if
you do not have cloudiness indices or Angstrom equation
parameterization locally.

Cheers,
Yann

2008/9/29 Niels Thevs <thevs@uni-greifswald.de>:

Dear Yann Chemin,

have many thanks for your reply regarding i.dn2full.l5/17:

The background of my question was that we want to calculate
evapotranspiration from desert and semi desert areas. According to your and
other users' experience, which add on performs better: i.evapo.potrad,
i.evapo.senay, or i.eb.evapfr ?

Regarding the required input parameter for i.evapo.potrad and i.evapo.senay,
can I use r.albedo and where do I find it ? Can I derive the surface skin
temperature through i.dn2full.l5/17 ? I was wundering because in the
description for i.dn2full.l5/17 there was written that DN is calculated into
radiance at top of the athmosphere. Furthermore, what is the single way
transmissivity ?

Best regards

Niels

Yann Chemin schrieb:

Hi Niels,

in grass-Addons/gipe/ there are a couple of functions to get L1b
Landsat 5/7 into radiant temperature at top of atmosphere.

i.dn2full.l5
i.dn2full.l7

this corrects standard images having .met standard metadata file or
NLAPS metadata (.txt) file.

You may try and see if you get to some useful ends.

You may also see some fast method to get surface temperature from this
product by using emissivity. As it was used for AVHRR 15 years ago.

in Grass-Addons, i.landsat.toar may also help you out, but it is a
long time I have had a look at it.

Cheers,
Yann

2008/9/25 Niels Thevs <thevs@uni-greifswald.de>:

Dear Grass users,

does anybody have experience with the calibration of the Landsat thermal
data ? I have a few ground measurements of temperature (air temperature
in 2
m above surface) and want to relate them to a corresponding Landsat image
(band 6). In the papers which I read there are listed a lot of working
steps
like calibration for at sensor radiance, surface radiance, etc. Is it
necessary to do all those steps or does anybody know a more simple
algorithm
?

Best regards

Niels

--

-----------------------------------------------------
Dr. Niels Thevs
Chair of Geobotany and Landscape Ecology
Institute of Botany and Landscape Ecology
Greifswald University
Grimmer Strasse 88
17487 Greifswald
Germany

Tel.: +49-3834-86-4137
Fax: +49-3834-86-4114

-----------------------------------------------------

_______________________________________________
grass-user mailing list
grass-user@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-user

--

-----------------------------------------------------
Dr. Niels Thevs
Chair of Geobotany and Landscape Ecology
Institute of Botany and Landscape Ecology
Greifswald University
Grimmer Strasse 88
17487 Greifswald
Germany

Tel.: +49-3834-86-4137
Fax: +49-3834-86-4114

-----------------------------------------------------

--
Yann Chemin
International Rice Research Institute
Office: http://www.irri.org/gis
Perso: http://www.freewebs.com/ychemin
YiKingDo: http://yikingdo.unblog.fr/

Dear Yann chemin,

have many thanks for your detailed reply.

Currently, I have GRASS 6.2 in an Debian Environment. When I update to the version which includes i.albedo, which one should I choose, experimental stable or experimental unstable ?

Best regards

Niels

Yann Chemin schrieb:

Dear Niels,

r.albedo is now i.albedo, few days back it has been moved from
AddonsSVN to mainSVN of GRASS.

I.evapo.potrad is the potential evapotranspiration from incoming sun
radiation, meaning non-water stressed ET. It would be useless in areas
where there is any water stress like a desert.

i.evapo.SENAY refers to a simple water stress estimation based on
temperature from satellite. This has proven useful by Senay (2007)
while mapping the whole of Afghanistan at once. We found limitations
when dealing with small areas.

i.eb.evapfr is certainly going to push you further into water stress
sensitivity anaylsis, but for that you'll need to use many GIPE
modules, this is why there is a script_generator/ in GIPE directory,
it will automatize the set up of all of the modules function into an
easy script to perform several evapotranspiration mapping under
various water stress estimation systems (various models are in GIPE:
i.eb.h_SEBAL95/01, i.eb.h_iter, etc...). However, the script generator
is not updated to the latest changes I had to make to integrate those
GIPE modules into the main GRASS SVN. So you'll need to run the script
generator, and then run the lines one by one to check the changes
according to your set up. Once the GIPE modules are integrated into
main GRASS, I'll update the script_generator.

i.dn2full.l5/7 generates top of atmosphere radiative temperature. You
will still need to pull out a correction to get the radiative
temperature corrected to skin surface temperature. In very clear and
dry conditions, there should be very less correction to make.

Transmissivity of the atmosphere is an efficiency factor [0-1] that
expresses the loss of radiation from 100% arriving at top of
atmosphere. Single-way transmissivity, is a one-way ticket either from
top of atmosphere to the skin surface of the Earth or from the skin
surface of the Earth to the Top of Atmosphere. Try 0.7 for a start if
you do not have cloudiness indices or Angstrom equation
parameterization locally.

Cheers,
Yann

2008/9/29 Niels Thevs <thevs@uni-greifswald.de>:

Dear Yann Chemin,

have many thanks for your reply regarding i.dn2full.l5/17:

The background of my question was that we want to calculate
evapotranspiration from desert and semi desert areas. According to your and
other users' experience, which add on performs better: i.evapo.potrad,
i.evapo.senay, or i.eb.evapfr ?

Regarding the required input parameter for i.evapo.potrad and i.evapo.senay,
can I use r.albedo and where do I find it ? Can I derive the surface skin
temperature through i.dn2full.l5/17 ? I was wundering because in the
description for i.dn2full.l5/17 there was written that DN is calculated into
radiance at top of the athmosphere. Furthermore, what is the single way
transmissivity ?

Best regards

Niels

Yann Chemin schrieb:

Hi Niels,

in grass-Addons/gipe/ there are a couple of functions to get L1b
Landsat 5/7 into radiant temperature at top of atmosphere.

i.dn2full.l5
i.dn2full.l7

this corrects standard images having .met standard metadata file or
NLAPS metadata (.txt) file.

You may try and see if you get to some useful ends.

You may also see some fast method to get surface temperature from this
product by using emissivity. As it was used for AVHRR 15 years ago.

in Grass-Addons, i.landsat.toar may also help you out, but it is a
long time I have had a look at it.

Cheers,
Yann

2008/9/25 Niels Thevs <thevs@uni-greifswald.de>:

Dear Grass users,

does anybody have experience with the calibration of the Landsat thermal
data ? I have a few ground measurements of temperature (air temperature
in 2
m above surface) and want to relate them to a corresponding Landsat image
(band 6). In the papers which I read there are listed a lot of working
steps
like calibration for at sensor radiance, surface radiance, etc. Is it
necessary to do all those steps or does anybody know a more simple
algorithm
?

Best regards

Niels

--

-----------------------------------------------------
Dr. Niels Thevs
Chair of Geobotany and Landscape Ecology
Institute of Botany and Landscape Ecology
Greifswald University
Grimmer Strasse 88
17487 Greifswald
Germany

Tel.: +49-3834-86-4137
Fax: +49-3834-86-4114

-----------------------------------------------------

_______________________________________________
grass-user mailing list
grass-user@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-user

--

-----------------------------------------------------
Dr. Niels Thevs
Chair of Geobotany and Landscape Ecology
Institute of Botany and Landscape Ecology
Greifswald University
Grimmer Strasse 88
17487 Greifswald
Germany

Tel.: +49-3834-86-4137
Fax: +49-3834-86-4114

-----------------------------------------------------

--

-----------------------------------------------------
Dr. Niels Thevs
Chair of Geobotany and Landscape Ecology
Institute of Botany and Landscape Ecology
Greifswald University
Grimmer Strasse 88
17487 Greifswald
Germany

Tel.: +49-3834-86-4137
Fax: +49-3834-86-4114

-----------------------------------------------------

Dear Niels,

Debian is a bit far away in the GRASS versioning.
Additionally, i.albedo is included only in the version 7,
which is a development version available on svn.

You could do this if you feel up to it:

Step 1: get grass gis svn version
----------------------------------------
cd /home/niels (assuming this is your user place)
mkdir dev
cd dev
svn checkout https://svn.osgeo.org/grass/grass/trunk grass_trunk
cd grass_trunk
there, copy the attached c7.sh file.

Step 2: Get Debian up it the requirements
-------------------------------------------------
run the script install_grass_debian.txt
by typing "sh install_grass_debian.txt"
where you saved it in your computer

Step 3: Compile GRASS
----------------------------
cd /home/niels/dev/grass_trunk
sh c7.sh
make
make install (this requires you to have root access)

Step 4: Run grass experimental version
-----------------------------------------------
type "grass70"

any help on that please dont hesitate.

many good wishes and good luck,
Yann

2008/10/2 Niels Thevs <thevs@uni-greifswald.de>:

Dear Yann chemin,

have many thanks for your detailed reply.

Currently, I have GRASS 6.2 in an Debian Environment. When I update to the
version which includes i.albedo, which one should I choose, experimental
stable or experimental unstable ?

Best regards

Niels

Yann Chemin schrieb:

Dear Niels,

r.albedo is now i.albedo, few days back it has been moved from
AddonsSVN to mainSVN of GRASS.

I.evapo.potrad is the potential evapotranspiration from incoming sun
radiation, meaning non-water stressed ET. It would be useless in areas
where there is any water stress like a desert.

i.evapo.SENAY refers to a simple water stress estimation based on
temperature from satellite. This has proven useful by Senay (2007)
while mapping the whole of Afghanistan at once. We found limitations
when dealing with small areas.

i.eb.evapfr is certainly going to push you further into water stress
sensitivity anaylsis, but for that you'll need to use many GIPE
modules, this is why there is a script_generator/ in GIPE directory,
it will automatize the set up of all of the modules function into an
easy script to perform several evapotranspiration mapping under
various water stress estimation systems (various models are in GIPE:
i.eb.h_SEBAL95/01, i.eb.h_iter, etc...). However, the script generator
is not updated to the latest changes I had to make to integrate those
GIPE modules into the main GRASS SVN. So you'll need to run the script
generator, and then run the lines one by one to check the changes
according to your set up. Once the GIPE modules are integrated into
main GRASS, I'll update the script_generator.

i.dn2full.l5/7 generates top of atmosphere radiative temperature. You
will still need to pull out a correction to get the radiative
temperature corrected to skin surface temperature. In very clear and
dry conditions, there should be very less correction to make.

Transmissivity of the atmosphere is an efficiency factor [0-1] that
expresses the loss of radiation from 100% arriving at top of
atmosphere. Single-way transmissivity, is a one-way ticket either from
top of atmosphere to the skin surface of the Earth or from the skin
surface of the Earth to the Top of Atmosphere. Try 0.7 for a start if
you do not have cloudiness indices or Angstrom equation
parameterization locally.

Cheers,
Yann

2008/9/29 Niels Thevs <thevs@uni-greifswald.de>:

Dear Yann Chemin,

have many thanks for your reply regarding i.dn2full.l5/17:

The background of my question was that we want to calculate
evapotranspiration from desert and semi desert areas. According to your
and
other users' experience, which add on performs better: i.evapo.potrad,
i.evapo.senay, or i.eb.evapfr ?

Regarding the required input parameter for i.evapo.potrad and
i.evapo.senay,
can I use r.albedo and where do I find it ? Can I derive the surface skin
temperature through i.dn2full.l5/17 ? I was wundering because in the
description for i.dn2full.l5/17 there was written that DN is calculated
into
radiance at top of the athmosphere. Furthermore, what is the single way
transmissivity ?

Best regards

Niels

Yann Chemin schrieb:

Hi Niels,

in grass-Addons/gipe/ there are a couple of functions to get L1b
Landsat 5/7 into radiant temperature at top of atmosphere.

i.dn2full.l5
i.dn2full.l7

this corrects standard images having .met standard metadata file or
NLAPS metadata (.txt) file.

You may try and see if you get to some useful ends.

You may also see some fast method to get surface temperature from this
product by using emissivity. As it was used for AVHRR 15 years ago.

in Grass-Addons, i.landsat.toar may also help you out, but it is a
long time I have had a look at it.

Cheers,
Yann

2008/9/25 Niels Thevs <thevs@uni-greifswald.de>:

Dear Grass users,

does anybody have experience with the calibration of the Landsat
thermal
data ? I have a few ground measurements of temperature (air temperature
in 2
m above surface) and want to relate them to a corresponding Landsat
image
(band 6). In the papers which I read there are listed a lot of working
steps
like calibration for at sensor radiance, surface radiance, etc. Is it
necessary to do all those steps or does anybody know a more simple
algorithm
?

Best regards

Niels

--

-----------------------------------------------------
Dr. Niels Thevs
Chair of Geobotany and Landscape Ecology
Institute of Botany and Landscape Ecology
Greifswald University
Grimmer Strasse 88
17487 Greifswald
Germany

Tel.: +49-3834-86-4137
Fax: +49-3834-86-4114

-----------------------------------------------------

_______________________________________________
grass-user mailing list
grass-user@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-user

--

-----------------------------------------------------
Dr. Niels Thevs
Chair of Geobotany and Landscape Ecology
Institute of Botany and Landscape Ecology
Greifswald University
Grimmer Strasse 88
17487 Greifswald
Germany

Tel.: +49-3834-86-4137
Fax: +49-3834-86-4114

-----------------------------------------------------

--

-----------------------------------------------------
Dr. Niels Thevs
Chair of Geobotany and Landscape Ecology
Institute of Botany and Landscape Ecology
Greifswald University
Grimmer Strasse 88
17487 Greifswald
Germany

Tel.: +49-3834-86-4137
Fax: +49-3834-86-4114

-----------------------------------------------------

--
Yann Chemin
International Rice Research Institute
Office: http://www.irri.org/gis
Perso: http://www.freewebs.com/ychemin
YiKingDo: http://yikingdo.unblog.fr/

(attachments)

c7.sh (1.24 KB)
install_grass_debian.txt (1.3 KB)