0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【虹科】如何借助PTP来做高精度相机同步?

虹科智能感知 2021-10-28 18:11 次阅读
5c8579fc-3769-11ec-aa30-dac502259ad0.jpg 在某些应用场合中,如果需要处理来自多台相机的图像时,则图像记录的精确时间或准确的先后顺序对后续处理至关重要。若相机能够提供时间戳,则可为不同的图像数据建立时间基准。然而,相机的时间基准要能够精确匹配,这一点至关重要。通过使用“精确时间协议”(PTP),HK IDS GigE Vision相机(固件版本2.2或以上)能够轻松实现同步。

借助精确时间协议(PTP)同步
HK IDSGigEVision相机

精确时间协议(PTP)是一种时间同步标准(IEEE1588),它使通过网络连接的设备实现时间同步。支持此标准的相机可在特定的周期内与主时钟交换同步信息利用各自发送和接收时间中的时间戳信息,相机内部的计数器可实现精确地校准和同步。所有固件版本为2.2及以上的HK IDSGigEVision相机都可与PTP兼容!IEEE1588时间戳是以1970年1月1日0时0分为计时起点,支持1纳秒(1 GHz)的时间分辨率。然而,由于延迟和信号运行时的不准确性,联网设备的时间同步精度达微秒级。

PTP应用案例

PTP作为一种基础协议,通过为图像数据提供时间基准,为各种应用奠定基础。视应用要求及网络基础设施的复杂性的不同,PTP可以通过不同的方式来实现。

1. 相对时间戳同步

在本案例中,所有相机都在同一个网络。其中一台相机为主服务器,其余相机为从服务器。所有从相机的时间戳与主相机同步。相机既不提供绝对时间戳(实时),同时在无其他操作的情况下,也无法实现同步触发。5cc58542-3769-11ec-aa30-dac502259ad0.jpg 

优势:

  • 在该应用场合中,相对时间戳确定所有相机图像记录的时间分配。此外,相对时间戳还能确定哪一张图像为第一张,以及不同相机的图像时差大小。

  • 无需额外的操作和成本,即可为特定的网络基础架构生成相对时间戳。

2. 利用绝对时间同步时间戳

本案例中,联网相机与外部主时钟同步。该PTP主时钟可以是支持“硬件时间戳”的网卡——若无硬件支持,同步精度将显著降低。除必要的硬件外,还需要支持PTP的软件。5d1ac160-3769-11ec-aa30-dac502259ad0.jpg


优势:

  • 具备全局(实时)时间戳的图像内容可跨越当前的应用限制,与任何其他使用实时时间基准的信息相关联。

  • 对于其它使用全局时间基准的应用场合或评估,图像内容可以重用。

使用PTP:“相对同步”

硬件设置

两台不同的固件版本为2.2(支持PTP)的HK IDS GigE Vision相机(GV-526xFA-C和GV-504xCP-M)连至同一网络交换机。一台额外的主机PC,仅用于控制和配置相机,不涉及相机的PTP同步。

软件设置

可通过“PtpControl”下的相机功能节点图查找所有PTP配置功能。只有固件需为2.2或以上版本的相机才能使用这些功能。我们在主机PC上安装配套软件,来设置PTP同步。

将一台相机配置为PTP主时钟

GV-526xFA-C相机应设置为PTP主时钟。在软件中打开相机,并将“PtpEnable”设为“True”,启用PTP。另外,将“PtpSlaveOnly”设为“False”为相机赋予“主时钟”角色。

# Configure master cameraPtpEnable = TruePtpSlaveOnly=False

将另一台相机配置为PTP从时钟

GV-504xCP-M相机应设为PTP从时钟。同理,将“PtpEnable”设为“True”以启用PTP。此时,这台相机仅作为从时钟使用。将“PtpSlaveOnly”仍设为“True”。

# Configure slave cameraPtpEnable = TruePtpSlaveOnly = True

创建主从等级

在完成主从时钟配置后,主-从等级将自动创建。对于主时钟相机,可通过“PtpStatus”由“Listening”变成“Master”来确定。对于从时钟相机,可通过“PtpStatus”先由“Listening”变为“Uncalibrated”,并在与主时钟相机同步后变为“Slave”来确定。在通过相机的新PTP功能完成主从等级创建后,“相对同步”也随之完成。

启用时间戳

如果您希望对图像数据使用已同步相机生成的时间戳,则必须将时间戳作为元数据,启用元数据(及块数据)传输。
首先,将“ChunkModeActive”设为“True”,以通过图像缓冲区启用块数据传输。然后,通过“ChunkSelector”选择“Timestamp”,并通过“ChunkEnable”开关启用时间戳。

# activate chunk data creationChunkModeActive = True # enable "ChunkTimestamp"ChunkSelector = TimestampChunkEnable = True这时,相机所采集的每一张图像将具备相应的时间戳,并借助图像缓冲区(通过块数据)传输至主机PC。这样,块数据及时间戳可通过任何视觉标准软件进行读取。

图像采集

如果应用中需要对带时间戳的图像数据进行处理,则图像的记录时间和相机的触发至关重要。这种情况取决于来自多台相机的图像是否需要完全相同的采集时间(同步图像采集)以及时间关联偏差(时间戳抖动)有多大。根据应用要求,须选择适合相机的触发模式。在做出这一选择时,要考虑的决定性的因素不仅包括不同软件和硬件信号模式的精度,也包括部署和使用所需操作和成本。为检查先前配置的“相对同步”,我们使用每秒脉冲数(PPS)信号来触发相机,以实现同步自由运行

同步自由运行

顾名思义,在PTP功能启用的情况下,每台相机(主时钟相机和从时钟相机)的PPS信号会每秒生成一个。因此我们可借助PPS信号检查相机的同步状态。这一信号被设置为触发源,因此每秒钟将触发一次图像采集。除了由“相对同步”导致的几微妙的偏差,相机生成的图像时间戳应为一致。通过PPS信号实现所有相机同步自由运行的操作如下:

# image acquisition configuration for both camerasLineSelector = Line2LineMode = OutputLineSource = PPSTriggerSelector = ExposureStartTriggerMode = OnTriggerSource = Line2 # Limit bandwidth on both camerasDeviceLinkThroughputLimit = 60000000 # Start acquisition on both camerasExecute AcquisitionStart5d49802c-3769-11ec-aa30-dac502259ad0.jpg同步PPS触发信号将触发相机在同一时间点进行图像采集

读取时间戳

为在应用场合中处理时间戳和图像内容,您须读取当前图像缓冲区的块数据。块数据为制造商相关的有效负载缓冲区,其存储布局通常未知,因此我们将通过节点图来读取各个元数据。为此,所有现有的元数据及其标准的节点名称将从GenTL传输至节点图,以便通过标准的API进行访问。以下的源代码片段为您演示如何从图像缓冲区中提取时间戳。安装包也为您提供了有关块数据处理的完整源代码示例。

// Get buffer from device's datastreamconst auto buffer = m_dataStream->WaitForFinishedBuffer(5000); // check buffer for chunksif (buffer->HasChunks()){ // update nodemap with current chunk data m_nodemapRemoteDevice->UpdateChunkNodes(buffer); // Get the value of the timestamp chunk const auto chunktimestamp = m_nodemapRemoteDevice->FindNode("ChunkTimestamp")->Value();}

总结

当涉及图像内容的时间分配时,PTP是多相机应用场合中一个重要的基础功能,能够轻松实现相机间的相对同步,无需额外的硬件和软件支持。在许多应用场合中,相对相机同步也足以确保图像在“相同”的时间或以正确的顺序使用。相机还配备外部定时器,适用于全局同步。如果您对通过PTP同步时间存有疑问或需要了解更多信息,请联系我们。

end

关注我们,持续给您分享干货!

关于我们

5daea3da-3769-11ec-aa30-dac502259ad0.png

虹科智能感知事业部专注于智能感知与机器视觉领域,已经和IDS,Blickfeld和Gidel等有着重要地位的国际公司展开深度的技术合作。我们的解决方案包括3D激光雷达,工业相机,视觉处理平台,图像采集卡及视觉系统集成等。虹科的工程师积极参与国内外专业协会和联盟的活动,我们非常重视技术培训和积累,公司定期与国内外专家团队进行交流和培训。

往期回顾

【虹科】蕴藏在废物分类中的机器人技术革命

【虹科新闻】虹科受邀参加香港地铁外来物检测招标项目

【虹科】速度与激情:用于高速和高分辨图像处理的紧凑型计算机FantoVision 20

【虹科】无需图像处理或编程知识,人工智能成像平台来袭!

【虹科】机器视觉-LUT技术入门

【虹科】虹科教您部署混合人工智能以降低检测成本

【虹科】无需编码,构建流程图开发视觉应用,强势来袭!

【虹科】激光雷达在安防中的应用——改变游戏规则

【虹科】嵌入式3D视觉功能

原文标题:【虹科】如何借助PTP来做高精度相机同步?

文章出处:【微信公众号:智能感知解决方案】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • PTP
    PTP
    +关注

    关注

    0

    文章

    43

    浏览量

    8464
收藏 人收藏

    评论

    相关推荐

    如何实现PTP协议的精准同步时钟?

    尊敬的技术大牛们,你们好! 现有一项目需要用到贵公司的STM32F4系列产品,由于业务场景对时钟同步精度要求很高。所以需寻求你们的技术支撑,提供关于STM32F4系列的PTP协议或IEEE1588协议的参考代码!以便实现
    发表于 03-26 07:57

    mcsdk无法高精度位置控制如何解决?

    ,那么位置控制很容易超调和来回调整,速度调整不过来,因此我只能做在临近位置时候切换成电流环,可还是无法高精度位置控制,我想请问一下问题如何解决 2第二个问题是,如何在MCSDK中添加第二个传感器,如何在MCSDK增加位置控制并且使用绝对值编码器计算位置信息
    发表于 03-12 07:25

    如何利用PTP协议实现一主多从网络时间同步

    在开发项目中用到了PTP时钟同步协议,遇到一些问题,希望得到帮助: 1,所有设备使用了:XMC_ETH_MAC_InitPTPEx(ETH_LWIP_0.eth_mac,config, txTime
    发表于 03-12 06:53

    虹科技术|PTP时钟源设备全攻略:从普通时钟到透明时钟的进阶之路

    导读:在现代通信技术中,精确时间同步对于保障网络性能至关重要。PTP(Precision Time Protocol)时钟源设备作为实现高精度时间同步的关键组件,其配置和选择对于网络架
    的头像 发表于 02-26 16:19 183次阅读
    虹科技术|<b class='flag-5'>PTP</b>时钟源设备全攻略:从普通时钟到透明时钟的进阶之路

    PTP时钟源设备全攻略:从普通时钟到透明时钟的进阶之路

    在现代通信技术中,精确时间同步对于保障网络性能至关重要。PTP(PrecisionTimeProtocol)时钟源设备作为实现高精度时间同步的关键组件,其配置和选择对于网络架构师和工程
    的头像 发表于 02-22 08:04 262次阅读
    <b class='flag-5'>PTP</b>时钟源设备全攻略:从普通时钟到透明时钟的进阶之路

    RK3568-基于PTP的时钟同步测试手册

    RK3568-基于PTP的时钟同步测试手册
    的头像 发表于 01-19 16:20 796次阅读
    RK3568-基于<b class='flag-5'>PTP</b>的时钟<b class='flag-5'>同步</b>测试手册

    如何实现更高精度同步测量?如何做好同步数据采集的时间校准?

    如何实现更高精度同步测量?如何做好同步数据采集的时间校准? 实现更高精度同步测量是科研和工程领域中的一个重要问题。
    的头像 发表于 01-16 15:10 323次阅读

    新品推介|联讯仪器双通道高精度台式源表S2026H

    联讯仪器双通道高精度台式源表S2026H,pA级电流测量精度,广泛应用于漏电流,暗电流等小电流的高精度测量,支持双通道同步触发,单台仪表即可对完成三端口器件的
    的头像 发表于 11-20 11:21 322次阅读
    新品推介|联讯仪器双通道<b class='flag-5'>高精度</b>台式源表S2026H

    AD7709用于ICP传感器,高精度信号调理和AD转换可行吗?

    AD7709用于ICP传感器,高精度信号调理和AD转换,可行吗
    发表于 11-17 09:49

    通常用什么传感器实现无接触式的高精度距离测量?

    可以用什么传感器实现无接触式的高精度距离测量
    发表于 10-13 07:37

    什么是高精度地图

    点云(激光雷达获取)和图像(摄像头获取)两类,因为高精度要求,制图以点云为主。 (1)点云拼接:采集过程中信号可能不稳定 (RTK在遮挡情况下会出现不稳定现象),通寸SLAM等对pose优化,优化
    发表于 10-07 14:24

    高精度定时器的同步功能

    电子发烧友网站提供《高精度定时器的同步功能.pdf》资料免费下载
    发表于 09-19 14:17 0次下载
    <b class='flag-5'>高精度</b>定时器的<b class='flag-5'>同步</b>功能

    ME9620—8通道同步采样24位高精度ADC介绍

    ME9620是一款8通道差分输入、同步采样、24位高精度ADC产品。
    的头像 发表于 09-14 14:12 2121次阅读
    ME9620—8通道<b class='flag-5'>同步</b>采样24位<b class='flag-5'>高精度</b>ADC介绍

    Xilinx:关于PTP精度的最佳平台

    电子发烧友网站提供《Xilinx:关于PTP精度的最佳平台.pdf》资料免费下载
    发表于 09-13 09:28 0次下载
    Xilinx:关于<b class='flag-5'>PTP</b><b class='flag-5'>精度</b>的最佳平台

    高精度电压源是什么电路(高精度电压源原理)

    高精度电压源是一种基于电路设计的电子设备,其主要目的是提供高精度的电压输出。在该电路中,使用了高稳定性的电路元件和精密的电路设计来保证输出电压的稳定性和准确性。通常,高精度电压源中包含大量的反馈控制电路,以及
    的头像 发表于 05-23 09:18 763次阅读
    <b class='flag-5'>高精度</b>电压源是什么电路(<b class='flag-5'>高精度</b>电压源原理)