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.
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. |
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()). |
|
Overview of Image Capture Modes
Image capture |
Trigger |
Function calls |
Allowed flash modes |
Frame rate |
|
---|---|---|---|---|---|
Standard |
Global Start |
||||
|
|
|
|
|
|
Continuous |
Off |
(OFF) |
X |
|
Freely selectable |
Software |
(SOFTWARE) |
X |
X |
Depending on exposure time and trigger delay |
|
Hardware |
(e.g. HI_LO) |
X |
X |
Depending on exposure time and trigger delay |
|
Freerun sync. |
(e.g. HI_LO_SYNC) |
X |
|
Freely selectable |
|
|
|
|
|
|
|
Single frame |
Off |
(OFF) |
|
|
Freely selectable |
Software |
(SOFTWARE) |
X |
X |
Depending on exposure time and trigger delay |
|
Hardware |
(e.g. HI_LO) |
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 |
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
Captures a live video. |
|
Captures an image and writes it to the active image memory. |
|
Simulates a trigger signal in hardware trigger mode. |
|
Returns whether the capture process has been started or not. |
|
Returns whether the capture process has been terminated or not. |
|
Enables test image output from sensor (all cameras). |
|
Terminates the capturing process (live video or single frame). |
![]() Figure 134: Flowchart - Capturing a single frame (1 of 2) |
![]() Figure 135: Flowchart - Capturing a single frame (2 of 2) |
![]() Figure 136: Flowchart - Capturing a frame sequence (1 of 2) |
![]() Figure 137: Flowchart - Capturing a frame sequence (2 of 2) |