Halcon学习之五:有关图像的定义域的函数

1、close_all_framegrabbers ( : : : ) 关闭所有图像采集设备。 2、close_framegrabber ( : : AcqHandle : ) 关闭Handle为AcqHandle的图像采集设备。 3、open_framegrabber ( : : Name, HorizontalResolution, VerticalResolution, ImageWidth, ImageHeight, StartRow, StartColumn, Field, BitsPerChannel, ColorSpace, Generic, ExternalTrigger, CameraType, Device, Port, LineIn : AcqHandle ) 打开图像采集设备 参数信息: Name:图像采集设备的名称 HorizontalResolution和VerticalResolution: 分别指预期的图像采集接口的水平分辨率和垂直 分辨率 ImageWidth和ImageHeight:指预期图像的宽度部分和高度部分。 StartRow和StartColumn:指显示预期图像的开始坐标 Field:预期图像是一半的图像或者是完整图像 BitsPerChannel:每像素比特数和图像通道 ColorSpace:输出的色彩格式的抓住图像{gray、raw、rgb、yuv、default} Generic:通用参数与设备细节部分的具体意义。 ExternalTrigger:是否有外部触发 CameraType:使用相机的类型 Device:图像获取设别连接到的设备 Port:图像获取设别连接到的端口 LineIn :相机输入的多路转接器 AcqHandle:图像获取设备的Handle

4、grab_image ( : Image : AcqHandle : ) 获取AcqHandle的图像采集设备的Image。 5、get_framegrabber_param ( : : AcqHandle, Param : Value ) 查询AcqHandle的图像采集设备的特殊参数 Param∈{name、port、revision、bits_per_channel, camera_type、color_space、device、? eld、 generic、external_trigger、grab_timeout、horizontal_resolution、image_available、 image_height、 image_width、 line_in、 start_column、 start_row、 volatile、 vertical_resolution、 continuous_grabbing、}

6、info_framegrabber ( : : Name, Query : Information, ValueList ) 查询指定的图像采集接口的信息。 Name为图像采集设备的名称 Query为需要查询的参数名称 Information是指输出的文本信息 ValueList为该图像采集接口的参数值。 Name∈{1394IIDC、 ABS、 BaumerFCAM、 BitFlow、 Crevis、 uEye、 DahengCAM、 DahengFG、 DFG-LC、 DirectFile、 DirectShow、 dPict、 DT315x、 DT3162、 eneo、 eXcite、 FALCON、 FlashBusMV、 FlashBusMX、 GigEVision、Ginga++、GingaDG、INSPECTA、TAG、INSPECTA5、iPORT、Leutron、LinX、LuCam、 MatrixVisionAcquire、 MILLite、 File、 mEnableIII、 mEnableIV、 mEnableVisualApplets、 MultiCam、 Opteon、 p3i2、 p3i4、 PixeLINK、 PX、 PXC、 PXD、 PXR、 pylon、 RangerC、 RangerE、 SaperaLT、 Sentech、 SonyXCI、SonyXCI-2、SVCam-GigE、TWAIN、VRmUsbCam} Query∈{defaults、 general、 info_boards、 parameters、 eld、 ? generic、 parameters_readonly、 parameters_writeonly、vertical_resolution、port、bits_per_channel、camera_type、 color_space、 device、 external_trigger、 eld、 ? generic、 horizontal_resolution、 image_height、 image_width、start_row、start_column、revision}

7、grab_image_async ( : Image : AcqHandle, MaxDelay : ) 获取AcqHandle的图像采集设备的Image 当调用grab_image_async 或者grab_data_async时,抓拍下一个图像就结束了。

[c-sharp] view plaincopyprint?// Select a suitable image acquisition interface name AcqName open_framegrabber(AcqName,1,1,0,0,0,0,’default’,-1,’default’,-1.0,’default’,’default’,’def ault’,-1,-1,AcqHandle) // Grab image + start next grab grab_image_async(Image1,AcqHandle,-1.0) // Process Image1 ... // Finish asynchronous grab + start next grab grab_image_async(Image2,AcqHandle,-1.0) // Process Image2 ... close_framegrabber(AcqHandle) // Select a suitable image acquisition interface name AcqName open_framegrabber(AcqName,1,1,0,0,0,0,’default’,-1,’default’,-1.0,’default’,’default’,’def ault’,-1,-1,AcqHandle) // Grab image + start next grab grab_image_async(Image1,AcqHandle,-1.0) // Process Image1 ... // Finish asynchronous grab + start next grab grab_image_async(Image2,AcqHandle,-1.0) // Process Image2 ... close_framegrabber(AcqHandle)

8、grab_image_start ( : : AcqHandle, MaxDelay : ) 开始抓拍 只有当和grab_image_async or grab_data_async一起使用时,grab_image_start 才会起作用。

[c-sharp:showcolumns] view plaincopyprint?·········10········20········30······· ·40········50········60········70········80····· · · · · · · · 90· · · · 100· · · · · · · 110· · · · · · · 120· · · · · · · 130· · · · · · · 140· · · · · · · 150 // 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) // 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)

9、get_framegrabber_lut ( : : AcqHandle : ImageRed, ImageGreen, ImageBlue ) 查询AcqHandle的图像采集设备的look-up table 注意:该运算子不能支持所有的图像采集设备

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

获取AcqHandle的图像采集设备获得的Image、 预处理Region和预处理XLD轮廓Contours和预处理控制 数据Data。 注意:该运算子不能支持所有的图像采集设备 11、grab_data_async ( : Image, Region, Contours : AcqHandle,MaxDelay: Data ) 获取AcqHandle的图像采集设备的Image、预处理Region和预处理XLD轮廓Contours和预处理控制 数据Data。(需要特殊图像采集数据) 12、set_framegrabber_lut ( : : AcqHandle, ImageRed, ImageGreen,ImageBlue : ) 设置AcqHandle的图像采集设备的look-up table 13、set_framegrabber_param ( : : AcqHandle, Param, Value : ) 设置AcqHandle的图像采集设备的特殊参数

相关代码:

[c-sharp:firstline[0]] view plaincopyprint?close_all_framegrabbers () open_framegrabber ('DahengCAM', 1, 1, -1, -1, 0, 0, 'default', -1, 'rgb', -1, 'false', 'default', 'default', -1, -1, AcqHandle) grab_image (Image, AcqHandle) grab_image_async (Image2, AcqHandle, -1)

get_framegrabber_param (AcqHandle, 'image_width', Value) info_framegrabber ('DirectFile', 'info_boards', Information, ValueList) close_all_framegrabbers () open_framegrabber ('DahengCAM', 1, 1, -1, -1, 0, 0, 'default', -1, 'rgb', -1, 'false', 'default', 'default', -1, -1, AcqHandle) grab_image (Image, AcqHandle) grab_image_async (Image2, AcqHandle, -1) get_framegrabber_param (AcqHandle, 'image_width', Value) info_framegrabber ('DirectFile', 'info_boards', Information, ValueList)

可以通过调试以上代码,并且查看相关变量的变化,更深入的了解函数的意义。 注意:在本段代码中,使用的是大恒的HV1303的工业摄像机,如果是使用一般的摄像头来采集数据 的话,Name值可以设置为Direct_show。


相关文档

Halcon学习之四:有关图像生成的函数
Halcon学习之三:有关图像通道的函数
Halcon学习之七:改变图像的现实方式和大小
halcon函数使用
HALCON函数
Halcon学习之一:查询图像参数
Halcon学习之二:摄像头获取图像和相关参数
Halcon学习之边缘检测函数
Halcon学习之两幅图像处理
HALCON算子函数整理10 Matching-3D
电脑版