HALCON Reference Manual 10.0.2
Table of Contents / Image / Acquisition ClassesClassesClasses | | | Operators

grab_image_startgrab_image_startgrab_image_startGrabImageStartGrabImageStart (Operator)

Name

grab_image_startgrab_image_startgrab_image_startGrabImageStartGrabImageStart — Start an asynchronous grab from the specified image acquisition device.

Signature

grab_image_start( : : AcqHandle, MaxDelay : )

Herror grab_image_start(const Hlong AcqHandle, double MaxDelay)

Herror T_grab_image_start(const Htuple AcqHandle, const Htuple MaxDelay)

Herror grab_image_start(const HTuple& AcqHandle, const HTuple& MaxDelay)

void HFramegrabber::GrabImageStart(const HTuple& MaxDelay) const

void HOperatorSetX.GrabImageStart(
[in] VARIANT AcqHandle, [in] VARIANT MaxDelay)

void HFramegrabberX.GrabImageStart([in] double MaxDelay)

static void HOperatorSet.GrabImageStart(HTuple acqHandle, HTuple maxDelay)

void HFramegrabber.GrabImageStart(double maxDelay)

Description

The operator grab_image_startgrab_image_startgrab_image_startGrabImageStartGrabImageStart starts the asynchronous grab of an image via the image acquisition device specified by AcqHandleAcqHandleAcqHandleAcqHandleacqHandle. The desired operational mode of the image acquisition device as well as a suitable image part can be adjusted via the operator open_framegrabberopen_framegrabberopen_framegrabberOpenFramegrabberOpenFramegrabber. Additional interface-specific settings can be specified via set_framegrabber_paramset_framegrabber_paramset_framegrabber_paramSetFramegrabberParamSetFramegrabberParam.

The grab is finished via grab_image_asyncgrab_image_asyncgrab_image_asyncGrabImageAsyncGrabImageAsync or grab_data_asyncgrab_data_asyncgrab_data_asyncGrabDataAsyncGrabDataAsync. If one of those operators is called more than MaxDelayMaxDelayMaxDelayMaxDelaymaxDelay ms later, the asynchronously grabbed image is considered as too old and a new image is grabbed. If a negative value is assigned to MaxDelayMaxDelayMaxDelayMaxDelaymaxDelay this control mechanism is deactivated.

Please note that the operator grab_image_startgrab_image_startgrab_image_startGrabImageStartGrabImageStart makes sense only when used together with grab_image_asyncgrab_image_asyncgrab_image_asyncGrabImageAsyncGrabImageAsync or grab_data_asyncgrab_data_asyncgrab_data_asyncGrabDataAsyncGrabDataAsync. If you call the operators grab_imagegrab_imagegrab_imageGrabImageGrabImage or grab_datagrab_datagrab_dataGrabDataGrabData instead, the asynchronous grab started by grab_image_startgrab_image_startgrab_image_startGrabImageStartGrabImageStart is aborted and a new image is grabbed (and waited for).

Parallelization

Parameters

AcqHandleAcqHandleAcqHandleAcqHandleacqHandle (input_control)  framegrabber HFramegrabber, HTupleHFramegrabber, HTupleHFramegrabberX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong)

Handle of the acquisition device to be used.

MaxDelayMaxDelayMaxDelayMaxDelaymaxDelay (input_control)  number HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Maximum tolerated delay between the start of the asynchronous grab and the delivery of the image [ms].

Default value: -1.0

Suggested values: -1.0, 20.0, 33.3, 40.0, 66.6, 80.0, 99.9

Example (HDevelop)

* Select a suitable image acquisition interface name AcqName
open_framegrabber(AcqName,1,1,0,0,0,0,'default',-1,'default',-1.0, \
                  'default','default','default',-1,-1,AcqHandle)
grab_image(Image1,AcqHandle)
* Start next grab
grab_image_start(AcqHandle,-1.0)
* Process Image1 ...
* Finish asynchronous grab + start next grab
grab_image_async(Image2,AcqHandle,-1.0)
* Process Image2 ...
close_framegrabber(AcqHandle)

Example (C)

/* Select a suitable image acquisition interface name AcqName*/
open_framegrabber(AcqName,1,1,0,0,0,0,"default",-1,"default",-1.0,
                  "default","default","default",-1,-1,&AcqHandle) ;
grab_image(&Image1,AcqHandle) ;
/* Start next grab */
grab_image_start(AcqHandle,-1.0) ;
/* Process Image1... */
/* Finish asynchronous grab + start next grab */
grab_image_async(&Image2,AcqHandle,-1.0) ;
/* Process Image2... */
close_framegrabber(AcqHandle) ;

Example (HDevelop)

* Select a suitable image acquisition interface name AcqName
open_framegrabber(AcqName,1,1,0,0,0,0,'default',-1,'default',-1.0, \
                  'default','default','default',-1,-1,AcqHandle)
grab_image(Image1,AcqHandle)
* Start next grab
grab_image_start(AcqHandle,-1.0)
* Process Image1 ...
* Finish asynchronous grab + start next grab
grab_image_async(Image2,AcqHandle,-1.0)
* Process Image2 ...
close_framegrabber(AcqHandle)

Example (HDevelop)

* Select a suitable image acquisition interface name AcqName
open_framegrabber(AcqName,1,1,0,0,0,0,'default',-1,'default',-1.0, \
                  'default','default','default',-1,-1,AcqHandle)
grab_image(Image1,AcqHandle)
* Start next grab
grab_image_start(AcqHandle,-1.0)
* Process Image1 ...
* Finish asynchronous grab + start next grab
grab_image_async(Image2,AcqHandle,-1.0)
* Process Image2 ...
close_framegrabber(AcqHandle)

Example (HDevelop)

* Select a suitable image acquisition interface name AcqName
open_framegrabber(AcqName,1,1,0,0,0,0,'default',-1,'default',-1.0, \
                  'default','default','default',-1,-1,AcqHandle)
grab_image(Image1,AcqHandle)
* Start next grab
grab_image_start(AcqHandle,-1.0)
* Process Image1 ...
* Finish asynchronous grab + start next grab
grab_image_async(Image2,AcqHandle,-1.0)
* Process Image2 ...
close_framegrabber(AcqHandle)

Result

If the image acquisition device is open and supports asynchronous grabbing the operator grab_image_startgrab_image_startgrab_image_startGrabImageStartGrabImageStart returns the value 2 (H_MSG_TRUE). Otherwise an exception is raised.

Possible Predecessors

open_framegrabberopen_framegrabberopen_framegrabberOpenFramegrabberOpenFramegrabber, set_framegrabber_paramset_framegrabber_paramset_framegrabber_paramSetFramegrabberParamSetFramegrabberParam

Possible Successors

grab_image_asyncgrab_image_asyncgrab_image_asyncGrabImageAsyncGrabImageAsync, grab_data_asyncgrab_data_asyncgrab_data_asyncGrabDataAsyncGrabDataAsync, set_framegrabber_paramset_framegrabber_paramset_framegrabber_paramSetFramegrabberParamSetFramegrabberParam, close_framegrabberclose_framegrabberclose_framegrabberCloseFramegrabberCloseFramegrabber

See also

open_framegrabberopen_framegrabberopen_framegrabberOpenFramegrabberOpenFramegrabber, info_framegrabberinfo_framegrabberinfo_framegrabberInfoFramegrabberInfoFramegrabber, set_framegrabber_paramset_framegrabber_paramset_framegrabber_paramSetFramegrabberParamSetFramegrabberParam

Module

Foundation


Table of Contents / Image / Acquisition ClassesClassesClasses | | | Operators
HALCON Reference Manual 10.0.2 Copyright © 1996-2011 MVTec Software GmbH