It looks like the hyperspectral data is stored as signed integers, instead of floating point values. Sometimes hyperspectral data are scaled by some constant factor (say, 10,000) so that it can be stored as integers to save space. In that case, the expression you show would result in an integer as well. Integer division is performed. The remainder is discarded. It looks like when you discard the remainder, all of your pixels end up with a value of 0 or less, and so answer Yes to the decision "is the value less than 0.3".
If this is the problem, then you can resolve it by changing your expression to be something like this:
float(b25)/float(b15) lt 0.3
- Peg
Exelis VIS
|