Re: Problem in calculating emmisivity for LST.
By shangoolabadi in ERDAS ECW JPEG2000 SDK
hi dear
i,m working on my project which is about : monitoring urban heat islands with landsat TM images.when i want to calculate emissivity from the equation given by Van de Griend and Owe (1993),i can,t done it perfectly.i examine it in many of softwares such as: ilwis,erdas imagine 2011,ArcGIS10.1 but i could not set all of the conditions:
if ndvi< -0.185 emissivity=0.995
if ndvi>= -0.185 and ndvi<0.157 emissivity=0.970
if ndvi>=0.157 and ndvi<=0.727 emissivity= 1.0098+0.047*ln(ndvi)
if ndvi>0.727 emissivity=0.990
in ArcGIS 10.1/spatial analyst/con i performed bu i could not done it
i would be so tankful if you help me to solve my problem.
----------------------------------
You were sent this email because you opted to receive email notifications when someone responded to this thread.
To unsubscribe:
By Donn Rodekohr in ERDAS ECW JPEG2000 SDK
This looks like a job for CONDITIONAL in Spatial Modeler. As noted in other discussions about the CONDITIONAL statement the most simple statements are most likely to succeed. So here is a model statement that MAY work logically but would have to be modified to be syntactically correct:
Input file: $n1_NDVI.img
Function statement:
CONDITIONAL {
($n1_NDVI < -1.0 ) -999.0, #This tests for potential NODATA value for background areas and produces a user defined nodata value
($n1_NDVI < -0.185) 0.995,
($n1_NDVI < 0.157) 0.970,
($n1_NDVI < 0.727) (1.0098 + (log($n1_NDVI)*0.047)),
($n1_NDVI >= 0.727) 0.990,
(default) -1.0} #This would be an error condition.
Output file: $n3_EMIS.img defined as a floating point continuous file, ignore 0 in stats, set -999.0 to NoData value
Key things to remember:
1. The output file MUST be floating point or all the values will be truncated to 0 or 1;
2. CONDITIONAL evaluates the statements until the first statement is true, then it produces the value on the right side of the statement;
3. If memory serves me correctly (and it has been known to fail) the LOG function in Spataial Modeler produces the natural log. Check the HELP for that function to be sure.
By shangoolabadi in ERDAS ECW JPEG2000 SDK
dear Donn Rodekohr
i,m so thankful for your response
i solve m problem with your syntax in erdas imagine
i want to calculate land surface temperature with this formula: LST = brightness temperature / 1 + (11.5 + brightness temperature /0.01438) * ln(emissivity)
i have brightness temperature(Tb) file and i calculate emissivity but i can,t calculate LST
i,ll be so thankful about your response and attention
the best regard
By Donn Rodekohr in ERDAS ECW JPEG2000 SDK
According to your formulae, the function statement would simply be the LST formula substituting file names for variables.
brightness temperature / 1 + (11.5 + brightness temperature /0.01438) * ln(emissivity)
bright.img / (1 + (11.5 + (bright.img/0.01438)) * LOG(emis.img)
As with any programming language you will have to work on the syntax and make sure the parenthesis enclose the right sets. You may have to build this formula incrementally, but that is your job.