随着尖端技术的涌现,零售行业经历了一场深刻的变革。在这些创新技术中,配备多摄像头同步功能的智能购物车系统已成为了行业游戏规则的颠覆者,彻底改变了顾客的购物体验和自动结账系统。在本文中,我们将深入探讨多摄像头同步的重要意义、带来的挑战,以及在智能购物车中完美实现多摄像头同步的正确方法。
多摄像头同步从硬件帧级开始,通过“主”-“从”配置互连所有摄像头。这种设置允许对单个摄像头进行控制,并能选择要进行流式传输的摄像头数量。此类系统可实现多图像捕捉、多视频录制和多网络流传输。
多台摄像头之间的同步可以通过硬件和软件触发模式来实现,每种模式都有各自的优点和局限性。应根据应用的具体目标来选择这些方法。
集成多摄像头解决方案面临两个主要的实际挑战:
在简单的多摄像头系统以及180度拼接摄像头中,这两个难题都必须克服,其中180度拼接摄像头指的是将多幅图像合成为场景的全景图。解决这些问题对于确保有效的多摄像头同步至关重要。
多个摄像头的同步在智能购物车的功能中起着至关重要的作用。由于这些购物车需要依靠多个摄像头一起工作来识别产品,因此从不同角度拍摄的图像必须同步。这种同步是支持物体检测算法准确识别产品的关键。
此外,在当今这个非接触式体验的时代,传统的现金柜台结账系统已经过时。零售客户现在更喜欢走进商店,选择他们想要购买的商品,然后离开,而无需任何物理互动。智能购物车利用顾客识别、跟踪和产品识别算法,促成了这种无缝的购物体验。然而,摄像头技术的选择至关重要,因为智能购物车或自动结账系统的任何故障都可能导致顾客的不满、商店员工的干预以及不必要的耽搁。
在智能购物车中正确地实施多摄像头系统对于避免错误率增加和商店员工频繁干预至关重要。现在让我们探讨一下实现多摄像头同步的正确方法。
例如,一个需要六个摄像头来覆盖整个购物车的解决方案,可以通过连接四个USB摄像头覆盖四角,并中央连接两台MIPI摄像头,从而形成完整的图像。摄像头之间的同步针对单一接口,不是USB就是MIPI。因此,有必要设计让智能购物车设备同时支持USB和MIPI摄像头。
实现多摄像头同步需要配置硬件触发或软件触发模式。让我们来详细了解一下这些模式是如何在USB摄像头固件和MIPI摄像头驱动程序中实现的。
硬件触发模式涉及到在外部产生一个占空比为10%、频率为20Hz的脉宽调制(PWM)信号来触发传感器。USB和MIPI摄像头均设置为“从属”模式,如果没有外部PWM信号,则不会从传感器读取数据。由于所有摄像头都连接到相同的PWM信号源,因此摄像头之间的读取过程中不会出现延迟,从而确保了帧的正确同步。
不过,硬件触发也受到了限制,它需要外部PWM电路来控制摄像头。
在软件触发模式下,开发一个定制的固件,从而在主机发出请求时为其发送帧。摄像头保持持续运行状态,一旦通过HID(人机接口设备)命令接收到主机的请求,就会发送帧,从而实现正确的同步。
然而,当使用软件触发器同步不同接口时(例如四个USB摄像头的情况),延迟可能是一个挑战。向所有摄像头发送请求之间的延迟取决于主机设备的性能,这可能会导致延迟的变化,特别是对于性能较低的主机设备。
通过分析,我们发现无论是使用硬件触发还是软件触发,延迟一般在10ms范围内变化,这对于智能购物车来说是合适的。
在前面提到的在嵌入式平台上安装四个USB摄像头的设置中,USB带宽可能会受到限制。为了克服这一限制,增加传感器读取的行时间有助于有效地利用可用带宽。这样做还可以增加帧读取之间的间隔时间,优化带宽利用率,同时避免帧损坏。
(原文刊登于EDN姊妹网站Embedded,参考链接:Implementing multi-camera synchronization for retail smart carts,由Ricardo Xie编译。)