osamu620 / OpenHTJ2K

An open source implementation of ITU-T Rec.814 | ISO 15444-15 (a.k.a. HTJ2K).
BSD 3-Clause "New" or "Revised" License
36 stars 10 forks source link
htj2k jpeg2000 jpeg2000-part15 wasm webassembly

CMake CodeQL Packaging status

OpenHTJ2K

OpenHTJ2K is an open source implementation of ITU-T Rec.814 | ISO/IEC 15444-15 (a.k.a. JPEG 2000 Part 15, High-Throughput JPEG 2000; HTJ2K)

What OpenHTJ2K provides

OpenHTJ2K provides a shared liberary and sample applications having the following functionalities:

Requirements

cmake (version 3.14 or later) and C++11 compliant compiler.

Building

Type the following command. ./ is a root of cloned repository and ${BUILD_DIR} is a build directory (for example, ../build or ./build and so on)

cd ./
cmake -G "Unix Makefiles" -B ${BUILD_DIR} -DCMAKE_BUILD_TYPE=Release
cd  ${BUILD_DIR}
make

Then the executables should be found in ${BUILD_DIR}/bin directory.

Usage

Encoder

Only Part 15 compliant encoding is supported. Both .j2c (codestream) and .jph (file format) are available.

./open_htj2k_enc -i inputimage(in PNM/PGX/(TIFF, libtiff required) format) -o output [options...]

The encoder can take comma-separated multiple files. For example, components in YCbCr color space can be encoded by

./open_htj2k_enc -i inputY.pgx,inputCb.pgx,inputCr.pgx -o output 

options

Decoder

The both Part 1 and Part 15 compliant decoding are supported.

./open_htj2k_dec -i codestream -o outputimage [-reduce n: number of DWT level reduction]

To see a help, use -h option.

Supported file types

Encoder