Applets for imaFlex CXP-12 Quad#
To ensure optimum use of system resources, not all image acquisition and processing features designed for imaFlex CXP-12 Quad are loaded onto imaFlex CXP-12 Quad simultaneously. Instead, Basler provides various compilations of specific image acquisition and processing features that are combined to meet the requirements of a specific application field. These compilations are called applets, since they work like apps on mobile devices.
Typically, an applet supports a specific camera interface standard and topology, specific image acquisition features, and possibly specific image (pre-)processing features. By loading an applet onto the frame grabber, you define the functionality of the frame grabber and adapt it to the requirements of your specific application.
There are two kinds of applets: acquisition applets (*.dll) always delivered by Basler, and custom applets (*.hap) developed in VisualApplets either by yourself or by Basler. In addition to the acquisition applets that are included in the delivery, imaFlex CXP-12 Quad can be programmed to fulfill highly specific image processing tasks that are required by a specific application. The programming can be done by Basler/ a certified partner, or by yourself using the easy-to-use graphical FPGA programming environment VisualApplets.
The acquisition applets for imaFlex CXP-12 Quad are included in the Framegrabber SDK and also in the pylon Software Suite.
In addition to the Acqusition Applets, you can also use the Enhanced Applets. The Enhanced Applets are a prototype and are only available upon request via your local Basler Sales representative or field application engineer. All Enhanced Applets have the additional features:
- Binning (currently only monochrome) of up to 4x4
- Block-based flat field correction (FFC) for monochrome cameras
- PGI high quality Debayering and image quality improvements
Requirements#
- Host software: Framegrabber SDK version 5.11.2
- Hardware: An imaFlex CXP-12 Quad frame grabber is connected to your system
Limitation
In all applets, buffers larger than 4GB can't be allocated. Even if the applet allows a larger buffer size, you can't allocate buffers larger than 4GB due to limitations in the driver and firmware.
You can calculate the buffer size as follows:
Buffer size = image height * image width * (pixel width / 8).
For RGB images: buffer size = (image height * image width * (pixel width / 8)) * 3 .
Documentation#
The following sections provide links to the acquisition applets documentation:
Area Acquisition Applets#
GenTL | Fglib |
---|---|
Acq_SingleCXP12Area PDF | Acq_SingleCXP12Area PDF |
Acq_DualCXP12Area PDF | Acq_DualCXP12Area PDF |
Acq_TripleCXP12Area PDF | Acq_TripleCXP12Area PDF |
Acq_QuadCXP12Area PDF | Acq_QuadCXP12Area PDF |
Line Acquisition Applets#
GenTL | Fglib |
---|---|
Acq_SingleCXP12Line PDF | Acq_SingleCXP12Line PDF |
Acq_DualCXP12Line PDF | Acq_DualCXP12Line PDF |
Acq_TripleCXP12Line PDF | Acq_TripleCXP12Line PDF |
Acq_QuadCXP12line PDF | Acq_QuadCXP12line PDF |
Frame Grabber Test Applet#
GenTL | Fglib |
---|---|
Frame Grabber Test Applet PDF | Frame Grabber Test Applet PDF |
Area Scan Acquisition Applets#
The following Area Scan Acquisition Applets are available:
- Acq_SingleCXP12Area
- Acq_DualCXP12Area
- Acq_TripleCXP12Area
- Acq_QuadCXP12Area
The denominators "single", "dual", "triple", and "quad" in the name of the applet refer to the maximum number of cameras you can connect. For more information, see Choosing the Right Area Scan Acquisition Applet.
Choosing the Right Area Scan Acquisition Applet#
You must choose the right applet for your camera setup. Otherwise, the image received from the camera can't be processed or displayed correctly or camera performance may be reduced significantly.
Which applet is the right one depends on the number of cameras, the number of channels per camera, and the desired ROI step size.
The ROI step size depends on the parallelism of the image preprocessing and therefore varies by camera and frame grabber.
Number of 1-Channel Cameras | Number of 2-Channel Cameras | Number of 4-Channel Cameras | Applet | ROI Step Size [px] | Topology |
---|---|---|---|---|---|
1 | Acq_QuadCXP12Area | x: 8 y: 1 | |||
2 | Acq_QuadCXP12Area | x: 8 y: 1 | |||
3 | Acq_QuadCXP12Area | x: 8 y: 1 | |||
4 | Acq_QuadCXP12Area | x: 8 y: 1 | |||
1 | Acq_DualCXP12Area | x: 16 y: 1 | |||
2 | Acq_DualCXP12Area | x: 16 y: 1 | |||
1 | Acq_SingleCXP12Area | x: 32 y: 1 | |||
1 | 1 | Acq_TripleCXP12Area | x: 8 y: 1 | ||
2 | 1 | Acq_TripleCXP12Area | x: 8 y: 1 |
Specifications Common to All Area Scan Acquisition Applets#
Max. Image Size [px] | 32k x 64ka |
Camera Ports | 4 |
Camera Type | CXP-12 |
Bit Depth Processing [bit] | 16 (14 for Bayer Demosaicing) |
Bit Depth Output [bit] | Mono8-16 RGB8-16 RGBa8 BGR8-16 BGRa8 Bayer8-14 YUV422_8 |
Mirroring | Yes, horizontal and vertical |
Image Selector | Yes |
Bayer Color Reconstruction (HQe) | Yes, High Quality Extended (HQe) |
White Balance | Yes |
LUT | Full resolution |
Pixel Format Conversion | RGB or Bayer to mono, Bayer or mono to RGB |
Bandwidth Total DMA [MB/s] [^b] | 7200 |
Specifications Differing Between Area Scan Acquisition Applets#
ROI Step Size [px] | Bandwidth: Mean per Camera [MP/s] | Tap Geometry Sorting | |
---|---|---|---|
Acq_SingleCXP12Area | x: 32 y: 1 | 4850 | 1X-1Y, 1X-2YE |
Acq_DualCXP12Area | x: 16 y: 1 | 2400 | 1X-1Y, 1X-2YE |
Acq_TripleCXP12Area | x: 8 y: 1 | 1200 for the first two cameras 2400 for the third camera | 1X-1Y only |
Acq_QuadCXP12Area | x: 8 y: 1 | 1200 | 1X-1Y only |
Line Scan Acquisition Applets#
The following Line Scan Acquisition Applets are available:
- Acq_SingleCXP12Line
- Acq_DualCXP12Line
- Acq_TripleCXP12Line
- Acq_QuadCXP12Line
The denominators "single", "dual", "triple", and "quad" in the name of the applet refer to the maximum number of cameras you can connect. For more information, see Choosing the Right Line Scan Acquisition Applet.
Choosing the Right Line Scan Acquisition Applet#
You must choose the right applet for your camera setup. Otherwise, the camera may not work or camera performance may be reduced significantly.
Which applet is the right one depends on the number of cameras, the number of channels per camera, and the desired ROI step size.
The ROI step size depends on the parallelism of the image preprocessing and therefore varies by camera and frame grabber.
Number of 1-Channel Cameras | Number of 2-Channel Cameras | Number of 4-Channel Cameras | Applet | ROI Step Size [px] | Topology |
---|---|---|---|---|---|
1 | Acq_QuadCXP12Line | x: 4 y: 1 | |||
2 | Acq_QuadCXP12Line | x: 4 y: 1 | |||
3 | Acq_QuadCXP12Line | x: 4 y: 1 | |||
4 | Acq_QuadCXP12Line | x: 4 y: 1 | |||
1 | Acq_DualCXP12Line | x: 16 y: 1 | |||
2 | Acq_DualCXP12Line | x: 16 y: 1 | |||
1 | Acq_SingleCXP12Line | x: 32 y: 1 | |||
1 | 1 | Acq_TripleCXP12Line | x: 16 y: 1 | ||
2 | 1 | Acq_TripleCXP12Line | x: 16 y: 1 |
Specifications Common to All Line Scan Acquisition Applets#
Max. Image Size [px] | 32k x 8Ma |
Camera Ports | 4 |
Camera Type | CXP-12 |
Bit Depth Processing [bit] | 16 (12 bit for BiColor to BGR/RGB conversion) |
Bit Depth Output [bit] | Mono8-16 RGB8-16 RGBa8 BGR8-16 BGRa8 BiColor8-12 YUV422_8 |
Mirroring | Yes, horizontal and vertical |
Tap Geometry Sorting | 1X-1Y only |
Image Selector | Yes |
Color Array Filter | Yes, two lines BiColor |
White Balance | No |
LUT | Full resolution |
Pixel Format Conversion | RGB or BiColor to mono, mono or BiColor to RGB |
Bandwidth: Total DMA [MB/s] [^b] | 7200 |
Specifications Differing Between Line Scan Acquisition Applets#
ROI Step Size [px] | Bandwidth: Mean per Camera [MP/s] | |
---|---|---|
Acq_SingleCXP12Line | x: 32 y: 1 | 4850 |
Acq_DualCXP12Line | x: 16 y: 1 | 2400 |
Acq_TripleCXP12Line | x: 16 y: 1 | 1200 for the first two cameras 2400 for the third camera |
Acq_QuadCXP12Line | x: 4 y: 1 | 1200 |
Frame Grabber Test Applet#
This applet is a frame grabber test applet. Its purpose is to test the hardware.
The applet offers the following features:
Feature | Explanation |
---|---|
DMA Performance Test | Tests different image dimensions for varying memory sizes and interrupt rates |
RAM Test | Checks for errors and processing |
Check Camera Port Image Acquisition | Checks camera port image acquisition |
Send Trigger Signals to Camera | Sends trigger signals to camera |
GPIO Monitoring | Monitors the GPIs and set the GPOs |
Event Test | Generates a software callback event |
General Monitoring | Monitors FPGA temperature, power management, PoCXP, etc. |
Using Acquisition Applets#
Using Acquisition Applets with the Framegrabber SDK#
Find here general information about using the applets with the Framegrabber SDK: Acquisition Applets.
Installing Applets#
Before you can use a specific applet on your frame grabber, you need to install it on the frame grabber. Instructions for installing the applets are available at Managing Applets (microDiagnostics).
Adding an Applet Manually#
To add an applet you received as *.dll file (and not in form of an installer) to your host file system:
- Get the applet file (*.dll) you have received.
- Copy this file into the following directory: <Framegrabber SDK installation directory>/Dll/<frame grabber model>
Now you can use the new applet.
Testing Image Acquisition#
Before you start using an applet in your own software (via API), you might want to test the system set-up or an individual applet (and its parametrization options).
For this purpose, you are provided with the tool microDisplay X that has been installed on your host computer as part of the Framegrabber SDK environment. For instructions how to load and test your applet, see Configuring the Applet (microDisplay X).
Saving Applet Configuration#
After you have configured your applet (in microDisplay X or via Framegrabber API), you can save your configuration. For more information, see Other Tasks (microDisplay X).