将帧率提高到30 fps,并从AVT GigE相机获得bayerr8
Increasing frame rate upto 30 fps and getting bayerrg8 from AVT GigE camera
我使用ubuntu,我有AVT GigEvision相机。该相机的linux环境SDK可以从[Linux_SDK库链接]http://www.alliedvisiontec.com/us/products/legacy.html下载。我能够以每秒1帧的速度获取图像,因为这是一些默认值,但我如何开始每秒接收更多帧?我不确定它是否输出bayerr8格式或单声道8格式,目前我可以看到一个黑白图片。我不确定来自相机的数据是bayer8并且驱动程序自动将其转换为mono8还是来自相机的数据是mono8并且我需要将其转换为bayer8。此外,如果是的话,我无法找到任何特定的函数从mono8转换为bayerr8。
设置帧率
要在GigE Vision摄像机上更改帧速率,需要设置名为AcquisitionFrameRate
的参数。这是标准参数,所有GigE Vision相机都必须支持。在AVS SDK中,你可以这样做:
err = PvAttrFloat32Set(handle, "AcquisitionFrameRate", 30.0);
请确保您检查相机支持的帧率与PvAttrRangeFloat32()
。
设置像素格式
枚举特性PixelFormat
用于控制摄像机的输出像素格式。有4种不同的8位拜耳格式:BayerBG8, BayerGB8, BayerGR8和BayerRG8。你的相机可能只支持其中一种,或者根本不支持。使用PvAttrRangeEnum(handle, "PixelFormat", ...)
获取支持的像素格式列表。然后你可以用:
err = PvAttrEnumSet(handle, "PixelFormat", "BayerBG8");
相机不太可能以一种格式传输像素,然后将其转换为另一种格式,因为这将违反GigE Vision标准。大多数情况下,您的像素格式默认设置为Mono8
。
使用GigE Vision Camera四处走动
为了了解你可以设置的其他参数名称以及它们是如何工作的,你需要阅读相机的文档,如果你有的话。否则,您可以从相机本身学习,使用PvAttrList()
调用获得支持的功能列表,然后使用GenICam标准功能命名约定文档描述特定功能的预期行为。