190 likes | 436 Views
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
E N D
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 compression 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 Context-based prediction,error e grouping and predictionmodification modified prediction ,error Encode using arithmetic coding
Ideal example W Sharp horizontal edge d horizontal edge (t+W)/2 80 week horizontal edge (3t+W)/4 32 homogeneous t 8 week vertical edge (3t+N)/4 -8 vertical edge (t+N)/2 -32 N Sharp vertical edge -80 Prediction dh ~gradient in horizontal direction~vertical edge dv ~gradient in vertical direction~horizontal edge d=dv-dh
Prediction--continued more realistic example(inclined edge) Prediction error Example above, If I=100 then e=100-75=25
p(e) p(e) e e How to improve the error distribution Context 1. texture pattern =>C={N,W,NW,NE,NN,WW,2N-NN,2W-WW} 2. Variability=>dh, dv Influence Group pixels Error distribution Previous prediction error => Each group has its new prediction why?
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 =75 C={100, 100, 200,100,200,200,0,0} b0~7= 0 0 0 0 0 0 1 1 α=1100000 2
NN I N b6=1 2N-NN NN(b4=0) I N (b0=1) 2N-NN(b6 must be 1) 2N-NN(b6 must be 0) I N (b0=0) NN(b4=1) What means 2N-NN,2W-WW C={N,W,NW,NE,NN,WW,2N-NN,2W-WW} How many cases in α 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
Grouping--continued Context 1. texture pattern =>C={N,W,NW,NE,NN,WW,2N-NN,2W-WW} 2. Variability=>dh, dv Previous prediction error △= dh+dv +2 quantize △ to [0,3] △= 0 15 42 85 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 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
comment 1. Balances bit rate and complexity. 2. Seems there are redundancies in C={N,W,NW,NE,NN,WW,2N-NN,2W-WW} & △= dh+dv +2 or may be simplified. 3. Needs more understanding of Arithmetic coding. 4. Lossless or near-lossless compression can be the another fields for our laboratory.