实时视觉
实时机器视觉-它如何工作?
尽管实时机器视觉似乎是一个复杂的话题,但实际上它一次只能迈出一步。 因此,通过单独查看每个步骤,它实际上变得非常简单。
机器视觉通常是指机器对光信号的处理。 这里的应用领域广泛而又多样。 从生产,质量保证到车辆工程和医学,几乎每个技术领域都可以在一定程度上受益于“自动观察”。 而且,由于自动化是任何行业的关键要素之一,因此这些领域越来越依赖于图像捕获和处理也就不足为奇了。 在工业环境中,术语“机器视觉”由于其更高的要求而与总体主题“计算机视觉”区分开来,因此被专门使用。 例如,对基于机器的过程的这些要求之一经常是实时能力。 但是机器视觉如何实时工作?
实时机器视觉:程序是什么?
逐步进行机器视觉操作的粗略过程,可以确定三个阶段-捕获,处理和反应。相机捕获图像并将其数字化传递。这些图像由专业软件根据相关标准进行分析和评估。然后,该处理后的图像数据能够自动触发技术反应,例如通过机器。实际上,这里描述为简化的三部分模型,是一个每秒重复几百或数千次的相干循环过程。在这里,实时操作系统可以确保这些周期中的每个周期都不会超过特定的总持续时间。由Kithara RealTime Suite实现的 “硬”实时首先使某些应用成为可能。
图像捕获和实时
工业和研究领域中的计算机视觉应用对所使用的硬件提出了相应更高的要求。例如,与常规相机相比,工业相机需要更加坚固耐用,并能抵抗外部因素(例如温度,湿度,磁场,振动等)。由于工业相机的几乎所有功能都是通过连接的计算机控制的,这些类型的相机非常紧凑,因此更易于安装到机器中。
图像通过所谓的图像采集卡捕获,这些图像采集卡是链接到相机的专用硬件扩展卡,或者直接通过以太网和USB等数字接口采集。 后两者由于专用的视觉标准(例如GigE Vision或USB3 Vision)而提供了很高的灵活性,并在不同的相机制造商之间提供了互换性。 此外,还有GenICam,这是Cam时代的GenericI接口。无论采用何种接口技术,都可以使摄像机的编程更加标准化。
Kithara的实时操作系统使用专门开发的以太网和USB驱动程序分别实时控制GigE Vision或USB3 Vision摄像机。 这允许从相机获取图像数据并进行无延迟传输。 由于这样的图像数据可以具有非常大的尺寸,因此利用成比例的缓冲器来防止数据分组的丢失,从而确保无缝的数据传输。
图像处理软件和控制反应
图像数据一旦被捕获并传输到计算机,就可以用于进一步评估。 在此,根据具体的应用任务,使用专门定制的程序,这些程序大多是通过使用图像处理库的算法来创建的。 这些库的众多功能包括,例如,对象,文本,2D代码,面部,手势或动作的识别。 这允许图像的自动分析以及决策(例如控制反应)的决策。
可以想象使用的图像处理算法非常复杂,流行的库包含成千上万的运算符也就不足为奇了。示例是MVTec的商业库Halcon或开放源代码OpenCV。此外,使用机器学习算法来实现更复杂的视觉应用存在明显的趋势。
摄像机之外的实时自动化
为了在实时环境中执行机器视觉过程,这些库被加载到实时系统中,以确保图像捕获,图像处理和机器反应之间的反应时间在最短的预定时间内发生。 使用Kithara RealTime Suite,甚至可以在相同的实时环境中处理控制反应,例如由于对象识别而导致的机械臂的移动和抓紧。这使开发人员可以将机器视觉和机器逻辑合并到他们的应用程序代码中,并相互优化。也有可能将机器视觉应用程序实施到 更高级别的自动化解决方案。结果是一个统一的实时系统,该系统允许对接收到的图像数据进行分析并将其转换为复杂的序列,从而直接控制复杂的机器过程。