Skip to content

Applets for imaFlex CXP-12 Quad#

This topic tells you about the acquisition applets available for the imaFlex CXP-12 Quad frame grabber.

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:

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
One Camera, One Channel
2 Acq_QuadCXP12Area x: 8
y: 1
Two Cameras One Channel Each
3 Acq_QuadCXP12Area x: 8
y: 1
Three Cameras One Channel Each
4 Acq_QuadCXP12Area x: 8
y: 1
Four Cameras One Channel Each
1 Acq_DualCXP12Area x: 16
y: 1
One Camera Two Channels
2 Acq_DualCXP12Area x: 16
y: 1
Two Cameras Two Channels Each
1 Acq_SingleCXP12Area x: 32
y: 1
One Camera Four Channels
1 1 Acq_TripleCXP12Area x: 8
y: 1
One Camera With One Channel And One Camera With Two Channels
2 1 Acq_TripleCXP12Area x: 8
y: 1
Two Cameras With one Channel And One Camera With Two Channels

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
One Camera, One Channel
2 Acq_QuadCXP12Line x: 4
y: 1
Two Cameras One Channel Each
3 Acq_QuadCXP12Line x: 4
y: 1
Three Cameras One Channel Each
4 Acq_QuadCXP12Line x: 4
y: 1
Four Cameras One Channel Each
1 Acq_DualCXP12Line x: 16
y: 1
One Camera Two Channels
2 Acq_DualCXP12Line x: 16
y: 1
Two Cameras Two Channels Each
1 Acq_SingleCXP12Line x: 32
y: 1
One Camera Four Channels
1 1 Acq_TripleCXP12Line x: 16
y: 1
One Camera With One Channel And One Camera With Two Channels
2 1 Acq_TripleCXP12Line x: 16
y: 1
Two Cameras With one Channel And One Camera With Two Channels

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:

  1. Get the applet file (*.dll) you have received.
  2. 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).


  1. k Px and M Px in this case refer to a binary format. Examples for binary calculations are: