Digital Photogrammetry Markup Language (DPML) - PowerPoint PPT Presentation

About This Presentation
Title:

Digital Photogrammetry Markup Language (DPML)

Description:

Based on notion of templates and patterns. Use of XSL processor to perform transformations ... of block for aerial photo. Block are composed of the ... – PowerPoint PPT presentation

Number of Views:108
Avg rating:3.0/5.0
Slides: 46
Provided by: fel65
Learn more at: http://dpml.org
Category:

less

Transcript and Presenter's Notes

Title: Digital Photogrammetry Markup Language (DPML)


1
Digital Photogrammetry Markup Language (DPML)
  • by
  • Stephane Fellah
  • PCI Geomatics
  • ASPRS - April 2001

2
Outline
  • Introduction
  • XML technology overview
  • DPML Overview
  • Some potential DPML applications
  • Conclusion

3
Introduction
4
A typical photogrammetry shop
  • Analytical/Digital photogrammetry environment
  • More than one softcopy systems
  • Use of other specialized photogrammetric/CAD/GIS/i
    mage processing packages
  • In-house programs and procedures
  • In-house workflow
  • Automation by scripting
  • Heterogeneous platforms and programming languages

5
The problems
  • Numerous proprietary formats for softcopies
  • Difficulty to process photogrammetric information
    to create scripts or reports
  • Cross-platform and cross-languages problems
  • Difficulty to break softcopy workflow
  • Problem of scalability of workflow

How to solve these problems of interoperability ?
6
Digital Photogrammetry Markup Language (DPML)
  • Definition
  • Open standard application schema using XML
    encoding to describe photogrammetric information
    for both data transport and data storage,
    especially in a wide-area Internet context.

7
DPML
  • Inspired from Open Photogrammetry Initiative
  • Based on open standards
  • Platform, language and vendor-independent
    solution
  • Extensible
  • Significant advantages for processing,
    visualization, and data mining of photogrammetric
    data within a distributed computing environment
  • Establish the foundation for RS and
    Photogrammetry Web Services

8
XML technologies overview
9
What is not XML ?
  • It is not a programming language.
  • It is not the next generation of HTML.
  • It is not a database.
  • It is not specific to any horizontal or vertical
    market.
  • It is not the solution to all your problems, but
    it can be a very powerful tool in building such a
    solution.

10
What is XML ?
  • Method for annotating documents with structured
    data
  • Method for conveying the meaning of information
  • Looks like HTML familiar and easy to work with
    for many
  • Extensible
  • hierarchical structure is user-defined
  • Meaning of XML tags are user-defined
  • User can be user-community for application domain
  • XML is a clearly defined way to structure,
    describe, and interchange data.

11
XML advantages
  • Open standard (W3C recommendation)
  • Platform and language independent
  • Human readable
  • Multiple major vendors are building in XML
    support
  • Tools for Java,C,C,Python,Perl from
    IBM,Sun,Microsoft,...
  • Simple to implement and process
  • Does not require to replace existing
    implementation
  • Provide interoperability between heterogeneous
    systems
  • Run over HTTP connection over Internet/Intranet

12
Sample fragment of XML document
ltcityMembergt ltRoadgt ltgmlnamegtM11lt/gmln
amegt ltlinearGeometrygt
ltgmlLineString srsName"http//www.opengis.net/gm
l/srs/epsg.xml4326"gt
ltgmlcoordgtltgmlXgt0lt/gmlXgtltgmlYgt5.0lt/gmlYgtlt/gml
coordgt ltgmlcoordgtltgmlXgt20.6lt/gmlXgt
ltgmlYgt10.7lt/gmlYgtlt/gmlcoordgt
ltgmlcoordgtltgmlXgt80.5lt/gmlXgtltgmlYgt60.9lt/gmlYgtlt
/gmlcoordgt lt/gmlLineStringgt
lt/linearGeometrygt ltclassificationgtmotorwaylt/
classificationgt ltnumbergt11lt/numbergt
lt/Roadgt lt/cityMembergt
13
XML Namespaces
  • XML Namespace guarantees uniqueness in the naming
    of XML elements and attributes
  • Involve the use of Uniform Resource Identifiers
    (URI)
  • ltschema targetNamespace"http//www.foo.net/foo"
  • xmlnsdpml"http//www.dpml.
    org/dpml"
  • xmlnsxsd"http//www.w3.org
    /2000/10/XMLSchema"
  • xmlnsgml"http//www.opengi
    s.net/gml
  • .
  • lt!-- import constructs from the DPML schemas
    --gt
  • ltimport namespace"http//www.dpml.org/dpml"
    schemaLocation"dpml.xsd"/gt
  • . . .
  • ltdpmlFrameCamera sidCamera1 typeFramegt
  • lt/schemagt

14
XML Schema
  • XML Schemas are based on XML, not some
    specialized syntax
  • XML schemas support multiples data types
  • XML schemas allows vocabularies extension and
    inheritance relationships between elements
    without invalidating documents
  • XML schemas support namespace integration
  • XML schemas support attribute groups
  • Binding tools are available (Java-XML binding for
    ex.)

15
Example of Complex Type
ltxsdcomplexType name"RegistrationMarkType"gt
ltxsdannotationgt ltxsddocumentationgt
RegistrationMark can describe a fiducial or a
reseau mark lt/xsddocumentationgt
lt/xsdannotationgt ltxsdsequencegt ltxsdeleme
nt name"Description" minOccurs"0"/gt ltxsdelemen
t name"X" typedpmllength "/gt ltxsdelement
name"Y" typedpmllength "/gt ltxsdelement
name"stdDevX" typedpmllength "
minOccurs"0"/gt ltxsdelement name"stdDevY"
typedpmllength " minOccurs"0"/gt
lt/xsdsequencegt ltxsdattribute name"id"
type"xsdString" use"required"/gt
lt/xsdcomplexTypegt
16
Xpath,Xlink,XPointer
  • Xpath - Language to used to address parts of an
    XML documents
  • Xpointer - A language thats used to address the
    internal structure of XML documents (based upon
    Xpath)
  • Xlink - An XML language that specifies contructs
    for advanced linking in XML documents (relies on
    Xpointer for linking parts of documents

17
Example of XLink
  • ltdpml xmlnsxlink"http//www.w3.org/1999/xlin
    k xmlnsgml"http//www.open
    gis.net/gml
  • .
  • ltFrameCamera xlinktype"simple
    gmlremoteSchema"http//www.dpml.org/sensors.xsd
    FrameCamera xlinkhref"http//www.acamerareposi
    tory.com/sensors.xmlCamera1"/gt

18
Extensible Stylesheet Language (XSL,XSLT)
  • XML based syntax
  • Based on notion of templates and patterns
  • Use of XSL processor to perform transformations
  • XSL transformations used to
  • Transform one vocabulary to another
  • Create dynamic document that can be rearranged,
    processed or filtered.
  • Format for presentation (DPML to SVG,HTML,PDF...)

19
Example
StyleSheet
SVG
DPML
XSLT Processor
20
DPML Overview
21
DPML Design goals
  • Based on existing XML-schema standards (GML, CS,
    Units ..)
  • To be sufficiently extensible to support a wide
    variety of sensors and customized information
  • Provide efficient and easy-to-understand encoding
    of photogrammetry information
  • Provide a set common photogrammetric modeling
    objects to enable interoperability of
    independently-developed applications.

22
Schemas dependencies of DPML
Sensor
DPML namespace
ltltincludesgtgt
DPML
CS
CS namespace
ltltImportgtgt
ltltincludesgtgt
CT
ltltImportgtgt
ltltImportgtgt
Features
ltltincludesgtgt
Uom
GML namespace
POSC namespace
Geometry
23
Geographic Markup Language (GML 2.0)
  • OGC Recommendation Paper, 20 February 2001 OGC
    Document Number 01-029
  • XML encoding of geospatial information both data
    transport and data storage, especially in a
    wide-area Internet context
  • Based on OGC Simple Feature Specification
  • Definition of Feature, Geometry and Link XML
    schemas
  • Extensible to support a wide variety of spatial
    tasks, from portrayal to analysis
  • Enable interoperability of independently-developed
    applications.
  • Foundation for Internet GIS

24
Project Structure
  • A DPML document describes a typical
    photogrammetric project. Start with ltDPMLgt tag.
  • A project has the following elements
  • Project metadata and default parameters used in
    the project
  • Unit dictionary
  • Coordinate System dictionary
  • Sensors dictionary
  • Ground Control Points dictionary
  • One or several block of images
  • One or several block of models

25
Unit dictionary
  • Based on OGC Document 01-008r2 Unit of measure
    (originally from POSC specification). Not final
    specs.
  • DPML defines built-in set of dimensionalities
    (Length, Angle,.. .) that are used consistently
    in the schema.
  • Units can be defined explicitly or by reference
    to a remote source (repository maintained by a
    standard body)
  • Will be integrated in GML 3.0
  • Still some problems of consistency between the
    different specification of OGC
  • Would be nice if definition of dimensionality
    needs to be solved

26
Unit definition example
ltdpml xmlnsum"http//www.posc.org/schemas..
. lt um UnitOfMeasureBlockgt lt um
uomReference um uid"m"
xlink"http//www.posc.org/applications/unitsDict
.xmlm"/gt lt um uomReference um
uid"ft" xlink"http//www.posc.org/applicat
ions/unitsDict.xmlft"/gt lt um
UnitOfMeasure uid"micron" annotation"microns""gt
lt um namegtMicrometerlt/namegt lt um
ConversionToBaseUnit baseUnit"m"gt lt
posc factorgt.000001lt/factorgt lt/ um
ConversionToBaseUnitgt lt/ um
UnitOfMeasuregt lt/ um UnitOfMeasureBlockgt
27
Coordinate Systems Dictionary
  • Based on OGC 01-009 and OGC 00-045 Documents
  • The dictionary supports definitions for
    coordinate systems and transformations.
  • CS can be defined explicitly or by reference to a
    remote source (repository maintained by a
    standard body)
  • CS will be integrated in GML in the next release
    (replacing SRS)
  • An XML schema needs to be defined, only DTD is
    available today.

28
Example of Projection encoding
ltCS_Projection ClassName"Transverse_Mercator"gt
ltCS_Info/gt
ltCS_ProjectionParameter Name"latitude_of_origin"
Value"49"/gt ltCS_ProjectionParameter
Name"central_meridian" Value"-2"/gt
ltCS_ProjectionParameter Name"scale_factor"
Value"0.999601272"/gt
ltCS_ProjectionParameter Name"false_easting"
Value"400000"/gt ltCS_ProjectionParamet
er Name"false_northing" Value"-100000"/gt
lt/CS_Projectiongt
29
Example of Horizontal Datum
ltCS_HorizontalDatum DatumType"1001"gt
ltCS_Info AuthorityCode"6277" Authority"EPSG"
Name"OSGB_1936"/gt ltCS_Ellipsoid
SemiMajorAxis"6377563.396" SemiMinorAxis"6356256
.90923729" InverseFlattening"299.3249646"
IvfDefinitive"1"gt ltCS_Info
AuthorityCode"7001" Authority"EPSG" Name"Airy
1830"/gt ltCS_LinearUnit
MetersPerUnit"1"gt ltCS_Info
AuthorityCode"9001" Abbreviation"m"
Authority"EPSG"
Name"metre"/gt lt/CS_LinearUnitgt
lt/CS_Ellipsoidgt ltCS_WGS84ConversionInfo
Dx"375" Dy"-111" Dz"431"
Ex"0" Ey"0" Ez"0" Ppm"0"/gt
lt/CS_HorizontalDatumgt
30
Sensor model design
  • Sensor model describes the physical and
    geometrical properties of each kind of
    photogrammetric, remote sensing and other sensors
    that produces imagery type of data.
  • Sensor model schema is described in a separated
    schema file (sensors.xsd) .
  • Aimed to be extensible to support new type of
    sensors and parameters.
  • Sensor model can be defined explicitly or by
    reference to a remote source (repository
    maintained by a standard body)

31
Sensor model design
  • Initial version will include only model for frame
    camera (including digital)
  • Future version will include scanning sensor
    (SPOT, Landsat, IRS,)
  • Interaction with ISO/TC211 project 19130 "Sensor
    and Data Models for Imagery and Gridded Data and
    SensorML (CEOS) definition.
  • The model includes only the minimum requirement
    for performing photogrammetric operations such as
    bundle adjustement, interior orientation

32
Abstract Sensor Type Definition
ltxsdcomplexType name"AbstractSensorType"gt
ltxsdsequencegt ltxsdelement name"Name"
type"xsdstring"/gt ltxsdelement
name"Description" type"xsdstring"/gt
lt/xsdsequencegt ltxsdattribute name"sid"
type"xsdID" use"required"/gt ltxsdattribute
name"type" type"SensorType" use"required"/gt lt/x
sdcomplexTypegt
33
Ground Control Points dictionary
  • GCP extends GML Feature
  • GCP can be extended to add additional metadata
    information
  • GCPs can be defined explicitly or by reference to
    a remote source (Web Feature Server, image chip
    server,. )
  • GCP has elements describing accuracy
  • GCP can be reused in several blocks by reference
  • Would be nice to have an XML schema standard to
    describe accuracy

34
GCP Type definition
ltxsdcomplexType nameGCPType"gt
ltcomplexContentgt ltextension
basegmlAbstractFeatureTypegt
ltxsdsequencegt ltxsdelement namePoint"
typegmlPointPropertyType "/gt ltxsdelement
nameStdDevX" typedpmllength "
minOccurs"0"/gt ltxsdelement name"stdDevY"
typedpmllength " minOccurs"0"/gt ltxsdelement
name"stdDevZ" typedpmllength "
minOccurs"0"/gt lt/xsdsequencegt
ltxsdattribute name"id" type"xsdIDREF"
use"required"/gt lt/extensiongt
ltcomplexContentgt lt/xsdcomplexTypegt
35
Block Structure
  • DPML documents can contain one or more blocks of
    images
  • Block is an abstract type
  • Specialization of block for aerial photo.
  • Block are composed of the following elements
  • Metadata information
  • List of images
  • Bundle points
  • Bundle results

36
Photos
  • Photo is a specialization of abstract Image type.
  • Photo only used for FrameCamera
  • Photo has the following information
  • Datasource information
  • Metadata information
  • Footprint (gmlPolygonPropertyType)
  • InteriorOrientation (measurements and results)
  • ExteriorOrientation (Given and computed)
  • Measurements (optional)
  • PhotoRationalFunction (optional)

37
Points in DPML
  • Several types of point in DPML
  • Ground Control Point
  • Tie Point
  • Check Point
  • Bundle Point
  • Image Point
  • Sensor Position
  • Still some works to be done on the classification
    and definition.
  • The most difficult part of the specification

38
Points in DPML
  • Points in DPML are recorded as GML point features
  • Error estimates and measurement method, are
    recorded as feature attributes or properties
  • Points can be retrieved from a Web Feature Server
    by using XLink
  • Points are described as complex type to allow
    extensibility
  • Uom of measure from POSC specs have been in a
    consistent way in all measurements and points
    definition.

39
Some potential DPML applications
40
Report generation
Stylesheet2
Stylesheet3
Stylesheet1
HTML page
SVG
DPML
XSL Processor
PDF
41
Sensor Repository
Spot Catalog
Softcopy
Sensor Repository
Frame Camera Calibration Centers
Geolocation of dynamic sensor systems
Landsat Catalog
42
Ground Control Point Repository
GCP Provider 1
Softcopy 1
GCP Provider 2
GCP repository
Softcopy 2
DPML
DPML
GCP Provider 3
Chip Matching Web Service
Image Chip Server
DPML
Image Server
Image Server 2
43
Photogrammetric Web Services
Web Services Client (browser, desktop app..)
(2) query
(3) Bind
(3) Bind
DPML
DPML
Web Services Registry (UUDI for ex.)
Measurement tool
Orthorectification services

Viewer
Bundle Adjustement
(1) registers
Sensor Definition Provider
CT services
44
Conclusion
  • DPML draft specification will be public in June
  • Focus on Frame Camera. More sensors support will
    be added later
  • Will be distributed and tested for international
    community approval
  • Specification will be done in coordination with
    current specification in OGC and ISO/TC 211
  • Looking to be hosted and funded by international
    organization (OGC, ISPRS, ISO/TC 211)
  • Still some issues to be solved (unit,dimensionalit
    y, accuracy, points classification)

45
For more information
  • www.dpml.org
  • www.opengis.org
  • www.opengis.net
  • www.w3c.org
  • www.xmlhack.org
  • www.posc.org/schemas
  • Open Photogrammetry Initiative Z/I Imaging
Write a Comment
User Comments (0)
About PowerShow.com