development history and personal use of landmapr 1984-2012
DESCRIPTION
Introduction to the development, use and extension of the LandMapR toolkit by the author. R. A. (Bob) MacMillan. Prepared for the LandMapR User's WorkshopQuebec City, CanadaJune 1, 2012TRANSCRIPT
Development History and Personal use of LandMapR focus on custom extensions and
unusual uses
R. A. MacMillanLandMapper Environmental Solutions Inc.
Outline• Pre-LandMapR (1984-1993)
– Rationale and reasons for interest in landform modelling– Started out as the base for a deterministic hydrological
model DISTHMOD• LandMapR Version 1 (1994-1999)
– Original FoxPro Programs written for a project with Agriculture Canada
• LandMapR Version 2 (1999-2003)– Version 2a: Single program applied mainly to small
agricultural fields– Version 2b: Extended single program by adding
WeppMapR on top– Version 2c: Major change to LandMapR, split into 4
different modules• To Permit hierarchical PEM mapping and consideration of non-DEM
inputs
• LandMapR Version 3 C++ Programs (2003-2008)– Primarily reprogrammed to permit use for PEM mapping
in BC• Demands of PEM mapping of large areas forced development of
numerous extensions– Interesting use to map sags in the City of Edmonton
• Applications & extensions to C++ Programs 2008-2012
Pre-LandMapR
Background on Reasons for Interest in DEMs and
Landform Classification
• J.S. Rowe (1996)– All fundamental variations in landscape
ecosystems can initially (in primary succession) be attributed to variations in landforms as they modify climate• Boundaries between potential ecosystems can be
mapped to coincide with changes in those landform characteristics known to regulate the reception and retention of energy and water
Rationale
• J.S. Rowe (1996)– Landforms, with their vegetation, modify and
shape their coincident climates over all scales• Earth surface energy-moisture regimes at all scales
/sizes are the dynamic driving variables of functional ecosystems at all scales/sizes
• Climatic regimes are primarily interpreted from visible terrain features known to be linked to the regimes of radiation and moisture (viz. landform and vegetation)
Rationale
Rationale
• Soil-Landform Models– Are the
fundamental basis for soil survey
– Relate soils to landform position
• Catena Concept– Can be
approximated by terrain analysis and classification from DEM
– Wanted to automated classification of landforms
OBL HULG SZBL BLSS SZHG HULG OHG
EOR COR DYD KLM FMN COR HGT
CHER GLEY CHER SOLZ SALINE GLEY GLEY
High water level
Low water level
700 m 800 m
EOR Series DYD Series KLM Series FMN Series
15
40
60
COR Series
My Interest in Automated Soil-Landform Models and DEMs Began in 1984-85
• Conducted Grid Soil Survey– Lacombe Research
Station• Sampled soils on a 50
m grid– Sand, Silt, Clay, – pH, OC, EC, others– 3 depths (0-15, 15-50,
50-100)• Used custom written
software– To compute
variograms– Interpolate using the
variograms• DEMs and Landform
Models– Saw strong soil-
landscape pattern– Wanted to quantify
relationships and automate elucidation of them
020406080
100120140160
SEMI-VARIOGRAM FOR A-HORIZON %SAND
LAG (1 LAG = 30 M)
SEM
I-V
AR
IAN
CE
LACOMBE SITE: A HORIZON %SAND (1985)
800
m
Source: MacMillan, 1985 unpublished
Pre-LandMapR
Origins of LandMapR in Distributed Hydrological Model DISTHMOD 1988-
1993
Intelligent Pit Removal is Legacy of DISTHMOD
• Remove Initial Small Pits– Based on computed pit geometry
• Pit area (remove only small pits)– Typically use value of 10 cells for
5-10 m DEMs• Pit depth (remove if < selected
depth)– Typically use a value of 0.15 m
for 5-10 m DEMs• Treat these pits as errors or
unimportant
• Pit Removal Process– Based on reversing flow
directions• Find pour point for a given pit• Trace down path from pour
point• Reverse flow directions of
cells along path from pour point to pit
• Flow back “up” to pour point and compute new value for upslope area
• Assign all cells to new joined catchment
3 1 (becomes 2) 2 (becomes
new 2)
1 2
2
12
Pour Elevation 1
Pour Elevation 2initial localdirection of
flow
elevation of allcells below pourpoint raised topour elevation
new “reversed”flow directions
Divide
Pit Center
55
55
Source: MacMillan et al., 1993 Landscape Ecology and GIS
Intelligent Pit Removal is Legacy of DISTHMOD• Remove all Pits in the Most Likely
Fill Order728
727
726
725
724
723
722
721
728
727
726
725
724
723
722
721
to 33
to 121to 39
to 33
to 64
to 64to 23
to 23
to 74to 19
to 37
to 120
to 52 to 33
to 37
to 118
72
71 16 15
64 55 5223
39
33 29 26 36
41
29 27 36 37 21 19
4267 69 70 66
18
74
68 65 58
117118
116
119120
121
124128
130131
132
Ele
vati
on (
m)
Source: MacMillan et al., 1993 Landscape Ecology and GIS
DISTHMOD Left Me With the Ability to Flow Across DEMs• Key aspect of flow was ability to
retain pit info 4 53 214 1 2 3 5 6 7 8 9 10 11 12 13 1415 16 18 17 20 21 22 23 24 25 26 27 28 29 31 30 32 33 34 35 36 37 38 39 40 41 42 43 44 19
725
724
723
722
721
725
724
723
722
72116 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
1
3
2
Source: MacMillan et al., 1993 Landscape Ecology and GIS
Key Advantage of LandMapR is Ability to Flow from Cell to Cell & through Pits
0 14 5 8 7 6 25 4 3 2 1
0 1080 100 100 88 75 2063 50 38 25 12
DIVIDE
DIVIDECELL
CELL DRAINAGE DIRECTION (LDD)
PIT CENTRE
CELL DOWNSLOPE LENGTH (LDN)
CELL RELATIVE SLOPE POSITION (PUP)
RELATIVE SLOPE POSITION(Distance down slope from cell to pit Centre as % of maximum)
63
6 2 30
MAXIMUMSLOPE LENGTH
• Cell to cell connectivity– Permits
computation of various measures of:• Absolute &
relative relief • Slope length
– Gives ability to identify• Pits and Peaks• Channels and
Divides• Passes and
Hillslopes– Acts as glue in
classifying
LandMapRVersion 1
Developed Original LandMapR as a Series of 19 FoxPro
Programs in 1994-99
LandMapR Programs to the End of 1999FoxPro Programs: 19 Separate Programs Run Sequentially
Initial Site Level Studies for Precision Farming• Agriculture
Canada– Started in 1995-
96– Wanted to show
that soil-landform models used in Soil Survey had relevance for Precision Farming
– Believed partitioning fields into landform facets would define effective management zones for PF
– Lacked tools to do this• No other suitable
software was available to us
• Dr. W. W. Pettapiece– Former head of
Soil Survey in Canada
– Liked what he saw in models proposed by Pennock et al., 1987• But Pennock
model gave quite noisy results
• Wanted tools to extend, refine and apply models such as Pennock’s
– Contracted LandMapR• to develop new
tools
Key Outcome: Programs and Definition of Two Fuzzy Classification Rule Bases• Attribute Rules
– Arule file (e.g. LM3arule)
– Defines “attributes” of terrain as fuzzy semantic constructs (e.g in words)
– User can define any attribute based on any available input variable
– Have 2 main pre-defined rule sets for landforms• Many for
ecological classes
• Classification Rules– Crule file (e.g.
LM3crule)– Defines user-
defined classes as a weighted combination of fuzzy attributes
– Can define any number of classes based on any number of attributes.
– Have 2 main pre-defined rule sets for landforms
ARule Table Defines Fuzzy Attributes
SORT ORDER FILE_IN ATTR_IN CLASS OUT
MODEL NO B
B LOW B HI B1 B2 D
1 formfile PROF CONVEX_D 4 5.0 0.0 0.0 2.5 0.0 2.52 formfile PROF CONCAVE_D 5 -5.0 0.0 0.0 0.0 -2.5 2.53 formfile PROF PLANAR_D 1 0.0 0.0 0.0 -2.5 2.5 2.54 formfile PLAN CONVEX_A 4 5.0 0.0 0.0 2.5 0.0 2.55 formfile PLAN CONCAVE_A 5 -5.0 0.0 0.0 0.0 -2.5 2.56 formfile PLAN PLANAR_A 1 0.0 0.0 0.0 -2.5 2.5 2.57 formfile QWETI HIGH_WI 4 7.0 0.0 0.0 3.5 0.0 3.08 formfile QWETI LOW_WI 5 0.5 0.0 0.0 0.0 3.5 3.09 formfile SLOPE NEAR_LEVEL 5 0.5 0.0 0.0 0.0 1.0 0.510 formfile SLOPE REL_STEEP 4 2.0 0.0 0.0 1.0 0.0 1.011 relzfile PCTZ2ST NEAR_DIV 4 90.0 0.0 0.0 75.0 0.0 15.012 relzfile PCTZ2ST NEAR_HALF 1 50.0 50.0 50.0 25.0 75.0 25.013 relzfile PCTZ2ST NEAR_CHAN 5 10.0 0.0 0.0 0.0 25.0 15.014 relzfile PCTZ2PIT NEAR_PEAK 4 90.0 0.0 0.0 75.0 0.0 15.015 relzfile PCTZ2PIT NEAR_MID 1 50.0 50.0 50.0 25.0 75.0 25.016 relzfile PCTZ2PIT NEAR_PIT 5 5.0 0.0 0.0 0.0 10.0 5.017 relzfile Z2PIT HI_ABOVE 4 2.0 0.0 0.0 1.0 0.0 1.0
CRule Table Defines Fuzzy Classes
F NAME FUZATTR
ATTR WT
FACET NO
F CODE F NAME FUZATTR
ATTR WT
FACET NO
F CODE F NAME FUZATTR
ATTR WT
FACET NO
F CODE
LCR NEAR_PEAK 30 11 1 CBS NEAR_HALF 20 23 6 TSL NEAR_CHAN 20 32 11LCR NEAR_DIV 20 11 1 CBS NEAR_MID 10 23 6 TSL NEAR_PIT 10 32 11LCR HI_ABOVE 10 11 1 CBS HI_ABOVE 5 23 6 TSL REL_STEEP 10 32 11LCR NEAR_LEVEL 20 11 1 CBS REL_STEEP 20 23 6 TSL PLANAR_D 25 32 11LCR PLANAR_D 10 11 1 CBS CONCAVE_A 20 23 6 TSL PLANAR_A 25 32 11LCR PLANAR_A 5 11 1 CBS PLANAR_D 15 23 6 TSL HIGH_WI 10 32 11LCR LOW_WI 5 11 1 CBS HIGH_WI 10 23 6 FAN NEAR_CHAN 20 33 12DSH NEAR_PEAK 30 12 2 TER NEAR_HALF 20 24 7 FAN NEAR_PIT 10 33 12DSH NEAR_DIV 20 12 2 TER NEAR_MID 10 24 7 FAN REL_STEEP 10 33 12DSH HI_ABOVE 10 12 2 TER HI_ABOVE 5 24 7 FAN CONVEX_A 25 33 12DSH CONVEX_D 20 12 2 TER NEAR_LEVEL 30 24 7 FAN PLANAR_D 25 33 12DSH CONVEX_A 10 12 2 TER PLANAR_D 15 24 7 FAN LOW_WI 10 33 12DSH LOW_WI 10 12 2 TER PLANAR_A 20 24 7 LSM NEAR_DIV 10 41 13UDE NEAR_PEAK 30 13 3 SAD NEAR_HALF 20 25 8 LSM NEAR_CHAN 20 41 13UDE NEAR_DIV 20 13 3 SAD NEAR_MID 10 25 8 LSM NEAR_PIT 10 41 13UDE HI_ABOVE 10 13 3 SAD HI_ABOVE 5 25 8 LSM NEAR_PEAK 10 41 13UDE NEAR_LEVEL 10 13 3 SAD NEAR_LEVEL 20 25 8 LSM REL_STEEP 10 41 13UDE CONCAVE_D 10 13 3 SAD CONCAVE_D 20 25 8 LSM CONVEX_D 15 41 13UDE CONCAVE_A 10 13 3 SAD CONVEX_A 20 25 8 LSM CONVEX_A 15 41 13UDE HIGH_WI 10 13 3 MDE NEAR_HALF 20 26 9 LSM LOW_WI 10 41 13BSL NEAR_HALF 20 21 4 MDE NEAR_MID 10 26 9 LLS NEAR_CHAN 20 42 14BSL NEAR_MID 10 21 4 MDE HI_ABOVE 5 26 9 LLS NEAR_PIT 20 42 14BSL HI_ABOVE 5 21 4 MDE NEAR_LEVEL 25 26 9 LLS NEAR_LEVEL 40 42 14BSL REL_STEEP 20 21 4 MDE CONCAVE_D 10 26 9 LLS PLANAR_D 5 42 14BSL PLANAR_D 15 21 4 MDE CONCAVE_A 10 26 9 LLS PLANAR_A 5 42 14BSL PLANAR_A 25 21 4 MDE HIGH_WI 20 26 9 LLS HIGH_WI 10 42 14BSL LOW_WI 5 21 4 FSL NEAR_CHAN 20 31 10 DEP NEAR_CHAN 20 43 15DBS NEAR_HALF 20 22 5 FSL NEAR_PIT 10 31 10 DEP NEAR_PIT 30 43 15DBS NEAR_MID 10 22 5 FSL REL_STEEP 10 31 10 DEP NEAR_LEVEL 20 43 15DBS HI_ABOVE 5 22 5 FSL CONCAVE_D 20 31 10 DEP CONCAVE_A 10 43 15DBS REL_STEEP 20 22 5 FSL CONCAVE_A 20 31 10 DEP CONCAVE_D 10 43 15DBS CONVEX_A 20 22 5 FSL PLANAR_A 10 31 10 DEP HIGH_WI 10 43 15DBS PLANAR_D 15 22 5 FSL HIGH_WI 20 31 10DBS LOW_WI 10 22 5
Fuzzy Classification then Assign Each Cell to its Most Likely Landform Class
LandMapR Landform Classification
• Initial Development– Started with 2 sites
• with very different soils and topography (note closed pits)
• Farm field size (800 x 800 m)
– Developed and refined procedures and rules• At those 2 sites
– Sampled to verify classes were different• Soils and Soil
Properties• Moisture, fertility &
yields
Stettler Site (800 x 400 m)
Hussar Site (800 x 800 m)
Goddard & Nolan Evaluated Differences in Soil Properties
and Yield at Sites
Hussar
0
2
4
6
8
10
12
U M L
Landscape Position
% O
M (0
-15
cm)
1997 Original (28 pt)transects
1998 Verification (13 pt)transects
Coen Checked Soil Property Differences by
Landform Class
LandMapR Landform Classification Used to Relate Soil Properties to Landform Position
Status of LandMapR at end of 1999• Agriculture
Canada– Assumed
ownership of LandMapR IP• Took
custodianship of the original 19 FoxPro programs
• Distributed them to internal Ag Canada researchers
• 19 FoxPro Programs– Use Constraints
• Slow to run & Need FoxPro
• Had to run 19 separate programs in correct order
• Difficult to learn & use
• Advantages of LandMapR– Computed a wide
range of terrain derivatives (for 1996)• Relative landform
position indices not easily available in other software at the time
• Less speckle than Pennock’s
– Default Landform Classes• Fuzzy rules
developed– LM_arule,
LM_crule• 15 default
landform classes defined, evaluated & accepted
– Ready to be evaluated
Evaluation of LandMapR by Other Users• Alberta
– AAFRD• T. Goddard & S. Nowlan• Dr. Linda Hall & Ty Faechner• Dr. Len Kryzanowski
– AAFC• Dr. Gerry Coen (Lethbridge)
• Manitoba– U of M
• Grant Manning (MSc.)• Yann Pelcat (MSc.)
– Brandon AAFC & Assiniboine• Dr. Al Moulin• Dr. Ty Faechner
• Saskatchewan– Indian Head Precision
Farm• Yann Pelcat (MSc.)
• Quebec– Dr. Thomas Piekutowski
• Montana– Montana State University
• Dr. Dan Long and others• United Kingdom - Silsoe
– Soil Survey of England & Wales
• Dr. Thomas Mayr• Ontario
– Doug Aspinal (OMAF)
LandMapRVersion 2a
Collated Original 19 LandMapR FoxPro Programs into a Single
FoxPro Program 1999-2003
LandMapR Program Beginning in 2000FoxPro Programs: 19 Separate Programs Merged into 1 FoxPro Program in 2000
Early Applications of the Single Revised LandMapR Program
Original LandMapR 15 Landform Facets
• Initial Application Focus– Small areas
equivalent to individual farm fields
– Clear agricultural focus
• Applications– Precision farming
research• Alberta, Manitoba,
Ontario, Quebec, Montana, Germany
– Extension (SVAECP)– Commercial service
• Norwest Soils AgAtlas
800 m 800 m
800 m800 m
Extensions to LandMapR 1999-2001• Alberta
Landforms– New custom
FoxPro programs to compute summary statistics for terrain attributes for an entire classified DEM
• SVAECP Project– Used same
programs to compute and report statistics for each site
• CEMA Project– Oil Sands
Landscapes
• Lessons Learned– We got slope
length wrong• Our slope values
were too long– Used Lpit2Peak for
length– Should have used
LStr2Div
– Soil properties not always related to landform class• Field sample data
for 50+ sites– Only about 50%
showed a clear relationship between landform class and soil property values
Alberta Landforms Project 1999-2000
• Morphometric Descriptions– More than 20
attributes• Slope, aspect,
curvatures, slope length, wetness index, slope position, drainage density, percent internal drainage, etc.
• Reported cumulative frequency distributions, means, 10% decile values, dominant classes
– Landform classifications• 15 and 4 unit
classifications• Gave means,
dominant classes and decile values for attributes for each landform class
http://www1.agric.gov.ab.ca/soils/soils.nsf
Alberta Landforms Project 1999-2000• Morphometric Descriptions for
Each Site
http://www1.agric.gov.ab.ca/soils/soils.nsf
Alberta Landforms Project 1999-2000• Landform Type Morphology
Summarized
http://www1.agric.gov.ab.ca/soils/soils.nsf
Applications of LandMapR to Field Sized Sites 2000-2001• AgAtlas Project
– Norwest Soil Research– 35 Sites across Canada
• Manitoba to BC• Obtained 5 m DEMs• Applied classification• Prepared maps &
reports• Evaluated visually in
field– All appeared
reasonable– Commercial viability
not proven
• SVAECP Project– CARDF Funded Project– 40+ Sites in Alberta
• ¼ section in size• Obtained 5 m DEMs• Applied classification• Prepared 2D and 3D
maps and images• Sampled sites by
landform position– Created Web Site
• “www.infoharvest.ca/svaecp/”
SVAECP Landforms Project 2002• SVAECP
– Soil Variability Analysis for Crop Production• 50+ 250 ha farm
fields• Classified into 4
classes• Samples taken
along transects through classes
• Soil properties did not always vary significantly by landform class
SVAECP Project: Examples of Classified Sites with Complex Hummocky Topography
Rumsey Site (H1h)
Turner Valley Site (IUl)
Stettler Site (H1m)
Mundare Site (H1l)
CEMA Landforms Project 2003
LandMapRVersion 2b
Extended the Single FoxPro Program by Adding WeppMapR
in 2001
Extensions to LandMapR 2001-2002• WeppMapR
Program– An entirely new
module• Reprocessed
FlowMapR output to extract and characterize Wepp spatial entities automatically
• Soil-Landform Program– FoxPro scripts
• Compute likelihood of each soil in each notional landform position
• Automatically allocate soils to defined landform classes
• BC PEM Landforms– Hierarchical
Classification• Changed core
LandMapR program to allow for different classes and rules in different zones
– New options in LandMapR
• Built, applied and evaluated several new rule bases
– FoxPro Scripts• Tile and then
mosaic overlapping DEM tiles
• To process very large areas
Wepp Extension to LandMapR in 2001
• AAFRD Contract 2000-2001– Adopted WEPP as
their primary tool • to investigate runoff
from agricultural lands
• to quantify amounts and rates of phosphorous release from
– Natural sources– Farming operations– Livestock operations
– Contracted LandMapper to• Write extension to
LandMapR to extract Wepp hydrological entities
WeppMapR Extracts Channel Segments and their Associated Hillslopes• Steps involved– Compute
catchments for each channel segment
– Subdivide into left, right & top hillslope components
1.80 km
1.55 km
WeppMapR Computes and Stores Topological Flow Linkages in a DBF File
• WEPP Structure File
• Number hillslope entities sequentially from 1 to n
• Link hillslopes to channels
• WEPP Structure File• Number channel/ impoundment entities
from n+1 to total number of entities (m)
Examples of Wepp Spatial Entities• Salisbury Plain,
UK
• MKMA Region, BC
Mature, eroded well-defined landscape Young, steep, mountainous landscape
Extension to LandMapR to Allocate Soils to Landform Classes in 2002
• Objective– To automatically link
soils to landform class to create soil-landform models
• Methods– Create expert system
rules to link soils to landform position
– Apply rules to compute most likely landform position for each soil
• Result– New FoxPro programs
(scripts)
Use of LandMapR Landform Classes as Input to PEMs in BC in 2001-2002• Advantages of
Using Landform Classes– Can relate landform
classes to Site Series in PEM rules
– Single standardized classes
– Don’t have to develop new landform classes for each BGC Sub-zone
– Can be applied rapidly and cheaply ($0.004 per cell)
– Huge cost reduction relative to traditional manual maps
BC: MKMA Forest Region PEM
50.0 km
45.0 km
• Broad Valleys in BC– Need extra
context– Second
classification– Separate crests
in broad valleys from crests on mountains
– Beginnings of multi level hierarchical classification
– Need techniques for tiling regions
BC: Inveremere Forest Region PEM
172 km EW
• Very Large Area– 172 km EW by
178 km NS (3 M ha)
– 50 Million cells– Defined 11
Tiles• Different
Landform Types in Different Parts of the Area– Defined 2
Zones– Different Rules
in each zone
178 km NS
LandMapRVersion 2c
Major Change to the Single FoxPro Program to Support
Ecological Mapping (PEM) in BC in 2002-2003
Major Changes to LandMapR 2002-2003• Split into 4
Modules– FlowMapR
• Only compute flow once
– FormMapR• Only need to
compute derivatives once per tile
• New and changed derivatives
– FacetMapR• Needed to support
hierarchical rules and outputs
• Needed to rerun classifier many times
– WeppMapR
• New Ideas and Extensions– Hierarchical
Classification• New option in
LandMapR– Required new DBFs
and creation of a new Zone File
– Required ability to read and apply different rule bases
– Non-DEM Inputs• New Geo File in
FacetMapR– Contains new non-
DEM info– Rules consider non-
DEM info
– FoxPro Scripts• To tile and then
mosaic overlapping DEM tiles
The New LandMapR PEM Process
• Hierarchical Approach– Climatic eco-
regionalization• BEC sub-zones &
variants– Physiographic
sub-division• Size & scale of
landforms– Local climate
variation• Frost
accumulation areas
– Parent material variation• Texture & depth
maps– Topographic
setting• Relative
landform position
• Relative moisture regime
• Slope, orientation, others
• Hybrid Methodology– Manual
methods• Big BEC
localization• JMJ materials
mapping• Ad-hoc custom
inputs– Automated
methods• TRIM DEM
analysis– Hydrological
flow – Hills and
hillslopes– Terrain
Derivatives• Image analysis
– LS7 Satellite images
– Orthoimagery
– Boolean & Fuzzy logic
Needed Different Rules and Classes in Different Classification Zones• Boolean
Stratification– Climate and
Vegetation• Big BEC Subzones
– Physiography• Size and scale of
landforms• Frost zones
– Parent Material• JMJ focussed
bioterrain• Texture classes
(coarse)
Image Data Copyright the Province of British Columbia, 2003
Needed to Construct and Apply Different Fuzzy Rule Bases• Attribute Rules
(arules)– Concepts like slope
position, wetness, exposure, gradient
– Direct analogues to concepts used to define Site Series
• Different rules for each Zone
• Can consider non-DEM data
• Class Rules (Site Series) – Class defined by its
attributes• Different classes in each
zone• Different numbers and
types• Changes to DBFs
needed– To allow separate
classes to be defined and output for each
• BGC Sub-zone• Material texture,
depth• Relief type, slope
position
Methods
• Step1– Extract ecological knowledge from field guides
• Step 2– Process DEMs to compute terrain derivatives
• Step 3– Relate digital inputs to defining concepts
• Step 4– Construct fuzzy knowledge rule base
• Step 5– Apply fuzzy knowledge rule bases to digital data
sets• Step 6
– Tune and refine the model using local expert knowledge
• Step 7– Apply final knowledge bases to entire area of
interest• Step 8
– Evaluate accuracy of final maps using independent data
BC PEM Initial Cariboo Pilot Results
15 km
12 km
BC PEM Early Canim Lake Results
71 km EW
47 km NS
10 m GRID
33 Million Cells
12 1:20,000 Map Sheets
BC PEM Cariboo Pilot Accuracy Assessment
Method Accuracy Cost
SoftCopy Site Series 62% $0.64Softcopy Bioterrain 42% $2.161:15 k Photo Bioterrain 57% $2.34DDSS with TRIM DEM 66% $0.47DDSS with Custom DEM 65% $1.30
• Field Sampling Method– Randomly located
radial arm transects
– Classes identified using line intercept method
• Final Accuracy Results– DDSS method
was:• Most accurate
(66%)• Lowest Cost
($0.47/ha)
Source: Moon (2002)
BC PEM Early Experience Conclusions• Reasons for
success– There is a
relationship between landform shape and position and soil or ecological classes
– Even relatively coarse resolution DEMs capture some of this relationship
– Fuzzy heuristic rules can capture and apply inexact human concepts and classifications
• Reasons for error– The
relationship is not always perfect and predictable
– The coarse DEMs miss a significant amount of finer resolution terrain variation• You can’t
classify what you can’t see
– Human constructs are inexact & inconsistent
LandMapRVersion 3 (C++)
Reprogrammed Single LandMapR FoxPro Program
into a Suite of Four Programs in C++ 2003-2005
Overview of the Structure of the Revised C++
LandMapR Programs
The LandMapR ToolkitFlowMapRFormMapRFacetMapRWeppMapR
GridReadWrite
Improvements to LandMapR 2003-2005• New C++
Modules– FlowMapR
• Runs faster on bigger files
• Still produces incorrect mm2fl results
• Endless loop can happen
– FormMapR• Runs faster on
bigger files• Added option to
compute new measures of flow length (L2Str, L2Pit, etc)
• DSS Wetness uses real area instead of cell count only
• New C++ Modules– FacetMapR
• Runs faster on bigger files
• Big change is ability to apply hierarchical rules
• 3 options for output• Different numbers
and types of classes for different regions
– WeppMapR• An entirely new
module• A bit buggy
sometimes• Extracts channels
& hillslopes
Extensions to LandMapR 2003-2005• Major Custom Extensions– Custom Programs
for DSS• Create and fill new
GeoFile• Compute distance
to wetlands• Create and fill new
Zone file• Create and fill a
Location file– Tiling Programs
(rectangles)• Create master or
base files• Cut base files into
tiles• Rebuild tiles into
mosaics– Landform Entity
Programs• Extract pit, peak &
hill sheds• Classify pit, peak
or hill sheds
• Major Custom Extensions– Custom Programs
for City• Re-compute pit
filling• Make maps of
mm2flood• Make maps of
nested pond id– Tiling Programs
(watershed)• Create master or
base files• Cut base files into
tiles• Rebuild tiles into
mosaics by global watershed Ids
– Landform Statistics Program• QDL Stats for Ag
Canada• CEMA Stats for
CEMS
FlowMapR
Computes Flow Topology
Purpose of FlowMapR
0 14 5 8 7 6 25 4 3 2 1
0 1080 100 100 88 75 2063 50 38 25 12
DIVIDE
DIVIDECELL
CELL DRAINAGE DIRECTION (LDD)
PIT CENTRE
CELL DOWNSLOPE LENGTH (LDN)
CELL RELATIVE SLOPE POSITION (PUP)
RELATIVE SLOPE POSITION(Distance down slope from cell to pit Centre as % of maximum)
63
6 2 30
MAXIMUMSLOPE LENGTH
• Cell to cell connectivity– Wanted to
compute various measures of:• Absolute &
relative relief • Slope length
– Wanted to identify• Pits and Peaks• Channels and
Divides• Passes and
Hillslopes
• Act as glue in classifying
FormMapR
Computes Terrain Derivatives
Purpose of FormMapR• Compute Input Data
to Support Classifications– No single program
available to compute all variables of interest for classification
– Decided to create an in-house set of programs to support automated landform classification
– Full suite of derivatives• Mostly existing
algorithms• New relief & slope
length
Image Data Copyright the Province of British Columbia, 2003
FacetMapR
Reads & Applies Fuzzy Classification Rules to
Prepared Input Data Sets
Purpose of FacetMapR
• To Provide a Tool for Classifying Landform-Based Spatial Entities– Wanted to use
fuzzy rules to capture and apply expert human heuristic knowledge
– Wanted to be able to replicate human devised classification systems• Wanted imposed
classes
INVEREMERE, BC 25 m DEMImage Data Copyright the Province of British Columbia, 2003
• Acts as a Classification Engine for Hierarchical Fuzzy Logic Rules– Modified to apply multi-level,
hierarchical classifications• Applies different rules for
different ecological situations• Needs a zone map to define
zones– Modified to be able to use
inputs other than DEM derivatives
• “External” co-registered data sets
• Parent material texture & depth, water, wetlands, rock, imagery, etc.
Image Data Copyright the Province of British Columbia, 2003
Purpose of New Revised FacetMapR
WeppMapR
Extracts Hydrological Spatial Entities from DEM Data
Purpose of WeppMapR
• Extract Hydrological Spatial Entities– Wanted a tool to create WEPP
structure files• For very large data sets• GeoWepp not available
– Reprocess outputs from FlowMapR to extract• Numbered channels• Associated hillslopes• Flow topology
Source: Flanagan et al., 2000
The Revised LandMapR C++ Programs
Application of the LandMapRKnowledge-Based Approach
to PEM Mapping in BC 2003-2008
BC PEM: Application of the Revised LandMapR C++ Programs 2003-2008• BC PEM Project History and Hypotheses Tested at each
Stage– PEM Pilot – 2002/03 (FoxPro Version 2c Programs used)
• Automated methods will be less costly than traditional manual ones
• Intensive manual interpretation and field sampling will produce more accurate maps than those produced by automated modeling
– Canim Lake PEM Operational Scale-up – 2003/04 (FoxPro Version 2c)
• Automated predictive methods aren’t scalable for operational mapping
• Finer resolution DEM data (5 & 10 vs. 25m) will yield more accurate maps
– Quesnel Operational PEM – 2004/05 (Version 3 C++ Programs used)
• Unit costs can go down with efficiencies of scale as larger areas are mapped
• Single sets of KB rules can apply to entire BEC subzones– East Williams Lake Operational PEM – 2005/06
• Local experts can agree on correct classification in the field at 100% of visited locations
• Areas of elevated frost hazard can be predicted to occur in structural hollows
– East Quesnel and West Williams Lake Operational PEMs – 2006/08
• Land Cover information from LandSat imagery is not useful for PEMs
Fundamental Basis of a LMES PEM
• Terrain Analysis– Partition space into
fundamental spatial entities on the basis of:• Landform size &
scale• Landform position• Moisture regime• Landform
shape/slope• Landform
orientation• Hydrological
context• Ancillary
environmental conditions
Image Data Copyright the Province of British Columbia, 2003
Source: Steen and Coupé, 1997
PEM DSS Classification Using LandMapR
Normal Mesic
Moist Foot Slope
Warm SW Slope
Shallow Crest
Organic Wetland
Wet Toe Slope
Cold Frosty Wet
Permanent Lake
PEM DSS Final Cartographic Quality Maps
The Revised LandMapR C++ Programs
Application of the Revised LandMapR C++ Programs
Mapping Depressions or ` Sags` in the City of Edmonton (2005-2006)
Location and Characterization of all Sags in the City of Edmonton in 2005-2006
Location and Characterization of all Sags in the City of Edmonton in 2005-2006
Location and Characterization of all Sags in the City of Edmonton in 2005-2006
Location and Characterization of all Sags in the City of Edmonton in 2005-2006
Location and Characterization of all Sags in the City of Edmonton in 2005-2006
LandMapRVersion 3 C++
Extensions and Add-ons to the LandMapR C++ Programs
2006-2012
Extensions to LandMapR 2006-2012• Major Custom Extensions– Landform Entity
Programs• Extract pit, peak &
hill sheds– LF_Types Script
• Classify pit, peak or hill sheds
– Slope Break Script• Extract nested pits
(or peaks)– Potentially useful?
– New Slope Position (2005)• Relative
Hydrologic Slope Position (RHSP)
– Upslope accumulation area
– Downslope dispersal area
– Divide one by sum of both
• Major Custom Extensions– Polygon
Disaggregation• Extend
FacetMapR– Revise to write out
fuzzy likelihood values for all classes at all grid cells
– Hierarchical – any number of classes of any type in any defined domain or zone
• New Weighted Average Prog
– Computes weighted average values for every soil property and depth at every grid cell location
– Considers 1-N classes
Extraction of Peak Sheds and Hill Sheds
Image Data Copyright the Province of British Columbia, 2003
Peak Sheds as Initial Landform Objects
Image Data Copyright the Province of British Columbia, 2003
Classification of Peak Sheds by Relief
Image Data Copyright the Province of British Columbia, 2003
Classified Peak Shed Areas are Different
Image Data Copyright the Province of British Columbia, 2003
Peak Sheds Classified by Size and Scale
Image Data Copyright the Province of British Columbia, 2003
Zone Map: EcoZone, Landform, PM
Image Data Copyright the Province of British Columbia, 2003
Problem with Hill Sheds and Peak Sheds• Slope Breaks Needed to Partition
Hill Sheds
New Slope Break Custom Program• Trace Down Flow Paths and Mark
Inflections
New Slope Break Custom Program• How Many Slope Breaks is Enough
Nested Pits and Peaks May be Interesting• Add-on to FlowMapR needed for City of
EdmontonExtracts, numbers and maps nested pits
Nested Pits and Peaks May be Interesting• Nested Peaks are just pits in the
inverted DEMMight be able to use this to partition uplands from lowlands
Extension to FlowMapR for Nested Pits and Peaks
• New and Improved Pit Removing Approach– Copies data for
only grid cells located in depressions• Cells below pour
elevation– Only works with
this subset of the full DEM when:• Removing Pits• Computing Pit
Statistics– Many times faster
and more efficient then present• Works with much
smaller files
• Thoughts on Nested Peaks– Presently
equivalent to lowest closed contour around any prominence• Functional
definition of a hill– Use modified
elevation data• Replace original
elevation with elevation to channel
– All stream elevations are 0
• Invert elevation to channel
• Compute nested peaks
• De-trended nested peaks
Image Data Copyright the Province of British Columbia, 2003
New Measure of Relative Slope Position: RHSP
• Relative Hydrologic Slope Pos
• Percent Z Channel to Divide
RELATIVE TO MAIN STREAM CHANNELSSENSITIVE TO HOLLOWS & DRAWS
Source: MacMillan, 2005
RHSP: Relative Hydrologic Slope Position as Implemented in SAGA• SAGA-RHSP:
relative hydrologic slope position
• SAGA-RHSP with soil polygons overlaid
Calculation based on: MacMillan, 2005
Source: C. Bulmer, unpublished
FacetMapR Modified to Support Polygon Disaggregation• New Output
Option– Writes out all
fuzzy likelihood values• For every grid cell• For all defined
classes– Classes can vary
by cell• Every cell can
have different numbers and types of fuzzy classes
• Controlled by a Map Zone identifier
• Rules by Map_Zone
New FoxPro Script Computes Soil Property Values by Weighted Average
New FoxPro Script Computes Soil Property Values by Weighted Average
Original Map of Clay by Method of Polygon Averaging
Thank You