[gdal-dev] JasPer vs OpenJPEG performance

Damian Bruce Leslie Dixon damian.dixon at gmail.com
Mon Aug 10 22:59:09 PDT 2015


Hi,

Even's interpretation of the NITF/NSIF standard is correct.

My experience is that Jasper reads all NITF test images so does Kakadu.

Kakadu is very fast however I've had problems with too many threads being used affecting overall system performance.

I've not tried openjpeg for a couple of years now... I'm hoping it has improved. When I tried it last there were problems reading the test images, some of which are badly formed on purpose. 

Jasper is slow but does not have problems reading the test images.

Regards Damian



On 10 August 2015, at 2:34 pm, Even Rouault <even.rouault at spatialys.com> wrote:

Le lundi 10 août 2015 14:58:59, Jukka Rahkonen a écrit :
> Brad Hards <bradh <at> frogmouth.net> writes:
> > On Fri, 7 Aug 2015 11:17:56 AM Jukka Rahkonen wrote:
> > > NITF requires either that the tile size must not be
> > > bigger that 1024x1024, or that the whole file is written as one single
> > > tile. I believe you have such single-tile NITF file.
> > 
> > I don't believe this is true (at least in NITF 2.1 - MIL-STD-2500C) for
> > two reasons:
> > 1. Tiling is mandatory above 8192 x 8192 (See Table A-10 Complexity Level
> 
> 7 or
> 
> > higher)
> > 2. Tiles are allowed to be up to 2048 x 2048 (Complexity level 3) or 8192
> > x 8192 (Complexity level 5 or higher).
> 
> Hi Brad,
> 
> I read the NITF 2.1 - MIL-STD-2500C
> http://www.gwg.nga.mil/ntb/baseline/docs/2500c/2500C.pdf in the same way
> than you do. However, I wrote my comments after reading another (older)
> document:
> "NATIONAL IMAGERY TRANSMISSION FORMAT (NITF) VERSION 2.1 COMMERCIAL DATASET
> REQUIREMENTS DOCUMENT (NCDRD)"
> http://www.gwg.nga.mil/ntb/baseline/docs/stdi0006/NCDRD_18February2010.pdf
> 
> And especially part
> 2.3.2	JPEG 2000 Image Geometry Segmentation
> Commercial datasets shall be organized in JPEG 2000 tiles as described in
> BPJ2K01.00 Section 8.
> 
> I believe that the referred document is this:
> http://www.gwg.nga.mil/ntb/baseline/docs/bpj2k01/ISOJ2K_profile.pdf
> 
> Appendix C  JPEG 2000 Commercial Profiles (ISO/IEC IS 15444-1
> Annex A.10)  , Table C-1. Codestream Restrictions:
> 
> Profile-0:
> Tiles of a dimension 128x128:
> YTsiz=XTsiz=128
> or one tile for the whole
> image:
> YTsiz+YTOsiz>=Ysiz
> XTsiz+XTOsiz>=Xsiz
> 
> Profile-1
> XTsiz/min(XRsiz, YRsiz)<=1024
> XTsiz=YTsiz
>  or one tile for the whole image:
> YTsiz+YTOsiz>=Ysiz
> XTsiz+XTOsiz>=Xsiz
> 
> 
> It may be that tiling is mandatory for images bigger than 8192 x 8192
> because of the baseline standard. On the other hand is seems that
> commercial vendors are not allowed to use multiple tiles if they are
> larger than 1024 x 1024. I did not dig too deep into the black hole
> between 1024 x 1024 and 8192 x 8192.

Nice hunt through standards ;-)

If the image is tiled, no issue.

Found in the documents you mentionned :
- http://www.gwg.nga.mil/ntb/baseline/docs/bpj2k01/ISOJ2K_profile.pdf at 
paragraph 9.2.1.2 Tiling "It is recommended that the image be tiled with
in a JPEG 2000 codestream."
- http://www.gwg.nga.mil/ntb/baseline/docs/bpj2k01/ISOJ2K_profile.pdf at 
paragraph 8.1 "The following JPEG 2000 parameter choices are recommended [...] 
Images are tiled with JPEG 2000 at a tile size of 1024x1024"

So I think that the single-tile scheme that is theoretically possible by the 
Profile-1 of the JPEG2000 standard is not to be used in JPEG2000 compressed 
NITF.

Looking at a NITF sample from a commercial provider, I can see it uses 
1024x1024 tiles for example.

Even

-- 
Spatialys - Geospatial professional services
http://www.spatialys.com
_______________________________________________
gdal-dev mailing list
gdal-dev at lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/gdal-dev


More information about the gdal-dev mailing list