区别

1.

image
百度翻译:将相机配置更改为自由运行连续采集。要在打开相机连接时自动应用此配置,请在调用“ICamera.Open()”之前将其添加到“ICamera.cameraOpen”事件中。

2.

image
百度翻译:使用特定的抓取策略和特定的抓取循环类型开始抓取图像

  • 如果在上一次抓取会话中使用了抓取循环线程,则抓取循环线程上下文将与调用方的上下文连接
  • 相机对象的抓取特定参数已锁定,例如“PLCameraInstance.MaxNumBuffer”。最后这个参数也许会用上
  • ………
  • 如果grablooptype设置为ProvidedByStreamGrabber,则会启动一个额外的grab循环线程,该线程在循环中调用“IStreamGrabber.RetrieveResult(int,TimeoutHandling)”。好像有用

Preconditions:The grabbing is stopped!也许这就是报错的原因
……
百度翻译:图像由注册的图像事件处理程序处理。图片处理需要用事件!

3.

image
百度翻译:……此方法可与配置AcquireSingleFrame“configuration.AcquireSingleFrame(object,EventArgs)”一起使用……
如果要最大化帧速率,建议使用软件触发器捕获单个图像。
这是因为与单帧采集相比,每个抓取图像的开销减少了。
可以使用“IStreamGrabber.Start(GrabStrategy,GrapLoop)”启动抓取。
使用“ICamera.WaitForFrameTriggerReady(int,TimeoutHandling)、ICamera.ExecuteSoftwareTrigger()”和“IStreamGrabber.RetrieveResult(int,TimeoutHandling)”方法而不是使用“IStreamGrabber.Grabbone(int)”捕获图像。可以使用IStreamGrabber停止抓取。完成后停止()。
Precondition:The grabbing is stopped!这就是报错的原因吧

4.

image
百度翻译:根据抓取策略检索抓取结果。如果抓取结果尚不可用,则等待。那用这个去接收连续抓取的结果应该是可以
……必须检查由抓取结果表示的抓取是否成功。……

Postconditions:If no grab result has been retrieced, an empty grab result is returned in the grabResult parameter.也就是在grabbing这个函数里根本没有检索到数据

橘子Jane
原文地址:https://www.cnblogs.com/Jane-share/p/15733420.html