Image Classification FE423 - March 2, 2000
Labs Why use Arc commands? Use Grid functions polygrid cov grid … 30 y grid = Polygrid(cov …) Stackscattergram <grid> # autoscale
Outline What Regression is About What Classification is About Looking at Pack Landsat TM Bands Image Classification Classification Probability
Regression Is Not About: Model Form y=a0+a1x1+a2x2 y=a0x1a1x2a2 Parameters a0 a1 a2 Does y depend on x2? #1, #2 Does x1 confound x2? #2
Data Regression Is About: You need to compare (cost, sediment, etc) from alternate management plans, but you don’t have a predictive model. You imagine the form (i.e. y=a0x1a1x2a2) of a model but not the parameters and past measurements of outputs. How do you use them to infer values for the model parameters, so you can compare your management plans?
Problem: Image Classification You need to analyze entire watershed But your stand, road, etc data is for only some ownerships You do have landsat images for the entire basin But how do you use them to make grids of stands and road?
Looking at Pack Forest Ortho-photo
Looking at Pack Forest Landsat Thematic Mapper 1-2-3
Looking at Pack Forest Landsat Thematic Mapper 1-4-7
Landsat TM Bands 1. blue dirt 2. green 3. red 4. near-IR leaves 5. - 5. - 6. - 7. thermal IR heat
Landsat TM Bands Stackhistogram nwgrd
Landsat TM Scattergram Using bands 1, 4, and 7
Landsat TM Scattergram Similar sites cluster together
The Idea Behind Classification Identify some training cells Make normal distributions that ‘describe’ these cells Use these distributions to classify all the other cells
Image Classification in GRID Make classes class1 = con(road, 1, lake, 2, age < 20,3,…) CLASSSAMPLE <stack> <sample_ grid> Make signature file sigfile = CLASSSIG(<stack>, <sample_grid>) isosig = ISOCLUSTER(<stack>, <nclass>) Classify the image MLCLASSIFY(<stack>, <signature>)
Types of Image Classification Supervised Classification You tell Grid what you are looking for. -Training sites -Existing coverages Unsupervised Classification Grid decides what it can find best.
Supervised Classification Using existing coverages to create the training set class = con(road,1,lake,2,age < 20,3,…)
Supervised Classification class = con(road,1,lake,2,age < 20,3,…) Can landsat really distinguish canopy structure? soil green dark green
Supervised Classification Training Sites CLASSSAMPLE <stack> <sample_ grid>
Comparing Signature Files Drawsig sigfile all Training areas coverages
Unsupervised Classification Distribute class means Class data points according to the nearest means Take mean of each class Repeat 2&3 a lot
Unsupervised Classification isosig = ISOCLUSTER(<stack>,<nclass>) Resulting clusters Stack values
How to Classify a Cell preclass = mlclassify(<stack>,<signature>)
Comparing Classifications The overlap of the signature file varies with the fitting method and information that went into it. Which will predict land covers better? covers trained unsupervised
Which predicts better? original covers Unsup-ervised trained
Probability of Classification Classification - We can classify a cell according to which class gives a higher likelihood. Probability - the probability that the cell is actually in that class.
Classification Probability 1. Probability that the chosen class is correct. MLCLASSIFY(<stack>,<signature>,{reject_fraction},{EQUAL|SAMPLES|FILE},{a_priori_file},{o_reject_grid}) Training set Covers
Classification Probability 2. Probability that any given class is correct. Prob = CLASSPROB(<stack>, <signature>) lakes roads
Review: Image Classification You need to analyze entire watershed, but your stand, road, etc data is for only some ownerships. You do have landsat images for the entire basin. So, create a training set, calculate the distributions, and classify the rest of the watershed.
Review: Classification in GRID Make classes class1 = con(road, 1, lake, 2, age < 20,3,…) CLASSSAMPLE <stack> <sample_ grid> Make signature file sigfile = CLASSSIG(<stack>, <sample_grid>) isosig = ISOCLUSTER(<stack>, <nclass>) Classify the image MLCLASSIFY(<stack>, <signature>)