                                    XITE

               X based Image processing Tools and Environment

                         Image Processing Laboratory
                          Department of Informatics
                             University of Oslo
                                   Norway
     __________________________________________________________________

Overview

   XITE consists of display programs with image widget and graphical user
   interface as well as more than 200 command line programs and 600
   subroutines, all documented on-line. XITE uses its own image file
   format (BIFF), but comes with converters between BIFF and TIFF, PNG,
   pnm, sunraster, raw, MATLAB and ascii. The command line programs and
   subroutine library are written in C and run under UNIX and Windows XP.
   The display programs run under UNIX. They work with images of arbitrary
   size and pixel type on 8-bit PseudoColor and 24-bit DirectColor and
   TrueColor X11 displays. Images can be zoomed and panned, and
   colortables can be selected from a menu. The main display program,
   xshow, gives access to most of the other command line programs via a
   menu interface which the user can customize and extend to include local
   programs. Input images for the menu entries can be selected with the
   mouse, and output images appear on the display. The available programs
   include operations such as statistics, merging, resampling,
   arithmetic/logical/relational operations, rotation, mirroring, affine
   transformations, convolution, filter design, Fourier/Hartley/Haar/Hough
   transforms, color manipulation, histogram transformations, global and
   local thresholding, binary thinning, edge detection, morphological
   operations, classification, image analysis and texture estimation. A
   toolkit is supplied to simplify development of X11 based applications.

Platforms

   XITE runs on (at least) the following platforms
     * Windows XP (not the X11 based display programs).
     * Solaris 2.x, x >= 5.
     * Silicon Graphics Indy under IRIX 5.3.
     * Silicon Graphics Power Challenge under IRIX 6.1.
     * Dec Alpha under OSF/1 V4.0.
     * IBM RS 6000 under AIX 4.1.
     * Linux on PC.

File format

   The file format is a raster format for 2D and 3D images. In case of 3D,
   the image is viewed as a sequence of bands, the image may contain any
   number of bands. Each band may have its own size and pixel type. The
   image file contains the neccessary parameters (e.g. sizes and pixel
   types), pixel data ordered band by band, line by line; any amount of
   textual data, regularly used to store the processing history of the
   image; and finally any amount of other data. An internal C data
   structure is also defined, able to hold the whole image, information as
   well as pixels. The individual pixels are accessed by normal indexing.
   Simple routines are used to read (write) a whole image from (to) file
   or a channel, more complex routines are provided if you want to access
   only a part of the file.

Programs

     * X display programs, in particular xshow which has a graphical user
       interface to most of the other command based programs.
     * Format conversions for TIFF, PNG, pnm (pbm, pgm, ppm), raw binary,
       ascii, MATLAB, sunraster, PostScript.
     * Statistics: size, min, max, median, mean, standard deviation.
     * Image representation: subimages, merging images, pyramid, resample
     * Arithmetic operations: negate, scale, absolute value, complex
       conjugate, add, subtract, multiply, divide, square, square root,
       rms difference.
     * Logical operations.
     * Relational operations.
     * Rotation, mirroring, affine transformations.
     * Convolution, mean, Compass, Laplace, Gradient, Roberts, Sobel,
       Prewitt.
     * Filter design: Ideal lowpass, highpass, bandpass and bandstop
       filters.
     * Fourier transform, Hartley transform, Haar transform, Hough
       transform, geometric transformations, Zernike moments.
     * Color manipulation: Gamma correction, dithering, quantization,
       ihs-to-rgb, rgb-to-ihs, rgb-to-pseudocolor, pseudocolor-to-rgb
     * Histogram, scattergram, histogram transformations (equalization,
       normalization).
     * Global and local tresholding.
     * Binary thinning.
     * Canny edge detection.
     * Local operators median, min, max, sigma, knn, kncn, snn and others
       based on local standard deviation.
     * Genererate, add or multiply gaussian noise; generate or add Poisson
       noise.
     * Morphological operations.
     * Non-supervised classification.
     * Image analysis: measuring area, perimeter, moments etc.
     * Texture estimation: lit, lit-snn, glcm, gray-level run etc.

Routines

   All routines are written in C, and you will find
     * Everything listed above.
     * Biff-routines for image treatment (mainly I/O).
     * Image widget, histogram widget and ximage toolkit for writing X11
       based applications.

Documentation

   Manual pages are supplied for all functions and programs, in "man"
   format as well as html. A User's Manual and System Administrator's
   Manual are included as PostScript documents and available in html
   format from the XITE WWW homepage.

Time consumption

   The algorithms below are tested on images of size 512x512x1 byte. Time
   consumption (user time) is measured by the program "time" under UNIX,
   and displayed in seconds.

   Algorithm       D5   S10 P3   PLin Alph  Indy  Pow   U1   ProLin
   convolution 3x3 0.78 0.6 0.03 0.55 0.149 0.107 0.129 0.13 0.05
   convolution 7x7 8.96 3.9 0.38 2.36 2.119 1.168 1.625 0.86 0.66
   sobel           0.50 0.2 0.02 0.28 0.096 0.070 0.083 0.04 0.04
   median 3x3      1.50 0.8 0.09 0.41 0.302 0.239 0.486 0.21 0.15
   median 11x11    3.80 1.9 0.23 1.01 0.788 0.595 1.127 0.48 0.40
   mean 3x3        0.60 0.6 0.02 0.23 0.120 0.164 0.125 0.12 0.04
   mean 11x11      0.60 0.6 0.02 0.23 0.126 0.166 0.125 0.12 0.04
   minarea 11x11   0.91 0.5 0.06 0.30 0.265 0.129 0.196 0.08 0.09
   2D FFT float    9.59 3.7 0.3  1.85 1.130 1.267 1.256 0.64 0.66

   where the machine types specified in each column are
     * D5: Decstation 5000/200
     * S10: Sun Sparcstation 10, SunOS 4.1.3
     * PLin: Pentium, 100 MHz, 48 MB RAM, Linux
     * P3: Pentium III, 500 MHz, 512 KB cache, 768 MB RAM, Linux
     * U1: Sun Ultra-1, 167 MHz, 188 MB RAM, SunOS 5.5
     * Indy: SGI Indy SC, 200 MHz R4400/R4010, 64 MB RAM, IRIX 5.3
     * Pow: SGI Power Challenge, 75 MHz R8000/R8010, 512 MB RAM, IRIX 6.1
     * Alph: Dec 3000 AXP-500 (alpha), OSF1 V4.0
     * ProLin: Pentium Pro, 300 MHz, 128 MB RAM, Linux 2.0.32

   and the commands for each algorithm are
     * convolution 3x3: time conv3x3 mona.img m.img 1 2 3 4 5 6 7 8 9
     * convolution 7x7: time convolve mona.img m.img 7 7 1 2 3 4 5 6 7 8 9
       10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1
       2 3 4 5 6 7 8 9
     * sobel: time sobel mona.img m.img
     * median 3x3: time median mona.img m.img 3 3
     * median 11x11: time median mona.img m.img 11 11
     * mean 3x3: time mean mona.img m.img 3 3
     * mean 11x11: time mean mona.img m.img 11 11
     * minarea 11x11: time minarea mona.img m.img 11 11
     * 2D FFT float: biffConvert mona.img mona_r.img r; time fft2d
       mona_r.img m.img

How to get the software

   You can get the software with a WWW browser from
   http://www.mn.uio.no/ifi/english/research/groups/dsb/resources/software
   /xite/. A "README" file gives further instructions.
     __________________________________________________________________


    Updated by Svein BÃ¸e, 2013.
