1、Information technology JPEG Systems Part 1: Packaging of information using codestreams and file formats Technologies de linformation Systmes JPEG Partie 1: Emballage des informations utilisant les flux de codes et les formats de fichier TECHNICAL REPORT ISO/IEC TR 19566-1 First edition 2016-03-15 Re
2、ference number ISO/IEC TR 19566-1:2016(E) ISO/IEC 2016 ii ISO/IEC 2016 All rights reserved COPYRIGHT PROTECTED DOCUMENT ISO/IEC 2016, Published in Switzerland All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized otherwise in any form or by any me
3、ans, electronic or mechanical, including photocopying, or posting on the internet or an intranet, without prior written permission. Permission can be requested from either ISO at the address below or ISOs member body in the country of the requester. ISO copyright office Ch. de Blandonnet 8 CP 401 CH
4、-1214 Vernier, Geneva, Switzerland Tel. +41 22 749 01 11 Fax +41 22 749 09 47 copyrightiso.org www.iso.org ISO/IEC TR 19566-1:2016(E) ISO/IEC TR 19566-1:2016(E)Foreword iv Introduction v 1 Scope . 1 2 Terms, definitions, abbreviated terms and symbols . 1 2.1 Terms and definitions . 1 2.2 Symbols . 5
5、 2.3 Abbreviated terms . 5 3 Conventions . 6 3.1 Operators . 6 3.1.1 Arithmetic operators 6 3.1.2 Logical operators . 7 3.1.3 Relational operators . 7 3.1.4 Precedence order of operators 7 3.1.5 Mathematical functions . 7 4 General 8 5 Background 8 5.1 General . 8 5.2 Organization of information .10
6、 Annex A (informative) Organization of information Signalling, packaging and storage .11 Annex B (informative) Concept of boxes 13 Annex C (informative) Box-based file format structure 16 Annex D (informative) Codestream syntax .19 Annex E (informative) Codec/codestream functionality guidelines 22 B
7、ibliography .26 ISO/IEC 2016 All rights reserved iii Contents Page ISO/IEC TR 19566-1:2016(E) Foreword ISO (the International Organization for Standardization) and IEC (the International Electrotechnical Commission) form the specialized system for worldwide standardization. National bodies that are
8、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
9、 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. The procedures used to develop this document and those intended for its further
10、 maintenance are described in the ISO/IEC Directives, Part 1. In particular the different approval criteria needed for the different types of document should be noted. This document was drafted in accordance with the editorial rules of the ISO/IEC Directives, Part 2 (see www.iso.org/directives). Att
11、ention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. ISO and IEC shall not be held responsible for identifying any or all such patent rights. Details of any patent rights identified during the development of the document will be in the In
12、troduction and/or on the ISO list of patent declarations received (see www.iso.org/patents). Any trade name used in this document is information given for the convenience of users and does not constitute an endorsement. For an explanation on the meaning of ISO specific terms and expressions related
13、to conformity assessment, as well as information about ISOs adherence to the WTO principles in the Technical Barriers to Trade (TBT) see the following URL: Foreword - Supplementary information The committee responsible for this document is ISO/IEC JTC 1, Information technology, Subcommittee SC 29, C
14、oding of audio, picture, multimedia and hypermedia information.iv ISO/IEC 2016 All rights reserved ISO/IEC TR 19566-1:2016(E) Introduction This part of ISO/TR 19566 provides an overview for users of ISO/IEC standards in the use of common JPEG syntax elements at the systems layer for current and futu
15、re International Standards developed by ISO/IEC. With the development of coding technologies, ISO/IEC has defined a number of different file formats and multiple variants of codestream syntax. Many of these are specialized to dedicated use cases or compression algorithms. Consequently, it is difficu
16、lt to maintain an overview about existing file formats, their capabilities and their architectures. This part of ISO/TR 19566 aims to describe common architectural concepts for file formats and codestream formats. By these means, it lays out guidelines for future file formats and codestream syntax.
17、By observing these guidelines, future International Standards may fit into an overall operable Systems infrastructure that can handle all tools standardized by the ISO/IEC body. ISO/IEC 2016 All rights reserved v Information technology JPEG Systems Part 1: Packaging of information using codestreams
18、and file formats 1 Scope This part of ISO/TR 19566 describes common elements of a system layer for JPEG standards, referred to as JPEG Systems. This part of ISO/TR 19566 describes the common architecture of file formats and codestream formats used in JPEG standards. It is intended that all future Sy
19、stems components support codestreams and file formats following these guidelines. 2 Terms, definitions, abbreviated terms and symbols 2.1 Terms and definitions For the purposes of this document, the following terms and definitions apply. 2.1.1 backward compatibility inclusive of the old specificatio
20、n within the new specification Note 1 to entry: Any devices implementing the new standard can also interpret all data compliant with the old version of the standard. However, an old device only compliant with the old version of the standard might not be able to interpret the data compliant with the
21、new version of the standard. 2.1.2 bit stream partially encoded or decoded sequence of bits comprising an entropy-coded segment 2.1.3 box structured collection of data describing the image or the image decoding process Note 1 to entry: See B.2 for the definition of boxes. 2.1.4 box-based file format
22、 file format whose composing elements are well-defined, hierarchically structured boxes 2.1.5 byte group of 8 bits 2.1.6 coder embodiment of a coding process TECHNICAL REPORT ISO/IEC TR 19566-1:2016(E) ISO/IEC 2016 All rights reserved 1 ISO/IEC TR 19566-1:2016(E) 2.1.7 coding umbrella term that defi
23、nes both the encoding/compression of a signal as well as the decoding/decompression of a signal 2.1.8 coding model procedure used to convert input data into symbols to be coded 2.1.9 coding process process which transforms compressed data into a continuous-tone image and/or a continuous-tone image i
24、nto its compressed representation Note 1 to entry: It presents thus an umbrella term for “encoding process” and “decoding process”. 2.1.10 compression reduction in the number of bits used to represent source image data 2.1.11 component two-dimensional array of samples having the same designation in
25、the output or display device Note 1 to entry: An image typically consists of several components, for example, red, green and blue. 2.1.12 continuous-tone image image whose components have more than one bit per sample 2.1.13 decoder embodiment of a decoding process 3.1.14 decoding process process whi
26、ch takes as its input compressed image data and outputs a continuous-tone image 2.1.15 dequantization inverse procedure to quantization by which the decoder recovers a representation of the DCT coefficients 2.1.16 downsampling procedure by which the spatial resolution of a component is reduced 2.1.1
27、7 encoder embodiment of an encoding process 2.1.18 encoding process process which takes as its input a continuous-tone image and outputs compressed image data 2.1.19 entropy-coded (data) segment independently decodable sequence of entropy encoded bytes of compressed image data 2.1.20 entropy decoder
28、 embodiment of an entropy decoding procedure2 ISO/IEC 2016 All rights reserved ISO/IEC TR 19566-1:2016(E) 2.1.21 entropy decoding lossless procedure which recovers the sequence of symbols from the sequence of bits produced by the entropy encoder 2.1.22 entropy encoder embodiment of an entropy encodi
29、ng procedure 2.1.23 entropy encoding lossless procedure which converts a sequence of input symbols into a sequence of bits such that the average number of bits per symbol approaches the entropy of the input symbols 2.1.24 forward compatibility only compliant with the old specification but able to in
30、terpret the new specification Note 1 to entry: Although devices only compliant with the old version of the standard are nevertheless able to interpret the data conforming with the new standard, it is possible that the obtained results are not as good as when using a device compliant with the new ver
31、sion of the standard. 2.1.25 grayscale image continuous-tone image that has only one component 2.1.26 high dynamic range image or image data comprised of more than eight bits per sample, coded in floating point representation 2.1.27 intermediate dynamic range image or image data comprised of more th
32、an eight bits per sample 2.1.28 Joint Photographic Experts Group JPEG informal name of the committee which created this part of ISO/TR 19566 2.1.29 JPEG standards collection of ISO/IEC/ITU standards developed by the Joint Photographic Experts Group for still imaging application as listed in the Bibl
33、iography 2.1.30 JPEG Systems common elements of a system layer for JPEG standards 2.1.31 lossless descriptive term for encoding and decoding processes and procedures in which the output of the decoding procedure(s) is identical to the input to the encoding procedure(s) 2.1.32 lossless coding mode of
34、 operation which refers to any one of the coding processes defined in this part of ISO/TR 19566 in which all of the procedures are lossless 2.1.33 lossy descriptive term for encoding and decoding processes which are not lossless ISO/IEC 2016 All rights reserved 3 ISO/IEC TR 19566-1:2016(E) 2.1.34 lo
35、w-dynamic range image or image data comprised of data with no more than eight bits per sample 2.1.35 marker two-byte code in which the first byte is hexadecimal FF and the second byte is a value between 1 and hexadecimal FE 2.1.36 marker segment marker together with its associated set of parameters
36、2.1.37 metadata additional data associated with the image data beyond the image data 2.1.38 minimum coded unit MCU smallest group of data units that is coded 2.1.39 pixel collection of sample values in the spatial image domain having all the same sample coordinates EXAMPLE A pixel may consist of thr
37、ee samples describing its red, green and blue value. 2.1.40 point transform scaling of a sample or DCT coefficient by a factor 2.1.41 precision number of bits allocated to a particular sample or DCT coefficient 2.1.42 procedure set of steps which accomplishes one of the tasks which comprise an encod
38、ing or decoding process 2.1.43 quantization value integer value used in the quantization procedure 2.1.44 quantize act of performing the quantization procedure for a DCT coefficient 2.1.45 sample one element in the two-dimensional image array which comprises a component 2.1.46 sample grid common coo
39、rdinate system for all samples of an image Note 1 to entry: The samples at the top left edge of the image have the coordinates (0,0), the first coordinate increases towards the right, the second towards the bottom.4 ISO/IEC 2016 All rights reserved ISO/IEC TR 19566-1:2016(E) 2.1.47 table specificati
40、on data coded representation from which the tables used in the encoder and decoder are generated and their destinations specified 2.1.48 (uniform) quantization procedure by which DCT coefficients are linearly scaled in order to achieve compression 2.1.49 upsampling procedure by which the spatial res
41、olution of a component is increased 2.1.50 vertical sampling factor relative number of vertical data units of a particular component with respect to the number of vertical data units in the other components in the frame 2.1.51 zero byte 0x00 byte 2.2 Symbols X width of the sample grid in positions Y
42、 height of the sample grid in positions Nf number of components in an image s i,x subsampling factor of component i in horizontal direction s i,y subsampling factor of component i in vertical direction 2.3 Abbreviated terms For the purposes of this document, the following abbreviated terms apply. AP
43、I Application Programming Interface AR Augmented Reality ASCII American Standard Code for Information Interchange DCT Discrete Cosine Transformation EXIF Exchangeable Image File Format HDR High Dynamic Range IDR Intermediate Dynamic Range JBIG Joint Bi-level Image experts Group JFIF JPEG File Interc
44、hange Format JP2 JPEG 2000 file format JPEG Joint Photographic Experts Group ISO/IEC 2016 All rights reserved 5 ISO/IEC TR 19566-1:2016(E) JPSec JPEG 2000 Secured JPIP JPEG 2000 Interactive Protocol JPWL JPEG 2000 Wireless JPX Extended JPEG 2000 file format LDR Low Dynamic Range LSB Least Significan
45、t Bit MJ2 Motion JPEG 2000 file format MJPEG2000 Motion JPEG 2000 MSB Most Significant Bit SPIFF Still Picture Interchange File Format TIFF Tagged Image File Format TMO Tone Mapping Operator XML Extensible Markup Language 3 Conventions 3.1 Operators NOTE Many of the operators used in this part of IS
46、O/TR 19566 are similar to those used in the C programming language. 3.1.1 Arithmetic operators + Addition Subtraction (as a binary operator) or negation (as a unary prefix operator) * Multiplication / Division without truncation or rounding smod x smod a is the unique value y between / and / for whi
47、ch y + Na = x with a suitable integer N. umod x mod a is the unique value y between 0 and a1 for which y + Na = y with a suitable integer N.6 ISO/IEC 2016 All rights reserved ISO/IEC TR 19566-1:2016(E) 3.1.2 Logical operators | Logical ORreturns the smallest integer that is greater than or equal to
48、x. x Floor of x; returns the largest integer that is lesser than or equal to x. |x| Absolute value, is x for x 0, otherwise x. ISO/IEC 2016 All rights reserved 7 ISO/IEC TR 19566-1:2016(E) sign(x) Sign of x, zero if x is zero, +1 if x is positive, 1 if x is negative. clamp(x,min,max) Clamps x to the
49、 range min,max: returns min if x max or oth- erwise x. power(x,a) Raises the value of x to the power of a. x is a non-negative real number, a is a real number. Power(x,a) is equal to exp(alog(x) where exp is the exponential func- tion and log() is the natural logarithm. If x is zero and a is positive, power(x,a) is defined to be zero. 4 General The purpose of this Clause is to give an informative overview of the elements specifie