影响机器视觉测量精度的因素有哪些?

news2025/1/4 19:33:44

精度测量取决于分辨率 

在机器视觉测量中提供高精度和低不确定度的决定性因素是获取的图像的分辨率。在这种情况下,术语分辨率 (或图像分辨率)意味着以实际单位的单个像素的大小。简而言之,如果一个摄像机传感器在水平方向上包含1000个像素,并且采用光学器件来获取覆盖真实世界场景中1英寸宽的区域的图像,则单个像素将代表0.001“。请注意,这是相机制造商或分析软件不会改变的基本指标。 

一个特定的应用程序有多少像素就足够了? 

作为一种衡量标准,机器视觉系统中最小的测量单位(稍后提到的一些例外情况)就是单个像素。与任何测量系统一样,为了进行可重复和可靠的测量,必须使用最小测量单位(作为一般经验法则)为所需测量公差带的十分之一的测量仪。在刚描述的例子中,可以估计系统提供大约+/- 0.005“的精确度测量(0.01”的公差带,十倍仪表单位)。 

工程师首先使用机器视觉进行测量往往严重低估了达到理想水平的测量精度不确定性所需的像素数量。事实上,它可能需要多台摄像机,专业摄像机(如线扫描成像仪)或单个部件的多个视图来达到指定检测容差所需的分辨率。 

如果需要,展开解决方案 

有时候,我们可以用数学方法在成像系统中挤出额外的分辨率,使用算法来报告亚像素重复性的特征。一些例子是灰度边缘分析,几何或相关搜索,圆形或线条拟合等回归,以及某些情况下的连通性。如果可以通过使用这些工具来考虑子像素结果,则如前所述,最小的测量单位可以小于单个像素。请注意,由供应商提供的子像素能力估计值只是这个估计值,通常用于最好的成像,光学和部件表示。请谨慎使用任意子像素期望值作为指定系统测量功能的决定性因素。用实际零件和图像测试系统,以经验确定子像素的能力。 

使用高分辨率光学元件 

成像是光学和照明的功能(我们将在后面讨论,部分介绍)。对于大多数应用,所使用的唯一光学器件将是透镜组件,但是选择该透镜对于度量应用是至关重要的。除了向传感器提供适当的真实世界尺寸的图像之外,为了计量,镜头必须尽可能精确地再现图像而不失真。此外,镜头也具有分辨率度量标准,其通常被指定为每mm或者每英寸的线对(lp / mm,lp / in),并且通过扩展可以具有用于MTF(调制转换函数)的规格或者更简单地具有能力在高lp / mm的情况下产生高对比度的镜头。像素数越高,这些镜头指标越重要。确保指定的光学元件是为机器视觉应用设计的高质量,高分辨率产品。 

远心镜头在许多情况下对测量应用非常有用。远心镜头使用光学组合来实际消除由图像中的视差引起的所有失真。其结果是几乎所有图像都与传感器平行的图像。平面几何关系(在图像平面中)完全保留,使测量更加直接和直接。一如既往,在规范之前测试成像。 

对于需要非常小视场(例如小于几毫米)的应用,请考虑使用专门为机器视觉制造的显微镜光学元件和/或高倍率光学元件。这些可从许多供应商处获得。不建议使用扩展器或附加放大倍率将标准光学元件推至更高倍率。 

关于照明和部件特征以及展示的以下想法。 

选择正确的照明 

在计量学中,照明的选择可能起关键作用。不幸的是,没有具体的规则可以应用于照明。尽管在生产线上实现自动化背光的物理实现可能是一个挑战,但许多计量应用都受益于背光照明(如下所述,部分展示)。正面照明可能会突出显示必须标识以进行测量的特征边缘。考虑使用低角度或结构化的照明来突出低对比度的特点。当试图测量非常小的特征(例如分辨率低于0.001mm)时,可以使用长波长的颜色,例如蓝色或紫色来提高对比度。如果零件处于运动状态(即使不是),请考虑使LED照明器频闪以获得最佳强度和灯泡寿命。 

在所有情况下,成功的机器视觉照明都需要在实验室和地板上进行实验,以确保选择正确的组件。 

注意零件特征 

给定特定照明技术的照相机的光学系统可见的特征通常不具有用于机器视觉工具的相同特征,可以在零件印刷上指定或使用手动测量仪来测量。例如,测量直径较小但相当深的通孔的直径 - 高精度和低不确定性。如果使用前部照明,则只会测量孔的顶部边缘。如果期望的检查是模仿插入量规,这可能是不可接受的。另一方面,如果使用背光,由于孔的深度,光学器件不可能“平均”图像中的整个孔。更有可能的是,光学器件将集中在钻孔顶部,底部,中部的某一深度处,并且这个结果可能不是所期望的。仔细选择照明,光学和算法,以确保测量商定的表面。了解在许多情况下,出于上述原因,在线非接触机器视觉测量不会完全重复物理测量设备。 

进行精确测量 

被检测的部件必须重复呈现。在离线设置中,成像,光学,分辨率和算法可能都是完美的,但是您发现在线测量的可重复性和可靠性很差。通常情况下,部分呈现不一致。有时候,部分演示甚至可能无法实现某种度量。以例如前面描述的小而深的钻孔为例。当该孔的表面垂直于透镜时,图像直接从孔的深处取下,可以成功测量。但是,如果零件稍微倾斜,那么这样的孔可以明显地变成椭圆形,或者如果是背光,则会被完全遮蔽。对于非接触式测量的成像,首先必须减轻所有可能的零件表示变化,然后理解在任何情况下,零件表示都将对测量中的一些叠加误差负责。在确定和指定分辨率,光学和照明时考虑到这一点。 

 

所有的测量仪器都有一个刻度,由沿刻度的许多“刻度”或标记组成。在使用机器视觉的情况下,“刻度”之间的距离是像素(子像素)的大小或像素(子像素)之间的距离。在机器视觉中,“刻度”对应于分辨率,但不一定对应于机器视觉系统的灵敏度——系统能够检测到的测量值的最小变化。在机器视觉中,这对应于像素(子像素)增量或像素(子像素)分辨率。

在使用机器视觉测量零件时,通常面临着一个问题:零件特征的边缘通常不会精确落在一个像素或两个像素之间。边缘的影响通常会在几个相邻像素上体现。人们无法区分落在同一像素上的两条边。通常,编码的灰度值表示像素的强度平均值。

边缘可通过四个属性来表征

1、对比度 - 以边缘为特征的线的累积强度变化
2、宽度(模糊度) - 发生大部分强度变化的剖面上的间隔大小
3、陡度 - 此区间内的表面坡度
4、方向 - 垂直于边缘像素的向量角度


由于对象的边缘通常覆盖具有特定灰度轮廓的几个连续像素(将灰度值视为空间数据点的第三维属性),因此可以使用任意数量的数学或统计方案来基本上推断边缘点的位置,或将边缘的位置建立在有效对象距离的某个增量内的通过对象空间中的像素。例如,将灰度轮廓视为曲线,可以计算曲线的二阶导数——预期发生变化的特定点——并将其定义为边缘像素。

不同的机器视觉算法利用边缘的各种属性来计算像素(子像素)内边缘的位置。值得注意的是,不同的算法在子像素增量的大小方面确实会产生不同的结果。

 精度的准确性和可重复性

       精度由校准程序决定。在机器视觉中,与大多数数字系统一样,“校准”旋钮可以一次更改一个“刻度”(一个像素或亚像素距离)。每个“刻度”代表系统输出中的离散值变化,离散值是物理尺寸增量。


       例如,公称尺寸为 0.1,公差为 0.005。(总容差范围为0.01)。因此,校准旋钮的每个“刻度”(像素或子像素距离)应具有0.1的0.01或0.001的值。因此,每个步长的一半为 0.0005。换句话说,机器视觉系统的精度应等于或优于0.0005。

       由于重复性的经验法则与精度相同,因此系统对重复性的要求是相同的,即重复性应等于“刻度”的尺寸。


       虽然精度在给定的应用中可能不是那么重要,因为它可以通过校准得出,但可重复性更为重要,因为它不能通过校准或其他方式进行校正。据观察,上述分析被许多人认为是保守的。因此,有些人建议将重复性从10/1放宽到5/1。

      在某些情况下,使用的经验法则是精度和可重复性的总和应小于公差带的三分之一。实际上,无论遵守什么“规则”,测量仪器的准确度或重复性不应等于被测量尺寸的公差,事实上,必须小得多!

       具有亚像素能力的机器视觉通常可用于满足此类“规则”的许多计量应用。在某些情况下,无论系统分辨率或理论像素大小(视场除以水平/垂直方向的像素数)如何,性能都接近工业环境中机器视觉的实际极限。
       在要测量的零件尺寸为0.1的上述示例应用中,鉴于相机/机器视觉系统的全视场应用于该尺寸,理论子像素分辨率可能为0.1/1500(基于一个基于 500 x 500 区域相机的机器视觉系统和1/3像素分辨率的子像素能力)。


视觉测量精度能达到多少?

机器视觉检测技术及应用,随着越来越多的制造商每天使用机器视觉系统对其生产设施进行检测,您在拥有合适的机器视觉检测解决方案的同时,还必须确保您的检测系统尽可能准确和高效。

但在实际场景中,机器视觉检测设备在检测产品时的一些不稳定因素,会直接导致检测精度与效率受到很大的影响。

下面和大家一起分析如何根据分辨率,精度,公差的关系指导选型,以及视觉检测设备检测中不稳定的因素。

01根据分辨率 精度 公差进行选型

▶分辨率(Resolution)

计算公式:分辨率 = 视野(Field of View)/像素(Pixel)

比如我要看的产品大小是30mm*10MM,使用200万像素(1600pixel*1200pixel)的相机。因为产品是长条形,为了把产品都放入到视野内,我们计算分辨率的时候要考虑长边对应,此时分辨率为:分辨率 = 30mm/1600Pixel = 0.019mm/Pixel

▶精度(Accuracy)

计算公式:精度 = 分辨率 x 有效像素

精度的单位是mm。根据产品表面和照明状况的不同,我们可以通过放大图像观察辨别稳定像素的个数,从而得出精度。如果条件不允许实际测试观察,一般的规律是,如果使用正面打光,有效像素为1个,使用背光,有效像素为0.5个。这个例子我们取1 Pixel,得到精度为0.019mm约等于0.02mm。

机器视觉系统的定位精度如何计算?

假如是30万像素的摄像机,监控的面积为640x480mm,其精度是不是就是1mm了?30W相机分辨率640*480 正常这样算:用最长的边除去监控面积最长的边 即可,所以精度基本上是1mm,这个是理论值,如果你做测量或者表面划伤检测,肯定不准确,一个像素有可能无法凸显特征。

▶公差(Tolerance)

一般情况下,精度和公差的对应关系如下:

对一个项目来讲,我们是先从图纸上读到公差的要求。然后再根据上述关系,反推得出我们需要多少像素的相机。

 

测量时,首先要考虑的几大方面的有:相机、镜头、光源。

选择要考虑的因素有很大,这里依据一个经手的项目介绍一下精度方面需要考虑的问题。

项目要求:像素精度0.05mm、测量误差正负0.15mm。首先介绍一下相关的概念:

像素精度:一个像素在真实世界代表的距离,即拍摄视野/分辨率。例如我所使用的大华500万相机,分辨率2592*2048,在视野中长的一边100mm,即可拍到100mm的物体,那么在这一方向的像素精度为100/2592mm约为0.0386mm。

测量误差:使用算法测量的距离/长度与真实值的误差。

亚像素精度:亚像素精度是指相邻两像素之间细分情况,输入值通常为二分之一,三分之一或四分之一。即每个像素将被分为更小的单元从而对这些更小的单元实施插值算法。例如,如果选择四分之一,就相当于每个像素在横向和纵向上都被当作四个像素来计算。实际测量或检测时需要考虑的还有很多,例如帧率、曝光、增益等。

02影响机器视觉检测设备精度的因素

▶视觉检测设备不稳定因素:工业相机

工业相机的挑选关键考虑到其传感器类型、像素和帧数,在其中控制器分CCD与CMOS二种,CMOS光学镜头处理速度高,各元器件、电源电路中间间距很近,影响情况严重,显像噪音高。CCD控制器照相机相对性于CMOS照相机具备敏感度高、噪音低和响应时间快的特性,在稳定性层面,CCD照相机的耐冲击与振动性也较强,一般来说,CCD控制器照相机在显像品质上和稳定性层面要好于CMOS照相机。

▶视觉检测设备不稳定因素:光源

光源具备变大图象的特点与缺点、消弱错乱及背景图的功效,立即影响键入数据信息的品质,因为沒有通用性的照明灯具,光源的设计方案一直是机器视觉技术的难题,一般须对于每一特殊的运用案例来挑选光源种类,也要依据实际自然环境对光源安的裝、光源的直射方法开展掂量,以超过最好实际效果。不一样种类的光源稳定性存有差别,普遍的光源有环形光、条形光、面光源、背光源、同轴光、碗光等。因此,光源的选择差异,也是影响视觉检测设备的不稳定因素。

▶视觉检测设备不稳定因素:机器视觉软件

机器视觉软件稳定性对机器视觉技术的影响不容置疑,视觉识别系统终究会在电子计算机上利用计算机选用有目的性的优化算法开展图像滤波,边缘检测和边沿获取等一系列图象处理,不一样的图象处理和解析方式及其不一样的检验方式与计算方法,都是产生不一样的偏差,优化算法好坏决策精确测量精度的高低,因此,需要选择合适的机器视觉软件,这样才可以避免视觉检测设备精度变低。

03提视觉检测精度的7种方法

▶选择合适的光源

如果没有合适的光源,即使是最好的相机也无法捕捉到清晰的图像。对于某些应用,背光可能会产生最佳效果。在其他情况下,您可能需要明场照明或低角度线性阵列。您的系统集成商可以帮助您做出正确的选择。

▶校准光源

一旦您知道哪种类型的光源最好,可能仍需要进一步校准。调整照明系统的频率和波长,以减少来自生产环境或您正在使用的零件和材料上可能存在的涂层的噪音。

▶过滤灯光

机器视觉在保持一致的环境中效果最佳。但这可能很难保证一整天。环境光、重新布置的生产线和不断变化的产品都会影响照明。镜头过滤器可以帮助消除不需要的光。

▶触发功能

在某些情况下,生产环境中的电噪声会导致检测系统误触发。这可能会导致分析失败并导致产品不应该出现故障。触发功能可以帮助您避免这种情况。

▶添加AI技术

人工智能和嵌入式系统正变得越来越容易被各种制造商使用,人工智能可以通过基于强大的数据集做出更智能的决策来减少面积。

▶改善零件定位

一些合格的元件由于定位不良而未能通过检查。添加更精确的工具来固定零件进行检查可以提高机器视觉检查的准确性。

▶增加稳定性

生产环境中的设备经常会受到噪音和振动的影响,从而导致图像模糊,这可能导致不必要的故障和重复检查。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1260630.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

IP代理的潜力有多大?做跨境一定要会用!

IP说简单不简单,说复杂也不复杂,打个比方,IP就好比我们上网的一个门牌号,每家每户都会有一个门牌号,而且是唯一的地址。而代理IP(代理服务器)是一个位于中间的服务器,充当客户端和目…

iptables拒绝所有端口放开特定端口方法流程,iptables允许ping和拒绝ping、hosts阻止所有ip指定放开ip方法流程

文章目录 说明iptables拒绝所有端口放开特定端口方法流程拒绝所有端口允许特定端口临时规则写入配置文件永久生效 iptables允许ping和拒绝ping禁止允许ping说明内核参数设置禁止允许 防火墙设置禁止允许 禁止ping允许ping外部ping通虚拟机内部虚拟机内部使用ping规则详细 hosts…

全国重点文物保护单位数据第1-8批数据,附数据可视化

今天分享的第二个数据是全国重点文物保护单位数据,涉及全国重点文物保护单位第一批至第八批,数据格式为shpcsv格式,以点为几何类型,已经经过精加工,可直接使用。 涉及字段列表如下: 序号字段名称字段说明…

java学习part16代码块

108-面向对象(高级)-类的成员之四:代码块_哔哩哔哩_bilibili 1. 代码块只能static修饰,不存在权限修饰。 因为它是在某种情况下自动执行的,不存在调用的情况。 非静态代码块随着对象创建自动执行(一个对象执行一次)…

Python实现WOA智能鲸鱼优化算法优化XGBoost分类模型(XGBClassifier算法)项目实战

说明:这是一个机器学习实战项目(附带数据代码文档视频讲解),如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 鲸鱼优化算法 (whale optimization algorithm,WOA)是 2016 年由澳大利亚格里菲斯大学的Mirjalili 等提…

ubuntu/vscode下的c/c++开发之-CMake语法与练习

Cmake学习 1 语法特性介绍 基本语法格式:指令(参数 1 参数 2...) 参数使用括弧括起参数之间使用空格或分号分开 指令是大小写无关的,参数和变量是大小写相关的 set(HELLO hello.cpp) add_executable(hello main.cpp hello.cpp) ADD_EXECUTABLE(hello ma…

Django总结

文章目录 一、Web应用Web应用程序的优点Web应用程序的缺点应用程序有两种模式C/S、B/S C/S 客户端/服务端局域网连接其他电脑的MySQL数据库1.先用其他电脑再cmd命令行ping本机ip2.开放MySQL的访问 B/S 浏览器/服务端基于socket编写一个Web应用 二、Http协议1.http协议是什么2.h…

NX二次开发UF_CURVE_ask_proj_curves 函数介绍

文章作者:里海 来源网站:https://blog.csdn.net/WangPaiFeiXingYuan UF_CURVE_ask_proj_curves Defined in: uf_curve.h int UF_CURVE_ask_proj_curves(tag_t proj_curve_feature, int * n_curve_refs, tag_t * * curve_refs ) overview 概述 Return…

【无标题】动手学深度学习_现代神经网络_未完

这里写目录标题 深度学习之前的网络 AlexNetAlexNet得到了竞赛冠军AlexNet架构Alex net更多细节数据增强 VGGNiN知识补充flop暂退法 drop_out 深度学习之前的网络 1、核方法 机器学习 SVM现在还是很广泛的使用,因为对调参的需求不那么大,对调参不太敏感…

IP代理的巨大潜力,为什么跨境业务需要它?

IP说简单不简单,说复杂也不复杂,打个比方,IP就好比我们上网的一个门牌号,每家每户都会有一个门牌号,而且是唯一的地址。而代理IP(代理服务器)是一个位于中间的服务器,充当客户端和目…

GPT还远远不是真正的智能

GPT是一个基于深度学习的自然语言处理模型,它可以生成逼真的文本。虽然GPT在生成文本方面取得了显著的进展,但它并不具备真正的智能。GPT是通过训练模型来学习语言模式,它不具备理解、推理、判断和主动学习的能力。它只是根据已有的语料库生成…

解决git与huggingface项目下载速度慢或者失败的问题

git clone 项目报错 比如使用git clone 下载项目: git clone https://github.com/ChuRuaNh0/FastSam_Awsome_TensorRT.git有时候会报以下错误: fatal: unable to access ‘https://github.com/xxx.git/’: Failed to connect to github.com port 443 …

JUC下常用的类

一、Semaphore 信号量 new Semaphore(10) 可以把他理解成停车场,最多停10辆车,多个车进来如果满了就去排队,车走了,车位就空出来了,排队的线程就可以进来主要下面2个方法 Acquire获取锁:通过CAS原子性减1&…

mobaxterm 设置文本编辑器、上传文件 、下载文件、修改文件夹或者文件权限

前言 自带的编辑如下 功能比较弱,我们可以设置外部编辑器为默认的编辑器 设置编辑器 设置sh文件的默认编辑器 我们可以在windows上新建一个1.sh文件 右键-属性 设置默认编辑器:点击更改 选择vscode编辑器 mobaxterm用vscode打开文件进行编辑 右键…

蓝桥杯day01——根据给定数字划分数组

题目描述 给你一个下标从 0 开始的整数数组 nums 和一个整数 pivot 。请你将 nums 重新排列,使得以下条件均成立: 所有小于 pivot 的元素都出现在所有大于 pivot 的元素 之前 。所有等于 pivot 的元素都出现在小于和大于 pivot 的元素 中间 。小于 piv…

Python读取照片的Exif信息: 解锁图片背后的故事

更多Python学习内容:ipengtao.com 大家好,我是涛哥,今天为大家分享 Python读取照片的Exif信息: 解锁图片背后的故事,文章2700字,阅读大约12分钟,大家enjoy~~ 在数字摄影时代,我们拍摄的照片不仅…

深入了解Rabbit加密技术:原理、实现与应用

一、引言 在信息时代,数据安全愈发受到重视,加密技术作为保障信息安全的核心手段,得到了广泛的研究与应用。Rabbit加密技术作为一种新型加密方法,具有较高的安全性和便捷性。本文将对Rabbit加密技术进行深入探讨,分析…

什么是Cyclomatic Complexity循环复杂度

Cyclomatic Complexity,可以翻译成 循环复杂度圈复杂度圈复杂性回路复杂性 循环复杂度是软件工程中的一个定量度量,表示程序或函数的复杂性。它衡量程序源代码中线性独立路径或分支的数量。如果一个函数的循环复杂度太高了,就需要进行重构。…

如何使得HAL库STM32代码可以复制,重复使用

在上面这个代码使用标准库写的,但是这个方法可以放在HAL库代码里面没有问题, 如果所有引脚的初始化都是用CubeMX生成,那么只要引脚有变化,Hal库代码就每次都要使用CubeMX生成,而且因为引脚不确定导致要移植的代码不一…

计算机基础知识59

MySQL的卸载流程 1、先停止MySQL服务:右键“此电脑”,选择“管理”,之后选择“服务和应用程序”--“服务”,在服务中找到“MySQL”,右键选择“停止”。 2、找到“控制面板”--“程序和功能”,找到MySQL&…