0

I have two sets of satellites images. One is a set of classical satellites images, and the other is a set of infrared satellites images. I am trying to detect the vegetation inside the yellow polygon and outside the red area using Normalized difference vegetation index (NDVI).

  1. Visible image

enter image description here

  1. Infrared image

enter image description here

According to the image documentation, a shift in the color spectrum was made on the Infrared images: infrared band occupies the red band, red band occupies the green band...

To calculate the NDVI image, I'm doing the following :

# Images are in BGR color space.    
ndvi = (img_irc[:,:,2].astype(int) - img_visible[:,:,2].astype(int))/(img_irc[:,:,2] + img_visible[:,:,2] + 0.001)

Then, I use an Otsu threshold to extract the following mask : enter image description here

To better see the effects, I add the semi-transparent mask of the impact of the detection on the satellite photo : enter image description here

The result is not too bad, but there are sometimes wrong detections, like here on the roofs. I suspect that my way of extracting the spectral reflectance measurements acquired in the red (visible) and near-infrared regions by selecting the red channels is not perfect. Are there better methods to do so?

chambeeee
  • 95
  • 9
  • 1
    untouched source data please. no overlays. no false color/matplotlib screenshots. – Christoph Rackwitz Sep 18 '21 at 18:47
  • As @ChristophRackwitz says, pure unadulterated images please, without axes, annotations or colour maps. Likewise please give all information you have about the wavelengths/filtration used in each. Thank youl – Mark Setchell Sep 18 '21 at 19:07
  • Sure, thanks. I've just modified my post. – chambeeee Sep 18 '21 at 20:00
  • 1
    okay... shadows are an issue, and the NIR channel seems faded out. the simple (NIR-red)/(NIR+red) formula doesn't cut it. something has to happen to these channels. a working example is needed... https://www.tandfonline.com/doi/full/10.1080/17538947.2018.1495770 – Christoph Rackwitz Sep 18 '21 at 21:02

1 Answers1

0

The NIR channel has apparently already been preprocessed, by the translation of the spectrum. You should get closer to the source to get the values directly from the IR spectrum values, rather than re-creating the images.