ANIMAL (image processing)
From Wikipedia, the free encyclopedia
ANIMAL (first implementation: 1988 - revised: 2004) is an interactive environment for Image processing that is oriented toward the rapid prototyping, testing, and modification of algorithms. To create ANIMAL (AN IMage ALgebra), XLISP of David Betz was extended with some new types: sockets, arrays, images, masks, and drawables. The theoretical framework and the implementation of the working environment is described in the paper ANIMAL: AN IMage ALgebra.
In the theoretical framework of ANIMAL a digital image is a boundless matrix with its history. However, in the implementation it is bounded by a rectangular region in the discrete plane and the elements outside the region have a constant value. The size and position of the region in the plane (focus) is defined by the coordinates of the rectangle. In this way all the pixels, including those on the border, have the same number of neighbors (useful in local operators, such as digital filters). Furthermore, pixelwise commutative operations remain commutative on image level, independently on focus (size and position of the rectangular regions). The history is a list which tracks the operations and parameters applyed to the matrix. This mechanism is useful to document algorithms and generate new functions.