The Signature Classification Development System (SCDS) is a graphical-programming PC application that allows the user to visually program a multichannel classification system with minimal programming training. User-expandable libraries of routines allow the user to select data formats, signal and image processing, vector and matrix mathematics, template matching, feature extraction, and classification algorithms.
Required Computing Platform
SCDS runs on any Windows 95, 98, or NT machine. SCDS is a self-contained product and can be used without any other software packages. However, to expand the libraries in SCDS, you must have Microsoft Visual C++ installed to have SCDS automatically compile the source code that you write.
Supplement Software Required
SCDS provides an API for adding all sorts of routines, including input and output routines. SCDS writes a template C routine that you then fill in with your own code.
Classification Routines Included
A three-layer, feed-forward, back-propagation neural network is the default classifier in SCDS. The user can add an arbitrary classifier using the SCDS API.
Routine Libraries Included
Six types of routine libraries are included with SCDS. These libraries come populated with routines that give the user tremendous capability. These libraries also user-expandable to include whatever functionality is desired.
Input/output routines provide an interface between SCDS and your data. Several standard image formats are included in SCDS, in addition to flat ASCII and binary file formats.
Processing routines perform some operation on the data that does not drastically change the dimension of the data, such as smoothing, Fourier tranformations, wavelet transformations, and digital filtering. Several standard image and signal processing routines are included in SCDS.
Template matching routines identify locations within the signal or image that have a user-specified characteristic. Two example template matching routines are correlation and signal amplitude. SCDS provides a way to extract portions of the signal or image depending on locations identified by the template matching routines.
Feature extraction routines are similar to the processing routines, by performing some operation on the data, but they drastically reduce the dimensionality of the data. Example feature extraction routines included in SCDS are average value, maximum value, and variance.
Math routines allow the user to combine two images or signals using an arbitrary function. Example math routines provided are addition, subtraction, multiplication, and division.
Classification routines are provided lists of calculated vectors and the user-specified classification in the training mode. The routines then store the appropriate parameters to be able to classify new vectors in the production mode. A neural network classifier is provided in SCDS.
For classification tasks: Human interpretation of complex images and signals is unreliable and expensive. SCDS can automate the processes that a human expert uses in interpreting data. This product has been used extensively to design programs for automating the interpretation of data from nondestructive evaluation tests, including: ultrasonic, eddy-current, and X-ray inspections.
For processing tasks: The data handling features of the program make it ideal for performing signal or image processing in batch mode on large quantities of data.
SCDS Is New
This program allows a nonspecialist to write a signal or image analysis or classification program. The data representation is reduced to the simplest possible notation. Unlike other graphical programming languages, data types and dimensions are handled automatically and are of no concern to the user. This drastically reduces the complexity of the programming interface.
The algorithms developed using the icons and links on the screen are exportable into “C” code for inclusion into larger systems. In addition, SCDS provides a documentation function that produces a human-readable description of the algorithm developed.
Multichannel data capability, with individual channels possibly being images or signals in the same project, allows the fusion of different sensor technologies into one analysis and classification environment.
What Are the Benefits?
All functions of the program are user-expandable; the input and output, the signal and image processing, the template matching, math, and the classification libraries have prepackaged routines but can be supplemented with C source code by the user. The program, written with the user pointing and clicking, is exportable into C source code, and dynamic link libraries (DLLs) are available for inclusion into other software systems.