Most longtime readers of CUJ are familiar with the Dwayne Phillips Image Processing series, a collection of articles that ran in eleven installments from December, 1990 thru August, 1993. In that very popular series, Mr. Phillips presented his C Image Processing System (CIPS) for manipulating 8-bit gray-scale TIFF images.CIPS provides routines for reading and writing to Tag Image Files (TIFF), routines for displaying and printing images, and a host of image processing functions, including edge detection, segmentation, rotation, zooming, etc. (CIPS does not work with color images, however.)
With each installment of the series, the source code was made available via online services (e.g. CompuServe) and on the CUJ monthly code disk. Since the series began, space constraints have compelled many online services to delete earlier installments of the code from their libraries, so they no longer carry a full complement of code for the series. That's unfortunate, but there's some good news that outweighs the bad. It is now possible to purchase the complete source code and text in one place in the form of a book.
CIPS the Book
Dr. Phillips has been very busy in the past year. Not only has he updated existing code, but he has added new features to CIPS. He describes the latest version of CIPS in his new book, Image Processing in C, ISBN 0-13-104548-2, available from R&D Publications (ordering details below). Since this book is based on the latest version of CIPS, it contains material that was not published in CUJ:
A code disk is bundled with the book that contains the complete, revised source code.
- Updated software The code for the original series, published in CUJ, was written to work with the TIFF 5.0 specification. TIFF was revised in June 1993 to version 6.0. Consequently, Phillips upgraded the I/O routines in CIPS to work with TIFF 6.0. All of the code described in the book works with TIFF 6.0.
- New Features The book version of CIPS adds Boolean and Overlay operations, and a Batch File handling facility.
Through the Book and Beyond
If you think you've got all this figured out now, there's just one more detail to consider: The CIPS series did not end with the book. In fact, we're not sure when it will ever end (not that we're complaining). We figure that as long as Phillips has a computer, a new manuscript could appear on our doorstep any day, which we will happily publish as soon as we are able. We already have a couple of new installments in our input queue and this is all new material, never before published in magazine or book.
A Roadmap
To show how the various parts of CIPS fit together, we've devised the chart shown on the facing page. The blocks on the left side of the chart represent the portions of CIPS published, or yet to be published, in CUJ. The blocks on the right represent the portions of CIPS that are published in the book. Shaded blocks represent portions of CIPS containing code that works with TIFF version 6.0. Unshaded portions represent portions whose code works with TIFF 5.0.Note that while parts 1 thru 11 of the CUJ code conform to TIFF 5.0, parts 12 and beyond conform to TIFF 6.0. So, if you have all eleven parts from the CUJ series, you will have to modify them to work with the new TIFF 6.0 file I/O functions. To assist you we provide these new I/O functions on this month's code disk. As an alternative (the one we recommend), you can purchase the book and bundled code, for $39.95, from R&D Publications.
Marc Briand
Managing Editor