Available with Spatial Analyst license.
Remote sensing image classification is a lengthy and sometimes time consuming workflow with many stages of processing to progress from preprocessing to segmentation, training sample selection, training, classifying, QA/QC to post-processing. Each step is often iterative, and depending on intermediate results, may require performing the process several times to get optimal results. Creating an accurate classification map is an intensive process, and users will need to have in-depth knowledge of their input data, classification schema, classification algorithms, expected results and acceptable accuracy.
The Classification Wizard guides users through the entire classification workflow. The Classification Wizard provides a solution comprised of best practices and simplified user experience, to guide users through the classification process in an efficient manner. The Classification Wizard is found in the Image Classification group under the Imagery tab, which can be invoked when a raster dataset is selected in the Contents pane.
Experienced users may wish to invoke individual tools available in the Classification Tools drop-down menu in the Image Classification group. These tools are the same ones included in the Classification Wizard, but all the parameters are exposed for experienced users to manipulate according to their data and project requirements.
Here you set up your classification project. The decisions you make here will enable or disable certain functionality further into the classification workflow.
When classifying an image, you can choose to let the computer decide which classes are present based on differences in the spectral characteristics of pixels. This is known as Unsupervised classification. After the classification is complete, you will have to go through the resulting classified dataset and assign each class a name based on a schema. The other approach is Supervised classification. You decide what classes you want to classify your image into based on a schema and then tell the computer to assign each pixel or segment to one of those classes.
There are two options for the type of classification method that you choose. Pixel based is a traditional approach that decides what class each pixel belongs in on an individual basis. It does not take into account any of the information from neighboring pixels. While this is considered a more pure approach, it can lead to a salt and pepper effect in your classification results.
Object based groups neighboring pixels based on how similar they are in a process known as segmentation. Segmentation takes into account color and the shape characteristics when deciding how pixels are grouped together. Because this approach essentially averages the values of pixels and takes geographic information into account, the objects that are created from segmentation more closely resemble real world features in your imagery and produces cleaner classification results.
A classification schema is used to organize all of the features in your imagery into distinct classes. A schema is saved in an Esri classification schema (.ecs) file, which uses JSON syntax. Schemas are often hierarchical, meaning that you may have a class of forests with sub-classes for evergreen and deciduous. The default schema that is included is from the National Land Cover Dataset which is focused on North America. You can also generate a schema from training samples or from a classified raster. If you want to create a custom schema, select the simple default schema which you can then edit from the Training Sample Manager page.
This is a workspace which stores all of the outputs created in the Classification Wizard including training data, segmented images, custom schemas, accuracy assessment information, intermediate outputs, and resulting classification results.
If you have already created a segmented image, you can add it here. If you don't have one, on the next page you will have the option to create one. This is only an option if your Classification Type is Object based.
The user selects representative sites for each land cover class in the image. These sites are called training samples. A training sample has location information (point or polygon) and associated land cover class. The image classification algorithm uses the training samples to identify the land cover classes in the entire image. Training samples are saved as a feature class which are created in the Training Sample Manager page. You can also import training samples that was created in ArcGIS Desktop that were created using the Image Classification toolbar .
If you have already created a set of training samples, you can add it here. On the Training Samples Manager page, you will have the option to create training samples if you haven't done so already. The training samples need to correspond to your classification schema. One way to ensure this is to select the Generate from training samples option under the Classification Schema parameter. Using training samples is only an option if your Classification Method is Supervised.
You need to supply a reference dataset if you want to do accuracy assessment of your classified results. Reference data consists of features that you know the identity of. Although there can be errors within this dataset, the goal of this dataset is to be accurate and reliable. It is the quality assurance against which you compare your classified results. It consists of points, each of which is labeled with a land cover class, collected from the field or from higher resolution imagery. The reference points are saved in a point feature class. This can be derived from classified imagery or from a feature class.
Segmentation is a key component of the object based classification workflow. This process groups neighboring pixels together that are similar in color and have certain shape characteristics. This option is only available if you have select Object based as your Classification Type on the Configure page.
There are three parameters which control how your imagery is segmented. In addition, you can use the Show Segmented Boundaries Only option if you want to display the segments as polygons. After you run segmentation, you will want to see the underlying imagery to verify that the objects make sense. Press the L key to toggle on and off the transparency of the segmented image.
Set the level of importance given to the spectral differences of features in your imagery.
Valid values range from 1.0 to 20.0. A higher value is appropriate when you have features you want to classify separately but have somewhat similar spectral characteristics. Smaller values create spectrally smoother outputs. For example, with higher spectral detail in a forested scene, you will be able to have greater discrimination between the different tree species.
Set the level of importance given to the proximity between features in your imagery.
Valid values range from one to 20. A higher value is appropriate for a scene where your features of interest are small and clustered together. Smaller values create spatially smoother outputs. For example, in an urban scene, you could classify an impervious surface using a smaller spatial detail, or you could classify buildings and roads as separate classes using a higher spatial detail.
Minimum Segment Size
Merge segments smaller than this size with their best fitting neighbor segment.
Units are in pixels.
Training Samples Manager
The Training Samples Manager page is divided into two sections. When it first opens, you will see the schema management section at the top. This will have automatically loaded based on your selection from the Configure page. A schema is saved in an Esri Classification Schema (.ecs) file, which uses JSON syntax. Schemas are hierarchical meaning that they have parent classes which hold more specific subclasses. An example of this would be a forest parent class comprised of deciduous and evergreen trees. You can create new classes here or remove existing classes to customize your schema. To create a new parent class at the highest level, select New Schema and then click the Add button. To create a subclass, select the parent class and then click Add . The subclass will be organized into the parent class. You can also right-click on any of the classes in the schema to remove it or add a new class as well as edit its properties.
The bottom section of the page shows you all of your training samples. The user selects representative sties for each land cover class in the image. These sites are called training samples. A training sample has location information (point or polygon) and associated land cover class. The image classification algorithm uses the training samples to identify the land cover classes in the entire image. The training samples are saved as a feature class which are created in the Training Sample Manager page. You can also import training samples that was created in ArcGIS Desktop that were created using the Image Classification toolbar . Once these have been created or imported, you can manage them by removing training samples that you don't want. You can remove them individually or you can group them together by selecting them and then using the Delete button. When you select a training sample, it will be selected on the map display. If you double-click on a training sample, it will zoom to it.
Steps to create training samples:
- Select the class that you want to add samples to from the schema manager.
- Select one of the sketch tools or use the segment picker to begin collecting your training samples.
- To use the Segment Picker, the segmented image must be loaded into the Contents pane. If you have more than one segmented layer in the Contents pane, use the drop-down box to select the segmented layer that you want to collect training samples from. Click on the map to add the segment as a training sample.
Select a classification algorithm. If you selected Unsupervised as your Classification Method on the Configure page, your only option will be ISO Cluster.
When you click Run, it will not only train and create the signature (.ecd) file, it will also process the segmented raster if you have not done so already.
After it finishes running, you can spot check the results and compare different classification algorithms.
The maximum likelihood classifier is a traditional technique for image classification.
The random trees classifier is a powerful technique for image classification which is resistant to overfitting and can work with segmented images and other ancillary raster datasets. For standard image inputs, the tool accepts multiple band imagery with any bit depth, and it will perform the random trees classification (sometimes called random forest classification) on a pixel basis, based on the input training feature file.
Support Vector Machine
The support vector machine (SVM) classifier provides a powerful classification method that is able to handle a segmented raster input, or a standard image. It is less susceptible to noise, correlated bands, and an unbalanced number or size of training sites within each class. This is a classification method that is widely used among researchers.
The ISO Cluster classifier performs an unsupervised classification. This classifier can handle very large segmented images, whose attribute table can become large. Also, the tool can accept a segmented RGB raster from a third-party application. The tool works on standard Esri-supported raster files, as well as segmented raster datasets.
This saves the outputs of your classification. If you don't want to save the Output Class Definition File (.ecd) leave that field blank.
Depending on the type of Classification Method you selected in the Configure page, you will have one of two options for merging classes. As you merge or assign classes, you will want to see the underlying imagery to verify that the new classes make sense. Press the L key to toggle the transparency of the classified image on and off.
Merge classes after supervised classification
In the table, on the left column, you have the current class. If you need to change an entire class you can do that here, but you are limited to the parent classes in your schema. For example, you can change deciduous to forest, but you can't change deciduous to water on this page. To make those kinds of edits, or to change individual features, you will need to use the Reclassifier page.
Assign classes after unsupervised classification
On the top of this page, you have the schema and a table that allows you to assign classes at the bottom based on the schema.
To assign classes, follow the steps below:
- Select a class from the schema (in the top half) that you want to assign on the map.
- Use the Assign tool to select the areas on the map that you want to assign to that class. Inspect the table and you will see that it has updated the Old Class with the class that you have assigned it to. The class color will be updated to reflect the schema.
Accuracy Assessment uses the Reference Data that you selected on the Configure page. The values of your reference dataset need to match the schema. Reference data can be in several different formats:
- A raster dataset that is a classified image.
- A polygon feature class or a shapefile. The format of the feature class attribute table needs to match the training samples. To ensure this, you can create the reference dataset using the Training Samples Manager.
- A point feature class or a shapefile. The format needs to match the output of the Create Accuracy Assessment tool. If you are using an existing file and want to convert it to the appropriate format, use the Create Accuracy Assessment Points geoprocessing tool.
Number of Random Points
The total number of random points that will be generated.
The actual number may exceed but never fall below this number, depending on sampling strategy and number of classes. The default number of randomly generated points is 500.
Specify a sampling scheme to use.
- Stratified Random—Create points that are randomly distributed within each class, where each class has a number of points proportional to its relative area. This is the default.
- Equalized Stratified Random—Create points that are randomly distributed within each class, where each class has the same number of points.
- Random—Create points that are randomly distributed throughout the image.
Analyzing the diagonal
Accuracy is represented from 0 - 1, with 1 being 100 percent accuracy. The colors range from light to dark blue, with darker meaning higher accuracy.
Analyzing off the diagonal
Unlike the diagonal, the cells that are off the diagonal show error based on omission and commission. Errors of omission show false positives, where pixels are incorrectly classified as a known class when they should have been classified as something else. An example would be where the classified image says a pixel is impervious but the ground truth says it is forest. The impervious class has extra pixels that it should not have according to the ground truth data. Errors of commission are false negatives, where pixels of a known class are classified as something other than that class. An example would be where the classified image says a pixel is forest, but it is actually impervious. In this case, the impervious class is missing pixels according to the ground truth data.
Errors of omission are also known as user's accuracy or type 1 error. Errors of commission are also known as producer's accuracy or type 2 error.
After you classify an image, you will probably encounter small errors in the classification result. To address these it is often easier to simply edit the final classified image rather than recreate training sites and do the process again. Use this page to make edits to individual features or objects. You can select a feature and reclassify it as any other class that you want. This is a post-processing step designed to account for errors in the classification process. All changes that you make are displayed in the Edits Log. You have the option to check on or off any of the edits that you have made. As you reclassify the image to clean up errors, you will want to see the underlying imagery to verify that the objects make sense. Press the L key to toggle the transparency of the classified image on and off.
Use the Reclassify an object tool to draw a circle on the classified image. The segment from which the circle originates will be changed to the new class.
Use the Reclassify within a region tool to draw a polygon on the classified image. The current class within this polygon will be changed to the new class.