L. Yaroslavsky. Fundamentals of Digital Image Processing. Course

Similar documents
Basic Principles of Video Coding

Multimedia Networking ECE 599

Image Compression. Fundamentals: Coding redundancy. The gray level histogram of an image can reveal a great deal of information about the image

Transform Coding. Transform Coding Principle

BASICS OF COMPRESSION THEORY

Transform coding - topics. Principle of block-wise transform coding

Objective: Reduction of data redundancy. Coding redundancy Interpixel redundancy Psychovisual redundancy Fall LIST 2

Overview. Analog capturing device (camera, microphone) PCM encoded or raw signal ( wav, bmp, ) A/D CONVERTER. Compressed bit stream (mp3, jpg, )

Waveform-Based Coding: Outline

Introduction p. 1 Compression Techniques p. 3 Lossless Compression p. 4 Lossy Compression p. 5 Measures of Performance p. 5 Modeling and Coding p.

Digital Image Processing Lectures 25 & 26

encoding without prediction) (Server) Quantization: Initial Data 0, 1, 2, Quantized Data 0, 1, 2, 3, 4, 8, 16, 32, 64, 128, 256

IMAGE COMPRESSION-II. Week IX. 03/6/2003 Image Compression-II 1

Compression and Coding

SYDE 575: Introduction to Image Processing. Image Compression Part 2: Variable-rate compression

Module 3 LOSSY IMAGE COMPRESSION SYSTEMS. Version 2 ECE IIT, Kharagpur

CHAPTER 3. Transformed Vector Quantization with Orthogonal Polynomials Introduction Vector quantization

On Compression Encrypted Data part 2. Prof. Ja-Ling Wu The Graduate Institute of Networking and Multimedia National Taiwan University

Lecture 2: Introduction to Audio, Video & Image Coding Techniques (I) -- Fundaments

CSE 408 Multimedia Information System Yezhou Yang

Image Data Compression

Lecture 2: Introduction to Audio, Video & Image Coding Techniques (I) -- Fundaments. Tutorial 1. Acknowledgement and References for lectures 1 to 5

Source Coding for Compression

repetition, part ii Ole-Johan Skrede INF Digital Image Processing

Lecture 7 Predictive Coding & Quantization

Digital Image Processing

Digital communication system. Shannon s separation principle

Compression methods: the 1 st generation

Module 2 LOSSLESS IMAGE COMPRESSION SYSTEMS. Version 2 ECE IIT, Kharagpur

Module 4. Multi-Resolution Analysis. Version 2 ECE IIT, Kharagpur

RLE = [ ; ], with compression ratio (CR) = 4/8. RLE actually increases the size of the compressed image.

Image and Multidimensional Signal Processing

Information and Entropy

SIGNAL COMPRESSION. 8. Lossy image compression: Principle of embedding

Image Compression - JPEG

Wavelet Scalable Video Codec Part 1: image compression by JPEG2000

Fault Tolerance Technique in Huffman Coding applies to Baseline JPEG

Predictive Coding. Prediction Prediction in Images

Predictive Coding. Prediction

Image Compression. Qiaoyong Zhong. November 19, CAS-MPG Partner Institute for Computational Biology (PICB)

Reduce the amount of data required to represent a given quantity of information Data vs information R = 1 1 C

UNIT I INFORMATION THEORY. I k log 2

IMAGE COMPRESSION IMAGE COMPRESSION-II. Coding Redundancy (contd.) Data Redundancy. Predictive coding. General Model

Digital Communications III (ECE 154C) Introduction to Coding and Information Theory

Objectives of Image Coding

Lossless Image and Intra-frame Compression with Integer-to-Integer DST

Run-length & Entropy Coding. Redundancy Removal. Sampling. Quantization. Perform inverse operations at the receiver EEE

JPEG and JPEG2000 Image Coding Standards

Introduction to Video Compression H.261

Vector Quantization and Subband Coding

EE67I Multimedia Communication Systems

Module 5 EMBEDDED WAVELET CODING. Version 2 ECE IIT, Kharagpur

Real-Time Audio and Video

Compression. Encryption. Decryption. Decompression. Presentation of Information to client site

Department of Electrical Engineering, Polytechnic University, Brooklyn Fall 05 EL DIGITAL IMAGE PROCESSING (I) Final Exam 1/5/06, 1PM-4PM

Information Theory and Coding Techniques

Lec 05 Arithmetic Coding

Compression. What. Why. Reduce the amount of information (bits) needed to represent image Video: 720 x 480 res, 30 fps, color

Wavelets and Multiresolution Processing

CSCI 2570 Introduction to Nanocomputing

Multiscale Image Transforms

EE5585 Data Compression April 18, Lecture 23

Module 4 MULTI- RESOLUTION ANALYSIS. Version 2 ECE IIT, Kharagpur

CSE 126 Multimedia Systems Midterm Exam (Form A)

LORD: LOw-complexity, Rate-controlled, Distributed video coding system

Source Coding: Part I of Fundamentals of Source and Video Coding

Chapter 10 Applications in Communications

Half-Pel Accurate Motion-Compensated Orthogonal Video Transforms

ECE472/572 - Lecture 11. Roadmap. Roadmap. Image Compression Fundamentals and Lossless Compression Techniques 11/03/11.

Audio Coding. Fundamentals Quantization Waveform Coding Subband Coding P NCTU/CSIE DSPLAB C.M..LIU

Vector Quantization Encoder Decoder Original Form image Minimize distortion Table Channel Image Vectors Look-up (X, X i ) X may be a block of l

ELECTRONICS & COMMUNICATIONS DIGITAL COMMUNICATIONS

Compressing a 1D Discrete Signal

Intraframe Prediction with Intraframe Update Step for Motion-Compensated Lifted Wavelet Video Coding

4. Quantization and Data Compression. ECE 302 Spring 2012 Purdue University, School of ECE Prof. Ilya Pollak

EBCOT coding passes explained on a detailed example

Chapter 9 Fundamental Limits in Information Theory

Can the sample being transmitted be used to refine its own PDF estimate?

Study of Wavelet Functions of Discrete Wavelet Transformation in Image Watermarking

at Some sort of quantization is necessary to represent continuous signals in digital form

BASIC COMPRESSION TECHNIQUES

Multimedia & Computer Visualization. Exercise #5. JPEG compression

Multimedia. Multimedia Data Compression (Lossless Compression Algorithms)

Proyecto final de carrera

Analysis of Rate-distortion Functions and Congestion Control in Scalable Internet Video Streaming

EE5356 Digital Image Processing. Final Exam. 5/11/06 Thursday 1 1 :00 AM-1 :00 PM

Compression. Reality Check 11 on page 527 explores implementation of the MDCT into a simple, working algorithm to compress audio.

Review of Quantization. Quantization. Bring in Probability Distribution. L-level Quantization. Uniform partition

Multimedia Communications. Differential Coding

3 rd Generation Approach to Video Compression for Multimedia

+ (50% contribution by each member)


Analysis of Fractals, Image Compression and Entropy Encoding

Statistical Analysis and Distortion Modeling of MPEG-4 FGS

Image Coding Algorithm Based on All Phase Walsh Biorthogonal Transform

Quantization 2.1 QUANTIZATION AND THE SOURCE ENCODER

<Outline> JPEG 2000 Standard - Overview. Modes of current JPEG. JPEG Part I. JPEG 2000 Standard

MAHALAKSHMI ENGINEERING COLLEGE-TRICHY QUESTION BANK UNIT V PART-A. 1. What is binary symmetric channel (AUC DEC 2006)

Multimedia Communications. Mathematical Preliminaries for Lossless Compression

Wavelets, Filter Banks and Multiresolution Signal Processing

Transcription:

L. Yaroslavsky. Fundamentals of Digital Image Processing. Course 0555.330 Lec. 6. Principles of image coding The term image coding or image compression refers to processing image digital data aimed at achieving the lowest possible volume of the data, measured in number of bits per pixel, provided appropriate quality of image reconstruction from the encoded data. Image reconstruction quality is assessed by the image end user. Three classes of image end users should be distinguished: collective users, such as viewers in image broadcasting in television and internet, expert user such as image interpreters in specific image related applications, and automatons. Image coding methods can be classified into two large categories: loss-less compression methods and lossy compression methods. Loss-less compression methods allow exact reconstruction of initial digital signals from the compressed data. In lossy compression, initial digital images are not exactly reconstructed from the compressed data, although reconstructed images preserve the quality required for applications. Classification diagram of image coding methods is presented in Fig. 6.1. Coding methods are classified in into two groups: methods in which data decorrelation and quantization are carried out separately one after another and methods in which one can not separate decorrelation from quantization. The latter attempt to implement, though in a reduced form, the idea of encoding of signals as a whole to achieve the theoretical minimum of bits. In decorrelation-then-quantization methods, data decorrelation is carried out with linear transforms. Two large families of decorrelating linear transforms are in use: predictive and orthogonal transforms. In predictive transforms, for each pixel, its predicted value is generated in a certain way from other pixels and a prediction error is computed as a difference between the pixel value and its predicted value. The prediction error is then sent to a scalar quantizer. The simplest method that implements decorrelation by prediction is known as DPCM (from Differential Pulse Code Modulation). Block diagram of DPCM coding and decoding are shown in Fig. 6.. DPCM assumes that images are scanned row-wise/column-wise and, for each current pixel a,, prediction error is computed as (Fig. 6.3) k l = ak, l = a c 1,0a k 1, l c0, 1ak, l 1 c 1, 1a k 1, l 1 + c 1,1ak 1, l + 1 ε a. (6.1) where a is a prediction value. Prediction coefficients { c } are usually chosen so as to minimize prediction error standard deviation as computed for an ensemble of pixels subjected to coding. For instance, in a natural assumption that images are statistically isotropic in all directions, c 1,0 = c 0, 1 = c1; c 1, 1 = c 1,1 = c, (6.) and c 1 and c are found from the equation: 3ρ hv + ρ c1 ( 1 + ρ d ) + c 3ρ hv + ρ hv c1 + c where ρ = ; hv h ( ak 1, lak, l + ak, l 1ak, l ) ( a ) ) ( ak 1, l 1ak 1, l 1 ) ( a ) + ρ = ; ( ) hv ( 1 + ρ ) h = ρ = ρ hv, (6.3) d ( ak 1, l 1ak, l ) ( a ) ) ( ak, l 1ak 1, l 1) ( a ) ρ d = ; (6.4) + ρ hv = ; (6.5) ( ) are correlation coefficients of pixels with their immediate neighbors in vertical or horizontal direction, and of pixels with their immediate neighbor in diagonal direction. Fig. 6-4 illustrates how predictive decorrelation reduces dynamic range and entropy of signal-to-be-quantized. DPCM with no quantization is used for loss-less image coding. With quantization, substantially larger compression is possible although images are reconstructed with losses. Quantization artifacts can be reduced if prediction error is computed from already quantized data as it is done in DPCM with feedback 1

(Fig. 6-5). From the classification point of view, DPCM with feedback can be regarded as a combined discretization/quantization method. In DPCM, the prediction is practically made over only immediate vicinity of pixels. More efficient decorrelation is achieved when larger spatial neighborhood of pixels are involved in the prediction as it is implemented in multi-resolution image expansion. This method, depending on the implementation, is known under different names: pyramid coding, sub-band decomposition coding, wavelet coding. In this method, image transform coefficients obtained at each resolution (Fig. 6-6) are optimally quantized and then statistically encoded. Figs. 6-6 6-8 illustrate principles of such image multi-resolution decomposition. Decorrelation with orthogonal transforms is an alternative to predictive decorrelation. Redundancy of the image signals exhibits itself in transform domain mostly in compaction of signal energy in small number of transform coefficients and in contraction of the dynamic range of higher order coefficients. In practice, transforms such as DFT, DCT, Walsh transforms that can be computed with fast transform algorithms are used. Two versions of transform coding are known: frame-wise and block-wise ones. In frame-wise coding, image frame as a whole is transformed, transform coefficients with very low energy are truncated and the others are quantized. In block-wise coding, image is split into blocks and individual blocks are transformed separately. For every block, low energy block transform coefficients are truncated and the others are quantized. Truncation and quantization of transform coefficients is either predefined by a special quantization table (zonal quantization) or adaptively changed for every block. In terms of energy compaction, frame-wise transforms are, in principle, more efficient then blockwise ones. However, block-wise transform requires much less computations and can even be implemented in an inexpensive hardware. Moreover, it is well suited to spatial image inhomogeneity and allows using adaptive quantization in which way truncating and quantizing coefficients is optimized for each individual block. Among the block transforms, DCT had proved to be the best one and it is put in the base of image compression standards H.61, H.6, H.63, H.30, JPEG and MPEG. The principle of image DCT block coding is illustrated in Fig. 6-9. In the image block transform coding, image is split up into blocks. DCT of each block is then computed and spectral coefficients are quantized individually according to a quantization table of zonal quantization that specifies the number of quantization levels allocated to each coefficients as a function of the coefficient indices. The table is built according to typical energy distribution of the transform coefficients: the higher is variance of the coefficient, the larger number of quantization levels is allocated for quantization of this coefficient. Obtained -D arrays of quantized numbers for each block are then converted, for transmitting and storing, into 1-D sequences by zigzag scanning of the arrays. Quantization of DCT coefficients causes certain distortions in reconstructed images. A typical artifact caused by quantization in image block transform coding is the so-called blocking effect: visible discontinuities at the borders of the blocks. These discontinuities can be substantially mitigated if blocks are overlapping. A most known implementation of this idea is lapped transform coding. While in coding still images predictive or orthogonal transform decorrelation are mostly used, hybrid combination of predictive and transform coding has also proved its usefulness. For instance, JPEG standard for image coding assumes using DPCM for coding dc components of image blocks and in video coding intra-frame redundancy is removed with block DCT coding whereas for removing inter-frame redundancy the ideas of predictive decorrelations are used in a form of object motion compensation. Combined decorrelation/quantization methods coding are exemplified by DPCM with feedback, adaptive discretization and vector quantization. Adaptive discretization assumes taking samples of the signal only if difference in the signal values from the previous sample exceeds a quantization interval. For images, such coding results in generating an image contour map. Vector quantization is an exact implementation of the general coding signals as a whole. However, owing to computer memory and computational capacity limitations it is applied to groups of signal/image samples small enough to match these limitations. Statistical (entropy) coding in itself is loss-less coding because it does not assume introducing any irreversible changes (such as quantization) into the data and enables perfect restoration of initial signal representation coefficients. Two mutually complement methods of binary statistical coding are known and overwhelmingly used: variable length coding (VL-coding) and coding of rare symbols. In data coding jargon, objects of

encoding are called symbols. VL-coding is aimed at generating, for each symbol to be coded, a binary code word of the length as close to logarithm of the inverse to its probability. Originally suggested by C. Shannon and Fano, it was later improved by Huffman, and the Huffman s coding procedure had become the preferred implementation of VL-coding. VL-Huffman coding is an iterative process, in which, at each iteration, to codes of two symbols with the least probabilities bits 0 and 1, correspondingly, are added and then the symbols are united in a new auxiliary symbol whose probability is sum of the united symbols. The iteration process is repeated with respect to the modified at the previous iteration set of symbols until all symbols are encoded. If probabilities of symbols are integer power of ½, such a procedure generates binary codes with number of bits per symbol exactly equal to binary logarithm of the inverse to its probability, and therefore average number of bits per symbol is equal to the entropy of the symbol ensemble. An example of Huffman-coding is illustrated in the table for 8 symbols (A to H). As one can see, when one of the symbols of the ensemble has probability that is much higher than ½ while common probability of others is much less than ½, Huffman coding is inefficient because it does not allow to allocate to symbols less than one bit. In such cases, coding of rare symbols is applied. Table An example of Huffman coding of 8 symbols A B C D E F G H P(A)= P(B)= P(C)= P(D)= P(E)= P(F)= Iteration 0.49 0.7 0.1 0.065 0.031 0.014 1-st - - - - - - -nd - - - - - 3-d - - - - 4-th - - - 5-th - - P(G)= P(H)= 0.006 0.004 0 1 P(GH)=0.01 0 1 P(FGH)=0.04 0 1 P(EFGH)=0.055 0 1 P(DEFGH)=0.1 0 1 P(CDEFGH)=0.4 6-th - 0 1 P(BCDEFGH)=0.51 7-th 0 1 Binary code 0 10 110 1110 11110 111110 1111110 1111111 Entropy H=1.9554 Average number of bits per symbol: 1.959 There are two most popular varieties of methods for coding rare symbols: run length coding and coding co-ordinates of rare symbols. In run length coding, it is assumed that symbols to be coded form a sequence in which runs of the most frequent symbol occur. The encoder computes length of the runs and generates a new sequence of symbols in which the runs of the most frequent initial symbol are replaced with new auxiliary symbols that designate the run lengths. This new sequence can then be subjected to VL- coding if necessary. Run length coding is an essentially 1-D procedure. For coding -D data, it is applied after -D data are converted into 1-D data by means of a zigzag scanning. Principle of zigzag scanning is illustrated below in Fig. 6-9. Coding coordinates of rare symbols is an alternative to the run length coding. In this method, positions of rare symbols (others than the most frequent one) are found. Then a new sequence of symbols is generated from the initial one in which all occurrences of the most frequent symbol are removed and auxiliary symbols are added to each occurrence of rare symbols that designate their position in the initial sequence. Coding coordinates of rare symbols is less sensitive to errors in transmitting the binary code than run length coding. For the former, transmission errors cause only localized errors in the decoded symbol sequence while in the latter they result in shifts of entire decoded symbol sequence after the erroneous one. This property is of especial importance in image coding for transmission where transmission channel errors, in case of run length coding, may cause substantial deformation of object boundaries. 3

Exercices and questions for selftesting 1. What is the purpose of image coding?. How can one characterize end users in image coding? 3. What are loss-less and lossy coding? 4. Describe the principle of DPCM coding. 5. For one-step prediction: ε k = ak h1a k 1, derive a formula for optimal prediction weight coefficients. 6. Observe, in a Matlab experiment, reduction of the prediction error dynamic range 7. Test, in a Matlab experiment with DPCM image coding, possible image compression and the trade-off between compression rate and reconstruction image quality. Discuss the selection of the dynamic range and using P-th low quantization of the prediction error 8. Explain principles of image multi-resolution decomposition and coding 9. Describe principles of block tranform coding. 10. What is zig-zag encoding? 11. Test, in a Matlab experiment with DCT block image coding, possible image compression and the trade-off between compression rate and reconstruction image quality. Explain quantization table. Observe blocking effects for low data rate. 4

Linear transforms Predictive transforms: - Recursive - Multiresolution (image pyramid) decomposition and subsampling Element-wise quantization: - Nonuniform homogeneous - Zonal - Adaptive Orthogonal Transforms Frame-wise: - DFT - DCT - Walsh -Haar Block-wise: - DCT Binary statistical coding - Zig-zag scanning -D data - Variable length coding - Rare symbol coding (Run length coding; coding coordinate of rare symbols) Coded binary stream Hybrid predictive and orthogonal transforms Combined decorrelation/quantization: - DPCM with feedback - Adaptive discretization - Vector quantization F igure 6.1. Classification of digital data compression methods 5

Quantizer Statistical encoder Input scanned signal Predictor Binary coded signal a) Statistical decoder De-quantizer Restored signal Binary coded signal Predictor b) Figure 6-. Block digram of DPCM coding (a) and decoding (b) Past samples l c c 1 c c 1 Current pixel (k,l) Future samples k Figure 6-3. -D prediction for row-column image scanning method 6

Input image histogram; Entropy=6. Input image; stdev=31 0.018 0.014 0.01 0.006 0.00 0 50 100 150 00 50 -D predict.error histogram; Entropy=.4 D prediction error; stdev=11.4 0.3 0.5 0. 0.15 0.1 0.05 50 100 150 00 50 Figure 6-4. Dynamic range, standard deviation and entropy reduction by predictive decorrelation in DPCM Input signal Nonuniform scale quantizer Binary statistical encoder De-quantizer Predictor Figure 6-5. Block diagram of DPCM with feedback. 7

Input signal samples Highest resolution Output signal samples Lowest resolution Signal decomposition Signal reconstruction Unit that performs signal low pass filtering and -fold decimation of signal samples Unit that performs signal -fold zooming and interpolation Fig. 6.6. The principle of signal coding by sub-band decomposition 8

Input signal Fourier spectrum t α( f ) Low pass filtering -1-1/ 0 1/ 1 High pass filtering α H f ( f ) α L ( f ) -1-1/ 0 1/ 1 Demodulation ~ α H ( f ) f f f -1/ 0 1/ Subsampling -1/ 0 1/ Subsampling Fig. 6-7. Multi-resolution sampling explained for 10-D signal in Rourier domain Figure 6-8. Image pyramid 9

Image split up into blocks Typical energy distribution of DCT coefficients of blocks (shown as gray levels) Table of zonal quantization Zig-zag encoding Figure 6-9. Principle of DCT block transform coding 10