Upload
wilfred-hensley
View
215
Download
0
Embed Size (px)
Citation preview
Context-based, Adaptive, Lossless Image Coding
(CALIC)
Authors: Xiaolin Wu and Nasir Memon
Source: IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 45, NO. 4, APRIL 1997
Speaker: Guu-In Chen
date: 2000.12.14
Where to use lossless compression
• medical imaging• remote sensing• print spooling• fax• document & image archiving• last step in lossy image com
pression system
……………………….
Some methods for lossless compression
• Run Length encoding• statistical method:
– Huffman coding– Arithmetic coding...
• dictionary-based model– LZW: UNIX compress, GIF,V.42 bis
– PKZIP– ARJ...
• predictive coding– DCPM– LJPEG– CALIC– JPEG-LS(LOCO-I)– FELICS...
• wavelet transform– S+P …………………………………………………………
System Overview
Raster scan original image, pixel value I
Raster scan original image, pixel value I
Context-based prediction,error e
Context-based prediction,error e
I
grouping and predictionmodification
modified prediction ,error
grouping and predictionmodification
modified prediction ,error
I~
Encode using arithmetic coding Encode using arithmetic coding
NN NNENW N NE
WW W I
PredictionNN NNE
NW N NEWW W I
dh ~ gradient in horizontal direction~vertical edgedv ~ gradient in vertical direction~horizontal edge
d=dv- dh
80
32
8
-8
-32
-80
W
(t+W)/2
(3t+W)/4
t
(3t+N)/4
(t+N)/2
N
Sharp horizontal edge
horizontal edge
week horizontal edge
homogeneous
week vertical edge
vertical edge
Sharp vertical edge
200 200200 200 200
100 100 I
160 160160 160 160
100 100 I
130 130130 130 130
100 100 I
100 100100 100 100
100 100 I
100 100130 100 100
130 130 I
100 100160 100 100
160 160 I
100 100200 100 100
200 200 I
d I
4
NWNE
2
NWt
Ideal example
NNENENN-NNWWd
NENNW-NWWWd
v
h
Prediction--continued
more realistic example(inclined edge)
200 100200 100 100
200 100 I
NNENENN-NNWWd
NENNW-NWWWd
v
h
NN NNENW N NE
WW W I
75251004
200100
2
100100
4
NWNE
2
NWtI
0200200ddd
200100100200-100200100d
200100100200-100200100d
hv
v
h
Prediction errorPrediction error IIe
Example above,
If I=100 then e=100-75=25
How to improve the error distribution
e
p(e)
e
p(e)
Context
1. texture pattern =>C={N,W,NW,NE,NN,WW,2N-NN,2W-WW}
2. Variability =>dh, dv
Context
1. texture pattern =>C={N,W,NW,NE,NN,WW,2N-NN,2W-WW}
2. Variability =>dh, dv
Error distribution
Influence
Previous prediction error =>
Previous prediction error =>
WWew
Group pixels
Each group has its new prediction
why?
Each group has its new prediction
why?
e
I~
I
eII~
Grouping
Context
1. texture pattern =>C={N,W,NW,NE,NN,WW,2N-NN,2W-WW}
={x0,x1,x2,x3,x4, x5, x6 , x7}
bk= 0 if xk>=
1 if xk<
α=b7b6…..b0
Context
1. texture pattern =>C={N,W,NW,NE,NN,WW,2N-NN,2W-WW}
={x0,x1,x2,x3,x4, x5, x6 , x7}
bk= 0 if xk>=
1 if xk<
α=b7b6…..b0
I
I
200 100200 100 100
200 100 I
NN NNENW N NE
WW W I
=75C={100, 100, 200,100,200,200,0,0}
b0~7= 0 0 0 0 0 0 1 1
α=1100000 2
I
What means 2N-NN,2W-WW
NN NNENW N NE
WW W INNI
N
2N-NNI b6=1
C={N,W,NW,NE,NN,WW,2N-NN,2W-WW}
How many cases in α
NN(b4=0)I
N (b0=1)
2N-NN(b6 must be 1)
I
There are not (b0, b4, b6 )= (1,0,0 ) and(0,1,1)
23-2=6 cases. Same as (b1, b5, b7 ).
α has 6*6*4=144 cases not 28
NN(b4=1)
IN (b0=0)
2N-NN(b6 must be 0)
I
Grouping--continued Context
1. texture pattern =>C={N,W,NW,NE,NN,WW,2N-NN,2W-WW}
2. Variability =>dh, dv
Context
1. texture pattern =>C={N,W,NW,NE,NN,WW,2N-NN,2W-WW}
2. Variability =>dh, dv
Previous prediction error
Previous prediction error
WWew
△= dh+dv +2
quantize to [0,3]△
△= 0 15 42 85
we
Quantization Q(△)= 0 1 2 3
Q(△) expressed by binary number ()
for example, =70, △ Q(△) =2, =102
Grouping--continued
Compound and =>C(, )
for example, =11000000
=10
C(, )=1100000010
cases in C(, ) = 144*4=576
According to different C(, ) , we group the pixels.
Modify prediction
For each C(, ) group
mean of all e
modified prediction
modified error
For each C(, ) group
mean of all e
modified prediction
modified error
),(N
),(e),(e
I~
I
),(eII~
Example:
I=10, 11, 13, 15, 18
= 8, 10, 13, 16, 14
e= 2, 1, 0, -1, 4
=9, 11, 14, 17, 15
=1, 0, -1, -2, 3 more closer to I
I
12.15
41012e
I~
I
I~
Experimental result bit rates(bits per pixel) of CALIC on ISO test set and compression
with a few selected schemesImage CALIC JPEG FELICS ALCM CLARAair2 3.83 4.90 4.49 4.08 4.11bike 3.50 4.33 4.06 3.69 3.63café 4.69 5.63 5.31 4.99 4.86tools 4.95 5.69 5.42 5.17 5.06woman 4.05 4.84 4.58 4.30 4.15cats 2.51 3.69 3.30 2.67 2.57water 1.74 2.62 2.36 1.82 1.84char 1.28 2.23 2.14 1.27 1.36grphic 2.26 2.81 2.85 2.41 2.24faxballs 0.75 1.50 1.74 0.60 0.82hotel 3.71 4.22 4.20 3.92 3.88gold 3.83 4.22 4.21 4.02 3.88finger 5.47 5.85 6.11 5.94 5.46us 2.34 3.63 3.32 2.32 2.41cmpnd2 1.24 2.50 2.40 1.34 1.47cmpnd1 1.24 2.51 2.40 1.29 1.53bike3 4.23 5.15 4.67 4.43 4.48chart_s 2.66 3.86 3.44 2.77 2.88average 3.02 3.90 3.72 3.17 3.15
more than 8 bitsmri 5.73 - - 6.17 5.73cr 5.17 - - 5.43 5.22xray 5.83 - - 6.24 5.99ct 3.63 - - 4.09 4.08areial1 8.31 - - 8.77 8.36
file sizesimage Old JPEG New JPEG CALICSena 31,055 27,399 26,433Sensin 32,429 30,344 29,213Earth 32,137 26,088 25,280Omaha 48,818 50,765 48,249The new JPEG standard performs very close to CALICand outperforms the old standard by 6% to 8%.
comment 1. Balances bit rate and complexity.
2. Seems there are redundancies in C={N,W,N
W,NE,NN,WW,2N-NN,2W-WW} & = dh+dv +2 △
or may be simplified.
3. Needs more understanding of Arithmetic co
ding.
4. Lossless or near-lossless compression can b
e the another fields for our laboratory.
we