IMPROVING THE PERFORMANCE OF JPEG-LS Michael Syme 18171613 Supervisor: Dr. Peter Tischer.

Slides:



Advertisements
Similar presentations
JPEG Compresses real images Standard set by the Joint Photographic Experts Group in 1991.
Advertisements

Logic Circuits Design presented by Amr Al-Awamry
15-583:Algorithms in the Real World
The Lossless JPEG standard y=(a+b)/2 = 145 r= =-35 Category (r) = 6, Magnitude (r) = ’s complement of cat (r) = Rep(35)={6,011100}
IMPROVING THE PERFORMANCE OF JPEG-LS Michael Syme Supervisor: Dr. Peter Tischer.
Data Compression Michael J. Watts
1 Pixel Interpolation By: Mieng Phu Supervisor: Peter Tischer.
SWE 423: Multimedia Systems
Compression & Huffman Codes
School of Computing Science Simon Fraser University
Introduction Lossless compression of grey-scale images TMW achieves world’s best lossless image compression  3.85 bpp on Lenna Reasons for performance.
Losslessy Compression of Multimedia Data Hao Jiang Computer Science Department Sept. 25, 2007.
1/20 Document Segmentation for Image Compression 27/10/2005 Emma Jonasson Supervisor: Dr. Peter Tischer.
Image deblocking using local segmentation By Mirsad Makalic Supervisor: Dr. Peter Tischer.
Fundamentals of Multimedia Chapter 7 Lossless Compression Algorithms Ze-Nian Li and Mark S. Drew 건국대학교 인터넷미디어공학부 임 창 훈.
On Error Preserving Encryption Algorithms for Wireless Video Transmission Ali Saman Tosun and Wu-Chi Feng The Ohio State University Department of Computer.
CS559-Computer Graphics Copyright Stephen Chenney Image File Formats How big is the image? –All files in some way store width and height How is the image.
Compression Algorithms Robert Buckley MCIS681 Online Dr. Smith Nova Southeastern University.
JPEG C OMPRESSION A LGORITHM I N CUDA Group Members: Pranit Patel Manisha Tatikonda Jeff Wong Jarek Marczewski Date: April 14, 2009.
Chapter 2 Source Coding (part 2)
15-853Page :Algorithms in the Real World Data Compression II Arithmetic Coding – Integer implementation Applications of Probability Coding – Run.
296.3Page 1 CPS 296.3:Algorithms in the Real World Data Compression: Lecture 2.5.
: Chapter 12: Image Compression 1 Montri Karnjanadecha ac.th/~montri Image Processing.
1 Perception, Illusion and VR HNRS 299, Spring 2008 Lecture 14 Introduction to Computer Graphics.
Prof. Amr Goneid Department of Computer Science & Engineering
Reversible Color Image Watermarking in YCoCg-R Color Space Aniket Roy under the supervision of Dr. Rajat Subhra Chakraborty.
4C8 Image Compression.
Image Compression (Chapter 8) CSC 446 Lecturer: Nada ALZaben.
Lossless Compression CIS 465 Multimedia. Compression Compression: the process of coding that will effectively reduce the total number of bits needed to.
Image Compression – Fundamentals and Lossless Compression Techniques
Image Compression Fasih ur Rehman. Goal of Compression Reduce the amount of data required to represent a given quantity of information Reduce relative.
COMPRESSION. Compression in General: Why Compress? So Many Bits, So Little Time (Space) CD audio rate: 2 * 2 * 8 * = 1,411,200 bps CD audio storage:
1 A Gradient Based Predictive Coding for Lossless Image Compression Source: IEICE Transactions on Information and Systems, Vol. E89-D, No. 7, July 2006.
Advances in digital image compression techniques Guojun Lu, Computer Communications, Vol. 16, No. 4, Apr, 1993, pp
CS654: Digital Image Analysis
The task of compression consists of two components, an encoding algorithm that takes a file and generates a “compressed” representation (hopefully with.
 By Bob “The Bird” Fiske & Anita “The Snail” Cost.
CS654: Digital Image Analysis Lecture 34: Different Coding Techniques.
POWERPOINT PLUS 11/17/07 Class Notes. WHAT IS A PIXEL A pixel is a number that represents the intensity of light at a square spot in the picture. Pixels.
JPEG.
STATISTIC & INFORMATION THEORY (CSNB134) MODULE 11 COMPRESSION.
Chapter 7 Lossless Compression Algorithms 7.1 Introduction 7.2 Basics of Information Theory 7.3 Run-Length Coding 7.4 Variable-Length Coding (VLC) 7.5.
Fundamentals of Multimedia Chapter 6 Basics of Digital Audio Ze-Nian Li and Mark S. Drew 건국대학교 인터넷미디어공학부 임 창 훈.
EE465: Introduction to Digital Image Processing Lossless Image Compression 4 Recall: run length coding of binary and graphic images –Why does it not work.
4C8 Dr. David Corrigan Jpeg and the DCT. 2D DCT.
Data Compression Michael J. Watts
Image Compression (Chapter 8)
JPEG Compression What is JPEG? Motivation
IMAGE COMPRESSION.
WAVELET VIDEO PROCESSING TECHNOLOGY
Computer Science Higher
Image Compression The still image and motion images can be compressed by lossless coding or lossy coding. Principle of compression: - reduce the redundant.
Last update on June 15, 2010 Doug Young Suh
Fractal image compression
JPG vs GIF vs PNG What is the difference?
Compression of 3D images using disparity based coder
Data Compression.
Huffman Coding, Arithmetic Coding, and JBIG2
Software Equipment Survey
Why Compress? To reduce the volume of data to be transmitted (text, fax, images) To reduce the bandwidth required for transmission and to reduce storage.
Representing Images 2.6 – Data Representation.
Image Processing, Leture #16
Pyramid coder with nonlinear prediction
JPEG-LS -- The new standard of lossless image compression
Image Compression Purposes Requirements Types
Image Coding and Compression
Quantizing Compression
Quantizing Compression
Presentation transcript:

IMPROVING THE PERFORMANCE OF JPEG-LS Michael Syme Supervisor: Dr. Peter Tischer

2 Introduction Terms: Lossy Compression: Loss of data; Loss in image quality. Lossless Compression: No loss of data; No loss in image quality. Near Lossless Compression: Loss of data up to a predetermined amount (Pd) at each pixel value. Eg: No pixel value can change by more than ‘t’.

3 Introduction Cont’d LOCO-I (Low Complexity Lossless Compression of Images) is the algorithm at the heart of JPEG-LS. JPEG-LS was introduced as a standard in 1999 for lossless compression. Achieves good compression and high throughput for a low complexity algorithm. However, JPEG-LS is not optimal. Therefore, it can be improved!

4 JPEG-LS Description Terms: Predicted Value: JPEG-LS predicts the current pixel value by making an estimation from its neighbouring pixels. Prediction Error: After some internal adjustments of the predicted value, the prediction error is calculated and encoded. It is important that the prediction error is small.

5 JPEG-LS Description Cont’d Terms: Causal Neighbourhood: Neighbourhood of pixels surrounding the current pixel. Common Knowledge: Previous pixel values which both the encoder and decoder know.

6 Coding Terms: Flat Region: When the pixels surrounding the current pixel, are equal or less than a predetermined amount. Gradients: d1 = d – a; d2 = a – c; d3 = c – b; Flat region: d1,d2,d3 <= Pd

7 Past Research Research has focused on improving the detection of edges. However, this does not guarantee an improvement in compression amounts. Another area is rate-controlled region of interest coded images. However, this raises the question of how much extra information is needed to encode the region of interest. No research has considered the affects of noisy images on quantisation error values.

8 JPEG-LS Limitations Coding and Compression: Golomb Encoder must output at least 1 bit-per-pixel. Predictor: Large quantisation errors act similarly to noise. Also, the median predictor used is inefficient in the presence of noise. Coding for region of interest: Currently, the JPEG- LS standard is unable to code for regions of interest. Therefore, its functionality is limited.

9 Methods, Results and Discussion

10

11

12 1. Coding and Compression

13 Coding Solution A Run Length Coder detects and specially encodes repetitive bits and long streams of 0’s and 1’s. A Whitening Transform procedure detects repeating bit stream patterns of 1’s and 0’s. It converts the compressed file into long streams of 0’s and 1’s, which a RLC can then encode.

14 Run Length Coder (RLC) Image from CSE457 (Data and Image Compression) Assignment 1 by Dr. Peter Tischer

15 RLC Cont’d Threshold Value: number of repeating 1’s or 0’s to trigger the run mode. If the threshold value is 3, then three 1’s or three 0’s are output, followed by the leading and trailing bits. Leading calculations: leading = floor(log2(integer)) + 1; Trailing calculations: trailing = integer & (~(1 << leading-1));

16 Implied Terminating Bit: The bit of the opposite sign, which terminates a run. For example  0 is the terminating bit. Implied Bit: a run of 1’s is terminated by a 0 bit, or the end of file. Therefore, we can assume the occurrence of the terminating bit unless an end of file is reached. This allows us to save 1 bit each time. Note: We save one bit per run length and not one bit each time.

17 Coding and Compression Results Implied B-O RLC performed better then the Original B-O RLC. This was expected since we are saving a bit on each run. Images with low amounts of edges, are highly predictable, and could be further compressed by B-O RLC. This proves the limitations of Golomb-Rice Coder. Images that are unpredictable (i.e. contain a large amount of edges) could not be compressed as much as predictable images. The gain or increase in compression decreases as the degree of loss increases.

18 Coding and Compression Results Cont’d Implied LosslessFrance DISFrance EN Orig

19 Coding and Compression Results (RLC & Whitening Transformation) Implied EN LosslessFranceFrance W4France W8France W12France W Orig1.4111

20 2. Improving Prediction in the Presence of Noise

21 Predictor Solution Substituting the median predictor with the following predictors: 1. Average Four = (A + B + C + D) / 4; 2. West = A; 3. North = B; 4. North West = C; 5. Mean = (A + B) / 2; 6. Pirsch = A / 2 + (B + D) / 4; 7. Plane = A + B – C;

22 Predictor Results The median predictors works poorly as the degree of loss increases. The increase in degree of loss, causes an increase in quantisation errors, which begin to act as noise. Best performing predictors are Pirsch and Average 4. This was expected as the two predictors are more tolerant of noise than the median predictor.

23 Predictor Results Cont’d Loss 12LennaCLena NoiseMandrillCFranceBarb Aver Mean Median North NorthWest Pirsch Plane West % Incr

24 3. Region of Interest Coding

25 Region of Interest Coding Questions How do you tell the decoder where the region of interest is? How much information is needed in order to code the regions of interest? How much change or reconstruction of the JPEG-LS standard is needed, in order to include this functionality? How do we store the information if JPEG-LS encoding /decoding is heavily dependant on previously encoded/decoded information?

26 Region of Interest Coding Solution Near-Lossless Map: A 2-dimensional array containing the degrees of loss (i.e. near lossless values) for each pixel within an image. How do we include this extra information? 0 loss corresponds to lossless encoding (i.e. region of interest)

27 Region of Interest Coding Solution Method One JPEG-LS allows for multi band coding techniques. For example, A coloured image can be encoded by rows of red, green and blue.

28 Region of Interest Coding Solution Method Two Another method is to encode the near-lossless map before the encoded image data.

29 Region of Interest Coding Solution Cont’d JPEG-LS does not allow for multiple degrees of loss to be used at once. JPEG-LS must be changed to allow for different encoding of regions Large number of variables are dependant on the near lossless value. Therefore, all dependant variables must be replicated for each different degree of loss, and should only be used when their associated near value is used.

30 Conclusion

31 Conclusion Compress JPEG-LS encoded images by post process operations. Improve prediction in the presence of noise and large degrees of loss. Improve the functionality of JPEG-LS to include region of interest coding.

32 Future Work A different RLC may be used to represent a repeated run. A combination of several predictors would give the optimal compression for the standard. Implementation of region of interest coding for JPEG-LS. This would be useful for image oriented industries such as medicine, image processing, etc…

33 Conclusion Cont’d My website: A public domain/ open source JPEG-LS coder can be found at: Further information about JPEG-LS can be found at: A viewer of JPEG-LS files can be downloaded from Pegasus at: