I have studied papers related to Soil Salinity indices that include equations such as this paper here.

What I try for many days to find out, is how the increase or decrease in a Salinity Index is mapped in the pixel values of an UAV image that was calculated/made by the implementation of the specific Salinity index. How can I find this? (Using QGIS, or some other method...)

To be more precise, I take a UAV images, I produce an Salinity Index UAV image by putting the different RGB channels of the UAV image in the equation and I take as a result a UAV image that depicts colors based on salinity index. I put it into the QGIS and I get a range from 0 to some X value.

The following equations were used to calculate the salinity index:

SI3 = ((Red * 2) + (Green * 2)) * 0.5

SI1 = (Green * Red) * 0.5

SI = (Blue + Red) * 0.5

What I want to know is: does the 0 value of the pixel image relates to 0 value of the salinity index or the opposite?

Update: Here it says that in soil intensity values there is high reflectance. This reflectance in the image means darker or whiter color? (The salinity indices' images are dark to white or white to dark there are no RGB colors).

  • 4
    Please add the equation you used to calulate the salinity index to your question.
    – Matt
    Commented Feb 28, 2022 at 15:40
  • I have used many, some of them: SI3 = ((Red * 2)+(Green * 2))*0.5 , SI1=(Green * Red) * 0.5, SI = (Blue + Red) * 0.5, where * stands for multiplication.
    – Steven
    Commented Feb 28, 2022 at 15:46
  • 5
    The pixel values directly correspond to the values calculated by the index. Whether they are correct, or what you expect is another matter. The colour is abitrary and depends on the symbology of the layer in QGIS. Black-white can easily be switched to white-black, or a colour ramp. That depends on your settings.
    – Matt
    Commented Mar 2, 2022 at 14:43
  • 1
    Great question! It sounds like there is a method-data mismatch. The first paper provides the salinity index formula for Landsat data distinguished wavelength bands. Depending on the UAV camera and the processing, you will get RGB output with is visible light only and mismatches from the wavelength values of the Landsat satellite, but this depends on your UAV data. The index should be 0-1 with one having high salinity. How you colour this depends on your taste. ;)
    – Philipp R
    Commented Mar 3, 2022 at 0:08
  • 1
    If you have ground-surveyed data, you could use pixel-level classification (ie land cover classification) on the UAV image (RGB?) by defining training samples with high salinity. Maybe you can also get training samples from the coarser Landsat image. Do you know the soilgrids data?
    – Philipp R
    Commented Mar 3, 2022 at 0:13

1 Answer 1


Review the formulas

Reading the pdf articles you probably used, it seems the formula you used are not correct:

enter image description here enter image description here

For example, you wrote that one of the indexes you used was:

SI1 = (Green * Red) * 0.5

If both Green and Red range between 0 and 1, the maximum value of this formula is:

SI1,max = (1 * 1) * 0.5 = 0.5

While if you apply the proposed "Salinity Index 2"

SI2 = sqrt(Green * Red) or equivalently: SI2 = (Green * Red)**0.5

SI2,max = sqrt(1 * 1) = 1

similarly, I think that you derived your SI3 formula

SI3 = ((Red * 2) + (Green * 2)) * 0.5

from the "Salinity Index 3" discarding the NIR band which your images don't have (or from "Salinity Index 4"?) thus it should read:

SI3,correct = (Red**2 + Green**2)**0.5 or, equivalently: SI3,correct = sqrt(Red**2 + Green**2)

(please note the ** notation to express exponentiation instead of the simple * in your formulas)

Also in this case, the output range will be 0..1, and to represent the salinity index you can assign a linear color scale, for example:

0 -> black
1 -> white

In this case, the highest salinity will be pure white, no salinity at all will be black, and every value in between will be in (254 ;) ) shades of gray.

  • Thank for your answer and your time! Do the salinity indices in general get affected by vegetation. For instance If I have 30% soil and 70% vegetation seen on the UAV image, does this situation affect the Salinity Index? If, yes, what do I do?
    – Steven
    Commented Mar 8, 2022 at 15:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.