Sensor Independent Complex Data (sarkit.sicd)

Python reference implementations of the suite of NGA.STND.0024 standardization documents that define the Sensor Independent Complex Data (SICD) format.

Supported Versions

Note

As of 2026-09-07, there are no links to any version 1.0.x or 1.2.0 schema files on the NSG standards registry.

To get around this limitation, SARkit pulled SICD schemas from other sources. Consult READMEs in the SICD schema source directory for information on their provenance.

Data Structure & File Format

NitfSecurityFields(*, clas[, clsy, code, ...])

NITF Security Header/Subheader fields

NitfFileHeaderPart(*, ostaid[, ftitle, ...])

NITF header fields which are set according to a Program Specific Implementation Document

NitfImSubheaderPart(*[, tgtid, iid2, icom])

NITF image header fields which are set according to a Program Specific Implementation Document

NitfDeSubheaderPart(*, security[, desshrp, ...])

NITF DES subheader fields which are set according to a Program Specific Implementation Document

NitfReader(file)

Read a SICD NITF

NitfMetadata(*, xmltree, file_header_part, ...)

Settable SICD NITF metadata

NitfWriter(file, metadata[, jbp_override])

Write a SICD NITF

SizingImhdr(*, idlvl, ialvl, iloc_rows, ...)

Per segment values computed by the SICD Image Sizing Algorithm

image_segment_sizing_calculations(sicd_xmltree)

3.2 Image Segment Sizing Calculations

jbp_from_nitf_metadata(metadata)

Create a Jbp object from NitfMetadata

XML Metadata

XmlHelper(element_tree)

XmlHelper for SICD

ElementWrapper(elem[, xsdhelper, ...])

ElementWrapper for SICD that can set xsdhelper automatically.

XsdHelper(root_ns)

XsdHelper for SICD

TxtType()

Transcoder for text (TXT) XML parameter types.

EnuType()

Transcoder for enumeration (ENU) XML parameter types.

BoolType()

Transcoder for boolean (BOOL) XML parameter types.

IntType()

Transcoder for integer (INT) XML parameter types.

DblType()

Transcoder for double-precision floating point (DBL) XML parameter types.

XdtType([force_utc])

Transcoder for XML dateTime (XDT) XML parameter types.

RowColType([child_ns])

Transcoder for XML parameter types containing scalar, integer Row and Col components.

CmplxType([child_ns])

Transcoder for double-precision floating point complex (CMPLX) XML parameter types.

LineSampType([child_ns])

Transcoder for XML parameter types containing scalar Line and Sample components.

XyzType([child_ns])

Transcoder for XML parameter types containing scalar X, Y, and Z components.

LatLonHaeType([child_ns])

Transcoder for XML parameter types containing scalar Lat, Lon, and HAE components.

LatLonType([child_ns])

Transcoder for XML parameter types containing scalar Lat and Lon components.

PolyType(*[, child_ns])

Transcoder for one-dimensional polynomial (POLY) XML parameter types.

Poly2dType(*[, child_ns])

Transcoder for two-dimensional polynomial (2D_POLY) XML parameter types.

XyzPolyType([child_ns])

Transcoder for XYZ_POLY XML parameter types containing triplets of 1D polynomials.

MtxType(shape)

Transcoder for MTX XML parameter types containing a matrix.

ParameterType()

Transcoder for TXT XML parameter types with a required "name" attribute.

ImageCornersType()

Transcoder for SICD-like GeoData/ImageCorners XML parameter types.

compute_scp_coa(sicd_xmltree)

Return a SICD/SCPCOA XML containing parameters computed from other metadata.

Image Indices & Image Coordinates

rowcol_to_irowicol(xmltree, rowcol)

Global Row, Column Indices (row, col) to SCP Pixel-Centered Image Indices (irow, icol)

rowcol_to_xrowycol(xmltree, rowcol)

Global Row, Column Indices (row, col) to SCP Centered Image Coordinates (xrow, ycol)

irowicol_to_rowcol(xmltree, irowicol)

SCP Pixel-Centered Image Indices (irow, icol) to Global Row, Column Indices (row, col)

irowicol_to_xrowycol(xmltree, irowicol)

SCP Pixel-Centered Image Indices (irow, icol) to SCP Centered Image Coordinates (xrow, ycol)

xrowycol_to_rowcol(xmltree, xrowycol)

SCP Centered Image Coordinates (xrow, ycol) to Global Row, Column Indices (row, col)

xrowycol_to_irowicol(xmltree, xrowycol)

SCP Centered Image Coordinates (xrow, ycol) to SCP Pixel-Centered Image Indices (irow, icol)

Projections

For most of the functions from SICD Volume 3, see the sarkit.sicd.projection namespace.

In the sarkit.sicd namespace, there are convenience functions that operate on parsed SICD XML trees:

image_to_ground_plane(sicd_xmltree, ...[, ...])

Project image coordinates to an arbitrary plane.

image_to_constant_hae_surface(sicd_xmltree, ...)

Project image coordinates to a surface of constant HAE.

image_to_dem_surface(sicd_xmltree, ...[, ...])

Project image coordinate to a surface described by a Digital Elevation Model.

scene_to_image(sicd_xmltree, scene_points, *)

Map geolocated points in the three-dimensional scene to image grid locations.

Constants

VERSION_INFO

dict of {xml namespace: version-specific information}

PIXEL_TYPES

dict of {PixelType: pixel-type-specific information}

IS_SIZE_MAX

maximum NITF image segment length in bytes (\(10^{10}-2\))

ILOC_MAX

maximum number of rows contained in a segmented SICD NITF image segment (99,999)

CLI Utilities

sicdinfo

Display information about SICD files

usage: sicdinfo [-h] [--xml] [--segments] [--raw {XML}] filename
filename
-h, --help

show this help message and exit

--xml, -x

Extract XML formatted for display

--segments, -s

Display Image Segment information

--raw {XML}

Extract raw bytes of a block

References

SICD 1.0

[NGA.STND.0024-1_1.0]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 1, Design & Implementation Description Document, Version 1.0”, 2011. https://nsgreg.nga.mil/doc/view?i=2226

[NGA.STND.0024-2_1.0]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 2, File Format Description Document, Version 1.0”, 2011. https://nsgreg.nga.mil/doc/view?i=2202

[NGA.STND.0024-3_1.0]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 3, Image Projections Description Document, Version 1.0”, 2011. https://nsgreg.nga.mil/doc/view?i=2227

[SICD_schema_V1.0.1_2013_02_25.xsd]

The schema documented in Table 1-1 of Volume 1 calls out SICD_schema_V1.0_2011_06_10.xsd. This schema is not available in NSG Standards Registry or in any commonly referenced libraries like six-library or sarpy. As such, a version that is available in both six-library and sarpy will be used in sarkit. Furthermore, the version 1.0.1 was selected as it was released in 2013 containing bugfixes only. SICD Volume 1, Table 1-1 was not revised at the time to reflect the updated schema.

SICD 1.1

[NGA.STND.0024-1_1.1]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 1, Design & Implementation Description Document, Version 1.1”, 2014. https://nsgreg.nga.mil/doc/view?i=4192

[NGA.STND.0024-2_1.1]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 2, File Format Description Document, Version 1.1”, 2014. https://nsgreg.nga.mil/doc/view?i=4194

[NGA.STND.0024-3_1.1]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 3, Image Projections Description Document, Version 1.1”, 2016. https://nsgreg.nga.mil/doc/view?i=4249

[SICD_schema_V1.1.0_2014_09_30.xsd]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD) XML Schema, Version 1.1.0”, 2014. https://nsgreg.nga.mil/doc/view?i=4251

SICD 1.2

Note

The v1.2 revision amends volume 2 only. Although a revision to the 1.1 schema with only whitespace and namespace changes was distributed, it was not maintained on the NSG Standards Registry.

[NGA.STND.0024-2_1.2]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 2, File Format Description Document, Version 1.2”, 2016. https://nsgreg.nga.mil/doc/view?i=4248

SICD 1.2.1

[NGA.STND.0024-1_1.2.1]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 1, Design & Implementation Description Document, Version 1.2.1”, 2018. https://nsgreg.nga.mil/doc/view?i=4900

[NGA.STND.0024-2_1.2.1]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 2, File Format Description Document, Version 1.2.1”, 2018. https://nsgreg.nga.mil/doc/view?i=4901

[NGA.STND.0024-3_1.2.1]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 3, Image Projections Description Document, Version 1.2.1”, 2018. https://nsgreg.nga.mil/doc/view?i=4902

[SICD_schema_V1.2.1_2018_12_13.xsd]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD) XML Schema, Version 1.2.1”, 2018. https://nsgreg.nga.mil/doc/view?i=5230

SICD 1.3.0

[NGA.STND.0024-1_1.3.0]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 1, Design & Implementation Description Document, Version 1.3.0”, 2021. https://nsgreg.nga.mil/doc/view?i=5381

[NGA.STND.0024-2_1.3.0]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 2, File Format Description Document, Version 1.3.0”, 2021. https://nsgreg.nga.mil/doc/view?i=5382

[NGA.STND.0024-3_1.3.0]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 3, Image Projections Description Document, Version 1.3.0”, 2021. https://nsgreg.nga.mil/doc/view?i=5383

[SICD_schema_V1.3.0_2021_11_30.xsd]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD) XML Schema, Version 1.3.0”, 2021. https://nsgreg.nga.mil/doc/view?i=5418

SICD 1.4.0

[NGA.STND.0024-1_1.4.0]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 1, Design & Implementation Description Document, Version 1.4.0”, 2023. https://nsgreg.nga.mil/doc/view?i=5529

[NGA.STND.0024-2_1.4.0]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 2, File Format Description Document, Version 1.4.0”, 2023. https://nsgreg.nga.mil/doc/view?i=5531

[NGA.STND.0024-3_1.4.0]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 3, Image Projections Description Document, Version 1.4.0”, 2023. https://nsgreg.nga.mil/doc/view?i=5532

[SICD_schema_V1.4.0.xsd]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD) XML Schema, Version 1.4.0”, 2024. https://nsgreg.nga.mil/doc/view?i=5538

SICD 1.5

[NGA.STND.0024-1_1.5]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 1, Design & Implementation Description Document, Version 1.5”, 2025. https://nsgreg.nga.mil/doc/view?i=5696

[NGA.STND.0024-2_1.5]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 2, File Format Description Document, Version 1.5”, 2025. https://nsgreg.nga.mil/doc/view?i=5697

[NGA.STND.0024-3_1.5]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD), Vol. 3, Image Projections Description Document, Version 1.5”, 2025. https://nsgreg.nga.mil/doc/view?i=5698

[NGA.STND.0024-4_1.5]

National Center for Geospatial Intelligence Standards, “Sensor Independent Complex Data (SICD) XML Schema, Version 1.5”, 2025. https://nsgreg.nga.mil/doc/view?i=5699