The main author of this book is Dr. Wolfgang Birkfellner (Center for Medical Physics and Biomedical Engineering, Medical University Vienna), and coauthors are Johann Hummel (chapter 1), Michael Figl (chapter 10), and Ziv Yaniv and Özgür Güler (chapter 11). Birkfellner’s main research interest is medical image processing for therapeutic applications such as computer-aided surgery and image-guided radiation therapy. Dr. Birkfellner has coauthored over 50 peer-reviewed research papers, several book chapters, and 2 books.
The first edition of this book was based on the author’s extensive teaching experience in image processing and resulted from his dissatisfaction with available textbooks. The goals of the author were to 1) give an overview of relevant basic methods in applied medical image processing, 2) assume little prior knowledge except for basic mathematics, physics, and programming, 3) provide tangible examples in addition to theoretical derivations, and 4) be easily accessible without having to purchase specialized software. These goals were certainly achieved in the first edition (published September 2010), which received rave reviews. For example, William Hendee—at that time editor in chief of Medical Physics—noted that “The book … achieves its purpose very well. The CD adds substantial value to the text and serves as an excellent guide to practice the information covered in the text. Students who take a course where this book is used as the course text will be fortunate indeed.” [Med. Phys. 37, p. 6500 (2010)].
The bulk of the material in the second edition is the same as in the first edition, but the content has been updated and two new chapters (chapters 2 and 11) were added. Much thought has been given to the presentation of the material covered in the book. Each chapter has a summary section, additional references to the literature, and most chapters also have a “practical lessons” section in which example pseudo code provides a hands-on learning experience. By design, the depth of the covered material takes a backseat to the breadth and variety of topics. Each chapter on its own could easily be expanded to fill an entire book, if not more than one.
The first three chapters provide background and basic knowledge, and the remaining chapters delve into image processing. The first chapter provides background information about the physics behind some clinically used imaging modalities and also includes a section on radiation safety. It touches on image acquisition using, amongst other modalities, x-ray, CT, MRI, ultrasound, nuclear medicine, and molecular imaging modalities. The majority of the photo illustrations in this chapter are of medical imaging equipment. Perhaps it would have been useful to also provide more illustrations with examples of the different types of medical images acquired with each equipment. In part, this is resolved in the new chapter 2, which provides examples of how medical images are used in modern clinical practice. The third chapter introduces the basic concepts of image representation. It introduces the definition of pixels and voxels, grayscale and color images, image formats such as DICOM, image quality, and signal-to-noise ratio.
Chapter 4 describes simple image operations in intensity space to enhance image visualization such as windowing and contrast adjustment. Chapter 5 describes image operations that change the image content and/or enhance it for further analysis. Topics include image filtering (such as basic smoothing and sharpening filters), image transformations, and an introduction to Fourier analysis and frequency filtering. Chapter 6 touches upon image segmentation and introduces several metrics of performance for the evaluation of segmentation quality. Chapter 7 explains basic spatial transforms, such as rotation and translation, image projection from 3-D to 2-D, image interpolation, and image tracking. Chapter 8 deals with visualization, rendering and surface models, and the hands-on examples generate impressive looking 3-D renderings of various anatomies.
The next two chapters, 9 and 10, are more technical and focus on image registration and CT reconstruction, respectively. Chapter 9 explains the use of fiduciary markers in image registration, compares different registration methods, and describes several metrics of performance for evaluation of the image registration. Chapter 10 discusses CT image reconstruction using the Radon transform in the reconstruction of tissue density from x-ray attenuation. Chapter 11 is a new chapter written by Ziv Yaniv and Özgür Güler that provides a tutorial to image-guided therapy. This chapter is different from the other chapters in that it is almost entirely “hands on” and relies mostly on theory covered earlier in the book.
While the entire book can be read skipping the “practical lessons” sections, these sections provide a great opportunity for readers to deepen their understanding by applying the just-learned theory to hands-on problems. As in the first edition, MATLAB® is used in most examples (available on the CD accompanying the book), but the example code is also suitable for the free MATLAB clone Octave (http://www.gnu.org/software/octave/). The second edition also added new examples using the freely available ImageJ (http://imagej.nih.gov/ij/) and 3DSlicer (http://www.slicer.org/) applications. The author prefers to call the provided MATLAB examples “pseudo code” because they do not make use of any of MATLAB’s vector/matrix capabilities or image-processing toolbox, and hence the code is inherently unoptimized. On the other hand, the pseudo code is easily translatable into another language of choice. The example code is very helpful and makes for a fun learning experience, but one critique is the lack of use of named variables throughout. For example, instead of specifying that an image has rows and columns, the dimensions are hard coded and one is supposed to remember throughout the example what the numbers 2364 and 2964 mean. This not only makes the hands-on lessons more difficult to follow, but also hampers generalization of the code and doesn’t set a good example regarding programming style. The software for chapter 11 is written in C++ and is not included on the accompanying CD. Instead, it can be found on www.crcpress.com, where it is available as an executable application for 3 operating systems and also as C++ source code. In order to follow the examples in this chapter, one also needs LEGO™ (or similar) bricks to construct a phantom “patient” and a webcam for tracking.
In summary, this is a good introductory book to medical image processing that emphasizes hands-on examples and provides a nice blend of theory and practice. It is suitable for graduate students, upper-level undergraduate students, and anyone interested with a sufficient background in mathematics and some elementary programming skills. With its glossary of acronyms and extensive index it can also serve as an excellent reference book for students and medical imaging scientists alike.