【问题标题】:Record raw data on Labview在 Labview 上记录原始数据
【发布时间】:2015-05-24 16:31:23
【问题描述】:

我在 Labview 中有这个 VI,它可以从网络摄像头 (Logitech C300) 流式传输视频,并将每个图像的彩色层处理为数组。我正在尝试使用 Logitech 的程序 (http://web.archive.org/web/20100830135714/http://www.quickcamteam.net/documentation/how-to/how-to-enable-raw-streaming-on-logitech-webcams) 和 Vision Acquisition 工具从网络摄像头获取原始 Bayer 数据,但我只能获得与常规捕获一样多的数据,而不是四倍。

基本上,我得到 1280x1024 24 位像素,而我想要 1280*1024 32 位或 2560*2048 8 位像素。

有没有人有这方面的经验并且知道 Labview 处理相机原始输出的方法,或者如何从相机实际记录原始文件?

谢谢!

【问题讨论】:

  • 您使用哪些相机采集模式进行原始和常规采集?具体来说,您提供的链接有一个用于计算样本图像大小的表格。
  • 我正在使用带内联处理的连续采集,并从视觉采集模块中获取 24 位图像,而不是预期的 32 位
  • LabVIEW 通常使用自己的驱动程序进行摄像头采集。您是否已将采集配置为使用 LabVIEW 的原始模式?如果你能发布你的代码会有所帮助。

标签: labview logitech


【解决方案1】:

您启用的驱动程序标志只是将原始像素值 (8/10 bpp) 打包到 24 位值的最低有效位中。假设使用 8bpp 模式,可以从蓝色平面中提取原始值,如下例所示。然后可以对它进行 debayered 以获得例如 RGB 值。

除非您可以改进固件中的 debayer 算法,或者有非常特殊的需求,否则这不是很有用。通常,至少可以通过启用原始模式来减少传输的数据量——这里不是这种情况。

以上假设原始视频模式没有被 LabVIEW IMAQdx 驱动程序覆盖。如果是这种情况,您可以通过属性节点从 LabVIEW 启用原始模式。这需要手动配置采集,因为 express VI 的可配置性是有限的。使用 EnumStrings 属性获取所有可能的属性,然后查看是否有类似在图表禁用结构之外指定的属性(这是来自不同的相机)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-12
    • 2019-01-04
    • 2014-05-02
    • 2018-07-28
    • 1970-01-01
    • 2014-05-22
    • 2020-03-05
    相关资源
    最近更新 更多