Here I'm trying to find out some charactaristics of jpeg2000 en/decoder: Lurawave JP2 Plugin for Irfanview, Kakadu (current version), Openjpeg 2.1.0.
Here my test image (somewhat synthetic, with small @ with different contrasts):

Target size: 64600 bytes.
Here the difference of the results

Below red line: lurawave
below green line: kakadu
below blue line: openjpeg
Discussion:
Lurawave: Some darker @ symbols are visible, meaning that some @ with low contrast vanished. Color constancy is good.
Kakadu: A lot of high-frequency noise - unusable for text scans; very good color constancy.
Openjpeg2.1: No @ symbols lost - color constancy comparable to lurawave, but somewhat more coarse.
I'm wondering where the significant color differences are (see thread "better quantization tables")
Kind regards...