Talk:Supervised classification (Tutorial)

From AWF-Wiki
(Difference between revisions)
Jump to: navigation, search
(GRASS implementation)
(GRASS implementation)
Line 1: Line 1:
 +
= Classification with Orfeo Toolbox (Outdated Qgis 2)=
 +
== Image statistics ==
 +
# Add the Sentinel-2 imagery ''Subset_S2A_MSIL2A_20170619T_MUL_BOA.tif '' into a QGIS project.
 +
# Calculate mean and standard error for each band of the Sentinel-2 imagery using the OTB Graphical User Interface.
 +
* In the Search box on the Windows Start menu type {{typed|text=OSGeo4W Shell}}. You should be able to open the shell by clicking on it.
 +
* Type into the shell: {{typed|text=otbgui_ComputeImagesStatistics}}.
 +
Select a multiband input file and an output XML file as seen in the screenshot below.
 +
[[File:Qgis_ComputeImagesStatistics.png|500px]]
 +
 +
== Train image classifier ==
 +
# Add the training areas as vector polygon file ''lab05_training_input.shp'' into QGIS.
 +
# Open {{mitem|text=Orfeo Toolbox --> TrainImageClassifier (libsvm)}} to use the Support Vector Machine SVM algorithm (see figure '''B''').
 +
# Set ''Subset_S2A_MSIL2A_20170619T_MUL_BOA.tif'' as {{button|text=Input image list}}.
 +
# Set ''lab05_training_input.shp'' as {{button|text=Input vector list}}.
 +
# Set ''Subset_S2A_MSIL2A_20170619T_MUL_BOA.tif.xml'' as {{button|text=Input XML image statistics file}}.
 +
# Set {{button|text=Name of discrimination field}} to ''C_ID'' (C_ID refers to the column that contains the LUC code).
 +
# Save the {{button|text=Output confusion matrix}} as ''ConfusionMatrixSVM.csv''.
 +
# Save the {{button|text=Output model}} as ''SVM.model''.
 +
# Calculation of accuracies :<br/> Open ''ConfusionMatrixSVM.csv'' in LibreOffice or MS Excel and calculate overall, producer and consumer accuracies.
 +
 +
== Classification==
 +
# Open {{mitem|text=Orfeo Toolbox --> Image Classification}} (see figure '''C''').
 +
# Set ''Subset_S2A_MSIL2A_20170619T_MUL_BOA.tif'' as {{button|text=Input image}}.
 +
# Set ''SVM.model'' as {{button|text=Model file}}.
 +
# Set ''Subset_S2A_MSIL2A_20170619T_MUL_BOA.xml'' as {{button|text=Statistical file}}.
 +
# Save the {{button|text=Output image}} as ''su_svm.tif''.
 +
# Evaluate classification results.
 +
## Add the classification result ''su_svm.tif'' to QGIS.
 +
## Right click ''su_svm.tif'' in the [[TOC]] and select {{mitem|text=Properties --> Style --> Style --> Load Style}}.
 +
## Load ''lab05_MinDist.qml''.
 +
 +
== Compute a confusion matrix with independent reference data ==
 +
# Open {{mitem|text=Orfeo Toolbox --> ComputeConfusionMatrix (Vector)}}.
 +
# Set ''su_svm.tif'' as {{button|text=Input image}}.
 +
# Set ''lab05_validation.shp'' as {{button|text=Input reference vector data}}.
 +
# Set {{button|text=Field name}} to ''C_ID''.
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 
== GRASS implementation ==
 
== GRASS implementation ==
 
When testing for GRASS in the Semi-Automatic Classification Plugin's
 
When testing for GRASS in the Semi-Automatic Classification Plugin's

Revision as of 14:38, 2 December 2018

Contents

Classification with Orfeo Toolbox (Outdated Qgis 2)

Image statistics

  1. Add the Sentinel-2 imagery Subset_S2A_MSIL2A_20170619T_MUL_BOA.tif into a QGIS project.
  2. Calculate mean and standard error for each band of the Sentinel-2 imagery using the OTB Graphical User Interface.
  • In the Search box on the Windows Start menu type OSGeo4W Shell. You should be able to open the shell by clicking on it.
  • Type into the shell: otbgui_ComputeImagesStatistics.

Select a multiband input file and an output XML file as seen in the screenshot below. Qgis ComputeImagesStatistics.png

Train image classifier

  1. Add the training areas as vector polygon file lab05_training_input.shp into QGIS.
  2. Open Orfeo Toolbox --> TrainImageClassifier (libsvm) to use the Support Vector Machine SVM algorithm (see figure B).
  3. Set Subset_S2A_MSIL2A_20170619T_MUL_BOA.tif as Input image list.
  4. Set lab05_training_input.shp as Input vector list.
  5. Set Subset_S2A_MSIL2A_20170619T_MUL_BOA.tif.xml as Input XML image statistics file.
  6. Set Name of discrimination field to C_ID (C_ID refers to the column that contains the LUC code).
  7. Save the Output confusion matrix as ConfusionMatrixSVM.csv.
  8. Save the Output model as SVM.model.
  9. Calculation of accuracies :
    Open ConfusionMatrixSVM.csv in LibreOffice or MS Excel and calculate overall, producer and consumer accuracies.

Classification

  1. Open Orfeo Toolbox --> Image Classification (see figure C).
  2. Set Subset_S2A_MSIL2A_20170619T_MUL_BOA.tif as Input image.
  3. Set SVM.model as Model file.
  4. Set Subset_S2A_MSIL2A_20170619T_MUL_BOA.xml as Statistical file.
  5. Save the Output image as su_svm.tif.
  6. Evaluate classification results.
    1. Add the classification result su_svm.tif to QGIS.
    2. Right click su_svm.tif in the TOC and select Properties --> Style --> Style --> Load Style.
    3. Load lab05_MinDist.qml.

Compute a confusion matrix with independent reference data

  1. Open Orfeo Toolbox --> ComputeConfusionMatrix (Vector).
  2. Set su_svm.tif as Input image.
  3. Set lab05_validation.shp as Input reference vector data.
  4. Set Field name to C_ID.







GRASS implementation

When testing for GRASS in the Semi-Automatic Classification Plugin's Settings tab, I needed to have grass set up first (i.e. created a grassdata folder with a location and mapset); this makes sense, but I don't know if we provide a tutorial for this yet? - Levent (talk) 17:22, 24 February 2014 (CET)

This Module does not work in QGIS 2.18-ltr:

    1. Open Orfeo Toolbox --> Compute images second order statistics (see figure A).
    2. Set Subset_S2A_MSIL2A_20170619T_B12_BOA.tif as Input images.
    3. Save the Output XML file as Subset_S2A_MSIL2A_20170619T_B12_BOA.tif.xml.

Outdated figures:

Figures

Figure A: Dialogues of the Compute images second order statistics
Figure B: Dialogues of the TrainImageClassifier (libsvm)
Figure C: Dialogues of the Image Classification
Figure D: Dialogues of the ComputeConfusionMatrix (Vector)
Personal tools
Namespaces

Variants
Actions
Navigation
Development
Toolbox
Print/export