码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • GIGE 协议摘录 —— 照相机的标准特征列表(五)


    在这里插入图片描述

    系列文章目录


    GIGE 学习笔记
    GIGE 协议摘录 —— 设备发现(一)
    GIGE 协议摘录 —— GVCP 协议(二)
    GIGE 协议摘录 —— GVSP 协议(三)
    GIGE 协议摘录 —— 引导寄存器(四)
    GIGE 协议摘录 —— 照相机的标准特征列表(五)
    GIGE 协议 2.0 中文版


    文章目录

    • 系列文章目录
    • 1、介绍
    • 2、GenICam™标准
    • 3、互操作性水平
    • 4、用例
      • 用例 #1:连续采集和显示
      • 用例 #2 最简单的 GigE Vision 相机
    • 5、XML 描述文件强制性特征
    • 6、宽度和高度特征
    • 7、像素格式特征
    • 8、PayloadSize 特征
    • 9、GevSCPSPacketSize
    • 10、采集模式
    • 11、采集启动
    • 12、采集停止


    1、介绍

        GigE 视觉规范依赖于 GenICamTM 规范(www.genicam.org)来描述该相机支持的特性。此描述采用 XML 设备描述文件的形式,该文件涉及由 GenICam 规范的 GenApi 模块定义的语法。

    在这里插入图片描述

        此 XML 文件由应用程序软件检索和解释,以枚举该设备支持的特性。XML 设备描述文件提供了设备特性和支持它的设备寄存器之间的映射。

    2、GenICam™标准

        GenICam 是欧洲机器视觉协会(EMVA,www.emva.org)的标准和商标。

        GenICam 标准提供了高水平的动态,因为特征映射可以为特定的相机定制。这与 GigE 视觉引导寄存器非常不同,它强制为所有相机提供一个独特的映射。这种活力提供了一个优势,相机的特点,可以确定和描述的相机制造商。因此,这些特性的命名可以遵循制造商的命名约定。

        这种灵活性的缺点是,应用程序软件无法识别特定特性名称的含义。解决这一限制的一种方法是提供一组标准的功能名称,用于各种相机模型。这样,应用程序软件就能意识到与一个给定的特性名称相关联的含义。这些标准特征名称的定义程度可能限制相机制造商实现给定功能的自由。因此,应注意不要过度指定所有的特性。

    GenICam标准(一)
    GenICam标准(二)
    GenICam标准(三)
    GenICam标准(四)
    GenICam标准(五)
    GenICam标准(六)

    GenIcam标准介绍


    GenIcam标准(一)
    GenIcam标准(二)
    GenIcam标准(三)
    GenIcam标准(四)
    GenIcam标准(五)
    GenIcam标准(六)

    3、互操作性水平

        一个重要的考虑因素是 GigE 视觉摄像机和应用软件之间的互操作性水平。

        当图形用户界面(GUI)简单地显示特性列表时,就实现了最简单的互操作性级别。这通常是通过一个相机配置程序来实现的。在本例中,是用户来查看并解释每个特性的含义。可以使用在线帮助(如工具提示)来解释该功能的含义。

        互操作性级别的一个问题是与特性相关联的特征的数量:

    1. 名称
    2. 表示(整数、浮点数、布尔值、枚举、…)
    3. 计量单位
    4. 行为

    4、用例

    用例 #1:连续采集和显示

        相机出厂时就可以实时显示合适的图像,故需执行如下步骤:

    1. 设置相机使用 GVCP
    2. 使用 GVSP 寄存器创建一个流通道
    3. 根据 XML 相机描述文件重新获取图像特征
    4. 在 PC 上分配图像内存
    5. 通过流通道启动连续采集。

    步骤 1 和步骤 2 需要使用 GigE 视觉引导寄存器。

    步骤 3 和步骤 5 要求使用照相机的 XML 描述文件中提供的标准特性。

    步骤 4 不需要与照相机进行任何交互。

    用例 #2 最简单的 GigE Vision 相机

        对于这个测试用例,我们考虑可能使用最简单的照相机。这基本上相当于一个 RS-170 模拟相机。这种类型的相机不提供任何以下功能:触发控制,曝光控制,模拟增益控制等。它只是一个基本的相机,连续获取其标称帧率。

    5、XML 描述文件强制性特征

        在控制摄像机和实例化流通道所需的引导寄存器之外,所有 GigE 视觉摄像机必须在其 XML 描述文件中支持下表中提供的功能。

    在这里插入图片描述
    在这里插入图片描述

    6、宽度和高度特征

    Width and Height Features

        宽度和高度表示从相机中输出来的图像的尺寸。这基本上是从传感器中提取的感兴趣区域(AOI)的尺寸。图 29-1 显示了用于描述 AOI 的各种特性。其他特征(高Max、宽Max、OffsetY、OffsetX)被推荐使用的名称,如 “GenICam标准功能命名约定” 中定义的那样。但是只有宽度和高度是 GigE 视觉中强制要求的。

    在这里插入图片描述

    7、像素格式特征

    PixelFormat Feature

        像素格式提供了流通道上的像素输出类型,如 GVSP 中的定义(见第240页)。

    8、PayloadSize 特征

    PayloadSize Feature

        表示在流通道上的有效负荷数据包中的一个块 ID,可发至其上的最大字节数。主要用于提供一种简易方法来重新获取为转移到图像流通道上的数据分配的内存大小。在数据大小可变情况下,最大可能的值(即最坏情况)必须由 PayloadSize 提供。在一个相机上,当没有附加信息添加到图像时,该值一般为图像宽度 x 高度 x 一个像素所占字节数。

    9、GevSCPSPacketSize

    GevSCPSPacketSize

        表示对数据进行流操作时,该特征有助于程序确定相机支持的数据包大小的值。这本质上反映了 SCPS 寄存器的 packet_size 字段,但在搜索最优的数据包大小时,还提供了关于该值范围的附加信息(最小、最大及增量值)。建议使用一个测试数据包来确认整个系统所支持的请求数据包大小。该特征仅采用区间 [46 ~ 65535] 的整数值,一个具体的相机的范围相比则可能小些。

    10、采集模式

    AcquisitionMode Feature

        用于在图像采集期间确定图像序列。这一般涉及在启动采集后所捕获的图像数,它能表示无中断采集或一个预定义帧数量的采集。注意这与流通道是否打开无关。该模式特征必须可读,且在其枚举表中,当该模式提供多个值时,需设置为可写。默认采集模式必须有 “Continuous” 状态。当图像停止采集后,其模式值才被改变。默认模式下,图像采集由 “AcquistionStar” 命令(启动采集)初始化,然后持续采集直到 “AcquistionStop” 命令(停止采集)被执行。

    11、采集启动

    AcquisitionStart Feature

        该命令使用采集模式指定的模式开始图像采集。在图像采集被初始化后,“AcquistionStop” 命令执行前,重新发送一个 “AcquistionStart” 命令不能影响图像采集状态。因此,相机必须一直保持采集活动状态。

    12、采集停止

    AcquisitionStop Feature

        当前帧完成后该命令可停止图像采集。

       
     

    ☆

  • 相关阅读:
    AI插件开发-文档模型架构-文档对象-容器对象-Art对象-迭代和选择-XML-illustrator插件
    rknn转换后精度差异很大,失真算子自纠
    Improved Baselines with Momentum Contrastive Learning
    基于IIC协议的4脚OLED模块的单片机驱动控制(含驱动程序)
    (01)ORB-SLAM2源码无死角解析-(57) 闭环线程→计算Sim3:理论推导(1)求解R,使用四元数
    spring cloud gateway Route配置
    linux操作系统虚拟机的环境配置
    T225362 《山茶文具店》
    使用sql profile 稳定执行计划的案例
    运动耳机什么牌子的好,推荐几款排行靠前的耳机
  • 原文地址:https://blog.csdn.net/Liuqz2009/article/details/139620346
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号