A guide to data compression methods

From MaRDI portal





This is a compressed version of Data Compression: The Complete Reference, originally published in 1977, with a second edition emerged in late 2000. While the original tries to cover ``both the principles of data compression, and the details of many specific methods, the current book is intended for people interested in a basic understanding of the increasingly important field of data compression, but either does not have the time, or technical background, to follow all the details. Hence, it only ``presents the main approaches to data compression and describes a few of the important algorithms. The main body of the book contains seven chapters. I find the introductory chapter fairly informative and quite readable. Besides discussing two representative data types, text and image, and introducing various technical terms, it states a few simple, but not always clear, facts. For example, the only compressible data are those with redundancy, and, maybe surprisingly, only a slim number of files can be compressed. The latter one is supported with a simple and convincing calculation. The author did do a positive spin about the latter fact, stating that the files we want to compress do compress quite well since they necessarily contain redundancy with their interesting patterns. Chapter 1 presents the statistical approach to data compression, which assigns variable-length code to individual symbols based on their frequencies of occurrence. As applications, it discusses the well-known Hoffman code and its many variants in detail. It also discusses the Fax compression techniques. Finally, as an alternative, it presents arithmetic coding, which, instead of assigning codes to all individual symbols, assigns one code to the whole input file by appending bits to the code when more symbols are read out of the file. Chapter 2 discusses the dictionary compression technique, which saves pieces of the text in a dictionary, and later, when that piece is found again, a pointer to the same entry in the dictionary will be inserted, which saves space. A few common methods following this approach such as LZ77 and its alike are discussed. Chapter 3 is devoted to image compression. It is pointed out that an image can be compressed if it contains irrelevant data even if it contains no redundancy. After a general discussion of the involved issues, including the difference between text and image information, thus the need for alternative compression methods, a few of the often used image-tailored methods, especially, the important JPEG algorithm, are described. With 80 plus pages, out of 268 for the main body of the whole book, devoted, this is definitely one of the best and detailed chapters within. Chapter 4 describes the basics of the more mathematically demanding wavelet transformation and its application to the data compression methods, and the SPIHT method as a specific example. A rather short Chapter 5 touches upon the basics of video compression; while Chapter 6, the last one, covers the basics of the audio compression area, including a discussion of the insensitive human auditory system which makes the lossy audio compression all that more feasible; and as an example, it discusses the popular MP3 audio compression method. This book ends with a bibliography of more than 60 literature, both classic and current, a glossary of some of the technical terms, and short descriptions of some of the well-known algorithms. It also comes with a CD-ROM which contains popular compression algorithms, a catalog for them, together with various code segments in Mathematical and Matlab as contained in the book. The latter two files are in the text format. With few typos, this book is nicely written and well organized. It definitely contains a rich body of material for any one who is interested in this very important subject, and wants to have a good understanding. Although, the author claims in the preface that the book contains ``little mathematics , a novice reader will find plenty of it in support of the derivation and analysis of various algorithms, as well as in the explanation of the general concepts. I would rather say that the author has done a very good job in explaining all these complicated concepts, and presenting related algorithms and their analysis, with a minimal amount of mathematics. This is remarkable. Another good feature of this book is that, besides a clear presentation of most of the concepts, it contains many examples that are well chosen, easy to follow, and real. This will definitely help the readers in understanding the material, sometimes quite challenging.





Describes a project that uses

Uses Software






This page was built for publication: A guide to data compression methods

Report a bug (only for logged in users!)Click here to report a bug for this page (MaRDI item Q2782042)