A pre-prototype image processing language, IPL, and a supporting programming environment are described. The proposed generic language is introduced in order to investigate aspects lacking in the existing image processing languages, which are abundant.
The primary notion of IPL is that it allows the user to navigate through the image database, which is a complex hierarchical structure of picture objects and relational objects (both are sets of attribute triples). The navigation is via the creation and manipulation of icons, windows, region-frames, and ports. Icons are symbols with graphical representation referring to an entity (an object, a window, or a command) or to a set of entities. A window and a region-frame are facilities for visualizing portions of the image, for constructing large image databases, and for designing high-level user interfaces. A port is simply a logical channel to parts of the database or to an external device.
IPL maintains a metadatabase user workspace containing all the application-dependent data and the current entities of interest (a currency concept related to that of CODASYL). IPL also allows the direct application of PROLOG-like rules in image processing and the association of such rules with icons.
IPL consists of three subsets: a logical IPL, which is used to retrieve/manipulate logical images stored in the database; a physical IPL to process/manipulate physical images; and an interactive IPL to interact with the image information system.