Title: EBCOT in JPEG2000
1EBCOT in JPEG2000
- Chi-Wen Lo
- January 7, 2005
2Agenda
- Overview
- Embedded Block Coding
- Rate Distortion Optimization
- Conclusion
3Overview
- What is Embedded Block Coding with Optimized
Truncation (EBCOT) ? - Highly scalable bit-stream
- Independent embedded blocks
- Post-compression rate-distortion (PCRD)
optimization - Layered bit-stream organization
- Input of EBCOT
- Subband samples generated using a wavelet
transform, like EZW and SPIHT
4High Scalable Compression
- Resolution Scalable
- Containing distinct subsets representing
successive resolution levels - SNR Scalable
- Containing distinct subsets successively
augmenting the quality - Advantage of scalable compression
- Taget bit rate or reconstruction SNR/resolution
need not know at compression time - Abstract Quality Layers
5Independent Embedded Blocks
- Division of subbands into code-blocks with the
same size - Random Access
- Identify the region within each subband
- code-blocks which are required to correctly
reconstruct the region of interest
6Two-Tiered Coding Structure of EBCOT
7Embedded Block Coding
8Bit-Plane Coding
- Quantization
- Scalar quantizer (SQ)
- Embedded deadzone quantizers
- Bit-plane coding procedure
- Ensure a sufficiently fine embedding.
9Conditional Coding of Bit-Planes
- Four coding primitives
- Zero coding (ZC)
- Run-length coding (RLC)
- Sign coding (SC)
- Magnitude refinement (MR)
- Three coding pass
- Significance propagation Pass
- Magnitude Refinement Pass
- Cleanup Pass
10Scan Order
11Zero Coding (ZC) - 9
- Markov Significance of sample depends only upon
the values of its immediate 8 neighbors
12Run-Length Coding (RLC) - 1
- Invoked in ZC when sample and its neighbors are
all insignificant - Four consecutive samples must all be
insignificant - Samples must have insignificant neighbors
- Samples must reside in the same blocks
- The horizontal index of the first sample must be
even
13Sign Coding - 5
- Used at most once when found significant in ZC
14Magnitude Refinement - 3
- Code magnitude bit is already significant
15Significance propagation Pass
- Pixel is insignificant, but has significant
neighbor (ZC) - RLC will never be satisfied in this pass
- SC is invoked after sample becomes significant
16Magnitude Refinement Pass
- code magnitude bit which was already significant
in the previous bit-lane
17Cleanup Pass
- Samples has not already been coded
- Samples in this pass must be insignificant
- RLC occur in this pass
- Use RLC to identify the first if any samples
becomes significant in bit-plane p
18Rate Distortion Optimization
19Rate Distortion Optimization
- Post-Compression Rate-Distortion (PCRD)
Optimization - Truncate each code-block bit-stream in an optimal
way so as to minimize distortion subject to the
bit-rate constraint. - The rate-distortion algorithm is applied after
all the subband samples have been compressed.
20Rate Distortion Optimization
- Select ni truncated to Lini with distortion Dini
for code-block Bi. - Optimal selection of the truncation points, ni
, so as to minimize overall distortion, D,
subject to an overall length constraint, Lmax . - D ? Dini
- Lmax ? L ? Lini
21Rate Distortion Optimization
- ? ni? , which minimizes
- ? is optimal that D cannot be reduced without
also increasing L and vice-versa. - Optimization of ni? in for given ?
Initialization ni? 0 Loop For j 1,2,
?, Zi (Zi is the last
truncation point) Set ?L Lij ?
Li ni? and ?D Di ni? ? Dij
IF ?D/?L gt ?, THEN ni? j.
22Feasible Truncation Point
- Set of Feasible Truncation Points, Pi , for
code-block - Distortion-rate slope of a truncation point
- Property of the slopes
- Convex Hull Interpretation
An enumeration of points in Pi, 0 hi0 lt hi1 lt ?
lt hiPi-1.
?i(hin) (Di hin-1 ? Di hin)/(Li hin ? Li
hin-1), ? n ? 1.
?i(hi0) gt ?i(hi1) gt ?i(hi2) gt ? gt ?i(hiPi-1).
(Strictly decreasing.)
23Fractional Bit-Plane
- To result in largest reduction in distortion
relative to increase in code length - Pass 0 yield the longest code length to reduce
distortion - Pass 2 slope is expected to be smallest
- Pass 0 though pass 2 represent all information
for bit-plane p
24Quality Layer
- Interleave the coding passes from each code-block
- Truncation distortion of each code-block should
degrade gracefully
25Conclusion
- State-of-the-art Compression Performance
- Embedded Block Coding
- High Scalability
- Resolution scalability
- Distortion/SNR/quality/rate scalability
- Spatial scalability (Random access capability)
- Enabling
- Use of Post-Compression Rate-Distortion
Optimization