LabVIEW实现PCB电路板元器件匹配定位(实战篇—7)

简介: LabVIEW实现PCB电路板元器件匹配定位(实战篇—7)

目录

1、原理


2、实践


1、原理

彩色模式匹配(Color Pattern Matching)基于目标图像的色彩和空间分布特征(如形状、尺寸等),综合色彩匹配和灰度图像模式匹配技术,来快速定位图像中的彩色模式。


色彩匹配将模板图像与待测图像或其中某一区域的颜色进行比较,判断它们是否相同或相近。图像或模板中的颜色信息可以由一种或多种颜色构成,色彩匹配过程会根据各种颜色像素的数量统计信息生成色谱,以简化匹配过程。色彩匹配过程执行之前,需要明确模板和待比较图像区域所在的位置。


色彩定位功能对色彩匹配进行增强和扩展,以快速定位图像中的特定颜色区域。它先通过下采样和步进搜索的方法快速确定可能的候选匹配位置,然后再对各个候选区域进行精细色彩匹配,以最终确定最佳色彩匹配位置。这种由粗到细的搜索方法对于在图像中寻找与模板图像具有类似颜色属性的区域位置和数量十分有效。


由于色彩定位基于模板的像素颜色统计信息工作,所以它只具有平移不变性,而对尺度和旋转变化不能保持严格的不变性,也不能返回与模板匹配区域的角度信息。


彩色模式匹配对色彩定位功能进行了增强和扩展。它先使用色彩定位过程,基于模板的颜色信息从图像中搜索匹配的区域。然后,对于每个匹配区域,彩色模式匹配过程都会扩展该区域的范围,并执行图像的灰度模式匹配,以找到模板在图像中的确切位置及旋转角度。下图显示了彩色模式匹配过程的流程图以及它与色彩匹配、色彩定位之间的关系。


image.png


图像的灰度模式匹配技术通过计算模板和图像之间的归一化互相关值来确定匹配区域。由于归一化互相关仅具有平移不变性,因此还需要通过对模板进行多次缩放或旋转后再重复搜索过程来赋予灰度模式匹配尺度不变性和旋转不变性。但是要完全支持尺度不变性和旋转不变性,需要进行大量计算,这会严重影响算法的实时性。


为了增强算法的实用性,灰度模式匹配过程使用下采样和先粗后细的匹配策略,以及梯度金字塔、低差异采样和图像理解等技术,使其不仅能适应被测目标±5%的尺度变化,保持旋转不变性,还能兼顾实用性。相应地,综合使用色彩匹配和灰度模式匹配技术的彩色模式匹配,不仅具有平移和旋转不变性,还支持±5%的尺度变化。


彩色模式匹配对许多机器视觉应用至关重要,它不仅能输出与彩色模板相匹配的图像区域数量信息,还能提供其在图像中的准确位置和角度信息。因此,它在很多时候能通过提高灰度图像的对比度,或将目标与背景分离来简化灰度图像匹配问题,或进一步提高系统的可靠性。


一般来说,若要在待测对象与背景间的颜色区别非常明显的情况下精确地定位待测对象的位置,或者待测对象的灰度特征较难描述或与其他对象的灰度特征较类似的情况下,彩色模式匹配具有较强的优势。


基于彩色模式匹配,可以创建机器视觉测量(Gauging)、检测(Inspection)和对准(Alignment)系统。例如,在待测件的间距测量应用中,若待测件的颜色标识固定,则通过彩色模式匹配可以快速定位它们的准确位置,并进而计算得到待测件之间的距离;检测组装过程是否漏装零件;检查彩色印刷物的质量。例如,日常消费品上的标签大多为彩色标签,所以可使用颜色模式匹配来检测标签的质量,或者先用它定位图像中的标签,再进一步进行详细检测。


2、实践

NI Vision使用位于LabVIEW的视觉与运动→Machine Vision→Searching & Matching函数选板中的IMAQ Setup LearnColor Pattern、lMAQ Learn Color Pattern、IMAQ Setup Match Color Pattern和IMAQ Match Color Pattern封装了色彩定位和色彩模式匹配的学习和搜索过程。使用这些函数可创建基于色彩定位的颜色识别、颜色分类(Color Sorting)和颜色检测机器视觉应用。


image.png


函数说明及使用可参见帮助手册:


image.png


通过彩色图像匹配检测电路板上某一固定类型组件的数量、位置和角度的案例了解彩色模式匹配的使用方法,程序设计思路如下所示:


程序一开始先将组件模板图像读入内存,然后由IMAQ SetupLearn Color Pattern对学习过程进行配置,要求IMAQ Learn Color Pattern在执行学习过程时,不仅要学习模板的颜色和形状信息,还要同时对平移和旋转保持不变性;

IMAQ Setup Match Color Pattern对彩色模式匹配过程进行配置,不仅要求同时进行色彩和形状匹配,还要能对旋转保持不变性;

While循环会逐一将待测图像文件夹中的图像读入内存,并调用IMAQ Match Color Pattern匹配模式与模板相同的4个组件,并根据返回的数量判断检测结果是否合格。

程序实现如下所示:


image.png


运行程序可见,即使被检测电路板在图像中有旋转,程序也能有效完成彩色组件的模式匹配。观察程序返回的各匹配区域详细信息(Matches数组),可以发现彩色模式匹配过程返回的信息极为丰富,包括匹配区域的位置、角度、尺度变化量、外接矩形和匹配分值等。使用这些信息,就能实现各种测量、检测或对准机器视觉应用。效果如下所示:

image.png


项目资源下载请参见:https://download.csdn.net/download/m0_38106923/20771574


相关文章
|
4月前
|
数据采集 监控 数据可视化
利用LabVIEW和数字孪生技术实现PCB电路板测试
利用LabVIEW和数字孪生技术实现PCB电路板测试
62 0
|
6月前
|
传感器 监控 自动驾驶
LabVIEW开发基于直流电机的高精度定位火星车
LabVIEW开发基于直流电机的高精度定位火星车
39 3
|
6月前
|
传感器 监控 测试技术
单片机开发|基于51单片机的全自动黑板檫粉尘清除装置设计与实现
单片机开发|基于51单片机的全自动黑板檫粉尘清除装置设计与实现
|
6月前
|
传感器 人工智能 Java
单片机开发|基于51单片机的全自动黑板檫粉尘清除装置设计
教师常年在课堂上上课,粉笔的灰尘会对学生的健康造成很大的危害,很多教师都会患上肺部疾病。教师在课堂教学中,如何有效地消除粉尘对教师的身体造成的不良影响,是一个亟待解决的问题。本文以51单片机为核心,实现并设计一种全自动黑板檫粉尘清除装置。由黑板擦上的压力传感器进行检测,由51单片机来控制吸尘器(吸尘风机),以完成清理。本系统的主要功能包括:压力检测、按键控制、灯光显示、电扇除尘等。本文在对国内外有关文献进行整理和归纳的基础上,首先介绍了全自动黑板檫粉尘清除装置的研制背景和研究意义,并结合国内外的研究情况,提出了本文的主要研究内容和系统的设计思路。接着,对系统的硬件电路进行了详细的设计,并编写了
|
异构计算
实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计(上)
实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计(上)
830 0
实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计(上)
|
传感器 监控 测试技术
单片机开发|基于51单片机的全自动黑板檫粉尘清除装置设计与实现
教师常年在课堂上上课,粉笔的灰尘会对学生的健康造成很大的危害,很多教师都会患上肺部疾病。教师在课堂教学中,如何有效地消除粉尘对教师的身体造成的不良影响,是一个亟待解决的问题。本文以51单片机为核心,实现并设计一种全自动黑板檫粉尘清除装置。由黑板擦上的压力传感器进行检测,由51单片机来控制吸尘器(吸尘风机),以完成清理。本系统的主要功能包括:压力检测、按键控制、灯光显示、电扇除尘等。本文在对国内外有关文献进行整理和归纳的基础上,首先介绍了全自动黑板檫粉尘清除装置的研制背景和研究意义,并结合国内外的研究情况,提出了本文的主要研究内容和系统的设计思路。接着,对系统的硬件电路进行了详细的设计,并编写了
187 0
|
存储
【NI Multisim 14.0虚拟仪器设计——放置虚拟仪器仪表(示波器)】
🍍放置虚拟仪器仪表 NI Multisim 14.0 提供了多种仪器仪表,存储在集成库中,供用户选择使用。下面详细介绍常用的仪器仪表。 🍉示波器 示波器用来显示电信号波形的形状、大小、频率等参数的仪器,如图所示为示波器图标。 选择菜单栏中的“仿真”→“仪器”→“示波器”命令,或者单击“仪器”工具栏中的“示波器”按钮,放置图标,双击示波器图标,打开如图所示的示波器的面板图。 示波器面板各按键的作用、调整及参数的设置与实际的示波器类似,一共分成3个参数设置选项组和一个波形显示区。 1.“时基”选项组 (1)标度 显示示波器的时间基准,其基准为0.1fs/Div~1000Ts/Div可供选择
796 0
【NI Multisim 14.0虚拟仪器设计——放置虚拟仪器仪表(示波器)】
|
存储
【NI Multisim 14.0虚拟仪器设计——放置虚拟仪器仪表(函数发生器)】
🍍放置虚拟仪器仪表 NI Multisim 14.0 提供了多种仪器仪表,存储在集成库中,供用户选择使用。下面详细介绍常用的仪器仪表。 🍉函数发生器 函数发生器是可提供正弦波、三角波、方波3种不同波形的信号的电压信号源,如图所示为函数发生器图标。 选择菜单栏中的“仿真”→“仪器”→“函数发生器”命令,或单击“仪器”工具栏中的“函数发生器”按钮,放置函数发生器图标,双击该图标,弹出函数发生器的面板,如图所示。 该对话框的各个部分的功能如下所示。 (1)“波形”选项组下的3个按钮用于选择输出波形,分别为正弦波、三角波和方波。 (2)“信号选项”选项组,内容如下。 频率:设置输出信号的频率。
261 0
【NI Multisim 14.0虚拟仪器设计——放置虚拟仪器仪表(函数发生器)】
|
数据挖掘 芯片
电子技术课程设计-正弦波发生及频率显示电路-电子线路CAD原理图
电子技术课程设计-正弦波发生及频率显示电路-电子线路CAD原理图
528 0
电子技术课程设计-正弦波发生及频率显示电路-电子线路CAD原理图
|
异构计算
实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计(下)
实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计(下)
819 0
实验三 基于FPGA的数码管动态扫描电路设计 quartus/数码管/电路模块设计(下)