Back to FabImage Studio website

You are here: Start » Filter Reference » GigE Vision » GigEVision_GrabMultiPartImage

GigEVision_GrabMultiPartImage


Module: Genicam

Captures a multi-part image stream from a GigE Vision compliant camera.

Applications

Allows to receive multi-part video stream (with multiple images per frame) from special GigE Vision cameras, like separated color components in planar color formats, or separate depth, confidence and luminosity images in 3D cameras.
Name Type Range Description
Input value inAddress GevAddress GigE Vision Device identifying address (IP, MAC or Serial Number)
Input value inPixelFormat GevPixelFormat* Requested Pixel Format in GenICam pixel naming convention
Input value inInputQueueSize Integer 1 - 400 Number of incoming frames that can be buffered before the application is able to process them
Input value inTimeout Integer 100 - 3600000 Maximum time to wait for frame in milliseconds
Output value outFramePart1 Image? First part of the captured frame
Output value outFramePart2 Image? Second part of the captured frame
Output value outFramePart3 Image? Third part of the captured frame
Output value outFramePart4 Image? Fourth part of the captured frame
Output value outFrameID Long? Frame block ID set by the device
Output value outTimestamp Long? Frame capture timestamp set by the device

Description

This filter is intended for establishing connection with a GigE Vision® compliant, single stream video transmitter, in similar fashion as GigEVision_GrabImage_WithTimeout or GigEVision_GrabImage. This variant is useful when working with devices streaming data in multi part payload format, like 3D depth cameras (providing separate images for depth, confidence or luminosity) or multi sensor cameras (providing separate color planes). Up to four payload parts can be decoded with this filter and accessed as separate images on outputs.

This filter will wait for next valid frame not more than selected timeout value (on inTimeout port) in milliseconds. After timeout occurs Nil values are returned on all output ports.

Device address (inAddress port) is a textual definition of either IP, MAC or serial number. Use Device Manager (click "..." button in filter properties) to select appropriate address of connected device. For information on address type meaning and selecting device address see Device manager section in user manual.

This filter will interpret the value of inAddress port only during the first iteration of its parent Task, when the connection to the device is established. During the next iterations the filter will use previously established connection and subsequent changes in the device address will be ignored.

inPixelFormat can be optionally used to configure the device pixel format when a single format setting is enough. Usually however it would be necessary to configure all parts of the payload separately, which is a process dependent on the device model. In such situation this input should be left empty and buffer parts structure should be configured using set parameter GigE Vision filters in the initialization phase of the application.

Up to four parts of the payload will be converted to a most appropriate application image format, in such a way that no data will be lost, and provided in order on outFramePart1 to outFramePart4 outputs. When the frame payload contains less than four parts excessive outputs will be set to Nil. When a payload part does not transfer an image-like data the corresponding output will also be set to Nil.

When working with 3D depth cameras the filters MakeSurfaceFromImage and CreatePoint3DGridFromImage can be used to convert depth map and point cloud buffer parts into Surface and Point3DGrid primitives respectively. Refer to the device documentation for information about data real world coordinates interpretation and calibration.

outFrameID output returns a sequentially incremented number identifying current frame in the sequence. This value can be used to control the correctness of the received image sequence and detection of lost frames.

outTimestamp output returns a timestamp of current buffer. Frequency of the timer used for this timestamp is device dependent. Refer to the device documentation for details about the timestamp timer.

For general information about working with GigE Vision devices, please refer to the following article.

To learn more about camera acquisition thread works please go to this article.

Hints

  • Interactively select a camera available in your network by defining the inAddress input.
  • By setting inTimeout specify how many milliseconds the filter should wait for an incoming frame.

Errors

This filter can throw an exception to report error. Read how to deal with errors in Error Handling.

List of possible exceptions:

Error type Description
IoError Connection with the device lost.

Complexity Level

This filter is available on Basic Complexity Level.

Filter Group

This filter is member of GigEVision_GrabImage filter group.

See Also