I'm trying to calculate Index‐Based Built‐up Index (IBI). This index has been mentioned in A new index for delineating built‐up land features in satellite imagery. As mentioned in the paper, the range of IBI is from -1 to 1 (page 4271 of the paper).
But in my case, the range is from -195.371 to 473.1621.
The formula for IBI is,
For IBI value 473.1621, the inputs values are NDBI = 0.185422, SAVI = 0.074422, MNDWI = -0.4437.
In my understanding, we have to add SAVI and MNDWI first then divide the result by 2. Then use that result with the respective sign in the numerator and the denominator with NDBI.
The syntax I'm using in Google Earth Engine for this is,
var ibi = ndbi.subtract((savi.add(mndwi)).divide(2)).divide(ndbi.add((savi.add(mndwi)).divide(2))).rename('ibi');
Is it wrong? I am not able to understand what is the problem here.
