Hi Patrick,

It feels a bit strange that write support for CADRG is needed in 2025, but besides that, your proposal sounds solid as far as I remember the details of those formats. I guess the most interesting part will be write support for vector quantization to figure out the VQ LUT that minimize loss. Hopefully there is literature on the subject.


Even


Le 11/06/2025 à 14:51, Patrik Sylve via gdal-dev a écrit :
Hi,

We are exploring the possibility of adding write support for CADRG format in GDAL and would appreciate some community feedback before starting implementation.

There is currently no open-source workflow for creating CADRG. GDAL can already read CADRG via RPFTOC/NITF drivers, so extending that work feels like a good next step.


Short background on CADRG format:

CADRG is a Raster Product Format (RPF) that consists of a TOC file referencing data frames. Each data frame is stored as a National Imagery Transmission Format (NITF) message.

GDAL currently supports:

* Reading CADRG (a.toc) via the RPFTOC driver
* Reading individual CADRG frames via the NITF driver
* Writing NITF images, both without and with JPEG compression


To implement a CADRG writer, we could extend the existing NITF and RPFTOC drivers:

NITF:
* Implement Vector Quantisation compression
* Add option to set Frame size
** A CADRG frame must be 1536x1536 pixels, so output would be tiled
* Add option to set CADRG scale

RPFTOC:
* Extend with 'write' mode
** Internally call NITF driver to generate CADRG compliant data frames
** Generate a .toc file per MIL-STD-2411

Example usage, create a CADRG from a TIF-file:

gdal_translate input.tif ./RPF \
    -of RPFTOC \
     -co "PRODUCT=CADRG" \
*    # NITF file header options*
    -co "FTITLE=My CADRG Product" \
    -co "FSCLAS=U" \
         ...

Output:
└── RPF/
├─── a.toc
└─── frames/
├──── 00AVL01C.TL6
└──── 00AVM01C.TL6



Drivers:
* https://gdal.org/en/stable/drivers/raster/rpftoc.html
* https://gdal.org/en/stable/drivers/raster/nitf.html

Standards:
* CADRG: http://everyspec.com/MIL-PRF/MIL-PRF-080000-99999/MIL-PRF-89038_25371/
* RPF: http://everyspec.com/MIL-STD/MIL-STD-2000-2999/MIL-STD-2411_6903/


Would this be a welcomed addition? Any thoughts or feedback is appreciated.


Best regards / Vänliga hälsningar


*Patrik Sylve*

Software Developer

*
*

*E:***patrik.sy...@t-kartor.com


www.t-kartor.com <http://www.t-kartor.com/>


/This e-mail is private and confidential between the sender and the addressee. In the event of misdirection, the recipient/

/is prohibited from using, copying or disseminating it or any information in it. Please notify the above of any such misdirection./



_______________________________________________
gdal-dev mailing list
gdal-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/gdal-dev

--
http://www.spatialys.com
My software is free, but my time generally not.
_______________________________________________
gdal-dev mailing list
gdal-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/gdal-dev

Reply via email to