Upload
otb
View
2.477
Download
7
Tags:
Embed Size (px)
DESCRIPTION
Slides presented at IGARSS 2010 during OTB/Monteverdi tutorial at Honolulu
Citation preview
IGARSS 2010, Honolulu
Pragmatic Remote SensingA Hands-on Approach to Processing
J. Inglada1 , E. Christophe2
1CENTRE D’ÉTUDES SPATIALES DE LA BIOSPHÈRE, TOULOUSE, FRANCE
2CENTRE FOR REMOTE IMAGING, SENSING AND PROCESSING,NATIONAL UNIVERSITY OF SINGAPORE
This content is provided under a Creative Commons Attribution 3.0 Unported License
IGARSS 2010, Honolulu
Table of Contents
1. General introduction2. Pre-processing
2.1 Geometric corrections2.2 Radiometric corrections
3. Feature extraction4. Image classification5. Change detection
IGARSS 2010, Honolulu
Introduction to the Orfeo Toolbox Applications and librairy
Pragmatic Remote SensingA Hands-on Approach to Processing
J. Inglada1 , E. Christophe2
1CENTRE D’ÉTUDES SPATIALES DE LA BIOSPHÈRE, TOULOUSE, FRANCE
2CENTRE FOR REMOTE IMAGING, SENSING AND PROCESSING,NATIONAL UNIVERSITY OF SINGAPORE
This content is provided under a Creative Commons Attribution 3.0 Unported License
IGARSS 2010, Honolulu
Introduction to the Orfeo Toolbox Applications and librairy
Why?
Common problems
I Reading imagesI Accessing metadataI Implementing state of the art algorithms
⇒ to be able to extract the most information, we need to usethe best of what is available: data, algorithms,. . .
IGARSS 2010, Honolulu
Introduction to the Orfeo Toolbox Applications and librairy What When Why How
What is Orfeo Toolbox (OTB)?
In the frame of CNES ORFEO Program
GoalMake the development of new algorithms and their validationeasier
I C++ library: provide many algorithms (pre-processing,image analysis) with a common interface
I Open-source: free to use, to modify, you can make yourown software based on OTB and sell it
I Multiplatform: Windows, Linux, Unix, Mac
IGARSS 2010, Honolulu
Introduction to the Orfeo Toolbox Applications and librairy What When Why How
A bit of History
Everything begins (2006)I Started in 2006 by CNES (French Space Agency), funding several full-time
developersI Targeted at high resolution images (Pleiades to be launched in 2010) but with
application to other sensorsI 4 year budget, over 1,000,000e recently renewed for 1 additional year
(500,000e)
Moving to user friendly applications (2008)I Strong interactions with the end-user community highlighted that applications for
non-programmers are importantI Several applications for non programmers (with GUI) since early 2008I Several training courses (3/5-day courses) given in France, Belgium,
Madagascar, UNESCO and now Hawaii
IGARSS 2010, Honolulu
Introduction to the Orfeo Toolbox Applications and librairy What When Why How
Why doing that?
Is it successful so far?I OTB user community growing steadily (programmers and application users)I Presented at IGARSS and ISPRS in 2008, special session in IGARSS in 2009I CNES is planning to extend the budget for several more yearsI Value analysis is very positive (cf. Ohloh): re-using is powerful
Why make a multi-million dollar software and give it forfree?
I CNES is not a software companyI One goal is to encourage research: it is critical for researchers to know what is in
the boxI CNES makes satellites and wants to make sure the images are usedI if more people have the tools to use satellite images, it is good for CNES
IGARSS 2010, Honolulu
Introduction to the Orfeo Toolbox Applications and librairy What When Why How
How?
How to reach this goal?Using the best work of others: do not reinvent the wheel
Many open-source libraries of good qualityI ITK: software architecture (streaming, multithreading), many image processing
algorithmsI Gdal/Ogr: reading data format (geotiff, raw, png, jpeg, shapefile, . . . )I Ossim: sensor models (Spot, RPC, SAR, . . . ) and map projectionsI 6S: radiometric correctionsI and many other: libLAS (lidar data), Edison (Mean Shift clustering), libSiftFast
(SIFT), Boost (graph), libSVM (Support Vector Machines)
⇒ all behind a common interface
IGARSS 2010, Honolulu
Introduction to the Orfeo Toolbox Applications and librairy Components Architecture But Monteverdi Bindings
Application
CurrentlyI Image viewerI Image SegmentationI Image Classification (by SVM)I Land CoverI Feature ExtractionI Road ExtractionI Orthorectification (with Pan Sharpening)I Fine registrationI Image to database registrationI Object countingI Urban area detectionI more to come
IGARSS 2010, Honolulu
Introduction to the Orfeo Toolbox Applications and librairy Components Architecture But Monteverdi Bindings
Components available
CurrentlyI Most satellite image formatsI Geometric correctionsI Radiometric correctionsI Change detectionI Feature extractionI Classification
Huge documentation availableI Software Guide (+600 pages pdf), also the online versionI Doxygen: documentation for developers
IGARSS 2010, Honolulu
Introduction to the Orfeo Toolbox Applications and librairy Components Architecture But Monteverdi Bindings
A powerful architecture
ModularI Easy to combine different blocks to do new processing
ScalableI Streaming (processing huge images on the flow) transparent for the user of the
libraryI Multithreading (using multicore CPUs) also
IGARSS 2010, Honolulu
Introduction to the Orfeo Toolbox Applications and librairy Components Architecture But Monteverdi Bindings
But a steep learning curve for the programmerAdvanced programming concepts
I Template metaprogramming (generic programming)I Design patterns (Factory, Functors, Smart Pointers, ...)
Steep learning curve
Task complexity
Effo
rt learning OTBsolution from scratch
IGARSS 2010, Honolulu
Introduction to the Orfeo Toolbox Applications and librairy Components Architecture But Monteverdi Bindings
Ask questions
As for everything: easier when you’re not aloneI Much easier if you have somebody around to help!I We didn’t know anything not so long ago...I Not surprising that most software companies now focus their offer on support:
help is important
IGARSS 2010, Honolulu
Introduction to the Orfeo Toolbox Applications and librairy Components Architecture But Monteverdi Bindings
Making it easier for the users: Monteverdi
Module architectureI Standard input/outputI Easy to customize for a specific
purposeI Full streaming or caching the dataI Each module follows a MVC pattern
IGARSS 2010, Honolulu
Introduction to the Orfeo Toolbox Applications and librairy Components Architecture But Monteverdi Bindings
Making it easier for the users: Monteverdi
IGARSS 2010, Honolulu
Introduction to the Orfeo Toolbox Applications and librairy Components Architecture But Monteverdi Bindings
Bindings: access through other languages
Not everybody uses C++!I Bindings provide an access to the library through other languagesI Python: availableI Java: availableI IDL/Envi: cooperation with ITT VIS to provide a method to access OTB through
idl/envi (working but no automatic generation)I Matlab: recent user contribution (R. Bellens from TU Delft)I Other languages supported by Cable Swig might be possible (Tcl, Ruby?)
IGARSS 2010, Honolulu
Introduction Atmospheric corrections Pansharpening
Image radiometry in ORFEO ToolboxFrom digital number to reflectance
J. Inglada1 , E. Christophe2
1CENTRE D’ÉTUDES SPATIALES DE LA BIOSPHÈRE, TOULOUSE, FRANCE
2CENTRE FOR REMOTE IMAGING, SENSING AND PROCESSING,NATIONAL UNIVERSITY OF SINGAPORE
This content is provided under a Creative Commons Attribution 3.0 Unported License
IGARSS 2010, Honolulu
Introduction Atmospheric corrections Pansharpening
Introduction
Purpose of radiometry
I Go back to the physics from the image
6SI Using 6S library: http://6s.ltdri.org/I Library heavily tested and validated by the communityI Translation from the Fortran code to CI Transparent integration to OTB for effortless (almost!)
corrections by the user
IGARSS 2010, Honolulu
Introduction Atmospheric corrections Pansharpening DN to lum lum to ref ToA to ToC Adjacency effects Hands On
Atmospheric corrections: in four steps
DN toLum
Lum toRefl
TOA toTOC
Adjacency
Look like a pipelineThis is fully adapted to the pipeline architecture of OTB
IGARSS 2010, Honolulu
Introduction Atmospheric corrections Pansharpening DN to lum lum to ref ToA to ToC Adjacency effects Hands On
Digital number to luminance
GoalI Transform the digital number in the
image into luminance
Using the classotb::ImageToLuminanceImageFilterfilterImageToLuminance->SetAlpha(alpha);filterImageToLuminance->SetBeta(beta);
LkTOA =
X k
αk+ βk
I LkTOA is the
incidentluminance (inW .m−2.sr−1.µm−1)
I Xk digital numberI αk absolute
calibration gainfor channel k
I βk absolutecalibration biasfor channel k
IGARSS 2010, Honolulu
Introduction Atmospheric corrections Pansharpening DN to lum lum to ref ToA to ToC Adjacency effects Hands On
How to get these parameters?From metadata
I Sometimes, the information can be present in the metadata but. . .I the specific format has to be supported (Spot, Quickbird, Ikonos are
and more on the way)
From an ASCII file
VectorType alpha(nbOfComponent);alpha.Fill(0);std::ifstream fin;fin.open(filename);double dalpha(0.);for( unsigned int i=0 ; i < nbOfComponent ; i++){
fin >> dalpha;alpha[i] = dalpha;
}fin.close();
IGARSS 2010, Honolulu
Introduction Atmospheric corrections Pansharpening DN to lum lum to ref ToA to ToC Adjacency effects Hands On
Luminance to reflectance
GoalI Transform the luminance into the
reflectanceUsing the class otb::LuminanceToReflectanceImageFilterand setting parameters:filterLumToRef->SetZenithalSolarAngle(zenithSolar);filterLumToRef-> SetDay(day);filterLumToRef-> SetMonth(month);filterLumToRef->SetSolarIllumination(solarIllumination);
ρkTOA =
π.LkTOA
EkS .cos(θS).d/d0
I rhokTOA reflectance
I θS zenithal solar angle
I EkS solar illumination out
of atmosphere at adistance d0 from the Earth
I d/d0 ratio betweenEarth-Sun distance at theacquisition and averageEarth-Sun distance
IGARSS 2010, Honolulu
Introduction Atmospheric corrections Pansharpening DN to lum lum to ref ToA to ToC Adjacency effects Hands On
Top of atmosphere to top of canopy
GoalI Compensate for the atmospheric effects
ρunifS =
A1 + SxA A =
ρTOA − ρatm
T (µS).T (µV ).tallgasg
I ρTOA reflectance at the top of the atmosphereI ρunif
S ground reflectance under assumption of a lambertiansurface and an uniform environment
I ρatm intrinsic atmospheric reflectanceI tallgas
g spherical albedo of the atmosphereI T (µS) downward transmittanceI T (µV ) upward transmittance
IGARSS 2010, Honolulu
Introduction Atmospheric corrections Pansharpening DN to lum lum to ref ToA to ToC Adjacency effects Hands On
Top of Atmosphere to top of canopy
I Using the class otb::ReflectanceToSurfaceReflectanceImageFilterfilterToAtoToC->SetAtmosphericRadiativeTerms(correctionParameters);
I These parameters are filtered by theotb::AtmosphericCorrectionParametersTo6SAtmosphericRadiativeTerms from theotb::AtmosphericCorrectionParameter class
I this later class has the methods:parameters->SetSolarZenithalAngle();parameters->SetSolarAzimutalAngle();parameters->SetViewingZenithalAngle();parameters->SetViewingAzimutalAngle();parameters->SetMonth();parameters->SetDay();parameters->SetAtmosphericPressure();parameters->SetWaterVaporAmount();parameters->SetOzoneAmount();parameters->SetAerosolModel();parameters->SetAerosolOptical();
IGARSS 2010, Honolulu
Introduction Atmospheric corrections Pansharpening DN to lum lum to ref ToA to ToC Adjacency effects Hands On
Adjacency effects
GoalI Correct the adjacency effect on
the radiometry of pixels
Using the classotb::SurfaceAdjacencyEffect6SCorrectionSchemeFilter
with the parametersfilterAdjacency->SetAtmosphericRadiativeTerms();filterAdjacency->SetZenithalViewingAngle();filterAdjacency->SetWindowRadius();filterAdjacency->SetPixelSpacingInKilometers();
ρS =ρunif
S .T (µV )− < ρS > .td (µv )
exp(−δ/µv )
I ρunifS ground reflectance
assuming homogeneousenvironment
I T (µV ) upwardtransmittance
I td (µS) upward diffusetransmittance
I exp(−δ/µv ) upwarddirect transmittance
I ρS environmentcontribution to the pixeltarget reflectance in thetotal observed signal
IGARSS 2010, Honolulu
Introduction Atmospheric corrections Pansharpening DN to lum lum to ref ToA to ToC Adjacency effects Hands On
Hands On
1. Monteverdi: Calibration→ Optical calibration2. Select the image to correct3. Look at the parameters that are retrieved from the image
metadata4. Apply the correction5. Look at the different levels
IGARSS 2010, Honolulu
Introduction Atmospheric corrections Pansharpening
PansharpeningBring radiometric information to high resolution image
IGARSS 2010, Honolulu
Introduction Atmospheric corrections Pansharpening
Hands On
1. Monteverdi: Open two images, one PAN and one XS in thesame geometry
2. Monteverdi: Filtering→ Pan Sharpening
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections
Image geometry in ORFEO ToolboxSensor models and map projections
J. Inglada1 , E. Christophe2
1CENTRE D’ÉTUDES SPATIALES DE LA BIOSPHÈRE, TOULOUSE, FRANCE
2CENTRE FOR REMOTE IMAGING, SENSING AND PROCESSING,NATIONAL UNIVERSITY OF SINGAPORE
This content is provided under a Creative Commons Attribution 3.0 Unported License
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections
Introduction
Input Series
SensorModel
DEM
Geo-referenced Series
HomologousPoints
Bundle-blockAdjustment
FineRegis-tration
Registered Series
MapProjec-tion
Cartographic Series
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections
Outline of the presentation
Sensor models
OptimizationsBundle-block adjustmentFine registration
Map projections
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections
Sensor modelsWhat is a sensor model
Gives the relationship between image (l , c) and ground (X ,Y )coordinates for every pixel in the image.
ForwardX = fx (l , c,h, ~θ) Y = fy (l , c,h, ~θ)
Inversel = gl(X ,Y ,h, ~θ) c = gc(X ,Y ,h, ~θ)
Where ~θ is the set of parameters which describe the sensorand the acquisition geometry.Height (DEM) must be known.
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections
Sensor modelsTypes of sensor models
I Physical modelsI Rigorous, complex, highly non-linear equations of the
sensor geometry.I Usually, difficult to invert.I Parameters have a physical meaning.I Specific to each sensor.
I General analytical modelsI Ex: polynomial, rational functions, etc.I Less accurate.I Easier to use.I Parameters may have no physical meaning.
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections
Sensor modelsOTB’s Approach
I Use factories: models are automatically generated usingimage meta-data.
I Currently tested models:I RPC models: Quickbird, IkonosI Physical models: SPOT5I SAR models: ERS, ASAR, Radarsat, Cosmo, TerraSAR-X,
PalsarI Under development:
I Formosat, WorldView 2
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections
Hands On
1. Monteverdi: Open a Quickbird image in sensor geometry2. Display the image3. Observe how the geographic coordinates are computed
when the cursor moves around the image
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections
Sensor modelsHow to use them: ortho-registration
1. Read image meta-data and instantiate the model with thegiven parameters.
2. Define the ROI in ground coordinates (this is your outputpixel array)
3. Iterate through the pixels of coordinates (X ,Y ):3.1 Get h from the DEM3.2 Compute (c, l) = G(X ,Y ,h, ~θ)3.3 Interpolate pixel values if (c, l) are not grid coordinates.
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections
Hands On
1. Monteverdi: Geometry → Orthorectification2. Select the image to orthorectify3. Set the parameters4. Save the result5. Repeat for the other image with the same parameters6. Display the two images together
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections
Sensor modelsLimits of the approach
I Accurate geo-referencing needs:I Accurate DEMI Accurate sensor parameters, ~θ
I For time image series we need accurate co-registration:I Sub-pixel accuracyI For every pixel in the scene
I Current DEM’s and sensor parameters can not give thisaccuracy.
I Solution: use redundant information in the image series!
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections BBA Fine registration
Bundle-block adjustmentProblem position
I The image series isgeo-referenced (using theavailable DEM, and theprior sensor parameters).
I We assume thathomologous points (GCPs,etc.) can be easilyobtained from thegeo-referenced series :HPi = (Xi ,Yi ,hi)
I For each image, and eachpoint, we can write:(lij , cij) = Gj(Xi ,Yi ,hi , ~θj)
G1(Xi ,Yi ,hi ,~θ1)G2(Xi ,Yi ,hi ,~θ2)
I Everything is known.
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections BBA Fine registration
Bundle-block adjustmentModel refinement
I If we define ~θRj = ~θj + ~∆θj as the refined parameters, ~∆θj
are the unknowns of the model refinement problem.I We have much more equations than unknowns if enough
HPs are found.I We solve using non-linear least squares estimation.
I The derivatives of the sensor model with respect to itsparameters are needed.
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections BBA Fine registration
Hands OnManually register 2 images
I Monteverdi: Geometry → Homologous points extraction
I Select 2 images with a common region
I The GUI lets you select a transformation
I You can select homologous points in the zoom images and addthem to the list
I When several homologous points are available, you can evaluatethe transform
I Once the transform is evaluated, you can use the guess buttonto predict the position in the moving image of a point selected inthe fixed image
I The GUI displays the parameters of the transform estimated aswell as individual error for each point and the MSE
I You can remove from the list the points with higher error
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections BBA Fine registration
Why fine registration?
I Homologous points have been used to refine the sensormodel
I Residual misregistrations exist because of:I DEM errorsI Sensor model approximationsI Surface objects (high resolution imagery)
I We want to find the homologous pointI of every pixel in the reference imageI with sub-pixel accuracy
I This is called disparity map
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections BBA Fine registration
Fine registration (under development)
Reference Image Secondary Image
Candidate points
Estimation window
Search window
Similarity estimation
Similarity optimization
Optimum
∆x ,∆y
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections
Map projectionsWhat is a map projection
Gives the relationship between geographic (X ,Y ) andcartographic (x , y) coordinates.
Forwardx = fx (X ,Y , ~α) y = fy (X ,Y , ~α)
InverseX = gX (x , y , ~α) Y = gy (x , y , ~α)
Where ~α is the set of parameters of a given map projection.
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections
Map projectionsTypes of map projections
I OTB implements most of the OSSIM ones:I 30 map projections are available among which: UTM,
TransMercator, LambertConformalConic, etc.I For any Xyz projection theotb::XyzForwardProjection and theotb::XyzInverseProjection are available.
I Change of projections can be implemented by using oneforward, one inverse and theotb::CompositeTransform class.
I One-step ortho-registration can be implemented bycombining a sensor model and a map projection.
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections
Hands OnChanging image projections
I Monteverdi: Geometry → Reproject ImageI Select an orthorectified image as input imageI Select the projection you want as outputI Save/Quit
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections
Hands OnApply the geometry of one image to another
I Monteverdi: Geometry → Superimpose 2 ImagesI Select any as image image to reprojectI Select an orthorectified image as reference image
I Make sure the 2 images have a common region!I Use the same DEM (if any) as for the ortho-rectified imageI Save/Quit
IGARSS 2010, Honolulu
Introduction Models Optimizations Map projections
As a conclusion
1. Use a good sensor model if it exists2. Use a good DEM if you have it3. Improve you sensor parameters after a first
geo-referencing pass4. Fine-register your series5. Use a map projection
I All these steps can be performed with OTB/Monteverdi.I Sensor model + map projection using a DEM are available
as a one-step filter in OTB.
IGARSS 2010, Honolulu
Introduction Radiometry Textures Other
Pragmatic Remote SensingFeatures
J. Inglada1 , E. Christophe2
1CENTRE D’ÉTUDES SPATIALES DE LA BIOSPHÈRE, TOULOUSE, FRANCE
2CENTRE FOR REMOTE IMAGING, SENSING AND PROCESSING,NATIONAL UNIVERSITY OF SINGAPORE
This content is provided under a Creative Commons Attribution 3.0 Unported License
IGARSS 2010, Honolulu
Introduction Radiometry Textures Other
Features
Expert knowledge
I Features are a way to bring relevant expert knowledge tolearning algorithms
I Different type of feature: radiometric indices, textures,. . .I Important to be able to design your own indices according
to the applicationI See poster TUP1.PD.9 “MANGROVE DETECTION FROM
HIGH RESOLUTION OPTICAL DATA”, Tuesday, July 27,09:40 - 10:45 by Emmanuel Christophe, Choong MinWong and Soo Chin Liew
IGARSS 2010, Honolulu
Introduction Radiometry Textures Other
Radiometric index
Most popular is the NDVI: Normalized Difference VegetationIndex [1]
NDVI =LNIR − Lr
LNIR + Lr(1)
J. W. Rouse. “Monitoring the vernal advancement and retrogradation ofnatural vegetation,”Type ii report, NASA/GSFCT, Greenbelt, MD, USA,1973. 12.1.1
IGARSS 2010, Honolulu
Introduction Radiometry Textures Other
Vegetation indices 1/3
RVI Ratio Vegetation Index [1]PVI Perpendicular Vegetation Index [2, 3]
SAVI Soil Adjusted Vegetation Index [4]TSAVI Transformed Soil Adjusted Vegetation Index [6, 5]
R. L. Pearson and L. D. Miller. Remote mapping of standing crop biomass for estimation of the productivity ofthe shortgrass prairie, pawnee national grasslands, colorado. In Proceedings of the 8th InternationalSymposium on Remote Sensing of the Environment II, pages 1355–1379, 1972.
A. J. Richardson and C. L. Wiegand. Distinguishing vegetation from soil background information.Photogrammetric Engineering and Remote Sensing, 43(12):1541–1552, 1977.
C. L. Wiegand, A. J. Richardson, D. E. Escobar, and A. H. Gerbermann. Vegetation indices in cropassessments. Remote Sensing of Environment, 35:105–119, 1991.
A. R. Huete. A soil-adjusted vegetation index (SAVI). Remote Sensing of Environment, 25:295–309, 1988.
E. Baret and G. Guyot. Potentials and limits of vegetation indices for LAI and APAR assessment. RemoteSensing of Environment, 35:161–173, 1991.
E. Baret, G. Guyot, and D. J. Major. TSAVI: A vegetation index which minimizes soil brightness effects on LAIand APAR estimation. In Proceedings of the 12th Canadian Symposium on Remote Sensing, Vancouver,Canada, pages 1355–1358, 1989.
IGARSS 2010, Honolulu
Introduction Radiometry Textures Other
Vegetation indices 2/3
MSAVI Modified Soil Adjusted Vegetation Index [1]MSAVI2 Modified Soil Adjusted Vegetation Index [1]GEMI Global Environment Monitoring Index [2]WDVI Weighted Difference Vegetation Index [3, 4]AVI Angular Vegetation Index [5]
J. Qi, A. . Chehbouni, A. Huete, Y. Kerr, and S. Sorooshian. A modified soil adjusted vegetation index.Remote Sensing of Environment, 47:1–25, 1994.
B. Pinty and M. M. Verstraete. GEMI: a non-linear index to monitor global vegetation from satellites.Vegetatio, 101:15–20, 1992.
J. Clevers. The derivation of a simplified reflectance model for the estimation of leaf area index. RemoteSensing of Environment, 25:53–69, 1988.
J. Clevers. Application of the wdvi in estimating lai at the generative stage of barley. ISPRS Journal ofPhotogrammetry and Remote Sensing, 46(1):37–47, 1991.
S. Plummer, P. North, and S. Briggs. The Angular Vegetation Index (AVI): an atmospherically resistant indexfor the Second Along-Track Scanning Radiometer (ATSR-2). In Sixth International Symposium on PhysicalMeasurements and Spectral Signatures in Remote Sensing, Val d’Isere, 1994.
IGARSS 2010, Honolulu
Introduction Radiometry Textures Other
Vegetation indices 3/3
ARVI Atmospherically Resistant Vegetation Index [1]TSARVI Transformed Soil Adjusted Vegetation Index [1]
EVI Enhanced Vegetation Index [2, 3]IPVI Infrared Percentage Vegetation Index [4]
TNDVI Transformed NDVI [5]
Y. J. Kaufman and D. Tanré. Atmospherically Resistant Vegetation Index (ARVI) for EOS-MODIS.Transactions on Geoscience and Remote Sensing, 40(2):261–270, Mar. 1992.
A. R. Huete, C. Justice, and H. Liu. Development of vegetation and soil indices for MODIS-EOS. RemoteSensing of Environment, 49:224–234, 1994.
C. O. Justice, et al. The moderate resolution imaging spectroradiometer (MODIS): Land remote sensing forglobal change research. IEEE Transactions on Geoscience and Remote Sensing, 36:1–22, 1998.
R. E. Crippen. Calculating the vegetation index faster. Remote Sensing of Environment, 34(1):71–73, 1990.
D. W. Deering, J. W. Rouse, R. H. Haas, and H. H. Schell. Measuring f̈orage productionöf grazing units fromLandsat-MSS data. In Proceedings of the Tenth International Symposium on Remote Sensing of theEnvironment. ERIM, Ann Arbor, Michigan, USA, pages 1169–1198, 1975.
IGARSS 2010, Honolulu
Introduction Radiometry Textures Other
Example: NDVI
IGARSS 2010, Honolulu
Introduction Radiometry Textures Other
Soil indices
IR Redness Index [1]IC Color Index [1]IB Brilliance Index [2]IB2 Brilliance Index [2]
P. et al. Caracteristiques spectrales des surfaces sableuses de la region cotiere nord-ouest de l’Egypte:application aux donnees satellitaires Spot. In 2eme Journeees de Teledetection: Caracterisation et suivi desmilieux terrestres en regions arides et tropicales, pages 27–38. ORSTOM, Collection Colloques etSeminaires, Paris, Dec. 1990.
E. Nicoloyanni. Un indice de changement diachronique appliqué deux sècnes Landsat MSS sur Athènes(grèce). International Journal of Remote Sensing, 11(9):1617–1623, 1990.
IGARSS 2010, Honolulu
Introduction Radiometry Textures Other
Example: IC
IGARSS 2010, Honolulu
Introduction Radiometry Textures Other
Water indicesSRWI Simple Ratio Water Index [1]NDWI Normalized Difference Water Index [2]NDWI2 Normalized Difference Water Index [3]MNDWI Modified Normalized Difference Water Index [4]NDPI Normalized Difference Pond Index [5]NDTI Normalized Difference Turbidity Index [5]SA Spectral Angle
P. J. Zarco-Tejada and S. Ustin. Modeling canopy water content for carbon estimates from MODIS data atland EOS validation sites. In International Geoscience and Remote Sensing Symposium, IGARSS ’01,pages 342–344, 2001.
B. cai Gao. NDWI - a normalized difference water index for remote sensing of vegetation liquid water fromspace. Remote Sensing of Environment, 58(3):257–266, Dec. 1996.
S. K. McFeeters. The use of the normalized difference water index (NDWI) in the delineation of open waterfeatures. International Journal of Remote Sensing, 17(7):1425–1432, 1996.
H. Xu. Modification of normalised difference water index (ndwi) to enhance open water features in remotelysensed imagery. International Journal of Remote Sensing, 27(14):3025–3033, 2006.
J. Lacauxa, Y. T. andC. Vignollesa, J. Ndioneb, and M. Lafayec. Classification of ponds from high-spatialresolution remote sensing: Application to rift valley fever epidemics in senegal. Remote Sensing ofEnvironment, 106(1):66–74, 2007.
IGARSS 2010, Honolulu
Introduction Radiometry Textures Other
Example: NDWI2
IGARSS 2010, Honolulu
Introduction Radiometry Textures Other
Built-up indices
NDBI Normalized Difference Built Up Index [1]ISU Index Surfaces Built [2]
Y. Z. J. G. S. Ni. Use of normalized difference built-up index in automatically mapping urban areas from TMimagery. International Journal of Remote Sensing, 24(3):583–594, 2003.
A. Abdellaoui and A. Rougab. Caractérisation de la reponse du bâti: application au complexe urbain de Blida(Algérie). In Télédétection des milieux urbains et périurbains, AUPELF - UREF, Actes des sixièmes Journéesscientifiques du réseau Télédétection de l’AUF, pages 47–64, 1997.
IGARSS 2010, Honolulu
Introduction Radiometry Textures Other
Texture
Energy f1 =∑
i,j g(i, j)2
Entropy f2 = −∑i,j g(i, j) log2 g(i, j), or 0 if g(i, j) = 0
Correlation f3 =∑
i,j(i−µ)(j−µ)g(i,j)
σ2
Difference Moment f4 =∑
i,j1
1+(i−j)2g(i, j)
Inertia (a.k.a. Contrast) f5 =∑
i,j (i − j)2g(i, j)
Cluster Shade f6 =∑
i,j ((i − µ) + (j − µ))3g(i, j)
Cluster Prominence f7 =∑
i,j ((i − µ) + (j − µ))4g(i, j)
Haralick’s Correlation f8 =
∑i,j (i,j)g(i,j)−µ2
tσ2
t
Robert M. Haralick, K. Shanmugam, and Its’Hak Dinstein, “Textural features for image classification,” IEEETransactions on Systems, Man and Cybernetics, vol. 3, no. 6, pp. 610–621, Nov 1973.
IGARSS 2010, Honolulu
Introduction Radiometry Textures Other
Example: Inertia on the green channel
IGARSS 2010, Honolulu
Introduction Radiometry Textures Other
Using these elements to build others
Example: distance to water
IGARSS 2010, Honolulu
Introduction Radiometry Textures Other
Hands On
1. Monteverdi: Filtering→ Feature extraction2. Select the image to extract the features3. Choose the feature to generate4. Try different parameters and look at the preview5. Using the output tab, pick the relevant features6. Generate the feature image
IGARSS 2010, Honolulu
Intro Unsupervised Supervised Object oriented
Pragmatic Remote SensingImage Classification
J. Inglada1 , E. Christophe2
1CENTRE D’ÉTUDES SPATIALES DE LA BIOSPHÈRE, TOULOUSE, FRANCE
2CENTRE FOR REMOTE IMAGING, SENSING AND PROCESSING,NATIONAL UNIVERSITY OF SINGAPORE
This content is provided under a Creative Commons Attribution 3.0 Unported License
IGARSS 2010, Honolulu
Intro Unsupervised Supervised Object oriented
Outline of the presentation
What is classification
Unsupervised classification
Supervised classification
Object oriented classification
IGARSS 2010, Honolulu
Intro Unsupervised Supervised Object oriented
What is classification
I Classification is the procedure of assigning a class label toobjects (pixels in the image)
I SupervisedI UnsupervisedI Pixel-basedI Object oriented
IGARSS 2010, Honolulu
Intro Unsupervised Supervised Object oriented
What can be used for classification
I Raw imagesI Extracted features
I Radiometric indices: NDVI, brightness, color, spectralangle, etc.
I Statistics, textures, etc.I Transforms: PCA, MNF, wavelets, etc.
I Ancillary dataI DEM, Maps, etc.
IGARSS 2010, Honolulu
Intro Unsupervised Supervised Object oriented
Classification in a nutshell
I Select the pertinent attributes (features, etc.)I Stack them into a vector for each pixelI Select the appropriate label (in the supervised case)I Feed your classifier
IGARSS 2010, Honolulu
Intro Unsupervised Supervised Object oriented
Unsupervised classification
I Also called clusteringI Needs interpretation (relabeling)
I Class labels are just numbersI No need for ground truth/examples
I But often, the number of classes has to be manuallyselected
I Other parameters tooI Examples: k-means, ISO-Data, Self Organizing Map
IGARSS 2010, Honolulu
Intro Unsupervised Supervised Object oriented
Example: K-means clustering1. k initial "means" are randomlyselected from the data set.
2. k clusters are created by associating everyobservation with the nearest mean. The partitions hererepresent the Voronoi diagram generated by the means.
3. The centroid of each of the k clusters becomes the new means.
Steps 2 and 3 are repeated until convergence has been reached.
Image credits: Wikipedia
IGARSS 2010, Honolulu
Intro Unsupervised Supervised Object oriented
Example: 5 class K-means
IGARSS 2010, Honolulu
Intro Unsupervised Supervised Object oriented
Hands On
1. Monteverdi: Learning → KMeans Clustering2. Select the image to classify3. You can use only a subset of the pixels to perform the
centroid estimation4. Select an appropriate number of classes for your image5. Set the number of iterations and the convergence threshold6. Run
IGARSS 2010, Honolulu
Intro Unsupervised Supervised Object oriented
Supervised classification
I Needs examples/ground truthI Examples can have thematic labels
I Land-Use vs Land-CoverI Examples: neural networks, Bayesian maximum likelihood,
Support Vector Machines
IGARSS 2010, Honolulu
Intro Unsupervised Supervised Object oriented
Example: SVM
H3 (green) doesn’t separate the 2 classes. Maximum-margin hyperplane and margins for aH1 (blue) does, with a small margin. SVM trained with samples from two classes.H2 (red) with the maximum margin. Samples on the margin are called the support vectors.
Image credits: Wikipedia
IGARSS 2010, Honolulu
Intro Unsupervised Supervised Object oriented
Example: 6 class SVMWater, vegetation, buildings, roads, clouds, shadows
IGARSS 2010, Honolulu
Intro Unsupervised Supervised Object oriented
Hands On
1. Monteverdi: Learning → SVM Classification2. Select the image to classify3. Add a class
I You can give it a name, a color4. Select samples for each class
I Draw polygons and use the End Polygon to close themI You can assign polygons to either the training or the test
sets; or you can use the random selection
5. Learn6. Validate: displays a confusion matrix and the classification
accuracy7. Display results
IGARSS 2010, Honolulu
Intro Unsupervised Supervised Object oriented
Object oriented classification
I Pixels may not be the best way to describe the classes ofinterest
I shape, size, and other region-based characteristics may bemore meaningful
I We need to provide the classifier a set of regionsI Image segmentation
I And their characteristicsI Compute features per region
I Since individual objects are meaningful, active learningcan be implemented
I See presentation WE2.L06.2 “LAZY YET EFFICIENTLAND-COVER MAP GENERATION FOR HR OPTICALIMAGES”, Wednesday, July 28, 10:25 - 12:05, by JulienMichel, Julien Malik and Jordi Inglada.
IGARSS 2010, Honolulu
Intro Unsupervised Supervised Object oriented
No hands on
But a demo if the time allows it!
IGARSS 2010, Honolulu
Strategies Detectors Application
Pragmatic Remote SensingChange Detection
J. Inglada1 , E. Christophe2
1CENTRE D’ÉTUDES SPATIALES DE LA BIOSPHÈRE, TOULOUSE, FRANCE
2CENTRE FOR REMOTE IMAGING, SENSING AND PROCESSING,NATIONAL UNIVERSITY OF SINGAPORE
This content is provided under a Creative Commons Attribution 3.0 Unported License
IGARSS 2010, Honolulu
Strategies Detectors Application
Outline of the presentation
Classical strategies for change detection
Available detectors in OTB
Interactive Change Detection
IGARSS 2010, Honolulu
Strategies Detectors Application
Possible approaches
I Strategy 1: Simple detectorsProduce an image of change likelihood (by differences,ratios or any other approach) and thresholding it in order toproduce the change map.
I Strategy 2: Post Classification ComparisonObtain two land-use maps independently for each date andcomparing them.
I Strategy 3: Joint classificationProduce the change map directly from a joint classificationof both images.
IGARSS 2010, Honolulu
Strategies Detectors Application
Available detectors
I Pixel-wise differencing of mean image values:
ID(i , j) = I2(i , j)− I1(i , j). (1)
I Pixel-wise ratio of means:
IR(i , j) = 1−min(
I2(i , j)I1(i , j)
,I1(i , j)I2(i , j)
). (2)
I Local correlation coefficient:
Iρ(i , j) =1N
∑i,j(I1(i , j)−mI1)(I2(i , j)−mI2)
σI1σI2(3)
I Kullback-Leibler distance between local distributions (mono andmulti-scale)
I Mutual information (several implementations)
IGARSS 2010, Honolulu
Strategies Detectors Application
Hands OnDisplaying differences
1. Monteverdi: File→ Concatenate Images2. Select the amplitudes of the 2 images to compare and
build a 2 band image3. Monteverdi: Visualization→ Viewer4. Select the 2 band image just created5. In the Setup tab, select RGB composition mode and select,
for instance, 1,2,2.6. Interpret the colors you observe7. The same thing could be done using feature images
IGARSS 2010, Honolulu
Strategies Detectors Application
Hands OnThresholding differences
1. Monteverdi: Filtering→ Band Math2. Select the amplitudes of the 2 images to compare and
compute a subtraction3. Monteverdi: Filtering→ Threshold4. Select the difference image just created and play with the
threshold value5. The same thing could be done using image ratios6. The same thing could be done using feature images
IGARSS 2010, Honolulu
Strategies Detectors Application
Interactive Change Detection
I Generation of binary change maps using a GUII Uses simple change detectors as inputI The operator gives examples of the change and no change
classesI SVM learning and classification are applied
IGARSS 2010, Honolulu
Strategies Detectors Application
Hands OnJoint Classification
1. Monteverdi: Filtering→ Change Detection2. Select the 2 images to process
I Raw images at 2 different dates
3. Uncheck Use Change Detectors4. Use the Changed/Unchanged Class buttons to select one
of the classes5. Draw polygons on the images in order to give training
samples to the algorithm6. End Polygon button is used to close the current polygon7. After selecting several polygons per class push Learn8. The Display Results button will show the result change
detection
IGARSS 2010, Honolulu
Strategies Detectors Application
Hands OnJoint Classification with Change Detectors
1. Monteverdi: Filtering→ Change Detection2. Select the 2 images to process
I Raw images at 2 different dates
3. Make sure the Use Change Detectors check-box isactivated
4. Proceed as in the previous case
IGARSS 2010, Honolulu
Strategies Detectors Application
Hands OnJoint Classification with Features
1. Monteverdi: Filtering→ Change Detection2. Select the 2 images to process
I Feature images at 2 different dates
3. Proceed as in the previous cases