Proposal - The University of Texas at Arlington

Implementation and performance analysis of JPEG2000, JPEG,
JPEG-LS, JPEG-XR and H.264/AVC Intra frame coding
EE5359 Multimedia Processing
Project Proposal
Spring 2012
The University of Texas at Arlington
Department of Electrical Engineering
Submitted by :
Amee Solanki
ID: 1000740226
Email: [email protected]
To Dr. K.R.Rao
1
TABLE OF ACRONYMS
AVC
advanced video coding
BMP
bit map format
DCT
discrete cosine transform
EBCOT
embedded block coding with optimized truncation
FRExt
fidelity range extensions
GIF
graphics interchange format
HD-photo
high-definition photo
HVS
human visual system
I-frame
intra frame
JM
joint model
JPEG
joint photographic experts group
JPEG-LS
joint photographic experts group lossless and near lossless coding
JPEG-XR
joint photographic experts group extended range
LBT
lapped bi-orthogonal transform
LOCO-I
low complexity lossless compression for images
MSE
mean square error
PSNR
peak signal to noise ratio
SSIM
structural similarity index
VLC
variable length coding
2
Abstract:
This project will make a comparative study of various still image coding techniques like JPEG
(Joint Photographic Experts Group) [3], JPEG 2000 [2,24], JPEG-LS (Joint Photographic
Experts Group-Lossless and near lossless) [4], JPEG-XR (Joint Photographic Experts GroupExtended Range) and H.264/AVC intra-frame coding [1].
The main idea is to implement the H.264 Intra frame coding using AVC JM software [14] and
make its performance analysis compared to JPEG, JPEG2000 , JPEG-LS and JPEG-XR.
Various properties of compression standards will be studied. Experimental results are measured
in terms of compression ratio, PSNR (peak signal to noise ratio), bit-rate (bandwidth), qualityMSE (mean square error), and SSIM [6] (structural similarity index metric).
Different software like joint model (JM) software for H.264 [21], JPEG reference software [14]
for JPEG, HD-photo reference software [17] for JPEG-XR, JasPer [15] for JPEG2000 and
JPEG-LS reference software [16] for JPEG-LS are used for comparison based on image quality
(SSIM) [6], bit rates and implementation complexity between different codecs.
Coding simulations will be performed on various sets of test images [22] at different bit rates.
Introduction:
Compression is the process of compacting data and reducing the number of bits while
maintaining an acceptable image quality, reduces redundancy of the image or video data in order
to be able to store or transmit data in an efficient form.
Compression involves a complementary pair of systems, a compressor (enCOder) and a
decompressor (DECoder) and hence the name CODEC, the system that performs encoding and
decoding.
3
Need for Compression:
Consider an image of resolution 640 × 480. To calculate the size of the picture in RAW format,
each of the RGB color is represented by 8 bits. Then for each pixel it needs 24 bits. Total number
of pixels in the image is 640 × 480 = 307200 pixels. Therefore, the size of the image turns to
307200 × 3 bytes = 921600 bytes. But, an image in compressed format with the same resolution
takes only 100 KB.
Hence, compression is very useful for storage and transfer of images. Compression also removes
redundant bit pixels of the image, thereby reducing the size. However, compression comes with a
price affecting quality of image.
Therefore, various standard image compression methods that make a best tradeoff between these
properties and compression are studied and implemented in this project.
However, there can be lossy and lossless compression which also affects these properties. Lossy
being permanent loss of some image data while lossless means complete retrieval of data after
decoding.
Evolution of Image Compression Standards:
Fig.1 Evolution of compression technology [23]
4
Compression standards
Standard
Software
Main Application
Year
JPEG
JPEG-Baseline Ref.
Image
1992-1999
JPEG-LS
JPEG-LS DLL
*DLL-Dynamic linked
library
Image
1999-2000
JPEG-2000
JasPer
Image
2000
JPEG-XR
JPEG-XR Ref.
Image
2009
H.264/AVC Intra
Coding
JM
Video
2003
Table 1: Comparison of image compression standards [7]
5
Comparison table for JPEG, JPEG 2000, JPEG-LS and JPEG-XR:
Standard
Compression
ratio
Main Compression
Technologies
Main Target
Applications
JPEG
Compression
ratio 2-30
-DCT
-Perceptual
quantization
-Zig zag reordering
-Huffman coding
-Arithmetic coding
-Internet imaging
-Digital photography
-Image and video editing
JPEG-2000
Compression
ratio 2-50
-Wavelets EBCOT
-Internet imaging
-Digital photography
-Image and video editing
-Printing
-Medical imaging
-Mobile applications
-Color fax
-Satellite imaging
JPEG-LS
Compression
Ratio 2:1
-Context Modeling
-Prediction
-Golomb Codes
-Arithmetic coding
- Lossless and near lossless coding
of continuous tone still images
JPEG-XR
Higher
compression
ratio than JPEG
Based on HD Photo of
Microsoft (Windows
media photo)
-Storage and Interchange of
continuous tone photographic
content (lossless and lossy )
Table 2: Comparison of JPEG, JPEG 2000, JPEG-LS and JPEG-XR [7]
6
Baseline JPEG encoder:
Fig.2 (a) JPEG encoder block diagram [9]
Baseline JPEG decoder:
Fig.2 (b) JPEG decoder block diagram [9]
JPEG -LS block diagram:
Fig.3 JPEG-LS block diagram [11]
7
JPEG 2000 encoder and decoder:
Fig.4 (a) Encoder block diagram (b) Decoder block diagram of JPEG 2000 [10]
JPEG-XR encoder block diagram:
Quantization tables
8x8 blocks
Reversible integerinteger mapping LBT
Adaptive VLC
table switching
Scalar
quantization
VLC
encoding
Coded
image
Original
image
(a)
JPEG-XR decoder block diagram:
Adaptive VLC
table switching
VLC
decoding
Coded
image
Quantization
tables
Scalar
dequantization
Reversible
integer-integer
mapping inverse
LBT
Original
image
(b)
Fig.5 (a): Block diagram of JPEG-XR encoder (b): Block diagram of JPEG-XR decoder [12]
8
H.264 Basic encoder and decoder:
Fig.6 H.264 encoder and decoder block diagram [13]
Spatial Intra prediction:
H.264/AVC uses both spatial and temporal predictions to increase its coding gain.
The intra-only compression uses spatial prediction and the prediction only occurs within a slice.
Fig.7 Examples of spatial intra prediction modes for (8X8) blocks [23]
9
Fig. 8 A 4X4 block and its neighboring pixels [20]
Fig. 9 Direction of 9 4X4 intra-predictions [20]
Fig.8 shows a 4x4 block containing 16 pixels labeled from a through p. A prediction block p is
calculated based on the pixels labeled A-M obtained from the neighboring blocks.
A prediction mode is a way to generate these 16 predictive pixel values using some or all of the
neighboring pixels in nine different directions as shown in Fig. 9.
In some cases, not all of the samples A-M are available within the current slice.
In order to preserve independent decoding of slices, only samples within the current slice are
used for prediction.
Fig.10 Examples of spatial intra prediction modes for (4X4) blocks [20]
1. Mode 0 is the vertical prediction mode in which pixels a, e, i, and m are predicted by A
and so on.
2. Mode 1 is the horizontal prediction mode in which pixels a, b, c, and d are predicted by I
and so on.
3. Mode 2 is called DC prediction in which all pixels i.e. a to p as shown in fig.8 are
predicted by (A+B+C+D+I+J+K+L)/8.
4. For modes 3-8, the predicted samples are formed from a weighted average of the
prediction samples A-M.
10
Structural Similarity Index:
The structural similarity (SSIM) [6] index is a method for measuring the similarity between two
images.
SSIM is designed to improve on methods like peak signal-to-noise ratio (PSNR) and mean
squared error (MSE), which have proved to be inconsistent with human eye perception.
SSIM considers image degradation as perceived change in structural information. Structural
information is the idea that the pixels have strong inter-dependencies especially when they are
spatially close.
where
x and y correspond to two different signals that need to be compared for similarity, i.e. two different
blocks in two separate images;
Fig.11 SSIM index example [19]
11
References:
[1] T. Wiegand, G. J. Sullivan, G. Bjontegaard and A. Luthra,” Overview of the H.264 / AVC
video coding standard ” IEEE Trans. on Circuits and Systems for Video Technology,vol. 13,pp.
560-576, July 2003.
[2] A.Skodras, C. Christopoulos and T. Ebrahimi, “The JPEG 2000 still image compression
standard”, IEEE Trans. on Signal Processing, vol.18, pp.36-58, Aug. 2002.
[3] G. K. Wallace, “The JPEG still picture compression standard,” Communication of the ACM,
vol. 34, pp. 31-44, April.1991.
[4] M. J. Weinberger, G. Seroussi and G. Sapiro, “The LOCO-I lossless image compression
algorithm: principles and standardization into JPEG-LS”, IEEE Trans. on Image Processing,
vol.9, pp.1309-1324, Aug. 2000.
[5] C. Christopoulos, A. Skodras and T.Ebrahimi, “The JPEG2000 still image coding system: an
overview”, IEEE Trans. on Consumer Electronics, vol.46, pp.1103-1127, Nov. 2000.
[6] Z. Wang, A. C. Bovik, H. R. Sheikh and E. P. Simoncelli, “Image quality assessment: From
error visibility to structural similarity,”IEEE Trans. on Image Processing, vol. 13, no. 4, pp. 600612, Apr. 2004.
[7] T. Ebrahimi and M. Kunt, “Visual data compression for multimedia applications”, Proc
IEEE, vol.86, pp. 1109-1125, June 1998.
[8] I. E. Richardson, “The H.264 advanced video compression standard”, II Edition, Wiley,
2010.
[9] JPEG encoder and decoder block diagram:
http://www.cmlab.csie.ntu.edu.tw/cml/dsp/training/coding/jpeg/jpeg/decoder.htm
[10] JPEG2000 encoder and decoder block diagram:
http://eeweb.poly.edu/~yao/EE3414/JPEG.pdf
[11] JPEG-LS encoder and decoder block diagram:
http://www.hpl.hp.com/loco/HPL-98-193R1.pdf
[12]JPEG-XR encoder and decoder block diagram:
http://www.microsoft.com/whdc/xps/wmphotoeula.mspx
[13] H.264 encoder and decoder block diagram:
http://www.drtonygeorge.com/video_codec.htm
12
[14] JPEG reference software:
ftp://ftp.simtel.net/pub/simtelnet/msdos/graphics/jpegsr6.zip
[15] JPEG2000 latest reference software:
http://www.ece.uvic.ca/~mdadams/jasper/
[16] JPEG-LS reference software:
http://www.hpl.hp.com/loco/
[17] Microsoft HD photo specification:
http://www.microsoft.com/whdc/xps/wmphotoeula.mspx
[18] Evolution of image compression standards:
ftp://ftp.panasonic.com/pub/panasonic/drivers/PBTS/papers/WP_AVC-Intra.pdf
[19] SSIM Index example diagram:
https://ece.uwaterloo.ca/~z70wang/research/ssim/
[20] Intra-prediction modes image:
http://www.atc-labs.com/technology/h264_publication_1.pdf
[21] H.264/AVC reference software:
http://iphome.hhi.de/suehring/tml/download
[22] Test Images for analysis:
http://sipi.usc.edu/database/
[23] Evolution of image compression standards:
ftp://ftp.panasonic.com/pub/panasonic/drivers/PBTS/papers/WP_AVC-Intra.pdf
[24] D. S. Taubman and M. W. Marcellin, "JPEG2000 – Image compression fundamentals,
standards, and practice," Kluwer, 2001.
13