300 likes | 324 Views
Learn how to utilize Landsat images to classify land covers in watersheds using grid functions. Understand supervised and unsupervised classification methods to analyze land covers efficiently.
E N D
Image Classification FE423 - March 2, 2000
Labs • Why use Arc commands? polygrid cov grid … 30 y • Use Grid functions 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 • Parametersa0 a1 a2 • Does y dependon x2? #1, #2 • Does x1confound 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. - 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 coverages Training areas
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>)
unsupervised trained covers 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?
original covers trained Unsup-ervised Which predicts better?
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.
Covers Training set Classification Probability 1. Probability that the chosen class is correct. MLCLASSIFY(<stack>,<signature>,{reject_fraction},{EQUAL|SAMPLES|FILE},{a_priori_file},{o_reject_grid})
lakes roads Classification Probability 2. Probability that any given class is correct. Prob = CLASSPROB(<stack>, <signature>)
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>)