一种基于机器视觉的焊点检测定位方法

您所在的位置:网站首页 焊点的四个过程 一种基于机器视觉的焊点检测定位方法

一种基于机器视觉的焊点检测定位方法

2024-07-15 23:17| 来源: 网络整理| 查看: 265

一种基于机器视觉的焊点检测定位方法

1.本发明涉及机器视觉领域,具体涉及基于机器视觉的焊点检测定位算法。

背景技术:

2.电子制造产业持续增长,成为当今世界最重要的战略性产业之一。在信息化时代,电子产品不仅应用于小型计算器、移动电话、笔记本电脑,在大型工业设备、汽车、军事武器系统和航空设备领域也应用广泛。电子制造业已成为衡量一个国家经济发展、科技进步和综合国力的重要标志。近年来,我国电子信息制造业以每年20%以上的速度逐年增长,已经成为了国民经济的支柱产业。3.表面贴装技术(surface mount technology,smt)作为电子制造组装行业的基础技术,在近年得到了迅猛提升,中国的smt技术及其整个产业的规模已经跃居全球的首位。到目前,在中国拥有超过 15000条smt自动生产线,成为世界上最大和最重要的smt市场。然而,在电子制造组装业中除了标准的可以自动贴片的元器件外,还有很多其他非标元器件,由于其结构外型的特殊性,至今仍无法实现全自动焊接。4.大量印刷电路板(printed circuit board,pcb)在执行smt自动贴片后,必须由人工完成非标元器件的手工焊接。这种传统的基于人工焊接的方式,不仅生产效率低、耗费时间长,容易使大量的贴片半成品产生堆积,延迟产品交付时间;而且劳动强度大、质量无法保证。特别是基于人工目检的质量检测与个人的主观经验有关,而人在工作时容易疲劳,受情绪影响大,因此检测效率偏低。5.针对上述问题,现有市场主要的解决方案是使用自动化光学检测 (automated optical inspection,aoi)设备对焊接生产中的遇到的常见缺陷进行检测。目前国内aoi设备主要分为在线和离线两种,在线aoi设备通过数据传输的方式实现远程监管操作,一人对应多条生产线,节省了人力资源,但由于数据传输存在时延性及无专家实时干预的原因,检测精度较低;离线aoi设备需要人工操控,但能够实时反馈焊接检测结果,能够帮助专业人员高效找到缺陷目标,但由于算法嵌入于离线设备,在训练集远少于实时更新的在线aoi设备的情况下耗时更长。两种设备的价格均超过十万,所以本项目研究的基于机器视觉的缺陷检测定位方法具有极大的经济发展前景。6.多年来,我国电子制造组装企业将数字化生产线建设作为企业信息化重点,并初见成效,特别是对于标准器件的全自动smt贴片焊接,已经改变了传统的生产制造模式,有力保障了pcb产品的生产。但由于非标元器件形状各异、品种繁多等特点,以及客户需求高度定制化,在建设面向pcb非标元器件“数字化、网络化、智能化”的全自动电子装配生产线的过程中,仍存在以下两大问题:7.(1)焊接需求高度定制化。非标元器件形态各异、尺寸不一,并且不同pcb板采用的非标元器件种类和排版位置也差异很大。采用传统高机械化工艺设计的焊接生产线并不能满足创新化、个性化和多样化的产品需求,矛盾日益激烈。8.(2)焊接质量在线实时检测。现有焊接质量检测装备通常与焊接机械手臂工艺分离,而且需要人工辅助操作。这种通过人工目检完成焊接缺陷判断的方式,无法满足智能焊接生产线高度自动化、自学习、自进化的需求。

技术实现要素:

9.本发明为了满足pcb非标元器件的柔性焊接生产要求,实现真正意义上的智能化全自动焊接,提出了一种基于机器视觉的焊点检测定位方法。10.为了实现这一目的,本发明的技术方案,包括以下步骤:11.步骤1、采用基于先验知识的焊点粗定位,并规划焊接最优路径,为视觉系统和机械臂提供运行方向。12.步骤2、基于机器视觉的焊点细定位,并判断焊点类型,精确引导机械臂找到焊点位置,针对性实施自动焊接。13.步骤3、采用基于在线深度强化学习的焊点缺陷检测,自动检测焊点缺陷及判断类型,为同工位二次补焊提供依据和指导。14.上述步骤1中,基于知识的焊点粗定位及焊接最优路径规划,具体实施步骤如下:15.1-1.首先建立非标元器件知识库,库内包括所有种类非标元器件的名称、信息及焊接手段。读取pcb板后,得到所需焊接元器件及焊点信息,利用知识库识别pcb板中所有非标元器件的焊点。建立自定义pcb坐标系,标注所有非标元器件焊点,使每个焊点获得唯一的坐标信息,完成焊点粗定位。16.1-2.为了最小化总工作时间,多焊接路径进行规划,搜索视觉系统相机移动的最优路径。pcb板中焊点分布密集,为了防止其他焊点对于目标非标元器件焊点的干扰,需要确定目标焊点的唯一视场 (field of vision,fov)。视场是一个相机在单次拍照可以获得的最大图像区域。pcb板进板并固定后,相机首先移动到全板mark点 (用铜印刷在电路板上的标记),作为pcb板上相机寻点路径的初始点。17.1-3.按照规划的路径顺序移动到目标视场区域。焊点顺序访问的问题建模为一个标准的旅行商问题。以焊点的坐标信息为依据,使用 hopfield神经网络获得最优路径,自动规划焊点焊接顺序,如图2 所示。18.所述的步骤2中基于机器视觉的焊点细定位及焊点形状判别,具体实现如下:19.使用yolov5作为目标检测模型进行目标的细定位,该目标检测模型在yolov4的基础上进行了应用性的改进。其中yolov5的neck 结构中,采用借鉴cspnet设计的csp2结构,加强网络特征融合的能力。该算法也成为了目前为止最优秀的目标检测算法之一。20.基于机器视觉的焊点细定位包括如下步骤:21.数据集制作、网络模型训练、过滤识别结果并输出。22.所述的数据集制作包括如下步骤:23.2-1-1.数据采集,发明人通过实地考察企业pcb生产流水线,拍摄获取元器件实物图片的方式,获取了项目检测所需的全部类型焊点数据,如图3所示。24.2-1-2.数据预处理,yolov5在网络输入时常用的图像尺寸为416ꢀ×416,608×608等尺寸。由于所拍摄获取的元器件实物图像分辨率很高,将完整事物图像送入神经网络模型训练十分不便,因此提出了现将图片裁剪成小分辨率的子图片,再根据不同的焊点类型细分,最后统一进行人工数据标注的解决方案。综上所述团队将图像都分割成 416×416大小,再进行人工标注。25.2-1-3.数据标注,神经网络训练需要大量的图像数据,随机选取了一部分图像使用标注工具labelimg进行人工标注,标出其中的接插件焊点目标,如图4所示。26.2-1-4.数据增强,在针对图像的深度学习中,为了丰富图像训练集,更好地提取图像特征,泛化模型能力,防止模型过拟合,团队一样笨数据图像进行了数据增强处理,如图5所示。27.2-1-5.数据保存,标注完的结果生成一个.xml文件,其中保存的关键信息有目标类别name,目标框的四个端点坐标xmin,xmax, ymin,ymax。标注完的数据按照voc数据格式存储,一张图像对应一个标签文件,图像保存格式为.img,标签文件保存格式为.xml。28.所述的网络模型训练的过程包括如下步骤:29.2-2-1.网络输入,数据增强。在yolov5中有5次下采样过程,25= 32,因此网络输入图像大小为32的倍数,由于输入的图像大小为416ꢀ×416,yolov5把输入图像分割为13×13的栅格,栅格计算公式为 416/32=13。30.要保证训练出的模型要足够的泛化性,需要保证有足够多的数据来进行训练,需要对有限的数据进行数据增强。本方法中用到的数据增强方法有翻转变换、随机修剪、色彩抖动、平移变换、尺度变换、对比度变换、噪声扰动和旋转变换。31.2-2-2.网络结构。yolov5网络结构可分为输入端,backbone, neck,prediction四个部分。其中backbone部分使用focus结构和csp结构进行特征提取。32.2-2-3.网络输出。对于一个输入图像,yolov5将其映射到3个尺度的输出张量,代表图像各个位置存在各种对象的概率。对于一个 416×416的输入图像,在每个尺度的特征图的每个网格设置3个先验框,总共有13×13×3+26×26×3+52×52×3=10647个预测。每一个预测是一个4+1+1=6维向量,这个6维向量包含边框坐标(4个数值),边框置信度(1个数值),对象类别的概率(该方法中只设一类目标类别)。33.2-2-4.损失函数。yolov5采用了beclogits损失函数计算 objectness score的损失,class probability score采用了交叉熵损失函数(bceclsloss),bounding box采用了giou loss。34.损失函数计算如下所示:[0035][0036]上面公式的意思针对两个任意框a、b,找到一个最小的封闭形状c,让c可以把a、b包含在内,接着计算c中没有覆盖a和b的面积占c总面积的比值,然后用a与b的iou减去这个比值。[0037]训练完成后的网络模型识别的结果如图7所示。[0038]所述的网络模型结果过滤并输出的步骤如下:[0039]2-3-1.输出坐标与类别。对于每一个预测框有一个置信度,预设置信度高于0.3为一个疑似目标,当两个预测框交并比大于一个阈值时,则认为两个预测框标定的是同一个目标,对同一个目标一般存在多个预测框,在这些预测框中选取置信度最高的框作为最后的结果。输出其坐标信息和类别信息。[0040]2-3-2.k-means聚类出阈值分布。由于焊点一般为较为规则的尺寸大小。因此如果输出过大或过小的预测框,则基本为无效的识别结果。因此本方法对训练集中焊点尺寸使用了k-means聚类,结果作为焊点大小输出的阈值。实验结果表明,改进阈值有效的提升了识别精度。[0041]阈值的变化影响识别精度变化如图8所示。[0042]本发明基于机器视觉的缺陷检测定位路线图如图1所示。[0043]本发明相对于现有技术具有如下的优点及效果:[0044]1、自动规划焊接路径,采用路径规划算法优化相机与机械臂的焊接路径从而提高生产效率;[0045]2、对于图像特征的提取,使用了融合多层特征的深度神经网络,有利于焊点众多小目标场景的检测;[0046]3、优化训练过程,对于单类目标,提高坐标损失的权重,提高定位精度;[0047]4、对结果进行阈值过滤,筛选掉干扰目标,提高识别精度。[0048]5、在线深度强化学习提高了海量数据的学习效率,在线学习训练模型是连续更新的,每次训练只利用当前的样本更新模型,从而降低学习复杂度。附图说明[0049]图1是基于自学习的自动焊接及缺陷检测技术路线图。[0050]图2是焊接路径自动规划示意图。[0051]图3是aoi自动光学检测设备拍摄拼接的原始图像,大小为4863ꢀ×2874像素。[0052]图4是需要被识别的接插件焊点目标类型。[0053]图5是部分数据增强的样本图[0054]图6是yolov5的网络结构图。[0055]图7是本方法在416×416分辨率下的识别结果。[0056]图8是本方法在不同阈值大小下的识别结果比较。[0057]具体实施方法[0058]本发明为了满足pcb非标元器件的柔性焊接生产要求,实现真正意义上的智能化全自动焊接,提出了一种基于自学习的自动焊接及缺陷检测方法及系统。[0059]为了实现这一目的,本发明的技术方案,包括以下步骤:[0060]步骤1,采用基于知识的焊点粗定位,并规划焊接最优路径,为视觉系统和机械臂提供运行方向。[0061]步骤2,基于机器视觉的焊点细定位,并判断焊点类型,精确引导机械臂找到焊点位置,针对性实施自动焊接。[0062]步骤3,采用基于在线深度强化学习的焊点缺陷检测,自动检测焊点缺陷及判断类型,为同工位二次补焊提供依据和指导。[0063]上述步骤1中,基于知识的焊点粗定位及焊接最优路径规划。[0064]在本实施例中,具体实施步骤如下:[0065]1)首先建立非标元器件知识库,库内包括所有种类非标元器件的名称、信息及焊接手段。读取pcb文件后,得到所需焊接元器件及焊点信息,利用知识库,识别pcb板中所有非标元器件的焊点。建立自定义pcb坐标系,自动标注所有非标元器件焊点,使每个焊点获得唯一的坐标信息,完成焊点粗定位。[0066]2)为了最小化总工作时间,多焊接路径进行规划,搜索视觉系统相机移动的最优路径。pcb板中焊点分布密集,为了防止其他焊点对于目标非标元器件焊点的干扰,需要确定目标焊点的唯一视场 (field of vision,fov)。视场是一个相机在单次拍照可以获得的最大图像区域。pcb板进板并固定后,相机首先移动到全板mark点 (用铜印刷在电路板上的标记),作为pcb板上相机寻点路径的初始点。[0067]3)按照规划的路径顺序移动到目标视场区域。焊点顺序访问的问题建模为一个标准的旅行商问题。以焊点的坐标信息为依据,使用 hopfield神经网络获得最优路径,自动规划焊点焊接顺序,如图2 所示。[0068]上述步骤2中,基于机器视觉的焊点细定位及焊点形状判别。[0069]在该实施例中,使用yolov5作为目标检测模型进行目标的细定位,该模型在yolov4的基础上进行了一些应用性的改进,包括多尺度检测、多标签分类等,其中yolov5的neck结构中,采用借鉴cspnet 设计的csp2结构,加强网络特征融合的能力。该算法也成为了目前为止最优秀的目标检测算法之一。[0070]基于机器视觉的焊点细定位包括如下步骤:[0071]数据集制作、网络模型训练、过滤识别结果并输出。[0072]在该实施例中,数据集制作包括如下步骤:[0073]1)数据采集,本发明所用数据来自一台aoi自动光学检测设备拍摄pcb电路板的原始图像,对每一块pcb电路板,相机拍摄多个局部视场,在通过图像拼接的方法拼接成一张完整的图像,如图3所示。[0074]2)数据预处理,yolov5在网络输入时将图像统一为416×416 大小,为了保证图像在这一过程中不失真,我们将图像都分割成416ꢀ×416大小,再进行人工标注。[0075]3)数据标注,神经网络训练需要大量的图像数据,随机选取了一部分图像使用标注工具labelimg进行人工标注,标出其中的接插件焊点目标,如图4所示。[0076]4)数据保存,标注完的结果生成一个.xml文件,其中保存的关键信息有目标类别name,目标框的四个端点坐标xmin,xmax,ymin, ymax。标注完的数据按照voc数据格式存储,一张图像对应一个标签文件,图像保存格式为.img,标签文件保存格式为.xml。[0077]在该实施例中,网络模型训练的过程包括如下步骤:[0078]1)网络输入,数据增强。在yolov5中有5次下采样过程,25=32,因此网络输入图像大小为32的倍数,yolov3把输入图像分割为13ꢀ×13的栅格,因此输入图像大小要求为32×13=416。[0079]要保证训练出的模型要足够的泛化性,需要保证有足够多的数据来进行训练,需要对有限的数据进行数据增强。本方法中用到的数据增强方法有翻转变换、随机修剪、色彩抖动、平移变换、尺度变换、对比度变换、噪声扰动和旋转变换。[0080]2)网络结构。yolov5网络结构可分为输入端,backbone,neck, prediction四个部分。其中backbone部分使用focus结构和csp结构进行特征提取。[0081]3)网络输出。对于一个输入图像,yolov5将其映射到3个尺度的输出张量,代表图像各个位置存在各种对象的概率。对于一个416ꢀ×416的输入图像,在每个尺度的特征图的每个网格设置3个先验框,总共有13×13×3+26×26×3+52×52×3=10647个预测。每一个预测是一个4+1+1=6维向量,这个6维向量包含边框坐标(4个数值),边框置信度(1个数值),对象类别的概率(该方法中只设一类目标类别)。[0082]4)损失函数。yolov5采用了beclogits损失函数计算 objectness score的损失,class probability score采用了交叉熵损失函数(bceclsloss),bounding box采用了giou loss。[0083]损失函数计算如下所示:[0084][0085]上面公式的意思将两个任意框a,b,我们找到一个最小的封闭形状c,让c可以把a,b包含在内,接着计算c中没有覆盖a和b 的面积占c总面积的比值,然后用a与b的iou减去这个比值。[0086]该实施例的效果可以通过以下实验进一步说明:[0087]本发明的实验环境和条件如下:[0088]cpu:core i7 i7-8700k hexa-core 3.70ghz[0089]gpu:nvidia geforce gtx 1080 ti 11g[0090]内存:32g[0091]软件环境[0092]操作系统:ubuntu 18.04 lts[0093]实验所用图像数据与训练所用的图像来自与同一台aoi自动光学检测设备。为了比较模型对于不同分辨率大小的图片的识别效果,将一张大小为4863×2874的原始图像分割为3个不同的分辨率,分别为416×416、832×832、1024×1024。数量分别为126张、48张和35张。然后对这三种图片进行焊点目标人工标注,人工标注结果作为ground truth。模型识别结果与ground truth进行比较,计算模型识别准确度。[0094]实验结果用五组参数来进行衡量,公式如下:[0095]对于模型的性能评价主要有两个方面,识别准确性和识别效率,本发明中用交并比miou、精度p、召回率r和f1分数评价模型的识别准确性,用帧率fps来评价模型的识别效率。[0096]其中:tp为真正例,即预测为1真实值也为1的样本,fp为假正例,即预测为1真实值为0的样本,fn为假负例,即预测为0而真实值为1的样本。交并比iou是模型产生的预测框dt(detectionresult)与原标记框gt(ground truth)的交叠率,即它们的交集与并集的比值。最理想情况是完全重叠,即比值为1。本文使用了帧率fps评价算法处理速度的指标,n是处理图像的总量,t为所耗的总时间,结果为算法每秒处理的图像数量,其单位为帧每秒(f/s)。[0097]精度:[0098]召回率:[0099]f1分数:[0100]交并比:[0101]帧率:[0102]从表1可以看到,416×416尺寸的测试图片精度97.348%、召回率90.813%、f1 score 93.967%。在832×832尺寸下测试时,精度、召回率、f1 score都有所下降,精度下降了1.72%、召回率下降了 1.249%、f1 score 1.47%。832×832的测试图片相比较于416×416 的测试图片,图片规模的原来的四倍,需要检测的目标也是原来的4 倍,因此帧率也有所下降。[0103]表1[0104][0105][0106]模型识别结果如图7所示。[0107]在该实施例中,网络模型结果过滤并输出步骤如下:[0108]出坐标与类别。对于每一个预测框有一个置信度,预设置信度高于0.3为一个疑似目标,当两个预测框交并比大于一个阈值时,则认为两个预测框标定的是同一个目标,对同一个目标一般存在多个预测框,在这些预测框中选取置信度最高的框作为最后的结果。输出其坐标信息和类别信息。[0109]k-means聚类出阈值分布。由于焊点一般为较为规则的尺寸大小。因此如果输出过大或过小的预测框,则基本为无效的识别结果。因此本方法对训练集中焊点尺寸使用了k-means聚类,结果作为焊点大小输出的阈值。实验结果表明,改进阈值有效的提升了识别精度。[0110]阈值的变化影响识别精度变化如图8所示。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3