ISO/IEC 15444-4:2002
(Main)Information technology - JPEG 2000 image coding system - Part 4: Conformance testing
Information technology - JPEG 2000 image coding system - Part 4: Conformance testing
ISO/IEC 15444-4:2002 specifies the framework, concepts, methodology for testing, and criteria to be achieved to claim compliance to ITU-T Recommendation T.800 | ISO/IEC 15444-1. It provides a framework for specifying abstract test suites and for defining the procedures to be followed during compliance testing. ISO/IEC 15444-4:2002 specifies compliance testing procedures for encoding and decoding using JPE 2000 Part 1 (ITU-T Recommendation T.800 | ISO/IEC 15444-1); specifies codestreams, decoded images, and error metrics to be used with the testing procedures; specifies abstract test suites; provides guidance for creating an encoder compliance test. ISO/IEC 15444-4:2002 does not include the following tests: Acceptance testing: the process of determining whether an implementation satisfies acceptance criteria and enables the user to determine whether or not to accept the implementation. This includes the planning and execution of several kinds of tests (e.g. functionality, quality, and speed performance testing) that demonstrate that the implementation satisfies the user requirements. Performance testing: measures the performance characteristics of an Implementation Under Test (IUT) such as its throughput, responsiveness, etc., under various conditions. Robustness testing: the process of determining how well an implementation processes data which contains errors.
Technologies de l'information — Système de codage d'image JPEG 2000 — Partie 4: Essais de conformité
General Information
Relations
Frequently Asked Questions
ISO/IEC 15444-4:2002 is a standard published by the International Organization for Standardization (ISO). Its full title is "Information technology - JPEG 2000 image coding system - Part 4: Conformance testing". This standard covers: ISO/IEC 15444-4:2002 specifies the framework, concepts, methodology for testing, and criteria to be achieved to claim compliance to ITU-T Recommendation T.800 | ISO/IEC 15444-1. It provides a framework for specifying abstract test suites and for defining the procedures to be followed during compliance testing. ISO/IEC 15444-4:2002 specifies compliance testing procedures for encoding and decoding using JPE 2000 Part 1 (ITU-T Recommendation T.800 | ISO/IEC 15444-1); specifies codestreams, decoded images, and error metrics to be used with the testing procedures; specifies abstract test suites; provides guidance for creating an encoder compliance test. ISO/IEC 15444-4:2002 does not include the following tests: Acceptance testing: the process of determining whether an implementation satisfies acceptance criteria and enables the user to determine whether or not to accept the implementation. This includes the planning and execution of several kinds of tests (e.g. functionality, quality, and speed performance testing) that demonstrate that the implementation satisfies the user requirements. Performance testing: measures the performance characteristics of an Implementation Under Test (IUT) such as its throughput, responsiveness, etc., under various conditions. Robustness testing: the process of determining how well an implementation processes data which contains errors.
ISO/IEC 15444-4:2002 specifies the framework, concepts, methodology for testing, and criteria to be achieved to claim compliance to ITU-T Recommendation T.800 | ISO/IEC 15444-1. It provides a framework for specifying abstract test suites and for defining the procedures to be followed during compliance testing. ISO/IEC 15444-4:2002 specifies compliance testing procedures for encoding and decoding using JPE 2000 Part 1 (ITU-T Recommendation T.800 | ISO/IEC 15444-1); specifies codestreams, decoded images, and error metrics to be used with the testing procedures; specifies abstract test suites; provides guidance for creating an encoder compliance test. ISO/IEC 15444-4:2002 does not include the following tests: Acceptance testing: the process of determining whether an implementation satisfies acceptance criteria and enables the user to determine whether or not to accept the implementation. This includes the planning and execution of several kinds of tests (e.g. functionality, quality, and speed performance testing) that demonstrate that the implementation satisfies the user requirements. Performance testing: measures the performance characteristics of an Implementation Under Test (IUT) such as its throughput, responsiveness, etc., under various conditions. Robustness testing: the process of determining how well an implementation processes data which contains errors.
ISO/IEC 15444-4:2002 is classified under the following ICS (International Classification for Standards) categories: 35.040 - Information coding; 35.040.30 - Coding of graphical and photographical information. The ICS classification helps identify the subject area and facilitates finding related standards.
ISO/IEC 15444-4:2002 has the following relationships with other standards: It is inter standard links to ISO/IEC 15444-4:2004. Understanding these relationships helps ensure you are using the most current and applicable version of the standard.
You can purchase ISO/IEC 15444-4:2002 directly from iTeh Standards. The document is available in PDF format and is delivered instantly after payment. Add the standard to your cart and complete the secure checkout process. iTeh Standards is an authorized distributor of ISO standards.
Standards Content (Sample)
INTERNATIONAL ISO/IEC
STANDARD 15444-4
First edition
2002-11-01
Information technology — JPEG 2000
image coding system —
Part 4:
Conformance testing
Technologies de l'information — Système de codage d'image
JPEG 2000 —
Partie 4: Essais de conformité
Reference number
©
ISO/IEC 2002
PDF disclaimer
This PDF file may contain embedded typefaces. In accordance with Adobe's licensing policy, this file may be printed or viewed but shall not
be edited unless the typefaces which are embedded are licensed to and installed on the computer performing the editing. In downloading this
file, parties accept therein the responsibility of not infringing Adobe's licensing policy. The ISO Central Secretariat accepts no liability in this
area.
Adobe is a trademark of Adobe Systems Incorporated.
Details of the software products used to create this PDF file can be found in the General Info relative to the file; the PDF-creation parameters
were optimized for printing. Every care has been taken to ensure that the file is suitable for use by ISO member bodies. In the unlikely event
that a problem relating to it is found, please inform the Central Secretariat at the address given below.
© ISO/IEC 2002
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form or by any means, electronic
or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or ISO's member body
in the country of the requester.
ISO copyright office
Case postale 56 • CH-1211 Geneva 20
Tel. + 41 22 749 01 11
Fax + 41 22 749 09 47
E-mail copyright@iso.ch
Web www.iso.ch
Printed in Switzerland
ii © ISO/IEC 2002 – All rights reserved
CONTENTS
Foreword. vii
Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . v iii
1 Scope.1
2 References. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
3 Definitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2
4 Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
5 Symbols.6
6 General description . . . . . . . . . . . . . . . . . . . . . . . . . . .7
6.1 Profiles and compliance classes. . . . . . . . . . . . . . . . . . . . .7
6.2 Decoders.8
6.3 Encodersand codestreams. . . . . . . . . . . . . . . . . . . . . . .8
6.4 Implementation compliance statement. . . . . . . . . . . . . . . . . . .8
6.5 Abstracttestsuites.8
6.6 Encoder compliancetesting procedure . . . . . . . . . . . . . . . . . . .8
6.7 Decodercompliancetesting procedure . . . . . . . . . . . . . . . . . . .9
7 Conventions. . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
8 Copyright.9
9 Compliance filesavailabilityandupdates. . . . . . . . . . . . . . . . . . . .9
AnnexA Decoder ComplianceClasses . . . . . . . . . . . . . . . . . . . . . . . .10
A.1 Compliance classparameter definitions. . . . . . . . . . . . . . . . . . .10
A.2 Compliance classdefinitions . . . . . . . . . . . . . . . . . . . . . .13
A.3 Lossless encoding and decoding . . . . . . . . . . . . . . . . . . . . .14
AnnexB Decoder ComplianceTesting Procedures. . . . . . . . . . . . . . . . . . . .15
B.1 General. . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
B.2 Decodertestprocedure.15
AnnexC Compliance Tests . . . . . . . . . . . . . . . . . . . . . . . . . . .20
C.1 Abstracttest suite(informative). . . . . . . . . . . . . . . . . . . . .20
C.2 Executabletestsuite(ETS) .22
AnnexD Encoder Compliance Test Procedure . . . . . . . . . . . . . . . . . . . . . .30
D.1 General. . . . . . . . . . . . . . . . . . . . . . . . . . . . .30
D.2 Referencedecoder . . . . . . . . . . . . . . . . . . . . . . . . .30
D.3 Compliance requirement andacceptance. . . . . . . . . . . . . . . . . .30
D.4 Encoding compliance test procedure. . . . . . . . . . . . . . . . . . . .30
AnnexE Decoder ImplementationCompliance Statement . . . . . . . . . . . . . . . . . .33
E.1 General. . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
E.2 Decoderimplementationcompliancestatement . . . . . . . . . . . . . . . .33
E.3 Extended support . . . . . . . . . . . . . . . . . . . . . . . . . .33
© ISO/IEC 2002 – All rights reserved iii
AnnexF Encoder Implementation Compliance Statement . . . . . . . . . . . . . . . . . .37
F.1 General. . . . . . . . . . . . . . . . . . . . . . . . . . . . .37
F.2 Encoder description . . . . . . . . . . . . . . . . . . . . . . . . .38
AnnexG JP2File Format Reader Compliance Testing Procedure. . . . . . . . . . . . . . . .47
G.1 General. . . . . . . . . . . . . . . . . . . . . . . . . . . . .47
G.2 Compliance requirement andacceptance. . . . . . . . . . . . . . . . . .47
G.3 Readinga JP2 file compliance testprocedure . . . . . . . . . . . . . . . . .47
G.4 JP2fileformat test codestreams and images . . . . . . . . . . . . . . . . .48
iv © ISO/IEC 2002 – All rights reserved
LISTOFFIGURES
FigureB-1 Decodercompliancetestflow chart . . . . . . . . . . . . . . . . . . . . . .15
FigureD-1 Encoder compliancetest block diagram . . . . . . . . . . . . . . . . . . . . .31
FigureG-1 JP2fileformat reader compliance test block diagram . . . . . . . . . . . . . . . . .48
© ISO/IEC 2002 – All rights reserved v
ISO/IEC 15444-4:2002(E)
LISTOFTABLES
TableA-1 Definitions of complianceclasses(Cclass). . . . . . . . . . . . . . . . . . . .14
TableC-1 Class0 Profile0 referenceimagesand allowable errors. . . . . . . . . . . . . . . .23
TableC-2 ItemstestedbyProfile0codestreams.24
TableC-3 Profile 0codestream0 contents. . . . . . . . . . . . . . . . . . . . . . . .24
TableC-4 Class0 Profile1 referenceimagesand allowable errors. . . . . . . . . . . . . . . .26
TableC-5 ItemstestedbyProfile1codestreams.26
TableC-6 Class1 Profile0 referencefilesand maximumerror . . . . . . . . . . . . . . . . .27
TableC-7 Class1 Profile1 referenceimagesand allowable error . . . . . . . . . . . . . . . .29
TableE-1 ICSfor profilesand Cclass . . . . . . . . . . . . . . . . . . . . . . . . .33
TableE-2 Extended capabilitiesfor Cclass0. . . . . . . . . . . . . . . . . . . . . . .34
TableE-3 Extended capabilitiesfor Cclass1. . . . . . . . . . . . . . . . . . . . . . .35
TableE-4 Extended capabilitiesfor Cclass2. . . . . . . . . . . . . . . . . . . . . . .36
TableF-1 Encoder Implementation Marker Usage . . . . . . . . . . . . . . . . . . . . .37
TableF-2 Delimitingmarkersandmarkersegments. . . . . . . . . . . . . . . . . . . .39
TableF-3 Fixedinformation markersegments . . . . . . . . . . . . . . . . . . . . . .39
TableF-4 Functional marker segments . . . . . . . . . . . . . . . . . . . . . . . .41
TableF-5 Pointer marker segments. . . . . . . . . . . . . . . . . . . . . . . . . .45
TableF-6 Inbitstreammarkersandmarkersegments. . . . . . . . . . . . . . . . . . . .46
TableF-7 Informational marker segments. . . . . . . . . . . . . . . . . . . . . . . .46
TableG-1 JP2referenceimages and allowable error. . . . . . . . . . . . . . . . . . . .49
vi © ISO/IEC 2002 – All rights reserved
Foreword
ISO (the International Organization for Standardization) and IEC (the International Electrotechnical Commission) form the
specialized system for worldwide standardization. National bodies that are members of ISO or IEC participate in the
development of International Standards through technical committees established by the respective organization to deal with
particular fields of technical activity. ISO and IEC technical committees collaborate in fields of mutual interest. Other
international organizations, governmental and non-governmental, in liaison with ISO and IEC, also take part in the work. In
the field of information technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1.
International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 3.
The main task of the joint technical committee is to prepare International Standards. Draft International Standards adopted by
the joint technical committee are circulated to national bodies for voting. Publication as an International Standard requires
approval by at least 75 % of the national bodies casting a vote.
Attention is drawn to the possibility that some of the elements of this part of ISO/IEC 15444 may be the subject of patent
rights. ISO and IEC shall not be held responsible for identifying any or all such patent rights.
ISO/IEC 15444-4 was prepared by Joint Technical Committee ISO/IEC JTC 1, Information technology, Subcommittee SC 29,
Coding of audio, picture, multimedia and hypermedia information, in collaboration with ITU-T, but is not published as common
text at this time.
ISO/IEC 15444 consists of the following parts, under the general title Information technology — JPEG 2000 image coding
system:
— Part 1: Core coding system
— Part 2: Extensions
— Part 3: Motion JPEG 2000
— Part 4: Conformance testing
— Part 5: Reference software
— Part 6: Compound image file format
— Part 7: Guideline of minimum support function of ISO/IEC 15444-1
Annexes B and C form a normative part of this part of ISO/IEC 15444. Annexes A, D, E, F and G are for information only.
© ISO/IEC 2002 – All rights reserved vii
Introduction
ITU-TT.800|ISO/IEC15444-1isaspecificationthatdescribesanimagecompressionsystemthatallowsgreat
flexibility, not only for the compression of images but also for access into the codestream. The codestream provides a
number of mechanisms for locating and extracting portions of the compressed image data for the purpose of
retransmission,storage,display,orediting.Thisaccessallowsstorageandretrievalofcompressedimagedataappropriate
foragivenapplicationwithoutdecoding.
This Recommendation | International Standard provides the framework, concepts, and methodology for testing and the
criteriatobeachievedtoclaimcompliancetoITU-T T.800| ISO/IEC15444-1standard.Theobjectiveofstandardization
in this field is to promote interoperability between JPEG 2000 encoders and decoders and to test these systems for
compliance to this specification. Compliance testing is the testing of a candidate product for the existence of specific
characteristics required by a standard. It involves testing the capabilities of an implementation against both the
compliance requirementsin therelevant standard andthe statement of the implementation’scapability.
The purpose of this Recommendation | International Standard is to define a common test methodology, to provide a
framework for specifying abstract test suites (ATS), and to define the procedures to be followed during compliance
testing.
Any organization contemplating the use of test methods defined in this Recommendation | International Standard should
carefully consider the constraints on their applicability. Compliance testing does not include robustness testing,
acceptancetesting, and performancetesting.
viii © ISO/IEC 2002 – All rights reserved
INTERNATIONAL STANDARD ISO/IEC 15444-4:2002(E)
INFORMATIONTECHNOLOGY–
JPEG2000IMAGECODINGSYSTEM —
PART 4: CONFORMANCETESTING
1Scope
This Recommendation | International Standard specifies the framework, concepts, methodology for testing, and criteria
to be achieved to claim compliance to ITU-T Recommendation T.800 | ISO/IEC 15444-1. It provides a framework for
specifying abstract test suitesandfor defining the procedurestobefollowed duringcompliancetesting.
ThisRecommendation |InternationalStandard
— specifies compliance testing procedures for encoding and decoding using JPEG 2000 Part 1 (ITU-T
Recommendation T.800| ISO/IEC 15444-1);
— specifiescodestreams,decoded images,anderrormetricstobeusedwith thetesting procedures;
— specifiesabstracttest suites;
— providesguidancefor creating an encodercompliancetest.
ThisRecommendation |InternationalStandard doesnotincludethe following tests:
Acceptance testing: the process of determining whether an implementation satisfies acceptance criteria and enables the
usertodeterminewhether or not toaccept theimplementation.Thisincludestheplanning andexecutionof severalkinds
oftests(e.g.,functionality,quality,andspeed performance testing)thatdemonstratethatthe implementationsatisfiesthe
user requirements.
Performance testing: measures the performance characteristics of an Implementation Under Test (IUT) such as its
throughput,responsiveness,etc.,undervariousconditions.
Robustness testing: the processof determininghow well an implementation processesdatawhichcontains errors.
2References
The following references document the technical details and legal codestream syntax that serve as a basis for this
Recommendation | International Standard. At the time of publication, the editions indicated were valid. All
Recommendations and Standards are subject to revision, and parties to agreements based on this Recommendation |
International Standard are encouraged to investigate the possibility of applying the most recent edition of the
Recommendations and Standards listed below. Members of IEC and ISO maintain registers of currently valid
International Standards. The Telecommunication Standardization Bureau of the ITU maintains a list of currently valid
ITU-T Recommendations.
— ITU-T Recommendation T.800 | ISO/IEC 15444-1, Information technology — JPEG 2000 Image
Coding System.
— ITU-T Recommendation T.800 | ISO/IEC 15444-1 Amendment 1, Information technology — JPEG
2000ImageCoding System,Amendment 1.
— ITU-T Recommendation T.800 | ISO/IEC 15444-1 Amendment 2, Information technology — JPEG
2000ImageCoding System,Amendment 2.
© ISO/IEC 2002 – All rights reserved
— ITU-T Recommendation T.800 | ISO/IEC 15444-1 Corrigendum 1, Information technology — JPEG
2000ImageCoding System.
— ITU-T Recommendation T.800 | ISO/IEC 15444-1 Corrigendum 2, Information technology — JPEG
2000ImageCoding System.
— ITU-T Recommendation T.800 | ISO/IEC 15444-1 Corrigendum 3, Information technology — JPEG
2000ImageCoding System.
3 Definitions
For the purposes of this Recommendation | International Standard, the following definitions apply. The definitions from
ITU-T T.800| ISO/IEC 15444-1clause3 also apply tothisRecommendation| International Standard.
3.1 abstracttestsuite: Genericcompliancetesting concepts and proceduresfor a givenrequirement.
3.2 arithmetic coder: An entropy coder that converts variable length strings to variable length codes (encoding)
and vice versa (decoding).
3.3 bigendian:Anorderofbyteswiththemostsignificantbytefirst.
3.4 bit:Acontraction ofthe term“binarydigit”;aunitofinformationrepresentedbya zero ora one.
3.5 bit-depth: Thenumber of bitsrequired torepresent anoriginal component of an image.
3.6 bit-plane: A two-dimensional arrayof bits.InthisRecommendation |InternationalStandardabit-planerefers
to all the bits of the same magnitude in all coefficients or samples. This could refer to a bit-plane in a component, tile-
component, code-block,regionof interest,or other.
3.7 bitstream:Theactual sequenceof bitsresultingfrom thecodingof asequenceofsymbols.It doesnotinclude
the markers or marker segments in the main and tile-part headers or the EOC marker. It does include any packet headers
and instreammarkersandmarkersegments notfoundwithinthemain ortile-partheaders.
3.8 box: A portion of the file format defined by a length and unique box type. Boxes of some types may
containotherboxes.
3.9 byte:Eightbits.
3.10 Cclass: Defines a level of performance for a decoder. Also provides guidance for encoders to produce
codestreams that are easilydecodable by compliant decoders.
3.11 code-block:Arectangulargroupingofcoefficientsfromthesame subbandofatile-component.
3.12 coder: An embodiment of either anencoding or decoding process.
3.13 codestream: A collection of one or more bitstreams and the main header, tile-part headers, and the EOC
required for their decoding and expansion into image data. This is the image data in a compressed form with all of the
signalling needed todecode. This doesnot includethe file format.
3.14 coding pass: A procedure accessing coefficients in a code-block where the context and bit are determined.
Typically there are 3 different coding passes for each bitplane, each coefficient will be represented in exactly one of the
three passes. For an encoder a coding pass examines coefficinets and agments a bitstream. For a decoder a coding pass
readsabitstream and updates coefficients.
3.15 coefficient: Thevaluesthat arethe result of atransformation.
3.16 component: A two-dimensional array of samples. An image typically consists of several components (e.g.,
red, green,andblue).
3.17 compressed image data:Partorallofacodestream.Canalsorefertoacollectionofbitstreamsinpartorall
of a codestream.
3.18 compliance: Fulfillment of the specified requirements, as defined in thisspecification, for a given Profileand
Cclass.
© ISO/IEC 2002 – All rights reserved
3.19 compliancetestprocedure:Theprocessofassessingcompliance.
3.20 context: Function of coefficients previously decoded and used to condition the decoding of the present
coefficient.
3.21 decoder: Anembodiment of adecoding process,and optionallyacolour transformationprocess.
3.22 decoding process: A process that takes as its input all or part of a codestream and outputs all or part of a
reconstructed image.
3.23 decompositionlevel:A collection ofwavelet subbands where each coefficienthas the same spatial impactor
span with respect to the source component samples. These include all subbands of the same two-dimensional subband
decomposition. For thelast decomposition level, theLL subbandisalso included.
3.24 discrete wavelettransformation(DWT): A transformation that iteratively transforms one signal into two or
more filtered and decimated signals corresponding to different frequency bands. This transformation operates on
spatiallydiscretesamples.
3.25 encoder: Anembodiment of an encodingprocess, and optionallya colour transformation process.
3.26 encodingprocess:Aprocessthattakesasitsinputallorpartofasourceimagedataandoutputsacodestream.
3.27 executabletestsuite:Set of executabletest casesthat support the abstract test cases.
3.28 fileformat: A codestream and additional support data and information not explicitly required for the
decoding of the codestream. Examples of such support data include text fields providing titling, security and historical
information, data to support placement of multiple codestreams within a given data file, and data to support exchange
betweenplatformsorconversiontootherfileformats.
3.29 fully decode: Applying ITU-T T.800 | ISO/IEC 15444-1 to produce an image from a codestream where all
codeddatainthecodestreamhasbeenusedtoproducetheimage.
3.30 guardbits:Additionalmostsignificantbitsthathave beenadded tosampledata.
3.31 header:Eitherapartofthecodestreamthatcontainsonlymarkersandmarkersegments(mainheaderandtile
part header) or the signalling part of apacket (packet header).
3.32 image: Thesetofallcomponents.
3.33 imagedata: The component samples making up an image. Image data can refer to either the source image
data orthe reconstructed image data.
3.34 implementation:Arealizationofaspecification.
3.35 Implementation Compliance Statement (ICS): Statement of specification options and the extent to which
they havebeen implementedbya implementationundertest.
3.36 ImplementationUnderTest(IUT):An implementationthatisbeingevaluated forcompliance.
3.37 irreversible: A transformation, progression, system, quantization, or other process that, due to systemic or
quantization error,prevents losslessrecovery.
3.38 JP2 file:Thenameofafileinthefileformatdescribedinthisspecification.Structurally,aJP2fileisa
contiguoussequence ofboxes.
3.39 JPEG: Joint Photographic Experts Group - The joint ISO/ITU committee responsible for developing
standards for continuous-tone still picture coding. It also refers to the standards produced by this committee: ITU-T.81 |
ISO/IEC 10918-1,ITU-T T.83| ISO/IEC 10918-2, ITU-T T.84 |ISO/IEC 10918-2and ITU-T T.87 |ISO/IEC 14495.
3.40 LL subband: The subband obtained by forward horizontal low-pass filtering and vertical low-pass filtering.
Thissubbandcontributestoreconstructionwithinverse vertical low-passfilteringandhorizontal low-passfiltering.
3.41 layer: A collection of compressed image data from coding passes of one, or more, code-blocks of a tile-
component. Layershave anorderforencodinganddecoding thatmustbepreserved.
© ISO/IEC 2002 – All rights reserved
3.42 lossless: A descriptive term for the effect of the overall encoding and decoding processes in which the output
of thedecodingprocessisidentical to theinput to theencodingprocess.Distortion-free restorationcanbeassured.Allof
thecodingprocessesorstepsusedforencodinganddecoding arereversible.
3.43 lossy: A descriptive term for the effect of the overall encoding and decoding processes in which the output of
the decoding processis not identical to the input to the encodingprocess. There is distortion (measured mathematically).
Atleastoneofthecoding processesorstepsusedforencodinganddecoding is irreversible.
3.44 main header: A group of markers and marker segments at the beginning of the codestream that describe the
image parametersandcoding parametersthat can apply toevery tileand tile-component.
3.45 marker:Atwo-bytecodeinwhichthefirstbyteishexadecimalFF(0xFF)andthesecondbyteisavalue
between1(0x01)andhexadecimalFE(0xFE).
3.46 markersegment: A marker and associated(not empty) set of parameters.
3.47 packet:Apartofthecodestreamcomprisingapacketheaderandthecompressedimagedatafromonelayerof
oneprecinct of one resolution level of onetile-component.
3.48 packetheader:Portionof thepacket that containssignalling necessaryfor decodingthat packet.
3.49 parser:Readsandidentifiescomponentsofthecodestreamdown to the code-block level.
3.50 partialdecoding:Producinganimagefromasubsetofanentirecodestream.
3.51 precinct:Arectangularregionofatransformedtile-component,withineachresolutionlevel,usedforlimiting
thesize of packets.
3.52 precision: Number of bits allocated to a particular sample, coefficient, or other binary numerical
representation.
3.53 progression: The order of a codestream where the decoding of each successive bit contributes to a “better”
reconstruction of the image. What metrics make the reconstruction “better” is a function of the application. Some
examplesofprogressionare increasingresolutionorimproved sample fidelity.
3.54 profile: A subset of technology, from ITU-T T.800 | ISO/IEC 15444-1 Amendment 1, that meets the needs of
agivenapplicationwithlimitsonparameterswithinaselectedtechnology.Thisisacodestreamlimitation.
3.55 quantization: A method of reducing the precision of the individual coefficients to reduce the number of bits
used to represent them. This is equivalent to division while compressing and multiplying while decompressing.
Quantizationcanbeachievedbyanexplicitoperationwithagivenquantizationvalue(scalarquantization)orby
dropping (truncating) coding passesfrom thecodestream.
3.56 reconstructedimage:Animagethatistheoutputofadecoder.
3.57 reference grid: A regular rectangular array of points used to define other rectangular arrays of data. The
referencegrid isusedto determine thenumber of samples in tile-componentsfor example.
3.58 regionofinterest(ROI): A collection of coefficientsthat areconsidered of particular relevanceby some user
definedmeasure.
3.59 reversible: A transformation, progression, system, or other process that does not suffer systemic or
quantization errorandtherefore allowsforlosslesssignalrecovery.
3.60 reversiblefilter:Aparticularfilterpairusedinthewavelettransformationwhichallowslosslesscompression.
3.61 sample:One element in the two-dimensional arraythat comprisesacomponent.
3.62 selectivearithmeticcodingbypass:Acodingstylewheresomeof thecode-blockpassesarenotcodedbythe
arithmeticcoder. Instead,the bitstobecoded areappended directly to the bitstream without coding.
3.63 shift:Multiplicationordivisionofanumberbypowersoftwo.Divisionofanintegerviashiftimplies
truncationtowardminusinfinity of the non-integer portion.
3.64 signbit:Abitthatindicates whether anumberis positive (zero value)ornegative (one value).
© ISO/IEC 2002 – All rights reserved
3.65 sign-magnitudenotation: A binary representation of an integer where the distance from the origin is
expressedwithapositivenumberandthedirectionfromtheorigin(positiveornegative)isexpressedwithaseparate
single sign bit.
3.66 sourceimage:Animageusedasinputtoanencoder.
3.67 subband: A group of transform coefficients resulting from the same sequence of low-pass and high-pass
filtering operations, both vertically and horizontally.
3.68 testing: The processof evaluating compliance.
3.69 tile:Arectangulararrayofpointsonthereferencegrid,registeredwithanoffsetfrom thereferencegridorigin
and definedbya widthand height.
3.70 tile-component:Allthesamplesofagivencomponentinatile.
3.71 tile-part:Aportionofthecodestreamwithcompressedimagedataforsome,orall,ofatile.Thetile-partmay
includeoneor more packetsthat make up thecoded tile.
3.72 tile-part header: A group of markers and marker segments at the beginning of each tile-part in the
codestream that describethetile-part coding parameters.
3.73 transformation: A mathematical mapping from onesignal space to another.
3.74 transformcoefficient:Avaluethatis theresultofatransformation.
4 Abbreviations
For the purposes of this Recommendation | International Standard, the following abbreviations apply. The abbreviations
definedin ITU-T T.800| ISO/IEC 15444-1 subclause4.1also applyto this Recommendation |International Standard.
ATS:Abstract Test Suite
CCITT:InternationalTelegraph andTelephoneConsultativeCommittee,nowITU-T
ETS: ExecutableTest Suite
ICC: InternationalColorConsortium
ICT: IrreversibleColour Transformation
ICS: Implementation Compliance Statement
IEC: International Electrotechnical Commission
ISO: International Organizationfor Standardization
ITU: International Telecommunication Union
ITU-T: International Telecommunication Union – Telecommunication Standardization Sector (formerly the
CCITT)
IUT: Implementation Under Test
JPEG:Joint PhotographicExperts Group
MSE:MeanSquaredError
RCT:ReversibleColourTransformation
ROI:RegionOfInterest
TCS:Test Codestream
© ISO/IEC 2002 – All rights reserved
ISO/IEC 15444-4:2002(E)
5Symbols
For the purposes of this Recommendation | International Standard, the following symbols apply. The symbols defined in
ITU-T T.800| ISO/IEC15444-1subclause4.2also applyto thisRecommendation |InternationalStandard.
0x----: Denotesahexadecimal number
B: Bitdepthaccuracy for reversible 5-3
C: Components guarenteed tobedecoded
COC: Coding stylecomponent marker
COD: Coding styledefault marker
COM: Comment marker
CRG: Component registration marker
EPH: End of packet header marker
EOC: End of codestream marker
H: Image height guarantee
L: Layer guarantees
L : Codedatabuffering guarantee
body
M:Decoded bitplaneguarantee
N :Code-block parsingguarantee
cb
N : Component parsing guarantee
comp
P:Irreversible9-7precisionguarantee
PLM: Packet length,mainheader marker
PLT:Packetlength, tile-partheadermarker
POC:Progressionorderchangemarker
PPM:Packedpacketheaders,mainheadermarker
PPT: Packed packet headers,tile-part header marker
QCC:Quantization componentmarker
QCD:Quantization defaultmarker
RGN:Regionofinterestmarker
SIZ:Imageandtilesizemarker
SOC: Start of codestream marker
SOP:Startofpacketmarker
SOD: Start of data marker
SOT: Start oftile-part marker
T : Transform levelguarantees
L
TLM: Tile-part lengthsmarker
W: Imagewidth guarantee
© ISO/IEC 2002 – All rights reserved
6 Generaldescription
Perhaps the mostdistinctive feature of JPEG 2000 is its emphasis on and support for scalability.An existing codestream
may be accessed ata reduced resolution,ata reduced quality (highercompression), atareducednumberofcomponents,
andevenoverareducedspatialregion.Moreover,theRecommendation|InternationalStandardsupportsarichfamilyof
information progression sequences whereby the information may be reordered without introducing additional distortion.
Thisenablesa single compressed codestream to servethe needsof adiverserangeof applications.
JPEG 2000 encoders may employ only a fraction of the features supported by ITU-T T.800 | ISO/IEC 15444-1.
Likewise, some decoders will not support all the features supported by the Recommendation | International Standard. It
is impossible to provide test cases for all possible combinations of tools that an encoder or decoder may choose to
implement.ThisRecommendation|InternationalStandardprovidesabstracttestproceduresforJPEG2000encodersand
decoders. A developer may designate the features that have been implemented and determine a set of test cases that
applies to those features. For the greatest level of interoperability, there are explicit decoder test procedures. These tests
are run for a particular Profile (defined in ITU-T T.800 | ISO/IEC 15444-1 Amendment 1) and a particular compliance
classdefined herein.Passing theexplicit testsallows adecoder tobelabeled“Profile-xCclass-yCompliant.”
Even with the explicit decoder tests, it is expected that some decoders may not decode all of the information that was
originally incorporated into the codestream by an encoder. This is the only way to truly exploit the scalability of ITU-T
T.800 | ISO/IEC 15444-1. It is desirable to allow decoders to ignore information that is not of interest to their target
application. While this flexibility is one of the strengths of JPEG 2000, it also renders inappropriate some of the
conventional compliance testing methodologies that have been applied to non-scalable or less scalable compression
standards.
Many approaches to compliance could be taken. At one extreme, decoder implementations might be allowed to decode
anyportionofthecodestreamthatisof interest to them.Attheother extreme,theymightberequiredtocorrectlydecode
the entire codestream. The first approach offers content providers and consumersno guarantee concerning the quality of
the resulting imagery. The other approach is also inappropriate because it offers the implementor no guarantee
concerning the resources that may be required fordecoding, and in many cases the codestream may contain information
that isof no interest totheapplication.
ThisdocumentdescribescomplianceforJPEG2000decodersintermsofasystem ofguarantees.Theseguaranteesserve
to discourage encoders from producing codestreams that will be exceedingly difficult or impossible for a decoder to
process, to encourage decoders to provide quality images from any reasonable codestream, and to encourage use of the
flexibility andscalability ofJPEG2000 codestreams.
Profilesdefineasubsetoftechnology,from ITU-TT.800|ISO/IEC15444-1:JPEG2000,thatmeetstheneedsofagiven
applicationwithlimitsonparameterswithinaselectedtechnology.Profileslimitbitstreams.Decodersdefinecapabilities
for all bitstreams within a profile. Encoders achieve quality guarentees for particular decoders by encoding bitstreams
which meet a particular profile definition. Compliance classes (Cclass) define guarantees of a given level of image
qualityforadecoderandguidanceforencoderstoproducecodestreamsthatareeasilydecodablebycompliantdecoders.
Essentially,ifaJPEG2000encoderproducesacodestreamwithcertainproperties,thenadecoderofacertainCclasswill
be capable of producing an image with some defined level of quality. The compliance class of a decoder is based solely
onpassingcertaintests.Thetestsinthisdocumentaredesignedtorequireacompliantdecodertobecapableofdecoding
allcodestreams with asetofdefinedproperties.
6.1 Profilesandcomplianceclasses
Two profiles are defined in ITU-T T.800 | ISO/IEC 15444-1 Amendment 1, labeled Profile 0 and Profile 1. The two
profiles describe bitstream constraints for an ITU-T T.800 | ISO/IEC 15444-1 encoder. Profile 0 is a subset of Profile 1.
Hence, any implementation capable of decoding Profile 1 test streams shall be capable of passing the compliance tests
forProfile0 ofthe sameCclass.
© ISO/IEC 2002 – All rights reserved
Three compliance classes (Cclass) are defined in Annex A. These Cclasses define levels of image quality guarantees for
decoders and guidance for encoders to produce codestreams that are easily decodable by compliant decoders. Cclass
guaranteesincreasewiththe increasingCclass numbers.
6.2 Decoders
Compliant implementations of the decoder are not required to decode each codestream in its entirety but are required to
guarantee performance up to one Cclass for some profile. These guarantees are directly connected with the resources
required by a decoder. They may be interpreted as a contract by the implementation to recover, decode and transform a
well-defined minimal subset of the information contained in any codestream. This contract is described in a manner that
scales with the Cclass. The contract may be exploited by content providers to optimize recovered image quality over a
familyof decoders according totheir knownCclasses.
For a givenprofile, decoder guarantees are expressed interms of several parameters including decoded image
dimensions,H(height)andW(width),andanumberofcomponents,C,fortheCclass.Theparametersarenotdependent
on the codestream that is actually being decoded. Annex A defines the parameters and the classes for which compliance
claims may be made and tested. Annex E allows a decoder to define guarantees that are greater than that of the defined
Cclasses.
6.3 Encodersandcodestreams
ITU-T T.800 | ISO/IEC 15444-1 Amendment 1 describes two restricted profiles (Profile 0 and Profile 1) that provide
guarantees concerning the parameter ranges and information placement in a codestream. Since codestream limitations
may also adversely affect scalability and interoperability, the smallest possible number of limitations are imposed by
these profiles. AnnexF allowsa encoder to defineguaranteesof codestreamsproduced by theencoder.
Encoders may also be required to conform to certain guarantees in particular applicationareas of interest that areoutside
the scope of this Recommendation | International Standard. As an example, a medical image application may require the
encoder toguaranteelossless performance up toa given image size.
6.4 Implementationcompliancestatement
Evaluation of compliance for a particular implementation may require a statement of the options that have been
implemented. This will allow the implementation to be tested for compliance against only the relevant requirements.
Such a statement is called an ICS. This statement shall contain only options within the framework of requirements
specified in the ITU-T T.800 | ISO/IEC 15444-1 Standard. Examples of these can be found in Annex E for decoders and
AnnexF for encoders.
6.5 Abstracttestsuites
The Abstract Test Suites (ATS) define general tests for sub-systems of ITU-T T.800 | ISO/IEC 15444-1. Each ATS
includesthe following partsand aredefined in Annex C.
a) Testpurpose:Whatthe testrequirementis.
b) TestMethod:TheprocedurestobefollowedforthegivenATS.
c) Reference: Theportionof theISO document that is being tested by thegivenATS.
6.6 Encodercompliancetestingprocedure
Theinformativeproceduresfor testingencodersaredefinedinAnnexDandarecomplementedbytheinformationthat is
gathered from a completed ICS (Annex F). These procedures are informative since ITU-T T.800 | ISO/IEC 15444-1 is a
codestream and decoder compliance standard.
© ISO/IEC 2002 – All rights reserved
6.7 Decodercompliancetestingprocedure
The procedures for testing decoders are defined in Annex B and use the ETS that are defined in Annex C. These
proceduresandETSwill allow anIUT toevaluate compliance to eachprofile and Cclass.
7 Conventions
Thecompliancefilesincludingtestcodestreams,jp2files,referencedecodedimages,anddescriptivefilesaresuppliedin
theformofacompressedfile.Filelocationsgiveninthisdocumentareexpressedrelativetothetoplevelofthedirectory
tree.A Unixstyle file structureand delimitersareassumed.
This document contains instructions for the use of these files. No support can be provided by ISO | ITU-T beyond that
offered inthis documentand through linksonthe officialJPEG website, http://www.jpeg.org.
8 Copyright
These compliance files were originally developed by the parties indicated in the file COPYRIGHT.Inparticular,the
original developers of these files and their respective companies, the editors and their companies, and ISO/IEC have
disclaimed liability for any proposed use of thesefilesor modificationsthereof.
9 Compliancefilesavailabilityandupdates
The compliance test images released with this Recommendation | International Standard are the latest tested versions
availableatthedateatwhichthetextwasreleasedasanFDIS.Laterversionsofthecompliancetestimagesmaybe
madeavailableafter thepublication of this Recommendation |International Standard. These may befound through links
that are maintainedat http://www.jpeg.org/software.
© ISO/IEC 2002 – All rights reserved
ISO/IEC 15444-4:2002(E)
AnnexA
DecoderComplianceClasses
(This annexformsan informativepartofthisRecommendation | InternationalStandard.)
This annex describes the compliance classes for ITU-T T.800 | ISO/IEC 15444-1. The classes and parameters are
described to provide assistance in designing a compliant decoder. Actual compliance is determined by the testing
proceduresinAnnexB andthecodestreams,referenceimages,andtolerancesinAnnexC.Thedefinitionsof compliance
classesinthisannexareusefulforthedesignofanencoder.Theparametersmaycorrespondtoparticularpartsofan
implementation.
A.1 Complianceclassparameterdefinitions
Becauseof resource limitations,implementationsof JPEG 2000 sometimes will not beabletodecodeacodestream in its
entirety.Thissectiondefinesvariousparametersforwhichaspecificimplementationmightbelimited.Asetofvaluesfor
every parameter defines a compliance class. Thus an implementation of a particular Cclass must guarantee resources as
definedin alltheparameters.
A.1.1 Profile:codestreamguarantees
Profilesprovidelimitsonthecodestream syntaxparameters.TwoprofilesaredefinedinITU-T T.800| ISO/IEC15444-1
Amendment 1, labeled Profile 0 and Profile 1. There is also an implied profile that has no restrictions above the
descriptive capability of Annex A of ITU-T T.800 | ISO/IEC 15444-1. Testing arbitrary codestreams requires almost
unlimited computational resources. Thus, all defined tests pertain to a specific profile and will only use codestreams
compliant to that profile.
A.1.2 H,W,C:Imagesizeguarantees
Decodersmaybelimitedinthesizeoftheoutputimagethattheyarecapableofproducing,duetophysicaldisplay
characteristicsor memory limitations. H, W, and C are respectively the largest height, width, and number of components
that are required to be decoded for a decoder in the compliance class. Codestreams containing more samples than the H,
W, and C for a Cclass must still be decoded. Compliance for these codestreams is based on the ability to decode at the
largestresolutionsmallerthanorequaltothatspecifiedbythedecoder’sCclass.Thislargestresolutionsizeisdetermined
by the component in the codestream with the smallest sampling factor relative to the reference grid. For images with
different subsampling on different components, the smallest subsampling values are used to determine the region that
must bedecoded, and the corresponding region of each component shall bedecoded.
ForCclass0,adecodermustbeabletodecodethelargestresolutionlevelthatisnolargerthan128samplesineither
imagedimensionandthatrequiresnomorethanthreelevelsofIDWTprocessing.ForCclass1,adecodermustbeableto
decodethelargestresolutionlevelthatisnolargerthan2048samplesineitherimagedimensionandthatrequiresno
morethansevenlevelsofIDWTprocessing.
Equation A.1 and Equation A.2 express these restrictions for a single tile image. The minimization with respect toXRsiz
over all components selects the component with the smallest sampling relative to the reference grid. The maximum
rT≤ that satisfies both conditions is the number of levels that must be decoded. T is defined in Annex A.1.9. Xsiz,
L L
Ysiz, XOsiz, and YOsiz come from the SIZ marker segment defined in ITU-T T.800 | ISO/IEC 15444-1. N is the
L
number of wavelet transforms used in the image as specified in the COD or COC marker segments. (If a non-negative r
doesnot exist to satisfybothconditions,thennodecoder obligation exists.)
X XO
siz siz
–
----------------------------------------------------- -----------------------------------------------------
N –r N –r
≤W A.1
L L
min2()XR ()i ⋅ min2()XR ()i ⋅
siz siz
∀i ∀i
© ISO/IEC 2002 – All rights reserved
ISO/IEC 15444-4:2002(E)
Y YO
siz siz
–
---------------------------------------------------- ----------------------------------------------------
N –r N –r
≤H A.2
L L
min2()YR ()i ⋅ min2()YR ()i ⋅
siz siz
∀i ∀i
For images with multiple tiles, a tile with top left and bottom right coordinates (tx , ty ), (tx , ty )onthereferencegrid,
0 0 1 1
andnumberofdecompositionslevelsN,isdecodableatresolutionsubjrT≤ ecttotherestrictionsinEquationA.3and
L L
EquationA.4.
tx tx
1 0
–
----------------------------------------------------- -----------------------------------------------------
N –r N –r
≤W
A.3
L L
min2()XR ()i ⋅ min2()XR (
...








Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.
Loading comments...