Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes for conformance testing #221

Merged
merged 5 commits into from
Aug 1, 2020

Commits on Jul 30, 2020

  1. Fix incorrect calculation of derived stepsizes

    Why: If the LSB of the Sqcd or Sqcc in the QCD or QCC marker is equal to "1" , this incorrect calculation of derived stepsizes produces wrongly reconstructed sample values.
    How: The calculation of derived stepsizes in calcstepsizes() has been fixed according to the JPEG 2000 spec defined as the ISO/IEC 15444-1.
    osamu620 committed Jul 30, 2020
    Configuration menu
    Copy the full SHA
    3204e67 View commit details
    Browse the repository at this point in the history
  2. Fix incorrect propagation of a COC parameter (DWT transform)

    Why: If the DWT transform differs among components, the information of DWT transform used for each component should be found as the COC marker segment. This information is wrongly used for dequantization and rounding in JasPer.
    How: Fixed dequantization and rounding in jpc_dec_tiledecode() to use ccp->qmfbid which has the information of DWT transform.
    osamu620 committed Jul 30, 2020
    Configuration menu
    Copy the full SHA
    1c220a1 View commit details
    Browse the repository at this point in the history
  3. Fix the problem that a tile with TNsot = 0 for all the tile-parts is …

    …never decoded
    
    Why: If a tile has multiple tile-parts and all the tile-parts have the TNsot (a parameter in the tile-part header) = 0, such a tile is never decoded.
    How: Modified the condition whether jpc_dec_tiledecode() shall be invoked or not in jpc_dec_process_eoc()
    osamu620 committed Jul 30, 2020
    Configuration menu
    Copy the full SHA
    cc814c9 View commit details
    Browse the repository at this point in the history
  4. Fix incorrect precinct edge detection in RPCL progression order

    Why: The condition for edge detection of precincts in jpc_pi_nextrpcl is wrong. (For example the p1_07 codestream used for the conformance contains first the packet for component 1, resolution 0, component 0, position (4,0) before the packet for component 0, resolution 0, component 0, position (8,0), but JasPer reads them in the wrong order.)
    How: Fixed the condition according to the JPEG 2000 spec defined as the ISO/IEC 15444-1.
    osamu620 committed Jul 30, 2020
    Configuration menu
    Copy the full SHA
    2004078 View commit details
    Browse the repository at this point in the history
  5. Dequantization using the mid-point reconstruction

    Why: In the JPEG 2000 spec, the reconstruction parameter is introduced in the Annex E (Quantization). This reconstruction parameter can be arbitrarily chosen by the decoder, however, it is important to produce the best visual or objective quality for reconstruction. Generally, values for this parameter fall in the range [0, 1) and a common value is 0.5.
    How: Added new variable as the reconstruction parameter in jpc_dequantize() and set the value to 0.5.
    osamu620 committed Jul 30, 2020
    Configuration menu
    Copy the full SHA
    55562ce View commit details
    Browse the repository at this point in the history