APHELION™ VERSION 3.X
Aphelion Developer Architecture
Graphical User Interface
Aphelion's GUI enables users to:
- Visualize one or many images while controlling all display parameters (such as size, aspect ratio, LUT, and contrast)
- Run image processing operators with the choice of using Aphelion-supplied default parameter values or fine-tuning performance levels with user-supplied values
- Record and execute Visual Basic-compatible macro commands
- Display measurements in spreadsheets, compute statistics and plot measurement histograms while examining corresponding objects
- Access online Help including a User's Guide, Reference Guide, and multimedia demonstrations
- Display histograms, scatter plots, profiles, and surface plots of image and object data
Image understanding lets users view an image as a collection of objects rather than raw pixels. Example of objects include blobs, contour chains, polygons, or segments. This conversion significantly reduces the time required to process images and facilitates the phase of recognition and interpretation. A series of attributes is calculated for each object, such as surface area, perimeter, length, Feret diameters, main orientation, and light intensity. The objects and their associated attributes are stored in a symbolic database, which can be displayed as a 2D grid. This database also allows users to select, sort, regroup, and filter objects according to different criteria such as size, shape, and positioning. Every measurement can be calculated using user-defined calibration units.
Aphelion's graphic server lets users display 2D and 3D views of all data and charts. Dynamic coloring is supported by Aphelion's message passing facility, which links images with corresponding graphic displays, providing instant updating of charts and plots based on the specific data selected in the image. Users can customize display properties to meet the specific requirements of each application.
The Aphelion system provides a high-quality image display library, which supports grabbing live images from a camera or scanner, as well as loading from and saving to disk of both raw and processed images. Users have complete control of the color palette, display context, aspect ratio, and a wide variety of graphic overlay objects. Interactive zoom operations only enlarge image pixels while retaining original object overlay granularity, permitting sub-pixel display. The multiple document interface provides message passing between images, and between an image and its corresponding graphic display (chart, histogram, etc.) Aphelion's image display library is available as ActiveX controls for developing turnkey applications with optimal and powerful display capabilities.
Supported Image Formats
Aphelion supports the TIFF, BMP, JPEG, KBVision™, and raw data image formats. Internal image formats include 1, 8, 16 and 32 bits for integer images and 32 bits for float images (black-and-white and color). Image sequences, 2D images, 3D images, and high resolution images are also supported.
To meet the specialized needs of different user groups, Aphelion supports many levels of programming interaction such as:
- Adding user-developed operators to the interface
- Linking user-developed macros to toolbar buttons for convenient access
- Calling image processing functions and image display capabilities (accessible as DLLs) from stand-alone C++ programs
- Using Aphelion ActiveX controls in external environments such as Visual Basic, Delphi, or Java. Twelve ActiveX controls to process images, manage data and display images and charts are available in the Aphelion core module.
Regions Of Interest
Aphelion enables users to define individual or multiple ROIs (Regions of Interest) in an image. Selecting ROIs accelerates processing speed by reducing operator scope to just the specific area of interest. Rectangular, polygonal, and free-hand drawn ROIs are available. One or more objects belonging to the same ObjectSet can also be converted into an ROI. ROIs can be defined and controlled using macro language commands.
Macro Language Environment
With Aphelion, the chore of learning complex and product-specific macro commands is over! A Visual Basic-compatible macro language is completely integrated into the software environment. Every image processing operator is available as a macro command and standard Visual Basic objects are available to create dialog boxes and control windows. An interpreter, debugger, and macro command recorder are also available.
All measurements calculated in Aphelion, both global and individual, can be exported directly into Microsoft Excel or any other software package using Visual Basic. Users can export an entire collection of objects and their attributes, or select specific columns, rows, or cells. For further analysis, histograms can also be exported to spreadsheet applications. Users can take advantage of Aphelion's sophisticated tools for statistical analysis and display, or use external programs such as Microsoft Excel for data analysis.
Aphelion provides MMX support for most operators performing point-to-point or basic neighborhood operations, significantly accelerating calculation speed for these operations. Calculations are faster than the video frame rate, eliminating the need for an additional processing board in real-time or live-image applications.
List of operators optimized for the MMX instruction set
Processing time for 512x512 images, 8 bits on a Pentium III 500MHz:
Camera-generated Image Acquisition
Aphelion allows users to interface with image acquisition and digitization devices through optional add-on modules. Black-and-white or color images are displayed in the graphical user interface, and are refreshed on screen in real time or near real time (refresh rate is dependent upon the specific board used). Users control the gain, offset, and other parameters linked to the acquisition device. An optional porting kit is available for image acquisition devices not supported by the software. (list of supported image acquisition devices)
Aphelion can be extended with a wide variety of optional modules to meet specific user needs. Users of optical microscopes benefit from a module for managing the step motors of a microscope stage governing three axes. The Recognition Toolkit module, developed by Recognition Science Inc., offers recognition tools based on the analysis of main components and the classification of objects according to their attributes. VisionTutor, a self-paced online interactive tutorial, provides computer vision training.
Other optional modules are available.