09-003 IGM Not require extensions

Open Geospatial Consortium

Document OGC 09-003
CR-Form-v3

CHANGE REQUEST
IGM CR ?





rev

-

 Current version: OGC 07-031r2

 

For HELP on using this form, see bottom of this page or look at the pop-up text over the  symbols.


Proposed change affects:



AS

Imp Spec X

Best Practices Paper

Title:

 IGM change request - Not require application schema extensions

Source:

 Arliss Whiteside

Work item code: 


Category:

Other

Date:  2009-01-19

 C
Use one of the following categories:
F (Critical correction)
A (corresponds to a correction in an earlier release)
B (Addition of feature),
C (Functional modification of feature)
D (Editorial modification)

Reason for change:

 The current IGM specification requires specification and use of GML
Application Schema extensions for each specific sensor model. However, a
simpler alternative is to define and use XML document templates for each

specific sensor model, instead of XML Schema extensions.

Summary of change:  Extensively revise the current IGM specification to also allow use of XML
document templates for each specific sensor model
Consequences if
not approved:

 Continued requirements to specify and use GML Application Schema
extensions for each specific sensor model

Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

1

OGC 09-003
Clauses affected:

 6 through 9, D, igmImageGeometry.xsd,
igmObjectImageTransformationPackage.xsd, igmSensorCalibration.xsd,
igmSensorParameterValuesPackage.xsd


Other specs



Affected:

Other core specifications



Abstract specifications
Best Practices Papers

Supporting Doc.



Other comments:


 This change request is to the previously proposed, but not accepted, Image
georeferencing metadata GML 3.2 Application Schema [OGC 07-031r2].
This change request is a change from the hard-typing of XML elements
(normally used by GML), to also allow the soft-typing of several XML
elements (often used by SensorML).

Status



Disposition



Edit Clauses 6 through 9 as follows:
6
1

Image georeferencing metadata overview
Image georeferencing metadata


This GML Application Schema XML schema encodes parameter values for image
georeferencing coordinate transformations with associated parameter error statistics. This is
done using two specializations of the CC_ ParameterValueGroup class (in OGC Abstract
Specification Topic 2) and corresponding specializations of the gml:ParameterValueGroup
XML element.
These georeferencing coordinate transformations can use many possible image geometry
(or sensor) models that can be encoded using extensions of this Application Schema.
However, each specific image geometry model requires an extension of this Application
Schema as described in Annex D.A specific image geometry model extension is needed by
each georeferencing coordinate transformation for an unrectified image. The
georeferencing coordinate transformations which may be encoded using this IGM
Application Schema include all possible image geometry (or sensor) models. There are
many specific image geometry models that can be used by georeferencing coordinate
transformations for unrectified images (as discussed in 2.5 and 2.10 of OGC Abstract
Specification Topic 16). Such georeferencing coordinate transformations are described in
more detail in Clause 9 of the GML 3.1.1 Grid CRSs profile [OGC 05-096r1], in Subclause
8.12 of SensorML [OGC 07-000], and in Discussion Paper [OGC 04-071] “Some image
geometry models”. Such georeferencing transformations are also used for unrectified


Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

2

OGC 09-003
images in the Web Coverage Service (WCS) 1.1.1 [OGC 07-067r2] and Discussion Paper
Web Coordinate Transformation (WCTS) [OGC 07-055r1]. However, each specific image
geometry model needs specialization of this Application Schema, as described in Annex D.
This Application Schema also encodes point positions measured in one of more images and
optional object coordinates, with associated position error statistics. These object points can
be tie points, control points, and check points. A control or check point has a measured
position with position error statistics in one or more images, and a known position with
error statistics in some geodetic Coordinate Reference System (CRS). A tie point has a
measured position with error statistics in two or more images, but not a known position in
any geodetic CRS.
Error statistics are represented as variance-covariance matrices, representing both absolute
and relative accuracies. These covariance matrices are used to represent correlations
between the accuracies of different parameters, coordinates, and positions.
2


UML model packages

This Image georeferencing metadata GML Application Schema is specified in six parts,
corresponding to six UML packages with six corresponding XML Schema Documents. The
six UML packages are listed and briefly described in Table 1. The dependencies among
these georeferencing metadata UML packages are shown in the Figure 1, together with the
classes in each package.
Table 1 — Image georeferencing metadata UML model packages
Package Name
GSM_SensorModel

Description
Records versions of object-to-image transformations and the sensor
mathematical models used by these transformations
GIG_ImageGeometry
Records image orientation data, allowing multiple adjustments of
orientation data
GSC_SensorCalibration Records image sensor calibration data, including multiple
adjustments of interior orientation data
GAG_AdjustedGroup

Records groups of images adjusted together, allowing multiple
adjustments of same group
GOP_ObjectPoint
Records object point positions in one of more images with optional
object coordinates, for control points, tie points, and check points
GCM_CovarianceMatrix Records covariance matrices, for absolute and relative parameter and
position error estimates

Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

3

OGC 09-003

GSM_SensorModel
+ GSM_ObjectImageTransformation

GIG_ImageGeometry
+ GIG_AdjustableParameters
+ GIG_ImageAccuracy

+ GIG_ImageInfo
+ GIG_ImageParameterValues
+ GIG_ImageParametersStatus
+ GIG_MovingSensorParameters
+ GIG_StationarySensorParameters

GAG_AdjustedGroup
+ GAG_AdjustedGroup
+ GAG_AdjustmentStatus
+ GAG_AdjustmentSummary
+ GAG_EqualParameters

GSC_SensorCalibration
+ GSC_ImageSensor
+ GSC_SensorParameterStatus
+ GSC_SensorParameterValues

GOP_ObjectPoint
+ GOP_ IdentificationImage
+ GOP_ImagePosition

+ GOP_ImagePositionStatus
+ GOP_ObjectPoint
+ GOP_ObjectPosition
+ GOP_ObjectPositionStatus
+ GOP_PointType
+ ObjectPoints

GCM_CovarianceMatrix
+ GCM_BandedMatrix
+ GCM_CompleteMatrix
+ GCM_ComplexMatrix
+ GCM_CovarianceMatrix
+ GCM_DiagonalMatrix
+ GCM_FullMatrix
+ GCM_Matrix
+ GCM_SimpleMatrix
+ GCM_SparseMatrix
+ GCM_ValuesList

Figure 1 — Image georeferencing metadata UML packages with dependencies
This UML model is built upon the ISO/TC 211 UML model, contained in the ISO 191XX
series of standards. The ISO/TC 211 UML model packages used, directly and indirectly, are
listed in Table 2. The direct dependencies of the georeferencing metadata UML model
packages on ISO/TC 211 UML model packages are shown in the Figure 2 (without the
classes in each package).

Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

4

OGC 09-003
Table 2 — ISO/TC 211 UML model packages used
ISO Standard
19107 Geographic information — Spatial schema
19109 Geographic information — Rules for application schema
19111 Geographic information — Spatial referencing by
coordinates

19115 Geographic information — Metadata

GSM_SensorModel

CC_CoordinateOperation

GSC_SensorCalibration

GM_Geometry

UML package name
GM_Geometry
GF_GeneralFeature
CC_CoordinateOperation
CD_Datum
CS_CoordinateSystem
IO_IdentifiedObject
SC_CoordinateReferenceSystem
DQ_DataQuality
EX_Extent

SC_CoordinateReferenceSystems

GIG_ImageGeometry

GAG_AdjustedGroup

GOP_ObjectPoint

GCM_CovarianceMatrix

GF_GeneralFeature

DQ_DataQuality

Figure 2 — Image georeferencing metadata and ISO/TC 211 packages
3

GML application schema

This GML 3.2.1 Application Schema for georeferencing metadata is also an Application
Schema of ISO 19139. This Application Schema uses small profiles (or subsets) of GML
3.2.1 (ISO 19136) and ISO 19139, although those profiles are not yet formally specified.
For GML, the profile used is essentially a subset of the GML 3.1.1 grid CRSs and simple

Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

5

OGC 09-003
features profiles. For ISO 19139, the profile is a subset of the ISO 19139 profile that is
used by GML 3.2.1 (ISO 19136).
Most of the ISO/TC 211 classes used in the UML model are encoded by the GML 3.2.1
XML elements as listed in Table 3.
Table 3 — GML 3.2.1 elements encoding ISO classes
ISO package name (ISO number)
UML class name

GML XML Schema Document
XML element name

CC_CoordinateOperation (19111)
CC_Transformation
CC_CoordinateOperation (19111)
CC_OperationMethod
CC_CoordinateOperation (19111)
CC_ParameterValueGroup
CC_CoordinateOperation (19111)
CC_OperationParameterGroup
GF_GeneralFeature (19109)
GF_FeatureType
GM_Geometry (19107)
GM_Polygon
GM_Geometry (19107)
GM_Point
GM_Vector
GM_Curve

coordinateOperations.xsd
Transformation
coordinateOperations.xsd
OperationMethod
coordinateOperations.xsd
ParameterValueGroup
coordinateOperations.xsd
ParameterGroup
dictionary.xsd
Definition
geometryBasic2d.xsd
Polygon
geometryBasic0d1d.xsd
Point
Vector
AbstractCurve

Each of these georeferencing metadata UML packages and corresponding XML Schema
Documents is defined in subsequent clauses.
7

Sensor model

4

Introduction

The sensor model part of the Image georeferencing metadata GML Application Schema
supports recording versions of object-to-image coordinate transformations and the (image
geometry) sensor mathematical models used by these transformations. These object-toimage transformations are used for georeferencing coordinate transformations. These
coordinate transformations can use many all possible image geometry (or sensor) models
that can be encoded using extensions of this Application Schema. The parameter values
used by these transformations are recorded in the image geometry and sensor calibration
parts of this Application Schema.
5

UML model

The UML class diagram for the GSM_SensorModel package is shown in Figure 3, together
with the CC_CoordinateOperation classes that are directly inherited from and used. The
new GSM_ObjectImageTransformation class defined in this GSM_SensorModel package
is defined in Table 4. This diagram also shows two other classes added in this Image
georeferencing metadata GML Application Schema, namely GIG_ImageParameterValues
and GSC_SensorParameterValues.
Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

6

OGC 09-003
0..*


CC_SingleOperation
(from CC_Coordi nateOperation)

+method

1

1


CC_OperationMethod


CC_Transformation

(from CC_CoordinateOperation)

(from CC_CoordinateOperation)

1..*
0..*

+parameterValue
0..*


CC_GeneralParameterValue


CC_GeneralOperationParameter

(from CC_Coordi nateOperation)

2..*

+parameter

(from CC_Coordi nateOperation)

+parameterValue

2..*
1

CC_ParameterValueGroup
(from CC_CoordinateOperation)


GIG_ImageParameterValues

+group
0..*

1

+parameter

0..*

CC_OperationParameterGroup
(from CC_CoordinateOperation)

0..*

(from GIG_ImageGeometry)

1
1

+parameterValue (inherited)
+parameterValue (inherited)


GSM_ObjectImageTransformation

1


GSC_SensorParameterValues
(from GSC_SensorCali bration)

Figure 3 — GSM_SensorModel package UML class diagram
NOTE
For simplicity, this diagram does not show the CC_ParameterValue concrete subclass of the
CC_GeneralParameterValue abstract class, or the CC_Parameter concrete subclass of the
CC_GemeralParameter abstract class. Those concrete subclasses are not used in this document, but are used
by extensions of this metadata for specific image sensor geometry models.

The GSM_SensorModel package specializes the CC_CoordinateOperation package in ISO
19111 [OGC 05-10308-015], by defining more-specific subclasses. By specializing the
CC_CoordinateOperation package, the GSM_SensorModel package uses the existing ISO
19111 concepts and terms, for coordinate Transformations, Operation Methods, Operation
Parameter Groups, etc.
Specifically, the GSM_ObjectImageTransformation class specializes the
CC_Transformation class for image georeferencing object-to-image coordinate
transformations. That new class uses the GIG_ImageParameterValues and
GSC_SensorParameterValues classes which specialize the CC_ParameterValueGroup class.

Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

7

OGC 09-003
The CC_OperationMethod and CC_OperationParameterGroup classes have instances that
are specialized for this use (specialized classes are not used).
Table 4 — Defining elements of GSM_ObjectImageTransformation class
Description:

Definition of one object-to-image coordinate transformation for image georeferencing, using
one group of (adjusted) image parameter values, which contains one group of (calibrated)
sensor parameter values.

Stereotype:
Class attribute:
Inheritance from:
Association roles:

Type
Concrete
CC_Transformation
parameterValue to GIG_ImageParameterValues [1] a
(Composition association to values of group of image parameters used by this transformation)
method to CC_OperationMethod [1] b
(Inherited association to method used by this transformation)
transformation from GIG_ImageInfo [1]
(Association from image that uses this object-image transformation)
adjustedTransformation from GAG_AdjustedGroup [1..*]
(Association from adjusted group that adjusted this object-image transformation)
11 attributes inherited from CC_Transformation and IO_IdentifiedObjectBase

Public attributes:

a Association inherited through CC_Transformation, CC_SingleOperation, CC_GeneralPareameterValues, and
CC_ParameterValueGroup.
b Association inherited through CC_Transformation and CC_SingleOperation.
NOTE

6

These tables are using the table format used in ISO 19111 [OGC 05-10308-015].

XML encoding

The GSM_SensorModel UML package is encoded in the igmSensorModel.xsd XML
Schema Document, which imports the coordinateOperations.xsd XML Schema Document
from GML 3.2.1. The ISO 19111 classes used in the UML model are encoded by the GML
3.2.1 XML elements as listed in Table 3. The contents of the igmSensorModel.xsd XML
Schema Document shall be as specified in the attached file.
EXAMPLE 1

An example XML fragment for an ObjectImageTransformation is:


Transformation999.999
Domain of targetCRS
0.0.0









adjusted







99.9





999 999 999






9.99 9.99 9.99








NOTE

An ObjectImageTransformation will often include inline encoding of the parameterValue element.

EXAMPLE 2

A longer example XML fragment for an ObjectImageTransformation is:


Transformation999.999
Domain of targetCRS
0.0.0






Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

9

OGC 09-003



adjusted






999 999
999 999
999 999
999 999




999 999
999 999
999 999
999 999









99.9
99.9
99.9

99.9





999 999 999


Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

10

OGC 09-003





9.99 9.99 9.99









8

Image geometry

7

Introduction

The image geometry part of the Image georeferencing metadata GML Application Schema
supports recording image (exterior) orientation parameter values, including image sensor
position and attitude. This package supports multiple adjustments of this image orientation
data. Most of these orientation parameter values are specific to each image collected by one
image sensor, and usually must be adjusted for each image collected. These parameters can
be for many possible image geometry (or sensor) models. that can be encoded using
extensions of this Application Schema.
8

UML model

The UML class diagram for the GIG_ImageGeometry package is shown in Figure 4 and
Figure 5, together with the ISO 191XX UML classes that are directly inherited from. The
new classes defined in this GIG_ImageGeometry package are described in Table 5 through
Table 12.

Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

11

OGC 09-003

GF_FeatureType
(from GF_GeneralFeature)

+ definition : CharacterString
+ typeName : LocalName

1
0..*

+transformation
+
+
+
+


GSM_ObjectImageTransformation
(from GSM_SensorM odel)


GIG_ImageInfo
imagePixels : URI
imageCRS : URI
rows : PositveInteger
columns : PositiveInteger

1

CC_ParameterValueGroup

1

+image

0..1

(from CC_CoordinateOperation)

+parameterValue (inherited)

1

0..*

0..*


GIG_ImageParameterValues
+ parameterStatus : GIG_ImageParametersStatus
+ imageAccuracySummary : GIG_ImageAccuracy 0..1


GIG_StationarySensorParameters


GOP_ImagePosition
(from GOP_ObjectPoint)

0..*

+adjustedImage
Position


GIG_MovingSensorParameters

1

1..*

1..*

1 1

+attitudeHistory

1

+imageOrientation


GIG_ImageOrientation

+sensorPosition

+imagePosition

1

1

1

1

A concrete subclass of one
of these three abstract
classes shall be specified for
each specific sensor model

+sensorAttitude

+sensorPath


GM_Point


GM_Vector


GM_Curve

(from GM_Geometry)

(from GM_Geometry)

(from GM_Geometry)

EDITOR’S NOTE
The GIG_ImageParameterValues, GIG_StationarySensorParameters.
and GIG_MovingSensorParameters classes shown above were previously abstract, and
should have had their class names in Italics. However, those classes are now changed to
concrete classes, with class names not in Italics. The note box is now changed to read “A
specialization of one of these three classes is needed for each specific sensor model”.
Figure 4 — GIG_ImageGeometry package UML class diagram, part 1

Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

12

OGC 09-003
Repeated
from part 1


GM_Polygon
(from GM_Geometry)


GIG_ImageParameterValues

+footprint

0..1 0..1

+footprint

1
0..*

0..*

GF_FeatureType

1..*

+inGroup

1

(from GF_General Feature)


GAG_AdjustedGroup

+ definition : CharacterString
+ typeName : LocalName

1

(from GAG_AdjustedGroup)

0..1
+adjustableParameters

GIG_AdjustableParameters
+ parameters : Sequence

1
1

+parameterValue
(inherited)

0..*

+adjustedCalibration


GSC_SensorParameterValues
(from GSC_SensorCalibrati on)

+
+
+
+


GIG_ImageAccuracy
CE : Length
LE [0..1] : Length
horizontalShear [0..1] : Length
verticalShear [0..1] : Length


GIG_ImageParametersStatus
+ estimated
+ adjusted
+ validated
+ invalid

EDITOR’S NOTE
The GIG_ImageParameterValues class shown above was previously
abstract, and thus has its class name in Italics. However, this class is now changed to a
concrete class, with the class name not in Italics.
Figure 5 — GIG_ImageGeometry package UML class diagram, part 2
Part 1 of this UML class diagram shows how multiple versions of orientation parameter
values can be recorded for each image. That is, multiple ImageParameterValues objects can
be associated with the ImageInfo object for one image. As needed for different image types
and purposes, different sensor models can be used by the multiple ImageParameterValues
objects which are associated with the ImageInfo for one image. Similarly, different image
parameters can be adjusted in different ImageParameterValues objects.
As indicated, the ImageInfo class contains pointers to the image pixels and the image
Coordinate Reference System (CRS). It also contains the size of this image, in pixel rows
and columns. This class is associated to all the ImagePositions measured in this image.

Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

13

OGC 09-003
The ImageParameterValues abstract class records the parameter values for any sensor
model, including the status of that group of parameter values. Each ImageParameterValues
object also has an optional association to a Polygon giving the (approximate) footprint for
the image using those parameter values.
The ImageParameterValues abstract class has StationaryImageParameters and MovingImageParameters abstract subclasses, which record parameter values common to all
stationary or moving sensors. For a stationary sensor, these parameters are the sensor
position coordinates, recorded using a GM_Point object, and the sensor attitude (rotation)
parameters, recorded using a GM_Vector object. For a moving sensor, these parameters are
the sensor path positions and the sensor attitude history, each recorded using a GM_Curve
object (TBR). The sensor path and attitude history can be shared by multiple images
collected in a strip, with each image specifying the collection time or range within this
history.
The details specific to each specific sensor model are recorded as concrete
subclassesspecializations of the StationarySensorParameters and MovingSensorParameters
abstract classes, which shall be specified in extensions of this Application Schema. These
classes may share more classes for common aspects (also not shown here). Wherever
relevant, these specific image geometry models should build upon and adapt ISO 19130
(Sensor data model for imagery and gridded data).
Part 2 of this UML class diagram shows that each ImageParameterValues object also has an
association to one AdjustableParameters object that identifies which of the image and
sensor parameters could have been adjusted by the associated AdjustedGroup. Each
AdjustableParameters object can be associated from multiple ImageParameterValues
objects which have the same set of adjustable parameters (as is common). Similarly,
multiple ImageParameterValues objects can be associated with an AdjustedGroup object
for one adjustment (or triangulation). Each AdjustedGroup object is associated to the
ImageParameterValues objects that were adjusted or computed by this adjustment.
The ImageGeometry package specialises the GF_FeatureType package in ISO 19109, by
defining more-specific subclasses. By defining the ImageInfo class as a feature collection,
identification metadata is inherited and additional properties for recording needed metadata
can be easily added. By defining the AdjustableParameters as a feature, identification
metadata is inherited and additional properties for recording needed metadata can be easily
added.
This package also specialises the CC_CoordinateOperation package in ISO 19111, by
defining more-specific subclasses of CC_ParameterValueGroup. By defining the
ImageParameterValues class as a parameter value group, individual parameters and
subsidiary parameter groups can be defined for different image geometry (or sensor)
models. This package also uses parts of the GM_Geometry package from ISO 19107,
avoiding new definitions of points, curves, and polygons.

Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

14

OGC 09-003
Table 5 — Defining elements of GIG_ImageInfo class
Description:

Metadata for one image, including image identification, referencing image pixels, and
associated with groups of parameter values determined for this image.

Stereotype:
Class attribute:
Inheritance from:
Association roles:

Type
Concrete
GF_FeatureType
transformation to GSM_ObjectImageTransformation [0..*]
(Association to object-image transformation determined for this image)
imagePosition to GOP_ImagePosition [0..*]
(Composition association to position measured in this image)
image from GIG_ImageParameterValues [1]
(Association from group of parameter values determined for this image)
Two attributes inherited from GF_FeatureType, plus:

Public attributes:
Attribute
name

UML
identifier

Image Pixels

imagePixels

Image CRS

Data type

Oblig
ation

Maximum
occurrence

Attribute description

URI

M

1

Reference to pixels of this image.

imageCRS

URI

M

1

Image CRS for all image positions in
this image.

Rows

rows

PositiveInteger

M

1

Number of pixel rows in this image.

Columns

columns

PositiveInteger

M

1

Number of pixel columns in this image.

Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

15

OGC 09-003
Table 6 — Defining elements of GIG_ImageParameterValues class
Description:

Group of parameter values for one adjustment of one image, including most exterior orientation
parameters.

Stereotype:
Class attribute:
Inheritance from:
Association roles:

Type
ConcreteAbstract
CC_ParameterValueGroup
image to GIG_ImageInfo [1]
(Association to the image using this group of image parameter values)
parameterValue to GSC_SensorParameterValues [1] a
(Inherited association to the calibrated sensor parameter values used by this image parameter
adjustment)
footprint to GM_Polygon [0..1]
(Composition association to approximate footprint of this image using this group of image
parameter values)
adjustableParameters to GIG_AdjustableParameters [1}
(Association to list of adjustable parameters in this group)
group to CC_OperationParameterGroup [1] a
(Inherited association to operation parameter group for this group of image parameter values)
adjustedImagePosition to GOP_ImagePosition [0..*]
(Composition association to image positions determined by this parameter group)
inGroup to GAG_AdjustedGroup [0..1]
(Association to the adjustment group that produced this group of image parameter values)
parameterValue from GSM_ObjectImageTransformation [1]
(Association from object to image transformation that uses this set of parameter values)
Public attributes: No attributes inherited from CC_ParameterValueGroup, plus:
Attribute name

UML
identifier

Image parameter
status

imageParame
terStatus

Image accuracy
summary

imageAccura
cySummary

a

Data type

Oblig
ation

Maximum
occurrence

Attribute description

GIG_ImagePara
metersStatus

M

1

Status of this group of image
parameter values.

GIG_ImageAccu
racySummary

M

1

Summary of positional accuracy of
this image using this group of
parameter values.

Association inherited from CC_ParameterValueGroup.
NOTE 1

Each GM_Polygon object references the geodetic coordinate reference system of that polygon.

Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

16

OGC 09-003
Table 7 — Defining elements of GIG_MovingSensorParameters class
Description:

Generic group of image parameter values for one image collected by a sensor which moved
during image collection. A concrete subclass of this abstract class shall be specified for each
specific moving image geometry (sensor) mathematical model, in an extension of this Image
georeferencing metadata GML Application Schema.

Stereotype:
Class attribute:
Inheritance from:
Association roles:

Type
ConcreteAbstract
GIG_ImageParameterValues
sensorPath to GM_Curve [1]
(Association to sensor path position coordinates during the collection period of one or more
images)
sensorAttitudeHistory to GM_Curve (TBR) [1] a
(Association to sensor attitude “history” during the collection period of one or more images)
Plus associations inherited from GIG_ImageParameterValues class
One attribute inherited from GIG_ImageParameterValues

Public attributes:

a This georeferencing metadata structure assumes that GM_Curve is interpreted to allow recording of the four
quantities used to specify the attitude of an imaging sensor, in place of the three coordinates of an imaging sensor
position.

Table 8 — Defining elements of GIG_StationarySensorParameters class
Description:

Generic group of image parameter values for one image collected by a sensor which was
stationary during image collection. A concrete subclass of this abstract class shall be specified
for each specific stationary image geometry (sensor) mathematical model, in an extension of
this Image georeferencing metadata GML Application Schema.

Stereotype:
Class attribute:
Inheritance from:
Association roles:

Type
ConcreteAbstract
GIG_ImageParameterValues
imageOrientation to GIG_ImageOrientation [1]
(Composition association to image orientation at the collection time)
Plus associations inherited from GIG_ImageParameterValues class
One attribute inherited from GIG_ImageParameterValues

Public attributes:

NOTE 2 All GM_Curve and GM_Point objects reference the geodetic coordinate reference system for
these positions and attitudes

Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

17

OGC 09-003
Table 9 — Defining elements of GIG_ImageOrientation class
Description:

Values of the parameter group for the sensor position and attitude at the image collection
time.

Stereotype:
Class attribute:
Inheritance from:
Association roles:

Type
concrete
(none)
sensorPosition to GM_Point [1]
(Composition association to sensor position coordinates at the collection time)
sensorAttitude to GM_Vector [1]
(Composition association to sensor attitude at the collection time)
group to CC_OperationParameterGroup [1] a
(Inherited association to operation parameter group for this group of parameter values)
imageOrientation from GIG_StationarySensorParameters [1]
(Composition association from stationary sensor parameters group)
(none)

Public attributes:

Table 10 — Defining elements of GIG_ImageAccuracySummary class
Description:

Summary of the estimated positional accuracies of positions extracted using this image with
this group of parameter values.

Stereotype:
Class attribute:
Inheritance from:
Association roles:
Used by:
Public attributes:

DataType
Concrete
(none)
(none)
GIG_ImageParameterValues

Attribute
name

UML
identifier

Data
type

Oblig
ation

Maximum
occurrence

Attribute description

Circular
Error (90%)

CE

Length

M

1

Estimated absolute (external) horizontal error in
object positions extracted using this image.

Linear Error
(90%)

LE

Length

Ca

1

Estimated absolute (external) elevation error in
object positions extracted using this image with its
stereo mate image in this adjusted group.

Horizontal
Shear

horizontal
Shear

Length

Cb

1

Estimated (relative internal) horizontal difference
between object positions extracted using this
image and overlapping image(s) in this adjusted
group.

Vertical
Shear

verticalSh
ear

Length

Cc

1

Estimated (relative internal) elevation difference
between object positions extracted using this
image and overlapping image(s) in this adjusted
group.

a Condition: At least one stereo mate image is included in this adjusted group.
b Condition: One or more overlapping images, excluding any stereo mate image(s), are included in this adjusted
group.
c Condition: One or more overlapping stereo pairs of images are included in this adjusted group.

Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

18

OGC 09-003
Table 11 — Defining elements of GIG_AdjustableParameters class
Description:

List of the adjustable parameters in a group of image parameter values, for the adjusted group
that includes these parameter values.

Stereotype:
Class attribute:
Inheritance from:
Association roles:

Type
Concrete
GF_FeatureType
adjustableParameters from GIG_ImageParameterValues [0..*]
(Association from group of parameter values using these adjustable parameters)
Two attributes inherited from GF_FeatureType, plus:

Public attributes:
Attribute
name

UML
identifier

Name

name

Data type

Oblig
ation

Maximum
occurrence

CharacterString

M

N

Attribute description
Identifier of adjustable parameter.

Table 12 — Defining elements of GIG_ImageParametersStatus class
Description:

Status of this group of image parameter values.

Stereotype:
Class attribute:
Inheritance from:
Association roles:
Used by:
Public attributes:

CodeList
Concrete
(none)
(none)
GIG_ImageParameterValues

Attribute
name

UML
identifier

Data type

Oblig
ation

Maximum
occurrence

Attribute description

estimated

estimated

CharacterString

C

1

Contains initial estimated values.

adjusted

adjusted

CharacterString

C

1

Contains computed adjusted values, not yet
checked

validated

validated

CharacterString

C

1

Contains validated (or checked) adjusted
values.

invalid

invalid

CharacterString

C

1

Contains values considered not valid for
some reason (but object not yet deleted).

Condition: One and only one of the listed attributes shall be supplied.

9

XML encoding

The GIG_ImageGeometry UML package is encoded in the igmImageGeometry.xsd XML
Schema Document, which imports the coordinateOperations.xsd and geometryBasic2d.xsd
XML Schema Documents from GML 3.2.1. The ISO 19107, 19109, and 19111 classes used
in the UML model are encoded by the GML 3.2.1 XML elements as listed in Table 3. The
contents of the igmImageGeometry.xsd XML Schema Document shall be as specified in
the attached file.
Since the ImageParametersStatus is a UML stereotyped class, it is converted
into XML Schema following the GML pattern for XML encoding of classes.
That is, in igmImageGeometry.xsd, the normal values of this class are NOT encoded in the
Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

19

OGC 09-003
XML Schema, but in a default-referenced GML dictionary. That dictionary document is
named imageParametersStatusValues.xml, and is also attached to this document.
NOTE

The following examples use “999” as a place holder for specific numerical values.

EXAMPLE 1

A simple example XML fragment for an ImageInfo element is:


ImageInfo999
TBD
urn:ogc:def:crs:OGC:0.0:
ImageCRSpixelCenter:Image999
999
999


EXAMPLE 2
is:

A larger example XML fragment for an ImageInfo element, which includes one ImagePosition,


ImageInfo999
TBD
urn:ogc:def:crs:OGC:0.0:
ImageCRSpixelCenter:Image999
999
999




ImagePosition999

measured
999


999 999




2
row column


rowSpacing columnSpacing

Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

20

OGC 09-003
0.999 0.999








EXAMPLE 3 A simple example XML fragment for a specific ImageParameterValues element, in the
AbstractGeneralParameterValue substitutionGroup, is:




adjusted







99.9










999 999 999





9.99 9.99 9.99




Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

21

OGC 09-003






EXAMPLE 4 A larger example XML fragment for a specific ImageParameterValues element in the
AbstractGeneralParameterValue substitutionGroup, encoded inline in an ObjectImageTransformation element, is:

Transformation999.999
Domain of targetCRS
0.0.0








adjusted






999 999
999 999
999 999
999 999




999 999
999 999
999 999
999 999




Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

22

OGC 09-003






99.9
99.9
99.9

99.9





999 999 999






9.99 9.99 9.99








EXAMPLE 5

A example XML fragment for an AdjustableParameters element is:


TBD
AdjustableParameters999
TBD999 TBD999 TBD999 TBD999 TBD999 TBD999


Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

23

OGC 09-003
9
10

Sensor calibration
Introduction

The sensor calibration part of the Image georeferencing metadata GML Application
Schema supports recording imaging sensor calibration parameter values, including multiple
adjustments of interior orientation data. The sensor calibration parameter values are
constant for many images collected by one image sensor, and are not frequently adjusted,
so are recorded separate from the image parameter values specified above. This sensor
calibration can be for many possible image geometry (or sensor) models that can be
encoded using extensions of this Application Schema.
11

UML model

The UML class diagram for this package is shown in Figure 6, together with the classes
that are inherited from. The three new classes defined in this GSC_SensorCalibration
package are described in Table 13 through Table 15.

Copyright © 2009 Open Geospatial Consortium, Inc. All Rights Reserved.

24

OGC 09-003

GF_FeatureType
(from GF_General Feature)

+ definition : CharacterString
+ typeName : LocalName


CC_ParameterValueGroup
(from CC_CoordinateOperation)


GIG_ImageParameterValues


GSC_ImageSensor

(from GIG_ImageGeometry)

+sensor
+sensorParameterValues

0..*

1

1

0..*

+parameterValue (inherited)


GSC_SensorParameterValues
+ parameterStatus : GSC_SensorParameterStatus
+adjustedCalibration

0..*
0..1

A concrete subclass of this
abstract class shall be specified
for each specific sensor model

+
+
+
+


GAG_AdjustedGroup
(from GAG_AdjustedGroup)


GSC_SensorParameterStatus
estimated
adjusted
validated
invalid

EDITOR’S NOTE
The GSC_SensorParameterValues class shown above was previously
abstract, and thus has its class name in Italics. However, this class is now changed to a
concrete class, with the class names not in Italics. The note box is now changed to read “A
specialization of this class is needed for some specific sensor models”.
Figure 6 — GSC_SensorCalibration package UML class diagram
This UML class diagram shows how multiple versions of sensor calibration parameter
values can be recorded for each image sensor, with each version associated with the one
AdjustedGroup that produced it. That is, multiple SensorParameterValues objects are
associated with the ImageSensor object for one imaging sensor. The
SensorParameterValues abstract class records the parameter values for any sensor model.
The details specific to each specific sensor model are recorded as concrete
subclassesspecializations of the SensorParameterValues abstract class, which shall be
specified in extensi