Table 6.108 — DRM_Image

Property

Description

Class

  • <DRM Image>

Superclass

Subclass

  • None.

Definition

An instance of this DRM class specifies one or more MIP levels of texels, and can have three dimensions. Each texel consists of the set of components identified by the image_signature field.

The name field specifies a meaningful short name.

The colour_model field specifies the colour model used throughout the <DRM Image> instance. Only one colour model is allowed per <DRM Image> instance.

The level_count field specifies the number of levels of detail defined for the <DRM Image> instance (for mipmaps). If the given instance is not a MIP-mapped image, only one level is specified (level_count = 1).

NOTE 1  Many end-user applications require that <DRM Image> instances having MIP levels specify both the horizontal and vertical dimensions as a power of two. However, some applications can handle <DRM Image> instances for which the horizontal and vertical dimensions are a multiple of two rather than a power of two. For example, 96 texels in a direction is a multiple of two but not a power of two. The DRM places no restriction on either the dimensional size of a <DRM Image> instance, nor makes any statement as to whether the use of MIP information within the <DRM Image> instance will be valid on a given consuming application.

There are level_count entries in the mip_extents_array. Each entry defines the number of horizontal, vertical, and z texels for a single MIP level of the <DRM Image> instance. The first map shall contain the highest level of detail; that is, mip_extents_array[0] corresponds to the level containing the most texels.

The image_signature field specifies how texels are represented within the <DRM Image> instance (see 5.2.7.21 Image_Signature for details).

NOTE 2  For a <DRM Image> instance with an image_signature of EDCS_CLASSIFICATION_CODE, the bit size is a constant that represents the number of bits needed to represent an ECC.

The scan_direction field specifies the origin and direction of the horizontal and vertical components of the <DRM Image> instance.

The scan_direction_z field specifies the direction in which the z components of the <DRM Image> instance are ordered.

The component_data_type field specifies the data type of each component of the raw texel data. If signed or unsigned integer is specified, the “minimum_value” and “maximum_value” fields apply. If floating point is specified, the component values are in the range [0,0, 1,0], and the applicable “minimum_value” and “maximum_value” fields shall be set to the applicable value of either 0,0 or 1,0. In addition, if floating point is specified, the applicable “bits_of” fields shall be set to either 32 or 64.

The data_is_little_endian field specifies the endianess of the raw image data.

The data_is_3D field specifies whether the image data has three dimensions.

The bits_of_alpha field specifies how many bits of a texel within the image data specify alpha information. It is zero if alpha is not used.

The bits_of_luminance field specifies how many bits of a texel within the image data specify luminance information. It is zero if luminance is not used.

The bits_of_colour_coordinate_1 field specifies how many bits of a texel within the image data specify colour coordinate 1 information. It is zero if colour coordinate 1 is not used.

The bits_of_colour_coordinate_2 field specifies how many bits of a texel within the image data specify colour coordinate 2 information. It is zero if colour coordinate 2 is not used.

The bits_of_colour_coordinate_3 field specifies how many bits of a texel within the image data specify colour coordinate 3 information. It is zero if colour coordinate 3 is not used.

The bits_of_bump_map_height field specifies how many bits of a texel within the image data specify bump map height information. It is zero if bump map height is not used.

If the value of the bits_of_material_1 field is non-zero, the <DRM Image> instance has at least one <DRM Property Table Reference> component, and the bits in the image data corresponding to material 1 specify indexes into the <DRM Property Table> instance(s) that are referenced by the <DRM Property Table Reference> component(s) of the <DRM Image> instance. If the value of the bits_of_material_1 field is zero, the image data does not contain material 1 index information.

NOTE 3  With no material 2 or material 3 percentages, material 1 is at 100%.

If the value of the bits_of_material_2 field is non-zero, the <DRM Image> instance has at least one <DRM Property Table Reference> component, and the bits in the image data corresponding to material 2 specify indexes into the <DRM Property Table> instance(s) referenced by the <DRM Property Table Reference> component(s) of the <DRM Image> instance. However, if bits_of_material_2 = 0, the texel data of the <DRM Image> instance does not contain material 2 index information.

If the bits_of_material_3 field specifies non-zero, the <DRM Image> instance has at least one <DRM Property Table Reference> component, and the bits in the image data corresponding to material 3 specify indexes into the <DRM Property Table> instance(s) referenced by the <DRM Property Table Reference> component(s) of the <DRM Image> instance. However, if bits_of_material_3 = 0, the texel data of the <DRM Image> instance does not contain material 3 index information.

If required by the image_signature value of the <DRM Image> instance, the bits_of_material_2_percentage field is used to specify the percentage of material 2.

NOTE 4  If data is provided for only two materials, the percentage of material 1 is (100% - (percentage of material 2))

If required by the image_signature value of the <DRM Image> instance, the bits_of_material_3_percentage field is used to specify the percentage of material 3.

NOTE 5  If data for all three materials is provided, the percentage of material 1 is (100% - (percentage of material 2) - percentage of material 3))

The bits_of_image_index field specifies how many bits of a texel within the image data specify image index information. It is zero if image index is not used.

The bits_of_bump_map_u field specifies how many bits of a texel within the image data specify bump map u information. It is zero if bump map u is not used.

The bits_of_bump_map_v field specifies how many bits of a texel within the image data specify bump map v information. It is zero if bump map v is not used.

The minimum_value_of_alpha field specifies the minimum value that alpha can be within the image data. It is zero if alpha is not used.

The maximum_value_of_alpha field specifies the maximum value that alpha can be within the image data. It is zero if alpha is not used.

The minimum_value_of_luminance field specifies the minimum value that luminance can be within the image data. It is zero if luminance is not used.

The maximum_value_of_luminance field specifies the maximum value that luminance can be within the image data. It is zero if luminance is not used.

The minimum_value_of_colour_coordinate_1 field specifies the minimum value that colour coordinate 1 can be within the image data. It is zero if colour coordinate 1 is not used.

The maximum_value_of_colour_coordinate_1 field specifies the maximum value that colour coordinate 1 can be within the image data. It is zero if colour coordinate 1 is not used.

The minimum_value_of_colour_coordinate_2 field specifies the minimum value that colour coordinate 2 can be within the image data. It is zero if colour coordinate 2 is not used.

The maximum_value_of_colour_coordinate_2 field specifies the maximum value that colour coordinate 2 can be within the image data. It is zero if colour coordinate 2 is not used.

The minimum_value_of_colour_coordinate_3 field specifies the minimum value that colour coordinate 3 can be within the image data. It is zero if colour coordinate 3 is not used.

The maximum_value_of_colour_coordinate_3 field specifies the maximum value that colour coordinate 3 can be within the image data. It is zero if colour coordinate 3 is not used.

The minimum_value_of_bump_map_height field specifies the minimum value that bump map height can be within the image data. It is zero if bump map height is not used.

The maximum_value_of_bump_map_height field specifies the maximum value that bump map height can be within the image data. It is zero if bump map height is not used.

The minimum_value_of_bump_map_u field specifies the minimum value that bump map u can be within the image data. It is zero if bump map u is not used.

The maximum_value_of_bump_map_u field specifies the maximum value that bump map u can be within the image data. It is zero if bump map u is not used.

The minimum_value_of_bump_map_v field specifies the minimum value that bump map v can be within the image data. It is zero if bump map v is not used.

The maximum_value_of_bump_map_v field specifies the maximum value that bump map v can be within the image data. It is zero if bump map v is not used.

Class diagram

Figure 6.129 — DRM_Image

Inherited field elements

Field name

Range

Field data type

None

   

Field elements

Field name

Range

Field data type

name

 

String

colour_model

 

Colour_Model

level_count

 

Short_Integer_Positive

mip_extents_array

 

Image_MIP_Extents[level_count]

image_signature

 

Image_Signature

scan_direction

 

Image_Scan_Direction

scan_direction_z

 

Image_Scan_Direction_Z

component_data_type

 

Image_Component_Type

data_is_little_endian

 

Boolean

data_is_3D

 

Boolean

bits_of_alpha

 

Short_Integer_Unsigned

bits_of_luminance

 

Short_Integer_Unsigned

bits_of_colour_coordinate_1

 

Short_Integer_Unsigned

bits_of_colour_coordinate_2

 

Short_Integer_Unsigned

bits_of_colour_coordinate_3

 

Short_Integer_Unsigned

bits_of_bump_map_height

 

Short_Integer_Unsigned

bits_of_material_1

 

Short_Integer_Unsigned

bits_of_material_2

 

Short_Integer_Unsigned

bits_of_material_3

 

Short_Integer_Unsigned

bits_of_material_2_percentage

 

Short_Integer_Unsigned

bits_of_material_3_percentage

 

Short_Integer_Unsigned

bits_of_image_index

 

Short_Integer_Unsigned

bits_of_bump_map_u

 

Short_Integer_Unsigned

bits_of_bump_map_v

 

Short_Integer_Unsigned

minimum_value_of_alpha

 

Float

maximum_value_of_alpha

 

Float

minimum_value_of_luminance

 

Float

maximum_value_of_luminance

 

Float

minimum_value_of_colour_coordinate_1

 

Float

maximum_value_of_colour_coordinate_1

 

Float

minimum_value_of_colour_coordinate_2

 

Float

maximum_value_of_colour_coordinate_2

 

Float

minimum_value_of_colour_coordinate_3

 

Float

maximum_value_of_colour_coordinate_3

 

Float

minimum_value_of_bump_map_height

 

Float

maximum_value_of_bump_map_height

 

Float

minimum_value_of_bump_map_u

 

Float

maximum_value_of_bump_map_u

 

Float

minimum_value_of_bump_map_v

 

Float

maximum_value_of_bump_map_v

 

Float

Default field values

Default field values for DRM_Image

Associated to (one-way) (inherited)

  • None.

Associated to (one-way)

  • None.

Associated by (one-way) (inherited)

  • None.

Associated by (one-way)

Associated with (two-way) (inherited)

  • None.

Associated with (two-way)

  • None.

Composed of (two-way) (inherited)

  • None.

Composed of (two-way)

Composed of (two-way metadata) (inherited)

  • None.

Composed of (two-way metadata)

Component of (two-way) (inherited)

  • None.

Component of (two-way)

Constraints

Clarifications

1If provided, the <DRM Classification Data> component identifies the content of the imagery.

2If provided, the <DRM Lineage> component specifies either information about the events and/or source data used in constructing the <DRM Image> instance or lack of knowledge about lineage.

3The <DRM Presentation Domain> component is intended to support geospecific <DRM Image> instances that are not referenced by any <DRM Image Mapping Function> instance since a <DRM Image> instance may be significant only for a particular domain, such as radar, thermal, or OTW.

4If provided, the <DRM Identification> component may be used to provide a more detailed description than that specified by the name field.

Example(s)

  • A brick <DRM Image> instance that is repeated over the surface of a <DRM Polygon> instance to represent a brick wall.

  • A <DRM Image> instance of a tree that when applied to a <DRM Polygon> instance and combined with a <DRM Translucency> instance creates a flat version of a tree.

  • The sequence of <DRM Image> instance(s) mapped to a <DRM Polygon> instance to represent a television.

  • Consider a <DRM Image> instance that has three <DRM Property Table Reference> components:

    1. a reference to a <DRM Property Table> instance for infrared properties,
    2. a reference to a <DRM Property Table> instance for night vision goggles properties, and
    3. a reference to a <DRM Property Table> instance for surface material category properties (see Figure 6.130).

    Image, Ex 5

    Figure 6.130 — <DRM Image> example

    Consider the case of one material. A given texel contains a single integer, which is used in place of the index_on_axis field for all the <DRM Property Table Reference> components of the <DRM Image> instance.

    Consider the case of two materials. A given texel contains three integers, two of which are used in place of the index_on_axis field for all the <DRM Property Table Reference> components of the <DRM Image> instance, and a third integer, which specifies the percentage of the second material. For a given texel, say the numbers are 7 6 50. The material at that texel is something that is 50% glass and 50% concrete.

    Consider the case of three materials. A given texel contains five integers, three of which are used in place of the index_on_axis field for all the <DRM Property Table Reference> components of the <DRM Image> instance, and two of which specify the percentages of material two and three. For a given texel, say the numbers are 4 6 7 20 30. The material at that texel is something that is 50% wood, 20% concrete, and 30% glass.