halcon算子翻译——grab_data

名称

 grab_data - 从指定的图像采集设备同步抓取图像和预处理的图像数据。

用法

grab_data( : Image, Region, Contours : AcqHandle : Data)

描述

  算子grab_data通过由AcqHandle指定的图像采集设备来抓取图像和预处理的图像数据。 可以使用算子open_framegrabber和set_framegrabber_param来指定图像采集设备所需的操作模式以及合适的图像部分和其他特定于接口的设置。 根据图像采集设备的当前配置,可以根据图像(Image),区域(Region),XLD轮廓(Contours)和控制数据(Data)返回预处理的图像数据。

  为了中止抓取,如果特定的图像采集接口支持,可以使用的算子set_framegrabber_param来设置参数“do_abort_grab”。 请注意,作为多线程中并发使用的描述的异常(见下文),“do_abort_grab”也可以从另一个线程中使用。

注意

  对于多线程应用程序,所有图像采集算子(如open_framegrabber中列出的)都是自己的组,其中info_framegrabber,open_framegrabber,close_framegrabber和close_all_framegrabbers是独占执行的。

  grab_data与该组内外的所有非独占算子并行运行。

并行

●  多线程类型:可重入(与非独占算子并行运行)。
●  多线程范围:全局(可以从任何线程调用)。
●  不并行化处理。

参数

Image (output_object)   image(-array) → object (byte / real / uint2)
  获取的图像数据


Region (output_object)    region(-array) → object
  预处理的图像区域。


Contours (output_object)    xld_cont(-array) → object
  预处理的XLD轮廓。

AcqHandle (input_control)    framegrabber → (integer)
  要使用的采集设备的句柄。


Data (output_control)    string(-array) → (string / real / integer)
  预处理的控制数据。

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)

结果

如果图像采集设备是开启状态的并且支持grab_data图像采集,则算子grab_data返回值2(H_MSG_TRUE)。 否则会引发异常。

Possible Predecessors

open_framegrabber, grab_image_start, set_framegrabber_param

Possible Successors

grab_data_async, grab_image_start, grab_image, grab_image_async, set_framegrabber_param, close_framegrabber

See also

open_framegrabber, info_framegrabber, set_framegrabber_param

模块

Foundation

HDevelop例程

siliconsoftware_objectmodel3d.hdev     使用SiliconSoftware接口来生成3D对象模型
sick-scanningruler_objectmodel3d.hdev    使用SICK-ScanningRuler接口从SICK Ranger传感器数据生成3D对象模型
sick-3dcamera_objectmodel3d.hdev     使用SICK-3DCamera接口从SICK Ranger传感器数据生成3D对象模型
sick-3dcamera_components.hdev         使用SICK-3DCamera接口(不同的参数组)
sick-3dcamera_calibration.hdev            使用SICK-3DCamera接口(校准和校正)
shapedrive_objectmodel3d.hdev             使用ShapeDrive接口来生成3D对象模型
lps36_simple.hdev                      使用LPS36接口(简单)使用NxLib界面(基于表面的3D匹配)
lps36_objectmodel3d.hdev              使用LPS36接口从Leuze LPS36传感器数据生成3D对象模型
ensenso-nxlib_surface_based_3d_matching.hdev  使用NxLib接口(基于表面的3D匹配)
ensenso-nxlib_simple.hdev              使用NxLib接口(简单)
ensenso-nxlib_objectmodel3d.hdev           使用NxLib接口来生成3D对象模型
ensenso-nxlib_2cameras.hdev             使用NxLib接口(两个摄像头)
argos3d-p1xx_objectmodel3d.hdev           使用Argos3D-P1xx接口从Argos3D-P1xx传感器数据生成3D对象模型

原文地址:https://www.cnblogs.com/xhiong/p/grab_data.html