I am trying to run a land use classification with QGIS on LANDSAT8 imagery to classify the various land uses within an area of northern Vietnam.

I want to distinguish between primary forest, secondary forest, sub canopy cultivation, monoculture crops, built up areas and riparian habitat.

I also want to classify the imagery for canopy cover (%).

I have recorded over 100 ground truth points in situ for land use type and canopy cover percentage but I have no knowledge on how to import this information into QGIS so that it can train my classification in order to create spectral signatures.

The only way I can think at the moment would be to import the UTMs with IDs then zoom to each one and create a spectral signature manually, but this will take forever.

I fear it may also create some error.

I am new to QGIS.

  • Thanks to all of you, Moreau fortunatley I am only working on one tile (5000ha forest of interest) In regards to training the spectral signatures is there a fast way to do this? i.e. importing the UTMs with some kind of ID that will allocate the pixel at that point to a certain macroclass. Or should I simply load in the points as POIs then use the semi-auto classification plug-in and click on each point assigning them manually to a macroclass? Failing this I would hope to find a walk through for ground truthing with points I guess, does anyone know where I might find this? Commented Jul 2, 2016 at 7:52

1 Answer 1


First of all you cannot create a spectral signature from a point. You will need polygons (training areas).

Since it seems that you very exactly know your study area, you could add a column to your gcp's with a radius in wich the observed category certainly exists (e.g. primary forest around 200m of a point), this should be manageable for the mentioned 100+ points. Then with the 'variable distance buffer' tool (processing>toolbox search for 'buffer') you can create buffers around your gcp's wich you can dissolve and use them as training areas (cp. screehshot).

Last (but for shure not least) there is a great qgis plugin for semi-automatic supervised classification of multispectral or hyperspectral remote sensing images (install via plugins>manage and install plugins, search for 'Semi-Automatic Classification Plugin')

Since this is (correct me if I'm wrong) by far and away the most complex plugin, here is a screenshot of this 'in action' to give you idea (topleft is a buffered gcp). For details I strongly recommend the study of the documentation!!!

enter image description here


The doku: http://fromgistors.blogspot.com/p/theinterface-2.html, esp. the tutorials and 3.1 for setting up your gcp tabe in an appropriate way.

  • 1
    Still be very carefull with semi-automatic classification. You need to work locally with it and have a lot of space on your hard drive (the export path is also very important) if you want it to complete the classification fast. Having an SSD helps a lot, also you don't necessarly need every training point or areas because having as much points as you do might slow the plugin's processing. If you do need all of them, you have the option to save the signature in an xml file on the top of the left panel of the plugin. I'd advise to do this and work tiles per tiles. Hoping this'll help. Commented Jul 1, 2016 at 11:24
  • 2
    It is absolutely not true that you "cannot create a spectral signature from a point". A spectral signature is just a distribution of values across bands. A single pixel across 6 bands can represent a statistical distribution. If you want to pick up some surrounding variability from a point location you can just use a kernel to pull surrounding values within a specified distance and, if necessary, apply a function (eg., mean). This is common practice in remote sensing and backed in the literature. Please do not speak out of turn unless you have evidence supporting your assertion. Commented Jul 1, 2016 at 14:46
  • True, but i don't think the tools for this are built in semi automatic classification. You do have the ability to create some automatic ROI based around the values from 1 point and i think that's pretty much it. Even if the plugin is a good tool, it has a lot less options than ENVI. Commented Jul 4, 2016 at 7:14
  • In the end I imported the UTMs and colour coded them for each land cover classification, I then used the attribute table to go through each point systematically (so I didn't miss any) and used the ROI creation tool for each point. Checking in with NDVI, GoogleMaps, and a Tasseled cap greeness image to make sure that the range radius wasn't selecting erroneous pixels. Thanks for the feedback, I really appreciate it Commented Jul 5, 2016 at 4:44

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.