有可能忽略掉了包/帧错误在收购从GigE视觉相机?

27日视图(30天)
我用GigE愿景兼容摄像头的图像采集工具箱GigE视觉适配器。
偶尔,我得到一个错误丢失数据包/框架和相关图像采集过程停止:
错误:gige:块/ 24帧被删除,因为失去的包不能怨恨。有几个可能的原因,数据包被丢失。看到故障诊断信息的“配置GigE视觉设备”部分图像采集工具箱文档。
有办法抓住这个错误,或者有办法忽略丢失的数据包/帧并继续收购吗?

接受的答案

MathWorks支万博1manbetx持团队
编辑:MathWorks支万博1manbetx持团队 2022年6月2日
注意:这个错误可能发生如果以太网适配器,相机网络连接,和相机GigE流参数(PacketSize和PacketDelay)没有配置为最佳操作。有关更多细节,请参考:
丢失的数据包/帧错误发生在图像采集引擎线程和try / catch不能抓。
一个选择,这取决于应用程序,可能是有用的是使用以下方法禁用错误出现了帧时,继续收购:
vid = videoinput (“gige”,1)
从视频。IgnoreDroppedFrames =“上”;
注意:要得到的总数下降帧可以阅读NumDroppedFrames财产。
vid.NumDroppedFrames
  • 在MATLAB R2020b和之前的版本中,您可以使用以下imaqmex命令之前创建videoinput对象:
imaqmex (“功能”,“-gigeDisablePacketResend”,真正的);
注:“gigeDisablePacketResend”选项将重置imaqreset命令。
框架允许下降的时候,知道有多少帧,数据帧相关收购期间一直在下降。getdata返回的BlockID字段元数据对应于设定的帧数相机。一个简单的方法来可视化这是阴谋获得帧的BlockID和BlockID差异,如以下代码片段:
[img、ts、元数据]= getdata(请看vid.FramesAvailable);
blockIDs = [metadata.BlockID];
情节(blockIDs“。”)
情节(diff (blockIDs),“- x”)
另一个选择的相机GenTL (GenICam传输层)生产商提供的供应商,是使用GenTL适配器(“GenICam接口”支持包/插件)而不是GigE适配器从摄像机获取图像。万博1manbetx这种方法可以利用高性能以太网数据包的过滤驱动程序提供的供应商,相机和直接沟通,包括了包事件,将由制造商的GenTL生产国。

更多的答案(0)