C++ class library for teaching and research in image processing

John A. Robinson · Proceedings of SPIE, the International Society for Optical Engineering/Proceedings of SPIE · 1996

The 'Class Library for Image Processing' (CLIP) provides object-oriented programming facilities in a framework that supports user migration from C. CLIP augments the C/C++ built-in types with just three additions: the picture, the integer range, and the value range. Associated with these are overloaded operators for arithmetic on and between the types. Range limiting is implemented as a modification of conventional indexing. Pel-by-pel and block-by-block iterations are conveniently handled within the picture and range objects, and via callbacks. Each type incorporates error handling. The target users for CLIP will accept object-orientation only it if allows them to save on development time, after minimal learning, without compromising program execution speed. CLIP programs are compact, the required knowledge of C++ is elementary, and the class library's public interface is small. Speed is kept high by minimizing the amount of data in temporary objects, reducing the dynamic memory management overhead. Picture- or block-wide operations and callbacks are efficiently supported by ordering iterations to minimize the number of counter and pointer increments.

Read the paper · More papers on PaperTik