Color image processing has attracted much interest in recent years. The use of color in image processing is motivated by the facts that (1) the human eyes can discern thousands of colors, and image processing is used both for human interaction and computer interpretation; (2) a color image comprises more information than a grayscale image; (3) color features are robust to several image-processing procedures (for example, to the translation and rotation of the regions of interest); (4) color features are efficiently used in many vision tasks, including object recognition and tracking, image segmentation and retrieval, image registration etc.; and (5) color is necessary in many real-life applications such as visual communications, multimedia systems, fashion and food industries, computer vision, entertainment, consumer electronics, production printing and proofing, digital photography, biometrics, digital artwork reproduction, industrial inspection, and biomedical applications. Finally, the enormous number of color images that are constantly uploaded to the Internet require new approaches to visual media creation, retrieval, processing, and applications. This also gives us new opportunities to create a number of large visual data-driven applications. Three independent quantities are used to describe any particular color; the human eyes see all colors as variable combinations of primary colors of red, green, and blue. Many of the methods of modern color image processing are based on dealing with each primary color separately. However, this methodology fails to capture the inherent correlation between the color image components and results in color artifacts. Moreover, it is not clear how to handle and combine the information from the different primary colors. It is natural therefore to ask how to couple the information contained in the given primary colors and how to process the color components as a whole unit without losing the spectral relation that is present in them, or how to develop a mathematical color model that may help to process all of the color image components. The application of the theory of hypercomplex numbers in color imaging may give us the answers to these questions. The quaternions and octonions are numbers that extend the complex numbers to higher dimensions, 4 and 8, respectively.
Recently, the theory of the quaternion algebra has been used in color science and color systems by processing simultaneously the color channels. The three color channels of the image can be represented as a vector field of quaternion numbers. The first hypercomplex numbers that are quaternions were discovered by the Irish mathematician and physicist William Rowan Hamilton in 1843. Quaternions are currently accepted as one of the most important concepts in modern computer graphics, in both theoretical and applied mathematics, in group theory and topology, quantum mechanics, color image processing, and virtual reality applications.
The main goal of this book is to provide the mathematics of quaternions and octonions and to show how they can be used in emerging areas of color image processing. The book begins with a chapter covering the introductory material and fundamentals of complex and quaternions numbers, multiplication of quaternions, the geometry of rotations, and many functions of quaternions, such as the exponent, logarithm, power, and trigonometric functions. This chapter includes many illustrative examples and MATLAB codes to demonstrate why they are important and to explore quaternions unencumbered by their mathematical aspects. Chapter 2 is devoted to octonion numbers and the main operations and functions of octonions. Multiplication of octonions is described and illustrated through examples with scripts. In Chapters 3 and 4, different mappings of grayscale and color images into the spaces of quaternion and octonions are described with examples. The operation of multiplication with its parts being the inner and vector products are illustrated on color images. The authors pay more attention to the fast quaternion discrete Fourier transforms (QDFTs) because of the Fourier transform’s major impact on the various components of image processing, such as image filtering, image enhancement image analysis, image reconstruction, and image compression. The concept of the QDFT became a very popular topic in color imaging. Fast algorithms of the QDFT are based on representations by combinations of classical 1-D DFTs, which leads to fast numerical implementation with the fast Fourier transform software. Chapter 5 describes the algorithms of 1-D fast Fourier transform and introduces fast algorithms for the quaternion and octonion discrete Fourier transforms (ODFTs). Many examples and scripts required to calculate the transforms are given. The concepts of 2-D quaternion and octonion DFTs as generalizations of the DFT are described in detail with fast algorithms and scripts in Chapter 6. The tensor representation of images in the quaternion and octonion spaces is also introduced, and the efficiency of the tensor algorithm of the fast left- and right-side 2-D QDFTs is described and compared with existent methods. In addition, a new concept of the 2-D QDFT on a hexagonal lattice is presented. The final chapters discuss the specific applications: state-of-the-art color image enhancement, gradient operators, grayscale and color visibility images, and face recognition and filtering applications. This book provides the theory and methods, many unique tools, and 72 codes and functions written in MATLAB with useful comments. We believe that the presented computer simulations, numerical experiments, and illustrative solutions of real-world problems in color image processing and the given analysis will allow the readers to develop a deeper understanding of both theoretical and practical aspects and advanced concepts of this subject. This book will be useful for upper-level undergraduates and graduate students, researchers, and image processing engineers, helping them to reorganize quaternions and octonions, and apply them in practice. This book is also for the developer, scientist, and engineer working on in computer graphics, signal and image processing, multimedia analytics, visualization, or entertainment computing. Finally, this book will be helpful to the people who need an assortment of quaternion utilities, sample MATLAB codes, and practical examples to help them understand the theory involved in quaternion imaging.
We appreciate all who assisted in the preparation of this book in a short eight-month period. We are grateful to Merughan Grigoryan and the reviewers for many suggestions and recommendations.
Artyom Grigoryan and Sos Agaian
March 2018