The Data Compression Book-:Table of Contents
To access the contents, click the chapter and section titles.
The Data Compression Book-
(Imprint: M & T Books)
(Publisher: IDG Books Worldwide, Inc.)
Author: Mark Nelson
ISBN: 1558514341
- Afterword
- Why This Book Is For You
- Chapter 1Introduction to Data Compression
- The Audience
- Why C?
- Which C?
- Issues in Writing Portable C
- Keeping Score
- The Structure
- Chapter 2The Data-Compression Lexicon, with a History
- The Two Kingdoms
- Data Compression = Modeling + Coding
- The Dawn Age
- Coding
- An Improvement
- Modeling
- Statistical Modeling
- Dictionary Schemes
- Ziv and Lempel
- LZ77
- LZ78
- Lossy Compression
- Programs to Know
- Chapter 3The Dawn Age: Minimum Redundancy Coding
- The Shannon-Fano Algorithm
- The Huffman Algorithm
- Huffman in C
- BITIO.C
- A Reminder about Prototypes
- MAIN-C.C AND MAIN-E.C
- MAIN-C.C
- ERRHAND.C
- Into the Huffman Code
- Counting the Symbols
- Saving the Counts
- Building the Tree
- Using the Tree
- The Compression Code
- Putting It All Together
- Performance
- Chapter 4A Significant Improvement: Adaptive Huffman Coding
- Adaptive Coding
- Updating the Huffman Tree
- What Swapping Does
- The Algorithm
- An Enhancement
- The Escape Code
- The Overflow Problem
- A Rescaling Bonus
- The Code
- Initialization of the Array
- The Compress Main Program
- The Expand Main Program
- Encoding the Symbol
- Updating the Tree
- Decoding the Symbol
- The Code
- Chapter 5Huffman One Better: Arithmetic Coding
- Difficulties
- Arithmetic Coding: A Step Forward
- Practical Matters
- A Complication
- Decoding
- Wheres the Beef?
- The Code
- The Compression Program
- The Expansion Program
- Initializing the Model
- Reading the Model
- Initializing the Encoder
- The Encoding Process
- Flushing the Encoder
- The Decoding Process
- Summary
- Code
- Chapter 6Statistical Modeling
- Higher-Order Modeling
- Finite Context Modeling
- Adaptive Modeling
- A Simple Example
- Using the Escape Code as a Fallback
- Improvements
- Highest-Order Modeling
- Updating the Model
- Escape Probabilities
- Scoreboarding
- Data Structures
- The Finishing Touches: Tables 1 and 2
- Model Flushing
- Implementation
- Conclusions
- Enhancement
- ARITH-N Listing
- Chapter 7Dictionary-Based Compression
- An Example
- Static vs. Adaptive
- Adaptive Methods
- A Representative Example
- Israeli Roots
- History
- ARC: The Father of MS-DOS Dictionary Compression
- Dictionary Compression: Where It Shows Up
- Danger AheadPatents
- Conclusion
- Chapter 8Sliding Window Compression
- The Algorithm
- Problems with LZ77
- An Encoding Problem
- LZSS Compression
- Data Structures
- A Balancing Act
- Greedy vs. Best Possible
- The Code
- Constants and Macros
- Global Variables
- The Compression Code
- Initialization
- The Main Loop
- The Exit Code
- AddString()
- DeleteString()
- Binary Tree Support Routines
- The Expansion Routine
- Improvements
- The Code
- Chapter 9LZ78 Compression
- Can LZ77 Improve?
- Enter LZ78
- LZ78 Details
- LZ78 Implementation
- An Effective Variant
- Decompression
- The Catch
- LZW Implementation
- Tree Maintenance and Navigation
- Compression
- Decompression
- The Code
- Improvements
- Patents
- Chapter 10Speech Compression
- Digital Audio Concepts
- Fundamentals
- Sampling Variables
- PC-Based Sound
- Lossless Compression of Sound
- Problems and Results
- Lossy Compression
- Silence Compression
- Companding
- Other Techniques
- Chapter 11Lossy Graphics Compression
- Enter Compression
- Statistical and Dictionary Compression Methods
- Lossy Compression
- Differential Modulation
- Adaptive Coding
- A Standard That Works: JPEG
- JPEG Compression
- The Discrete Cosine Transform
- DCT Specifics
- Why Bother?
- Implementing the DCT
- Matrix Multiplication
- Continued Improvements
- Output of the DCT
- Quantization
- Selecting a Quantization Matrix
- Coding
- The Zig-Zag Sequence
- Entropy Encoding
- What About Color?
- The Sample Program
- Input Format
- The Code
- Initialization
- The Forward DCT Routine
- WriteDCTData()
- OutputCode()
- File Expansion
- ReadDCTData()
- Input DCT Codes
- The Inverse DCT
- The Complete Code Listing
- Support Programs
- Some Compression Results
- Chapter 12An Archiving Package
- CAR and CARMAN
- The CARMAN Command Set
- The CAR File
- The Header
- Storing the Header
- The Header CRC
- Command-Line Processing
- Generating the File List
- Opening the Archive Files
- The Main Processing Loop
- Skipping/Copying Input File
- File Insertion
- File Extraction
- Cleanup
- The Code
- Chapter 13Fractal Image Compression
- A brief history of fractal image compression
- What is an Iterated Function System?
- Basic IFS mathematics
- Image compression with Iterated Function Systems
- Image compression with Partitioned Iterated Function Systems
- Fractal image decoding
- Resolution independence
- The sample program
- The main compression module
- Initialization
- Domain classification
- Image partitioning
- Finding optimal affine maps
- The decompression module
- The complete code listing
- Some Compression Results
- Patents
Bibliography
Appendix A
Appendix B
Glossary
Index
|