Accelerating JPEG 2000 Decoding for Digital Pathology and Satellite Images Using the nvJPEG2000 Library

Originally published at: https://developer.nvidia.com/blog/accelerating-jpeg-2000-decoding-for-digital-pathology-and-satellite-images-using-the-nvjpeg2000-library/

JPEG 2000 (.jp2, .jpg2, .j2k) is an image compression standard defined by the Joint Photographers Expert Group (JPEG) as the more flexible successor to the still popular JPEG standard. Part 1 of the JPEG 2000 standard, which forms the core coding system, was first approved in August 2002. To date, the standard has expanded to…

nvJPEG2000 library provides decoding for JPEG 2000 formatted images used by researcher in digital pathology, remote sensing applications and medical imaging.
Key Features

  • Support for Lossy and Lossless format decompression
  • Digital Pathology / GeoSat Imaging – Tile partial decoding, multi tile supports

is there encoding part?

Hi, nvJPEG2000 support encoder, refer details nvJPEG2000 Documentation — nvJPEG2000 0.6.0 documentation

Hi, I can use nVJPEG2000 to decode j2k image (JPEG 2000 - Part1) encoded by Kakadu / OpenJpeg libraries successfully, but fail to decode j2k image (JPEG 2000 - Part1) encoded by Pegasus library of Accusoft with error code NVJPEG2K_STATUS_JPEG_NOT_SUPPORTED. Any suggestions to check which parts are missed or not matched?

We are facing the same error (NVJPEG2K_STATUS_JPEG_NOT_SUPPORTED) trying to encode using the GPU in DCP-o-Matic free software.

You can see the discussion and track the bug here.

@mkhadatare do you know how to get this solved? It would be great to move it forward. Nvjpeg2k enable_custom_precincts

Thanks everyone :)

enable_custom_precincts member of nvjpeg2kEncodeConfig_t). It looks like this isn’t currently supported (I get a NVJPEG2K_STATUS_JPEG_NOT_SUPPORTED error when I try it). Do you have plans to add this?

In passing, perhaps I can report that the arrays precint_width and precint_height in nvjpeg2kEncodeConfig_t appear to have mis-spelt names (I think they should be precinct_width and precinct_height)