mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-06-22 06:05:34 -06:00
167 lines
7.8 KiB
HTML
167 lines
7.8 KiB
HTML
<html>
|
|
<head>
|
|
<title>NITF -- National Imagery Transmission Format</title>
|
|
</head>
|
|
|
|
<body bgcolor="#ffffff">
|
|
|
|
<h1>NITF -- National Imagery Transmission Format</h1>
|
|
|
|
GDAL supports reading of several subtypes of NITF image files, and writing
|
|
simple NITF 2.1 files. NITF 1.1, NITF 2.0, NITF 2.1 and NSIF 1.0
|
|
files with uncompressed, ARIDPCM, JPEG compressed, JPEG2000 (with Kakadu, ECW SDKs or other JPEG2000 capable driver)
|
|
or VQ compressed images should be readable.<p>
|
|
|
|
The read support test has been tested on various products,
|
|
including CIB and CADRG frames from RPF products, ECRG frames, HRE products.<p>
|
|
|
|
Color tables for pseudocolored images are read. In some cases nodata values
|
|
may be identified.<p>
|
|
|
|
Lat/Long extents are read from the IGEOLO information in
|
|
the image header if available. If high precision lat/long georeferencing
|
|
information is available in RPF auxiliary data it will be used in preference
|
|
to the low precision IGEOLO information. In case a BLOCKA instance is found,
|
|
the higher precision coordinates of BLOCKA are used if the block data covers
|
|
the complete image - that is the L_LINES field with the row count for that
|
|
block is equal to the row count of the image. Additionally, all BLOCKA
|
|
instances are returned as metadata. If GeoSDE TRE are available, they will be
|
|
used to provide higher precision coordinates.
|
|
<p>
|
|
|
|
Most file header and image header fields are returned as dataset level
|
|
metadata.<p>
|
|
|
|
<h2>Creation Issues</h2>
|
|
|
|
On export NITF files are always written as NITF 2.1 with one image
|
|
and no other auxiliary layers. Images are uncompressed by default, but JPEG
|
|
and JPEG2000 compression are also available. Georeferencing can only be written for
|
|
images using a geographic coordinate system or a UTM WGS84 projection. Coordinates are implicitly
|
|
treated as WGS84 even if they are actually in a different geographic coordinate
|
|
system. Pseudo-color tables may be written for 8bit images.<P>
|
|
|
|
In addition to the export oriented CreateCopy() API, it is also possible to
|
|
create a blank NITF file using Create() and write imagery on demand. However,
|
|
using this methology writing of pseudocolor tables and georeferencing is
|
|
not supported unless appropriate IREP and ICORDS creation options are supplied.
|
|
<p>
|
|
|
|
Creation Options:<p>
|
|
|
|
<ul>
|
|
|
|
<li> Most file header, imagery header metadata and security fields can
|
|
be set with appropriate <b>creation options</b> (although they are reported as metadata
|
|
item, but must not be set as metadata). For instance setting
|
|
<tt>"FTITLE=Image of abandoned missle silo south west of Karsk"</tt> in the
|
|
creation option list would result in setting of the FTITLE field in the NITF
|
|
file header. Use the official field names from the NITF specification
|
|
document; do not put the "NITF_" prefix that is reported when asking the metadata
|
|
list.<p>
|
|
|
|
<li> <b>IC=NC/C3/M3/C8</b> : Set the compression method.
|
|
<ul>
|
|
<li>NC is the default value, and means no compression.
|
|
<li>C3 means JPEG compression and is only available for the
|
|
CreateCopy() method. The QUALITY and PROGRESSIVE JPEG-specific
|
|
creation options can be used. See the <a href="frmt_jpeg.html">JPEG driver
|
|
documentation</a>. Starting with GDAL 1.7.0, multi-block images can be written.
|
|
<li>M3 is a variation of C3. The only difference is that a block map is written,
|
|
which allow for fast seeking to any block. (Starting with GDAL 1.7.0.)
|
|
<li>C8 means JPEG2000 compression (one block) and is available for
|
|
CreateCopy() and/or Create() methods. JPEG2000 compression is only available
|
|
if the JP2ECW, JP2KAK or Jasper driver is available :
|
|
<ul>
|
|
<li> JP2ECW : The TARGET and PROFILE JP2ECW-specific creation options can be used.
|
|
Both CreateCopy() and/or Create() methods are available.
|
|
See the <a href="frmt_jp2ecw.html">JP2ECW driver documentation</a>.
|
|
<li> JP2KAK : The general JP2KAK-specific creation options can be used (QUALITY, BLOCKXSIZE, BLOCKYSIZE, GMLPJ2, GeoJP2, LAYERS, ROI).
|
|
Only CreateCopy() method is available.
|
|
See the <a href="frmt_jp2kak.html">JP2KAK driver documentation</a>.
|
|
<li>Starting with GDAL 1.7.0, if JP2ECW and JP2KAK drivers are not available, Jasper JPEG2000 driver can be used in the CreateCopy() case.
|
|
</ul>
|
|
</ul>
|
|
</li>
|
|
<p>
|
|
|
|
<li> <b>NUMI=n</b> : (Starting with GDAL 1.7.0) Number of images. Default = 1.
|
|
This option is only compatible with IC=NC (uncompressed images).
|
|
<p>
|
|
|
|
<li> <b>ICORDS=G/D/N/S</b>: Set to "G" to ensure that space will be reserved for
|
|
geographic corner coordinates (in DMS) to be set later via SetGeoTransform(), set to "D"
|
|
for geographic coordinates in decimal degrees, set to "N"
|
|
for UTM WGS84 projection in Northern hemisphere or to "S" for UTM WGS84 projection in
|
|
southern hemisphere (Only needed for Create() method, not CreateCopy()).
|
|
If you Create() a new NITF file and have specified "N" or "S" for ICORDS,
|
|
you need to call later the SetProjection method with a consistent
|
|
UTM SRS to set the UTM zone number (otherwise it will default to zone 0).<p>
|
|
|
|
<li> <b>FHDR</b>: File version can be selected though currently the only
|
|
two variations supported are "NITF02.10" (the default), and "NSIF01.00". <p>
|
|
|
|
<li> <b>IREP</b>: Set to "RGB/LUT" to reserve space for a color table for
|
|
each output band. (Only needed for
|
|
Create() method, not CreateCopy()).<p>
|
|
|
|
<li> <b>IREPBAND</b>: (GDAL >= 1.9.0) Comma separated list of band IREPBANDs in band order.<p>
|
|
|
|
<li> <b>ISUBCAT</b>: (GDAL >= 1.9.0) Comma separated list of band ISUBCATs in band order.<p>
|
|
|
|
<li> <b>LUT_SIZE</b>: Set to control the size of pseudocolor tables for
|
|
RGB/LUT bands. A value of 256 assumed if not present. (Only needed for
|
|
Create() method, not CreateCopy()).<p>
|
|
|
|
<!--
|
|
<li> <b>TFW=YES</b>: Force the generation of an associated ESRI world
|
|
file (.tfw).<p>
|
|
-->
|
|
|
|
<li> <b>BLOCKXSIZE=n</b>: Set the block width.<p>
|
|
|
|
<li> <b>BLOCKYSIZE=n</b>: Set the block height.<p>
|
|
|
|
<li> <b>BLOCKA_*=</b>: If a complete set of BLOCKA options is provided with
|
|
exactly the same organization as the NITF_BLOCKA metadata reported when
|
|
reading an NITF file with BLOCKA TREs then a file will be created with BLOCKA
|
|
TREs. <p>
|
|
|
|
<li> <b>TRE=tre-name=tre-contents</b>: One or more TRE creation options may
|
|
be used provided to write arbitrary user defined TREs to the image header. The
|
|
tre-name should be at most six characters, and the tre-contents should be
|
|
"backslash escaped" if it contains blackslashes or zero bytes. The argument
|
|
is the same format as returned in the TRE metadata domain when reading.<p>
|
|
|
|
<li> <b>FILE_TRE=tre-name=tre-contents</b>: (GDAL >= 1.8.0) Similar to above options,
|
|
except that the TREs are written in the file header, instead of the image header.<p>
|
|
|
|
<li> <b>SDE_TRE=YES/NO</b>: (GDAL >= 1.8.0) Write GEOLOB and GEOPSB TREs to get
|
|
more precise georeferencing. This is limited to geographic SRS, and to CreateCopy() for now.<p>
|
|
|
|
</ul>
|
|
|
|
|
|
<h2>Links</h2>
|
|
<ul>
|
|
<li><a href="frmt_nitf_advanced.html">Advanced GDAL NITF Driver Information</a></li>
|
|
<li> <a href="http://www.gwg.nga.mil/ntb/">NITFS Technical Board Public Page</a></li>
|
|
<li> <a href="http://www.gwg.nga.mil/ntb/baseline/docs/digest/part2_annex_d.pdf">DIGEST Part 2 Annex D (describe encoding of NITF Spatial Data Extensions)</a></li>
|
|
<li> <a href="frmt_various.html#RPFTOC">RPFTOC</a> driver : to read the Table Of Contents of CIB and CADRG products.</li>
|
|
<li> <a href="http://www.everyspec.com/MIL-PRF/MIL-PRF+%28080000+-+99999%29/MIL-PRF-89038_25371/">MIL-PRF-89038</a> : specification of RPF, CADRG, CIB products</li>
|
|
<li> <a href="frmt_various.html#ECRGTOC">ECRGTOC</a> driver : to read the Table Of Contents of ECRG products.</li>
|
|
<li> <a href="http://www.everyspec.com/MIL-PRF/MIL-PRF+%28030000+-+79999%29/MIL-PRF-32283_26022/">MIL-PRF-32283</a> : specification of ECRG products</li>
|
|
</ul>
|
|
|
|
<h2>Credit</h2>
|
|
|
|
The author wishes to thank <a href="http://www.augsignals.com/">AUG
|
|
Signals</a> and the <a href="http://geoconnections.org/">GeoConnections</a>
|
|
program for supporting development of this driver, and to thank
|
|
Steve Rawlinson (JPEG), Reiner Beck (BLOCKA) for assistance adding features.<p>
|
|
|
|
</body>
|
|
</html>
|
|
|
|
|
|
|