http://spmg.ece.ubc.ca t h e u n i v e r s i t y o f b r i t i s h c o l u m b i a bi-level image...
TRANSCRIPT
![Page 1: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/1.jpg)
http://spmg.ece.ubc.cahttp://spmg.ece.ubc.caT h e U n i v e r s i t y o f B r i t i s h C o l u m b i a
Bi-Level Image CompressionBi-Level Image Compression
EECE 545: Data Compression
by Dave Tompkins
![Page 2: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/2.jpg)
Page 2
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
OverviewOverview• Introduction to Bi-Level Image Compression
• Existing Facsimile Standards: G3 (MR) G4 (MMR) JBIG[1]
• New Bi-Level Standards: JBIG2
![Page 3: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/3.jpg)
Page 3
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
Introduction: Meet DaveIntroduction: Meet DaveDave and his Mom:
![Page 4: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/4.jpg)
Page 4
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
Definition: Bi-LevelDefinition: Bi-LevelMulti-Level
(Gray Scale)
Bi-Level
(Black & White)
![Page 5: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/5.jpg)
Page 5
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
Properties of Bi-Level ImagesProperties of Bi-Level Images• Mostly High Frequency
• Often Very High Resolutions: Computer Monitor: 96dpi Fax Machine: 200dpi
• 1 page fax (8.5” x 11” x 200dpi) ~= .5 Meg
Laser Printer: 600dpi (1 page = 4.2 Megs)
High-End Printing Press: 1600dpi (30 Megs!)
• Will often contain text, halftoned images and line-art (graphs, equations, logos, etc.)
![Page 6: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/6.jpg)
Page 6
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
Existing Fax StandardsExisting Fax Standards• T.4 (Group 3) MH (Modified Huffman):
Huffman & Run-Length Encoding (RLE)
0101 0101 0101011001 011 011
Code Lengths are based on statistics, not actual length
Codes are differentfor each colour
Codes are fixed,and never change
![Page 7: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/7.jpg)
Page 7
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
Existing Fax StandardsExisting Fax Standards• T.6 (Group 4) MMR (Modified Modified Read):
Huffman Coding & Modified RLE
Reference Line
Current Line
a0 a1 a2
b1 b2
a1 b1
a0 a1 a1 a2
vertical mode: | a1 b1 | 3
horizontal mode
pass mode: a1 past b2
• 3 Different Modes• run lengths are relative
to the previous line
![Page 8: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/8.jpg)
Page 8
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
Existing Fax StandardsExisting Fax Standards• T.4 (Group 3)
MH - Modified Huffman (and RLE) MR - Modified Read
• Uses information from previous line• Uses MH mode every k lines for error correction
• T.6 (Group 4) MMR - Modified Modified Read
• Uses information from previous line• Assumes Error-Free Environment
![Page 9: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/9.jpg)
Page 9
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
Existing Fax StandardsExisting Fax Standards• JBIG[1] (T.82 -- March, 1993)
• Joint Bi-Level Image Experts Group Committee with Academic & Industrial members:
• ISO (International organization of National Bodies)• ITU-T (Regulatory body of the United Nations)
• Arithmetic Coding (QM Coder)
• Context-based prediction
• Progressive Compression (Display)
![Page 10: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/10.jpg)
Page 10
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
Existing Fax StandardsExisting Fax Standards• Standard JBIG1 Context:
• ? = Pixel to be coded
• A = Adaptive pixel (which can be moved)
• Example: = 17% = 83%
?
A
![Page 11: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/11.jpg)
Page 11
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
Existing Fax StandardsExisting Fax Standards• JBIG1: Progressive Compression (Display)
• Standard defines how to reduce the image
• Predictive context usesinformation fromprevious resolutionlevel
A
?
![Page 12: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/12.jpg)
Page 12
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
Existing Fax StandardsExisting Fax Standards• Arithmetic Q Coder
Numerous variations: Q, QM, MQ• Used by JBIG[1] , JPEG, JBIG2 & J2K• Different probability tables, byte markers, etc.
• Adaptive Coder
• 16-bit Precision (32-bit C register)
• Uses numerous Approximations: Fixed Probability Table No Multiplication
![Page 13: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/13.jpg)
Page 13
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
New StandardsNew Standards• JBIG2 (T.88 -- February 2000)
• First “lossy” bi-level standard
• Supports Three basic coding modes: Generic (MMR or JBIG[1]-like arithmetic) Halftone Text
• Image can be segmented into regions Each region can be coded with a different
method
![Page 14: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/14.jpg)
Page 14
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
JBIG2 - Compound DocumentsJBIG2 - Compound Documents• Segmentation is performed on compound
documents to detect different regions
Generic
Halftone
Text
![Page 15: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/15.jpg)
Page 15
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
JBIG2 - Generic CodingJBIG2 - Generic Coding• The core coding method of JBIG2 has not changed that much from previous methods• There are two methods available in generic coding:
MMR (Group 4) MQ Arithmetic Coding
(similar to JBIG[1])larger contextsare available:
?
A
AA
A
![Page 16: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/16.jpg)
Page 16
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
JBIG-2 Halftone CodingJBIG-2 Halftone Coding• A halftone is coded
as a multi-level image,along with a patternand grid parameters
• The decoder constructs the halftone from the multi-level image and the pattern
• The multi-level image is coded as bi-levelbit-planes, with the generic coder
![Page 17: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/17.jpg)
Page 17
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
JBIG2 - Text CodingJBIG2 - Text Coding• Each symbol is
encoded in a dictionarywith generic coding:
• And then, the image is constructed by adding images from the dictionary:
y
x
• The symbol ID and the (relative)co-ordinatesare coded
![Page 18: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/18.jpg)
Page 18
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
JBIG2 - Text CodingJBIG2 - Text Coding• In actual documents, many
symbols are very similar -- often due to scanning or spacial quantization errors
• Lossy Coding:Hard Pattern Matching
• Lossless Coding:Soft Pattern Matching
![Page 19: Http://spmg.ece.ubc.ca T h e U n i v e r s i t y o f B r i t i s h C o l u m b i a Bi-Level Image Compression EECE 545: Data Compression by Dave Tompkins](https://reader030.vdocuments.mx/reader030/viewer/2022032723/56649d0e5503460f949e4465/html5/thumbnails/19.jpg)
Page 19
© 1999 The Signal Processing and Multimedia Group – The University of British Columbia© 1999 The Signal Processing and Multimedia Group – The University of British Columbia
EECE 545: Bi-Level Image Compression.EECE 545: Bi-Level Image Compression.By Dave TompkinsBy Dave Tompkins
JBIG2 - Soft Pattern MatchingJBIG2 - Soft Pattern Matching• Soft Pattern Matching (refinement coding) is
when a symbol is coded using a similar, previously coded symbol to provide additional context information.
Already coded: To be coded:
x ?