| Developers' Corner

提高镜面结构光反射的设置速度

简单设置
图1:简单设置
光电传感器设置
图2:光电传感器设置
FPGA 设置
图3:FPGA 设置

镜面结构光反射对于检查反射(镜面)表面很有帮助。这些表面上会出现镜像,因此使用其他方法很难检查。《HALCON 解决方案指南 I》第 8 章介绍了镜面结构光反射的原理,即通过观察已知格雷码图案的镜像及其在表面上的形变来利用镜面反射。

通常,速度是一个非常重要的因素。在镜面结构光反射中,速度的限制并不一定来自算法,反而主要是来自硬件约束和同步。在使用相机采集单一结构光图案时,必须知道要采集的是哪种图案。因此,之前显示的条纹应该是不可见的。下面,我们会介绍应对这一同步问题的三种思路。它们在实施的复杂性和加速的潜力方面有所差异。

最简单的设置(请参见图 1)主要是使用算子 structured_light_camera_screen_sync() 为每一次图像采集找出合适的延迟。这种“快速见效”的方法除了监视器和相机之外不需要其他硬件,也不需要特殊的配置。自然地,采集速度也被限制在远低于相机和监视器帧率的水平。

使用硬件触发器可以实现更好的同步(请参见图 2)。《解决方案指南 I》第 8.3.3 节介绍了在监视器的小区域内使用光电传感器。这种“纯硬件”的改进会在监视器图像变化时直接触发相机。其优点包括同步带来的加速、简单稳定的设置,同时没有大幅增加硬件成本。采集帧率可以达到大约 12-16 帧/秒 (fps)。

最后,在图 3 中可以看到一种采用专用 FPGA 硬件的设置方案。可以使用一块 FPGA 评估板来控制监视器和相机的¬同步¬。利用 VGA 输出在 FPGA 中直接生成图案,并通过其中一个逻辑输出触发相机。只需付出一块开发板的成本(约 150 欧元),即可实现使用实时编程进行同步。一套演示设置的采集帧率达到 30 fps。通过调整锁相环 (PLL)、硬件选择或创新设置安排,有可能将采集帧率提高至超出标准 60 fps 监视器能力的水平。

请注意:产生这些结果的实验台并还未声明适用于工业用途。