International Telecommunication Union JPEG 2000 A versatile image coding system for multimedia applications Touradj Ebrahimi EPFL ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva Why another still image compression standard? ITU-T dates ¾ Low bit-rate compression ¾ Lossless and lossy compression ¾ Computer generated imaging ¾ Transmission in noisy environments ¾ Compound documents ¾ Flexible progressive coding and random access ¾ … ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 2 Markets and Applications ITU-T dates ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾ Internet Mobile Printing Scanning Digital Photography Remote Sensing Facsimile Medical D-Cinema Digital Libraries E-Commerce Space imaging … ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 3 Markets and Applications ITU-T Non-native software dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 4 JPEG 2000 family ITU-T Part1: Core Coding System Part3: Motion JPEG2000 Part5: Reference Software Part2: Extensions Part8: JPSEC (Secure JPEG2000) dates Part4: Conformance Testing Part9: JPIP (Interactivity) Part10: JP3D (3-D Extensions) ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva Part6: Compound Image File Format Compound Part11: JPWL (Wireless) 5 JPEG 2000 part I ITU-T ¾ A set of tools covering a good proportion of application requirements (20-80 rules) ¾ Royalty fee-free, license-fee free (doesn’t mean IPR free) ¾ Other parts are derived as extensions with backward compatibility to part I (baseline) ¾ Reached International Standard status on Dec. 2000 ¾ Amendments have been defined since (one for D-cinema under progress) dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 6 Features in Part I ITU-T dates ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾ ¾ High compression efficiency Lossless colour transformations Lossy and lossless coding in one algorithm Embedded lossy to lossless coding Progressive by resolution, quality, position, … Region-of-Interest coding/decoding Error resilience coding Perceptual quality coding Multiple component image coding Tiling Palletized image coding Light file format (optional) … ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 7 Comparison of various algorithms from a functionality point of view ITU-T JPEG 2000 JPEG-LS lossless compression performance lossy compression performance progressive bitstreams Region of Interest (ROI) coding arbitrary shaped objects random access low complexity error resilience non-iterative rate control genericity dates +++ +++++ ++++ +++ ++ ++ +++ +++ +++ ++++ + +++++ + +++ ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva JPEG MPEG-4 VTC + +++ + +++++ + ++ ++++ ++ + ++ + +++ + ++ 8 Coding rate-distortion comparisons ITU-T 46 44 42 40 PSNR (dB) 38 36 34 32 30 28 26 24 0 0.5 1 1.5 2 bpp J2K R dates J2K NR JPEG ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva VTC 9 Lossless coding performance ITU-T 10.00 9.00 compression ratio 8.00 7.00 6.00 5.00 4.00 3.00 2.00 1.00 0.00 bike café cmpnd1 JPEG2000 dates chart aerial2 JPEG-LS target L-JPEG ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva us average PNG 10 JPEG 2000 algorithm overview ITU-T code-block sign MSB Quantization Wavelet Transform LSB MSB Entropy Coding LSB Bit stream Original image MSB LSB Bit stream code-block 1 MSB LSB Bit stream code-block 2 MSB LSB Packet 1 Packet 2 Packet P Bit stream code-block 3 header MSB LSB Bit stream code-block N-1 MSB Rate Allocation codestream LSB Bit stream code-block N dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 11 JPEG 2000 algorithm overview ITU-T Progressive by resolution Progressive by quality MSB LSB Res 0 MSB LSB Res 1 MSB LSB LSB MSB Res 2 LSB MSB Layer 1 header Layer 3 header codestream dates Layer 2 ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva codestream 12 Layer (SNR) progressive example ITU-T dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 13 Layer (SNR) progressive example ITU-T dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 14 Layer (SNR) progressive example ITU-T dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 15 Resolution progressive example ITU-T dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 16 Resolution progressive example ITU-T dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 17 Resolution progressive example ITU-T dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 18 Resolution progressive example ITU-T dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 19 Compression example JPEG at 0.25 bpp (detail) ITU-T dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 20 Compression example JPEG2000 at 0.25 bpp (detail) ITU-T dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 21 Compression example Comparison between Jpeg/Jpeg 2000 ITU-T Jpeg 20:1 Jpeg 50:1 Jp2 20:1 Jp2 50:1 Original Image dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva Jp2 100:1 22 Region of Interest coding principle o Region of Interest (ROI) coding allows a non-uniform ITU-T dates distribution of quality. The ROI is coded with a higher quality than the background (BG). A higher compression ratio can be achieved with same or higher quality inside ROIs. o Static ROIs are defined at encoding time and are suitable for storage, fixed transmission, remote sensing, etc. Commonly referred to as ROI coding. o Dynamic ROIs are defined interactively by a user in a client/server situation during a progressive transmission. Suitable for telemedicine, PDAs, mobile communications, etc. They can be achieved by the dynamic generation of layers matching the user’s request. ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 23 Lossless ROI mask generation ROI in image domain ITU-T Final ROI mask dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 24 Encoding ROIs: scaling Original ITU-T MSB General scaling Maxshift ROI s’ s LSB o Shift up quantized ROI coefficients by s bitplanes. The value of s is recorded in the codestream header for each ROI. o At decoder ROI coefficients are unshifted prior to dequantization. o The ROI mask is required at both, encoder and decoder. o In maxshift, s is large enough to separate ROI and BG • No ROI mask required at decoder • ROI <-> BG quality differential not controlled dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 25 ROI Maxshift example ITU-T ROI 256:1 45:1 (almost all ROI decoded) No ROI ROI covers 5% of image, 2 lowest resolution levels in ROI mask. Magnified portion shown. dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 26 ROI Maxshift example (cont’d) ITU-T ROI 16:1 4:1 (complete decode) No ROI ROI covers 5% of image, 2 lowest resolution levels in ROI mask. Magnified portion shown. dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 27 Error resilience example ITU-T 16:1 compression ratio. Transmission error rate 10-5. No errors in codestream header. Magnified portion shown. No transmission errors No error resilience dates Full error resilience ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 28 Error protection techniques ITU-T o Coded image data • Code-block partition • Regular termination of arithmetic coder • Segmentation symbols o Packet heads • Start of packet markers • Packet heads in main / tile codestream header • Partition of packets into precincts dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 29 Error resilience visual results Bit error rate = 10-5 ITU-T JPEG 16:1 CR JPEG 2000 16:1 CR Images with median quality, of 200 runs dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 30 Error resilience visual results Bit error rate = 10-4 ITU-T JPEG 16:1 CR JPEG 2000 16:1 CR Images with median quality, of 200 runs dates ITU-T VICA Workshop 22-23 July 2005, ITU Headquarter, Geneva 31 JPEG 2000 File Format: JP2 ITU-T o JP2 is the optional JPEG 2000 file format to encapsulate JPEG 2000 codestreams. • Extension: jp2 • Allows to embed XML information (e.g., metadata) • Alpha channel (e.g., transparency) • Accurate color interpretation • “True color” and “palette color” supported • Intellectual property information • Capture and default display resolution • File “magic number” • File transfer errors (ASCII ftp, 7 bit e-mail, etc.) ITU-T VICA Workshop dates 22-23 July 2005, ITU Headquarter, Geneva 32