grab_dataT_grab_dataGrabDataGrabDatagrab_data (Operator)
Name
grab_dataT_grab_dataGrabDataGrabDatagrab_data
— Synchronous grab of images and preprocessed image data from the specified
image acquisition device.
Signature
void GrabData(HObject* Image, HObject* Region, HObject* Contours, const HTuple& AcqHandle, HTuple* Data)
HRegion HImage::GrabData(HXLDCont* Contours, const HFramegrabber& AcqHandle, HTuple* Data)
HRegion HImage::GrabData(HXLDCont* Contours, const HFramegrabber& AcqHandle, HString* Data)
HImage HRegion::GrabData(HXLDCont* Contours, const HFramegrabber& AcqHandle, HTuple* Data)
HImage HRegion::GrabData(HXLDCont* Contours, const HFramegrabber& AcqHandle, HString* Data)
HImage HFramegrabber::GrabData(HRegion* Region, HXLDCont* Contours, HTuple* Data) const
HImage HFramegrabber::GrabData(HRegion* Region, HXLDCont* Contours, HString* Data) const
static void HOperatorSet.GrabData(out HObject image, out HObject region, out HObject contours, HTuple acqHandle, out HTuple data)
HRegion HImage.GrabData(out HXLDCont contours, HFramegrabber acqHandle, out HTuple data)
HRegion HImage.GrabData(out HXLDCont contours, HFramegrabber acqHandle, out string data)
HImage HRegion.GrabData(out HXLDCont contours, HFramegrabber acqHandle, out HTuple data)
HImage HRegion.GrabData(out HXLDCont contours, HFramegrabber acqHandle, out string data)
HImage HFramegrabber.GrabData(out HRegion region, out HXLDCont contours, out HTuple data)
HImage HFramegrabber.GrabData(out HRegion region, out HXLDCont contours, out string data)
def grab_data(acq_handle: HHandle) -> Tuple[HObject, HObject, HObject, Sequence[HTupleElementType]]
def grab_data_s(acq_handle: HHandle) -> Tuple[HObject, HObject, HObject, HTupleElementType]
Description
The operator grab_datagrab_dataGrabDataGrabDataGrabDatagrab_data
grabs images and preprocessed image data via
the image acquisition device specified by AcqHandleAcqHandleAcqHandleAcqHandleacqHandleacq_handle
. The desired
operational mode of the image acquisition device as well as a suitable
image part and additional interface-specific settings can be specified
using the operators open_framegrabberopen_framegrabberOpenFramegrabberOpenFramegrabberOpenFramegrabberopen_framegrabber
and
set_framegrabber_paramset_framegrabber_paramSetFramegrabberParamSetFramegrabberParamSetFramegrabberParamset_framegrabber_param
. Depending on the current
configuration of the image acquisition device, the preprocessed
image data can be returned in terms of images (ImageImageImageImageimageimage
),
regions (RegionRegionRegionRegionregionregion
), XLD contours (ContoursContoursContoursContourscontourscontours
), and
control data (DataDataDataDatadatadata
).
To abort the grab, the operator set_framegrabber_paramset_framegrabber_paramSetFramegrabberParamSetFramegrabberParamSetFramegrabberParamset_framegrabber_param
with the
parameter 'do_abort_grab'
can be used if the specific image
acquisition interface supports it. Note that as an exception from
the description of the concurrent usage in multiple threads (see below)
'do_abort_grab'
can also be used from another thread.
Attention
For a multithreaded application all image acquisition operators
(as listed in open_framegrabberopen_framegrabberOpenFramegrabberOpenFramegrabberOpenFramegrabberopen_framegrabber
) are
an own group in which info_framegrabberinfo_framegrabberInfoFramegrabberInfoFramegrabberInfoFramegrabberinfo_framegrabber
, open_framegrabberopen_framegrabberOpenFramegrabberOpenFramegrabberOpenFramegrabberopen_framegrabber
,
close_framegrabberclose_framegrabberCloseFramegrabberCloseFramegrabberCloseFramegrabberclose_framegrabber
and close_all_framegrabbersclose_all_framegrabbersCloseAllFramegrabbersCloseAllFramegrabbersCloseAllFramegrabbersclose_all_framegrabbers
are
executed exclusively.
grab_datagrab_dataGrabDataGrabDataGrabDatagrab_data
runs in parallel with all non-exclusive
operators inside and outside of this group.
Execution Information
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
Parameters
ImageImageImageImageimageimage
(output_object) image(-array) →
objectHImageHObjectHImageHobject * (byte / real / uint2)
Grabbed image data.
RegionRegionRegionRegionregionregion
(output_object) region(-array) →
objectHRegionHObjectHRegionHobject *
Preprocessed image regions.
ContoursContoursContoursContourscontourscontours
(output_object) xld_cont(-array) →
objectHXLDContHObjectHXLDContHobject *
Preprocessed XLD contours.
AcqHandleAcqHandleAcqHandleAcqHandleacqHandleacq_handle
(input_control) framegrabber →
HFramegrabber, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Handle of the acquisition device to be used.
DataDataDataDatadatadata
(output_control) string(-array) →
HTupleSequence[HTupleElementType]HTupleHtuple (string / real / integer / handle) (string / double / int / long / HHandle) (HString / double / Hlong / HHandle) (char* / double / Hlong / handle)
Preprocessed control data.
Example (HDevelop)
* Select a suitable image acquisition interface name AcqName
info_framegrabber(AcqName,'port',Information,Values)
* Open image acquisition device using the default settings, see
* documentation of the actually used interface for more details
open_framegrabber(AcqName,1,1,0,0,0,0,'default',-1,'default',-1.0, \
'default','default','default',-1,-1,AcqHandle)
* Grab and segment image
grab_data (Image, Region, Contours, AcqHandle, Data)
* Process Region...
close_framegrabber(AcqHandle)
Result
If the image acquisition device is open and supports the image
acquisition via grab_datagrab_dataGrabDataGrabDataGrabDatagrab_data
, the operator grab_datagrab_dataGrabDataGrabDataGrabDatagrab_data
returns the value 2 (H_MSG_TRUE). Otherwise an exception is raised.
Possible Predecessors
open_framegrabberopen_framegrabberOpenFramegrabberOpenFramegrabberOpenFramegrabberopen_framegrabber
,
grab_image_startgrab_image_startGrabImageStartGrabImageStartGrabImageStartgrab_image_start
,
set_framegrabber_paramset_framegrabber_paramSetFramegrabberParamSetFramegrabberParamSetFramegrabberParamset_framegrabber_param
Possible Successors
grab_data_asyncgrab_data_asyncGrabDataAsyncGrabDataAsyncGrabDataAsyncgrab_data_async
,
grab_image_startgrab_image_startGrabImageStartGrabImageStartGrabImageStartgrab_image_start
,
grab_imagegrab_imageGrabImageGrabImageGrabImagegrab_image
,
grab_image_asyncgrab_image_asyncGrabImageAsyncGrabImageAsyncGrabImageAsyncgrab_image_async
,
set_framegrabber_paramset_framegrabber_paramSetFramegrabberParamSetFramegrabberParamSetFramegrabberParamset_framegrabber_param
,
close_framegrabberclose_framegrabberCloseFramegrabberCloseFramegrabberCloseFramegrabberclose_framegrabber
See also
open_framegrabberopen_framegrabberOpenFramegrabberOpenFramegrabberOpenFramegrabberopen_framegrabber
,
info_framegrabberinfo_framegrabberInfoFramegrabberInfoFramegrabberInfoFramegrabberinfo_framegrabber
,
set_framegrabber_paramset_framegrabber_paramSetFramegrabberParamSetFramegrabberParamSetFramegrabberParamset_framegrabber_param
Module
Foundation