Technology Trends: Graphical object connecting speeds image-processing development
Using conventional programming languages, signal and image processing systems require the construction of complex algorithms that take many hours to code.
Using conventional programming languages, signal and image processing systems require the construction of complex algorithms that take many hours to code. Because of this, many image processing software developers have designed image processing packages that use graphical user interfaces with which to develop image processing applications (see Vision Systems Design, May 1998, p. 58). Using graphical icons, developers can build image-processing routines by dragging and dropping graphical representations of imaging functions such as FFTs, filters, blob and histogram analysis.
RIGHT. A waveform contaminated by Gaussian noise has been transformed into the frequency domain by using an FFT algorithm. This signal is then split, with one copy being fed into an averager unit which averages the previous 20 (the default) spectra and the other being passed directly to the graphical display unit. The resultant output shows the averaged signal on the upper part of the window and the current signal on the lower section.
Now, with the advent of the Java processing language from Sun Microsystems (Palo Alto, CA) developers are looking to build platform-independent imaging software (see "Software vendors endorse JAVA language for platform-independent imaging," p. 33). Others are looking to provide platform independent signal and image processing toolkits to OEMs.
One such package, Triana, developed by the University of Wales (Cardiff, Wales), includes toolboxes for signal, text, and image-processing/ manipulation routines. Originally developed as a data-analysis system for the GEO 600 gravitational wave detector (see www.geo600. uni-hannover.de/), Triana is a graphical interactive multi-threaded environment that allows developers to construct complex algorithms by creating an object-oriented block diagram.
"Over the next year, many tools will be added to existing toolboxes to provide the necessary functionality for Triana to be applied to many different applications," says Ian Taylor of the department of physics and astronomy at the University of Wales. "Initially, these will be signal and image processing functions such as FFTs, filters, and correlation algorithms," he says.
Conforming to the Java Development Kit v.1.1 from Sun Microsystems, Triana consists of about 90,000 lines of Java code that can be downloaded from the Web (www.astro.cf.ac.uk/Triana/). Included in the release is MathCalc, a stand-alone application written by B. F. Schutz that computes any mathematical expression that can generate sequences of numbers based on any equation. Within Triana, MathCalc can accept many different kinds of input and apply any mathematical expression to them.