I need to extract land cover information (vegetation, water bodies, etc.) using Landsat 8 scenes. I have to extract the information on a country scale which means that I have about 15 scenes (different Rows and Paths and different days of the year --> 2015). I am using the Semi-Automatic Classification plugin in QGIS in order to download and pre-process the scenes (conversion from DN to TOA and DOS1 correction). What I thought I should do is pre-process the scenes separately and then merge the scenes for the different bands (i.e. in the end I will end up with one band 1 where I have merged all pre-processed bands 1 of the separate scenes, then one band 2 with all pre-processed bands 2 of the separate scenes, etc....). The image below shows an example of what happens when I merge the first 3 pre-processed scenes of band 2:

enter image description here
enter image description here

You can see clearly the boundaries between the three scenes, but what I find troubling is that when I check the raster values of the same object at the interface between two scenes, the raster values differ significantly. My questions are:

  1. Is it even correct to patch Landsat images in the way I am doing it (since the scenes are from different days of the year). If this is not correct is there a way in which I can accomplish what I am trying to do?
  2. Is it possible to end up with smoother patched up image of the different scenes?
  3. Why are the raster values belonging to the same object in two different scenes so significantly different? Is it due to the fact that images are taken in different days?

From my experience with radar remote sensing (interferometry for ground motion detection, specially) I would guess that it is not possible to stitch together scenes taken at different dates and then process them together, because athmospheric influences on the signal are very different on different days. What I'd to is process each scene separately until I had the product I wanted (in your case landuse classifications) for each scene, and then (possibly) merge those results. The merge step will then result in a dataset with different capture dates, which will have a certain temporal uncertanity (e.g. one scene may be taken after a big rainfall and thus some areas may classify as "totally wet swamps", where an equal area on a different scene taken after a dry period may be classified as "not wet at all").

  • Why did you provide two answers instead of one? – Kersten Feb 1 '16 at 11:34
  • Because my answers answer different parts of the questions. I can merge them if you like. – til_b Feb 1 '16 at 12:38

This will be pretty tough to do. DOS1 is not the most rigorous atmospheric correction, so you will not get comparable reflectance between scenes (look into DOS3, FLAASH, ACORN, ATCOR, or 6S for other options).

If they are from different times during the year you would expect different reflectance. However if you just want water and vegetation.

If you calculate NDVI, or another index (individually on each image), this should be comparable between images and dates because the index normalises your results.


Is it possible to end up with smoother patched up image of the different scenes?

I don't think this will help you or be correct in your case, but you could assume a linear offset between scene A and B (that is, Bwaterbody = Awaterbody + c), so you could normalize each other scene (B,C,...) to the values of scene A by looking at the value of a pixel of a water body in A and a pixel of a water body in B, note the difference and add the difference to scene B, so water bodies in A and B will have the same value. Then check if this will hold true for other landcovers in areas you know.

  • This is a good option. – Shawn Jan 2 at 10:01
  • You might also consider i.histo.match from the GRASS plugins in QGIS – Shawn Jan 2 at 10:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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