Aphelion™ is an image processing and quantitative image analysis software package for rapid application prototyping, development of new imaging techniques, training in computer vision, and application deployment. It is based on the KBVision™ Image Understanding software product, a UNIX product developed in the 80's by Amerinex Applied Imaging, inc. Fully compatible with Windows XP (Home and Professional editions), Windows 2000, Windows NT, Windows ME and Windows 98. Aphelion offers the latest developments in mathematical morphology, the most innovative tools in shape recognition, classification, image understanding, as well as optional modules for vertical applications and markets. Most of the tools available in the KBVision software are now available in the Aphelion software product such as the Image Understanding processing functions.
Aphelion features over 400 processing functions accessible from the graphical user interface, or from a stand-alone program written in Visual Basic, C++, or Delphi. The graphical user interface allows for the simultaneous display of processed images, images acquired by a camera or an external digital sensor, charts, grids containing image measurements, source code for Visual Basic-compatible macro programs, and online documentation.
The Aphelion core package supports 2D images in any size with a depth of 1 to 32 bits, color images, and 3D images.
The graphical user interface allows the simultaneous display of images, charts, and measurements for rapid prototyping and algorithm validation. Most of Aphelion's extensive library is available as a set of ActiveX controls and DLLs, enabling OEMs to select only the necessary components used in their application, thereby reducing the cost and complexity of the final application. Now OEMs need only concentrate on their field of expertise, relying on Aphelion to display, process, and quantify images.
A set of optional modules is available to perform statistical recognition, reconstruct large images from small images, control the stage of a microscope, process and analyze 3D images, deblur noisy images, and much more.
Image Display in the Graphical User Interface
It is possible to display more than one image in the Aphelion Graphical User Interface. The example shows how to display four images at the same time, and zoom in all images at once. Images can be displayed at their true size, or by respecting the aspect ratio. Powerful tools for controlling the display context and the LUTs are also available in the product. All these tools are now available in one single ActiveX component, the ApxImageDisplay Control.
Message Passing between Images and Charts
This example below shows how to display charts and images at the same time, and how message passing and dynamic coloring is implemented in Aphelion. Two sections are highlighted in the histogram, and corresponding pixels are then colorized in the image. In the bottom chart, a section is highlighted on the intensity profile, and pixel location is then marked on the original gray-scale image.
Message Passing between Images, Charts, and ObjectSets
Message Passing is a key and unique feature in Aphelion. Clicking in one image window will pass a message to another window, which will then interpret the message and perform an action if it is possible. For example, the example below shows how to pass multiple messages between an image, an histogram, and the grid used to output object attributes. The selected object appears in red in the three images, the corresponding line is highlighted in the grid, and the corresponding bar in the histogram is shown in a different color. Message Passing could have also be initiated by clicking on the grid. This feature is very important, and provides full control of data output to the user. With Message Passing, you directly enter into the world of Image Understanding.
A Powerful Graphic Toolbox
Image Processing sometimes requires the user to interact manually with the images. A powerful graphic toolbox is provided, to let the user draw objects into the image overlay. All graphics are non destructive, but can be later merged with the image. Free hand drawing is available, to contour objects of interest, and to extract basic information on these objects.
Online and multimedia documentation
Aphelion documentation is very comprehensive. It includes a full User Guide describing every icon and button in the Graphical User interface, a Macro Reference Guide explaining how to record, program and play macros, a Reference Guide detailing every single Image Processing/Understanding operator, with images, programming examples, and references. A programming Guide is also available explaining how to develop Stand-Alone applications in Visual C++, or how to add a new operator in the graphical User Interface.
Visual Basic compatible language for macro commands
The software includes a Visual Basic-compatible macro language. Image Processing operators have been added to the language, while preserving the original functions, the dialog editor, and all other familiar Visual Basic objects. All debugging tools are also available at a mouse click.
Multiple Regions of Interest
Aphelion supports multiple Regions on Interest, of regular or irregular shape. Processing can be performed in one or all ROIs at the same time. This unique feature is very useful for quality control applications. And, objects obtained after image segmentation can even be converted into multiple ROIs.
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.
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
- Addition of 2 images
- Subtraction of 2 images
- Multiplication of 2 images
- Minimum of 2 images
- Maximum of 2 images
- White Tophat
- Black Tophat
- Alternate Sequential Filter
- Automedian Filter
Camera-generated Image Acquisition
Aphelion allows users to interface with image acquisition and digitization boards 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 card. An optional porting kit is available for image acquisition cards not supported by the software.
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.