机器视觉系统的设计
机器视觉系统集成是将各种不同的组件和子系统组合在一起并使它们充当单个统一系统的过程。
视觉系统集成包括光源,镜头,相机,相机接口和图像处理软件等等。您可能想知道如何设计和实现一个完整,成功的机器视觉系统。
在本文中,我们将讨论构成机器视觉系统集成的广泛任务的通用部分,然后重点介绍使用基本机器视觉应用程序的真实示例进行系统设计的分步过程。
从根本上说,“系统集成”是将各种不同的组件和子系统组合在一起并使它们作为单个统一系统运行的过程。不同的视觉系统实现的步骤,阶段和相关术语会相差很大。
一般来说,对于机器视觉中的整个系统集成过程,步骤可能包括:
第1部分–准备:初步分析和项目需求规范。
第2部分–设计:详细的最终技术/系统规范。
第3部分–实施:组装/构建/初始测试
第4部分–部署:交付/安装/启动和验收测试。
但是,在此讨论中,我们将仅专注于非常关键且有时很复杂的“设计”阶段,以及它如何进入“实施”阶段。这是按执行顺序进行设计的基本顺序:
选择相机
选择镜头
选择光源
采集一些图像以验证成像
选择计算机(如果使用智能相机则不需要)
开发程序(图像处理,操作员界面等)
将所有内容结合在一起,开始测试和优化
在开始设计之前,您需要有一个已经过全面审查的“需求规范”,它标识了系统必须执行的操作以及它将如何运行,“验收测试”文档详细说明了如何验证系统,并进行系统功能演示测试。事先应进行适当的评估,以确认建议的机器视觉设计和组件将能够满足要求的需求。
同样重要的是要认识到,在任何学科中进行整合都是团队活动。在机器视觉中,它始于客户和系统集成团队(公司内部或外部)。系统集成团队必须具备光学,照明,电子,控制,编程,机械设计和项目管理等技能,并且可能还具有其他技能,例如机器人技术,运动控制,文档和培训。
鉴于所有这些都已经准备就绪,是时候从组件选择开始着手进行系统设计了。
系统设计:组件选择和规格
相机选择
我们将使用“相机”一词来广泛地描述执行图像采集的机器视觉系统中的组件。相机的基本规格受物体的特征检测,识别,位置或测量的要求以及处理速度(以及其他一些注意事项)的驱动。根据需求,确定应用程序所需的空间分辨率,图像分辨率和帧速率。
空间分辨率
通过处理的最小特征的像素数或必须达到的测量精度/可重复性,或两者来确定空间分辨率。
举例来说,从规格上,您需要检测一个直径为0.3mm的小孔。从理论上讲,两个像素就足够了,但是经验告诉我们,只有两个像素是不可靠的。需要三个,四个或更多像素来覆盖小孔的特征。如果您说需要四个像素,则您的空间分辨率为0.3毫米除以四个像素,为0.075毫米/像素。
在测量应用程序中,您会使用一种算法,可以达到亚像素精度的可重复性。亚像素究竟有多小,取决于多种因素,包括图像中要测量的特征的大小(可以以更高的精度测量较大的特征),测量的特征与其背景的对比度以及相机噪声。实际可达到的子像素分辨率取决于具体应用。有实际经验表明,亚像素精度下限约为像素的十分之一。
假设您需要测量0.01mm的精度(可重复性),并且根据经验或一些实验,您认为该算法的重复精度可以做到像素的五分之一。然后,您所需的空间分辨率为0.01mm除以1/5像素,则系统所需的空间分辨率为0.05mm /像素。
如果您同时对最小特征的像素数或必须达到的测量精度/可重复性有要求,可以同时计算空间分辨率并选择较小的结果。
图像分辨率
所需的图像分辨率就是实现我们的计算所确定的空间分辨率所需的像素列数和行数。定义成像区域(“视场” / FOV),将FOV除以空间分辨率。例如,如果我们指定了133x133mm的视野,而空间分辨率(根据我们的计算)为.075mm /像素,那么我们的图像分辨率为133mm除以.075mm /像素,则宽度和高度均为1,733像素。
选择像素行和列计数等于或大于您计算的摄像机。在此示例中,您可能会考虑使用图像传感器像素尺寸为3.45um,分辨率为2448x2448的相机。
成像帧率
相机选择的最后一个基本步骤是验证候选相机是否可以达到适用于指定应用程序的图像帧速率(每秒帧数),并从选择合适的图像采集接口(“智能摄像机”不需要)。大多数基本的通用机器视觉应用程序的工件吞吐量都相对较低(每秒10-15个零件,并且通常要慢得多)。实现高成像速率应用程序的细节不在此讨论的范围内,但一定要意识到分辨率越高,成像帧率越慢。
镜头选择
决定镜头选择的基本因素包括:镜头格式,所需的视场,成像组件从物体到图像的距离(工作距离/ WD)以及所需的光学分辨率。在我们的讨论中,我们将考虑选择“固定焦距”镜头。(其他更专业的镜头,例如“远心”镜头在许多机器视觉应用中很有用,但这将用于另一次讨论。)镜头规格的选择包含三个相关计算:光学分辨率,放大倍数(也称为PMAG)和对镜头的焦距。
镜头属性
镜头属性就是标明制造厂商、镜头卡口型号以及适用什么图像传感器尺寸等等
光学分辨率
此度量标准有助于评估镜头清晰地再现被摄景物纤微细节的能力,是评价镜头质量的一个重要参数。(这是一个很好的出发点,尽管可以使用许多其他附加措施来比较镜头。)图像传感器的目标光学分辨率为1线/(2 *像素大小,单位为mm);在我们的示例中为1 /(2 * 0.00345)大约为145lp / mm。
放大倍率
镜头将所需的FOV转换或“放大”,并将其“投影”到相机传感器上。通过将FOV的短边尺寸除以传感器的短边物理尺寸,可以计算出特定FOV所需的放大倍数。例如,根据上面的讨论,传感器短边尺寸为7.07mm,FOV为133mm,推导所需的放大倍数(M)为约0.053x。
最后,要获得镜头焦距(f)的估计值,可以使用供应商提供的镜头参数对照表或镜头计算器或公式。
对于我们的示例,假设工作距离(WD)约为500mm,得出焦距为25.17mm。然后,我们最终的镜头选择可能是25mm焦距,具有160线对/ mm的光学分辨率和C型卡口。
照明选择
机器视觉照明的目标是在工件及其背景之间产生对比度。有大量关于机器视觉照明技术的文献参考,以及每种技术在什么条件下都能很好地工作。
评估和最终设计
图像评估和测试
在致力于构建完整的系统之前,证明您的设计非常重要。通常,可行性测试期间,会发现设计中的缺陷,在投入更多时间和金钱之前迅速纠正设计缺陷,之后再进行更改会更加昂贵和耗时。
为了进行测试,请使用设计中的实际相机,镜头和光源。并使用多个实物样本进行成像,以代表在实际生产中将出现的变化。如果需要,使用与生产环境等效的零件外观模型,并包括预期的外观变化。
基本评估应实现以下目标:
确认镜头和相机在所需的WD处产生正确的FOV
确认成像系统(相机,镜头,照明)相对于应用程序需求,创建了高质量(对比度和特征清晰度)图像。
检查系统分辨率是否产生了预期的需求定义,并适合于应用程序。
评估基本处理(缺陷检测,测量等),以确认预期的系统功能
当然,在整个测试和评估过程中,可能有必要重新考虑组件的选择。在需要的地方,重新评估组件的选择,以找到可提供更高质量图像的组件。
电脑/处理器
如果您为相机选择了智能相机,那么您已经选择了处理器。否则,您可以选择专用处理器(集成了处理器,操作系统和机器视觉软件的专用处理器),工业PC或在某些不太苛刻的环境中可以正常工作的标准PC,确保处理器具有相机和/或其他外部设备所需的接口,以及具有以目标速率处理结果的计算能力。
系统设计:文档
设计的最后一步是对其进行记录。可以收集的有关成像设计的数据将帮助您进行故障排除和复制。
其他设计注意事项
机器视觉系统作为独立组件集成的确很少见。至少要进行机械设计才能实现;可能设计和构建完整的自动化系统。其他自动化组件也可能会起作用,包括PLC,机器人和其他设备。
结论
设计阶段自然会演变为实施阶段:组装,构建和测试。这是一个反复的过程,在设计和构建阶段之间会有重叠。在集成期间,请考虑一个总体规则:测试,优化/调整,重复。希望本机器视觉集成设计的基本介绍将帮助您在下一个机器视觉项目中取得成功。