ANIMAL (image processing)
Encyclopedia
ANIMAL is an interactive environment for Image processing
Image processing
In electrical engineering and computer science, image processing is any form of signal processing for which the input is an image, such as a photograph or video frame; the output of image processing may be either an image or, a set of characteristics or parameters related to the image...

 that is oriented toward the rapid prototyping, testing, and modification of algorithms. To create ANIMAL (AN IMage ALgebra), XLISP
XLISP
XLISP is a family of Lisp implementations written by David Betz.The first version was a Lisp with object-oriented extensions for computers with limited power. The second version moved toward Common Lisp, but was by no means a complete implementation. After a long period of inactivity, the author...

 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
Digital image
A digital image is a numeric representation of a two-dimensional image. Depending on whether or not the image resolution is fixed, it may be of vector or raster type...

 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 pixel
Pixel
In digital imaging, a pixel, or pel, is a single point in a raster image, or the smallest addressable screen element in a display device; it is the smallest unit of picture that can be represented or controlled....

s, including those on the border, have the same number of neighbors (useful in local operators, such as digital filter
Digital filter
In electronics, computer science and mathematics, a digital filter is a system that performs mathematical operations on a sampled, discrete-time signal to reduce or enhance certain aspects of that signal. This is in contrast to the other major type of electronic filter, the analog filter, which is...

s). 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 applied to the matrix. This mechanism is useful to document algorithms and generate new functions.

ANIMAL has been ported to R
R (programming language)
R is a programming language and software environment for statistical computing and graphics. The R language is widely used among statisticians for developing statistical software, and R is widely used for statistical software development and data analysis....

, a freely available language and environment for statistical computing and graphics.
The new implementation is free and is used in a recent book to illustrate the use of template matching techniques in computer vision (see the preface of the book code companion).
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK