Home > C: Programming > How To Proceed > Image Capture > History back  Previous chapter  Next chapter  Print  

Image Capture Modes

uEye Camera Manual Version 3.80

Image Capture Modes

For more information on the uEye capture modes see also Camera Basics: Freerun and Camera Basics: Trigger.

 

Freerun Mode

In freerun mode, the camera sensor captures one image after another at the set frame rate. Exposure of the current image and readout/transfer of the previous image data are performed simultaneously. This allows the maximum camera frame rate to be achieved. The frame rate and the exposure time can be set separately. The captured images can be transferred one by one or continuously to the PC.

If trigger mode is active, you need to disable it with is_SetExternalTrigger() before activating freerun mode.

Single frame mode (snap mode)
When is_FreezeVideo() is called, the next image exposed by the sensor is transferred. You cannot use the uEye flash outputs in this mode.
Continuous mode (live mode)
When is_CaptureVideo() is called, images are captured and transferred continuously. You can use the uEye flash outputs.

Trigger Mode

In trigger mode, the sensor is on standby and starts exposing on receipt of a trigger signal. A trigger event can be initiated by a software command (software trigger) or by an electrical signal via the camera’s digital input (hardware trigger). For the specifications of the electrical trigger signals, see the Specifications: Electrical Specifications chapter.

The trigger mode is selected using is_SetExternalTrigger().

Software trigger mode
When this mode is enabled, calling is_FreezeVideo() immediately triggers the capture of an image and then transfers the image to the PC. If is_CaptureVideo() is called, the triggering of image capture and the transfer of images are performed continuously.
Hardware trigger mode
When this mode is enabled, calling is_FreezeVideo() makes the camera ready for triggering just once. When the camera receives an electrical trigger signal, one image is captured and transferred.
If you call is_CaptureVideo(), the camera is made ready for triggering continuously. An image is captured and transferred each time an electrical trigger signal is received; the camera is then ready for triggering again (recommended procedure).
Freerun synchronization
In this mode, cameras running in freerun mode (live mode, see above) can be synchronized with an external trigger signal. The cameras still remain in freerun mode. The trigger signal stops and restarts the current image capture process. You can use this mode to synchronize multiple cameras that you are operating in the fast live mode. Not all camera models support this mode (see is_SetExternalTrigger()).

Hinweis

In trigger mode, the maximum frame rate is lower than in freerun mode because the sensors expose and transfer sequentially. The possible frame rate in trigger mode depends on the exposure time.
Example: At the maximum exposure time, the frame rate is about half as high as in freerun mode; at the minimum exposure time, the frame rate is about the same.

Overview of Image Capture Modes

Image capture

Trigger

Function calls

Allowed flash modes

Frame rate

Standard

Global Start

 

 

 

 

 

 

Continuous

Off

is_SetExternalTrigger

(OFF)

is_CaptureVideo()

X

 

Freely selectable

Software

is_SetExternalTrigger

(SOFTWARE)

is_CaptureVideo()

X

X

Depending on exposure time and trigger delay

Hardware

is_SetExternalTrigger

(e.g. HI_LO)

is_CaptureVideo()

X

X

Depending on exposure time and trigger delay

Freerun sync.

is_SetExternalTrigger

(e.g. HI_LO_SYNC)

is_CaptureVideo()

X

 

Freely selectable

 

 

 

 

 

 

Single frame

Off

is_SetExternalTrigger

(OFF)

is_FreezeVideo()

 

 

Freely selectable

Software

is_SetExternalTrigger

(SOFTWARE)

is_FreezeVideo()

X

X

Depending on exposure time and trigger delay

Hardware

is_SetExternalTrigger

(e.g. HI_LO)

is_FreezeVideo()

X

X

Depending on exposure time and trigger delay

Timeout Values for Image Capture

When you call is_FreezeVideo() or is_CaptureVideo(), the timeout value for the image capture is determined from the Wait parameter. If no image arrives within this timeout period, a timeout error message is issued. Under Windows, a dialog box is displayed if you have enabled error reports (see is_SetErrorReport()). Information on the error cause can be queried using is_GetCaptureErrorInfo().

The following table shows the effect of the Wait parameter depending on the image capture mode:

Parameter Wait

Image capture
mode

Function returns

Timeout for 1st image

Timeout for subsequent images1)

IS_DONT_WAIT

HW trigger

Immediately

API default or user-defined value3)

API default or user-defined value3)

IS_WAIT

HW trigger

When 1st image in memory

API default or user-defined value3)

API default or user-defined value3)

Time t

HW trigger

When 1st image in memory

Time t

API default or user-defined value3)

IS_DONT_WAIT

Freerun/SW trigger

Immediately

Calculated internally by API 2)

Calculated internally by API 2)

IS_WAIT

Freerun/SW trigger

When 1st image in memory

Calculated internally by API 2)

Calculated internally by API 2)

Time t

Freerun/SW trigger

When 1st image in memory

Time t

Calculated internally by API 2)

1) Only with continuous image capture using is_CaptureVideo()

2) The timeout is calculated from the exposure time setting, the image transfer time (depending on the pixel clock) and the optional trigger delay (see is_SetTriggerDelay()); it is at least 40 ms.

3) The default value of the uEye API is 60 s. User-defined values can be set using the is_SetTimeout() function.

Function List

is_CaptureVideo()

Captures a live video.

is_FreezeVideo()

Captures an image and writes it to the active image memory.

is_ForceTrigger()

Simulates a trigger signal in hardware trigger mode.

is_HasVideoStarted()

Returns whether the capture process has been started or not.

is_IsVideoFinish()

Returns whether the capture process has been terminated or not.

is_SetSensorTestImage()

Enables test image output from sensor (all cameras).

is_StopLiveVideo()

Terminates the capturing process (live video or single frame).

Flowchart: Single Capture

Icon_Cursorhand2

Figure 134: Flowchart - Capturing a single frame (1 of 2)

Figure 134: Flowchart - Capturing a single frame (1 of 2)

Icon_Cursorhand2

Figure 135: Flowchart - Capturing a single frame (2 of 2)

Figure 135: Flowchart - Capturing a single frame (2 of 2)

Flowchart: Sequence Capture

Icon_Cursorhand2

Figure 136: Flowchart - Capturing a frame sequence (1 of 2)

Figure 136: Flowchart - Capturing a frame sequence (1 of 2)

Icon_Cursorhand2

Figure 137: Flowchart - Capturing a frame sequence (2 of 2)

Figure 137: Flowchart - Capturing a frame sequence (2 of 2)


Suggestion for improvement? Send us your short Feedback on this chapter. Thank you very much!


© 2010 IDS Imaging Development Systems GmbH
http://www.ids-imaging.com