一种电路板检测方法、装置及计算机可读存储介质与流程

文档序号:24121395发布日期:2021-03-02 11:40阅读:36来源:国知局
一种电路板检测方法、装置及计算机可读存储介质与流程

[0001]
本发明涉及产品检测技术领域,尤其涉及一种电路板检测方法、装置及计算机可读存储介质。


背景技术:

[0002]
随着电子信息技术的快速发展,电子信息产业对半导体芯片的需求量与日俱增,这使得半导体行业进入了一个快速发展的时期。
[0003]
工业生产电路板的过程中,电路板上的芯片焊接后,需要检测电路板该位置是否有焊接上正确的芯片。而目前在进行电路板芯片焊接是否正确的检测时,通常是由专门的质量检测工程师通过人眼的方式查看、判断焊接上的芯片是否正确,然而,人工方式一般作业效率较低,并且容易出现疏漏和误判,而使得电路板检测的准确性无法得到充分保障。


技术实现要素:

[0004]
本发明实施例的主要目的在于提供一种电路板检测方法、装置及计算机可读存储介质,至少能够解决相关技术中采用人工的方式来进行电路板上芯片焊接位置的检测,所导致的作业效率较低以及检测结果准确性无法得到充分保障的问题。
[0005]
为实现上述目的,本发明实施例第一方面提供了一种电路板检测方法,该方法包括:
[0006]
基于待识别电路板图像获取电路板芯片的字符图像;
[0007]
将所述字符图像输入至预设的字符识别模型,输出字符序列识别结果;其中,所述字符识别模型基于预设训练样本对yolov3神经网络进行训练而得到;
[0008]
基于所述字符序列识别结果判断所述电路板芯片与焊接位置是否相对应。
[0009]
为实现上述目的,本发明实施例第二方面提供了一种电路板检测装置,该装置包括:
[0010]
获取模块,用于基于待识别电路板图像获取电路板芯片的字符图像;
[0011]
输出模块,用于将所述字符图像输入至预设的字符识别模型,输出字符序列识别结果;其中,所述字符识别模型基于预设训练样本对yolov3神经网络进行训练而得到;
[0012]
判断模块,用于基于所述字符序列识别结果判断所述电路板芯片与焊接位置是否相对应。
[0013]
为实现上述目的,本发明实施例第三方面提供了一种电子装置,该电子装置包括:处理器、存储器和通信总线;
[0014]
所述通信总线用于实现所述处理器和存储器之间的连接通信;
[0015]
所述处理器用于执行所述存储器中存储的一个或者多个程序,以实现上述任意一种电路板检测方法的步骤。
[0016]
为实现上述目的,本发明实施例第四方面提供了一种计算机可读存储介质,该计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处
理器执行,以实现上述任意一种电路板检测方法的步骤。
[0017]
根据本发明实施例提供的电路板检测方法、装置及计算机可读存储介质,基于待识别电路板图像获取电路板芯片的字符图像;将字符图像输入至预设的字符识别模型,输出字符序列识别结果;其中,字符识别模型基于预设训练样本对yolov3神经网络进行训练而得到;基于字符序列识别结果判断电路板芯片与焊接位置是否相对应。通过本发明的实施,结合机器学习的思想来实现电路板芯片的自动检测与识别,并进行芯片焊接位置校验,仅需将待识别电路板图像作为输入,即可直接输出芯片识别结果,无需人工干预,高效准确。
[0018]
本发明其他特征和相应的效果在说明书的后面部分进行阐述说明,且应当理解,至少部分效果从本发明说明书中的记载变的显而易见。
附图说明
[0019]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0020]
图1为本发明第一实施例提供的电路板检测方法的基本流程示意图;
[0021]
图2为本发明第一实施例提供的一种字符识别流程示意图;
[0022]
图3为本发明第一实施例提供的一种字符识别程序界面的示意图;
[0023]
图4为本发明第二实施例提供的电路板检测装置的结构示意图;
[0024]
图5为本发明第三实施例提供的电子装置的结构示意图。
具体实施方式
[0025]
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0026]
第一实施例:
[0027]
为了解决相关技术中采用人工的方式来进行电路板上芯片焊接位置的检测,所导致的作业效率较低以及检测结果准确性无法得到充分保障的技术问题,本实施例提出了一种电路板检测方法,如图1所示为本实施例提供的电路板检测方法的基本流程示意图,本实施例提出的电路板检测方法包括以下的步骤:
[0028]
步骤101、基于待识别电路板图像获取电路板芯片的字符图像。
[0029]
具体的,在本实施例中,待识别电路板以固定速度通过传送带装置依次经过工业相机视觉范围内,相机获取电路板图像,经过数据通信设备传输到工业计算机作为原始输入数据,其中每张图像都基于时间序列参数与每块电路板唯一匹配,即每张电路板图像与每一块电路板实物一一对应。
[0030]
在本实施例一种可选的实施方式中,基于待识别电路板图像获取电路板芯片的字符图像的步骤具体包括:对待识别电路板图像进行预处理,获取电路板芯片的字符轮廓;基
于预设筛选条件对字符轮廓进行筛选,得到有效字符轮廓;将有效字符轮廓中每个字符进行单独分割,得到电路板芯片对应的字符图像。
[0031]
具体的,本实施例的图像预处理包括将获取的原始图像数据一次进行灰度化、滤波、自适应对比度提升、自适应阈值处理等,然后获取到芯片图像上的字符轮廓。再通过对字符轮廓的多种条件刷选,去除其他干扰图像,留下真正的字符轮廓,该字符轮廓即为在芯片图像上检测到的字符,每个字符单独分割出来,保存成字符图像,作为下一个环节字符识别的输入。
[0032]
步骤102、将字符图像输入至预设的字符识别模型,输出字符序列识别结果。
[0033]
如图2所示为本实施例提供的一种字符识别流程示意图。具体的,本实施例的字符识别模型可以基于预设训练样本对yolov3神经网络进行训练而得到。本实施例通过构造yolo神经网络作为字符识别模型,通过在其darknet框架下进行代码的修改,实现对模型的优化。另外,通过制作数据集为模型的训练、测试提供足够的学习样本,进而使模型具备字符识别能力。将经过图像处理后获得的字符图像输入到字符识别模型,输出模型识别结果,以确认芯片上的字符。由此,本实施例通过图像处理算法,将原始芯片图像转化成芯片上的字符图像;通过模型构造与训练,获得稳定的字符识别模型;字符的检测与识别算法仅需要将待检测的芯片图像作为输入,就可以直接输出识别的字符结果,解决了人工操作所存在的局限性,提高了检测效率和准确性。
[0034]
应当说明的是,yolo的全称是you only look once,指只需要浏览一次就可以识别出图中的物体的类别和位置。因为只需要看一次,yolo被称为region-free方法,相比于region-based方法,yolo不需要提前找到可能存在目标的region。也就是说,一个典型的region-based方法的流程是这样的:先通过计算机图形学(或者深度学习)的方法,对图片进行分析,找出若干个可能存在物体的区域,将这些区域裁剪下来,放入一个图片分类器中,由分类器分类。因为yolo作为region-free方法只需要一次扫描,也被称为单阶段(1-stage)模型,而region-based方法也被称为两阶段(2-stage)方法。
[0035]
在本实施例中,yolo卷积神经网络的输出为s
×
s大小的网格,每个网格预测b个可能包括电路板芯片的边界框,电路板芯片所处的边界框的边界框参数表示为(x,y,w,h),其中,x和y为边界框的中心相对于网格的左上角的位置偏移量,w和h为边界框的宽度和高度。
[0036]
此外,为了使模型能够识别获取的字符图像,需要依据待识别的字符图像特征制作数据集。通过构建26个英文字母和10个数字的文件夹结构和图像数据,使之在图像特征上接近待检测字符图像的特征,作为模型的训练和测试数据集,然后将制作好的数据集作为卷积神经网络的训练集训练模型。在实际应用中,由于神经网络模型的训练过程不可预测,当训练结束后模型测试结果可能不满足使用条件,此时则可调整数据集使之尽可能与最终待检测图像接近,从而提高模型的识别准确率。
[0037]
此外,还应当说明的是,本实施例提供的字符检测与识别算法,基于结合传统图像处理与机器学习的思想,使用范围宽广。当该算法拓展应用于其他设备检测的时候,思路是一致的,仅需要重新构建模型结构,制作适当的数据集重新训练模型,从而重新获取新的识别模型,该算法的应用可拓展性高。
[0038]
步骤103、基于字符序列识别结果判断电路板芯片与焊接位置是否相对应。
[0039]
在本实施例一种可选的实施方式中,基于字符序列识别结果判断电路板芯片与焊
接位置是否相对应的步骤,具体包括:将字符序列识别结果与焊接位置对应的预期芯片字符标识进行匹配;基于匹配结果判断电路板芯片与焊接位置是否相对应。
[0040]
具体的,本实施例通过识别芯片图像的字符序列,就可以获得该芯片的id信息,然后将该芯片的id信息与该焊接位置以期焊接的芯片的id信息进行比对,最终即可校验该电路板上的芯片是否正确。
[0041]
应当理解的是,在本实施例中,程序通过图像处理,实现字符的检测与识别后,可以将检测结果以界面的形式进行可视化,如图3所示为本实施例提供的一种字符识别程序界面的示意图。在实际应用中,可以通过qt设计程序界面,界面主要包含数据的输入、执行数据处理、数据结果输出等操作。通过可视化界面,提高使用者的操作体验。
[0042]
在本实施例一种可选的实施方式中,在基于字符序列识别结果判断电路板芯片与焊接位置是否相对应之后,还包括:当电路板芯片与焊接位置不相对应时,基于待识别电路板图像的采集时间序列参数,确定预期芯片字符标识;基于预期芯片字符标识生成机械臂控制指令;其中,机械臂控制指令用于控制机械臂挑拣与预期芯片字符标识对应的电路板芯片。
[0043]
具体的,本实施例当检测与识别的字符组成的字符串与预期字符串(芯片id)不匹配时,利用图像的时间序列参数寻找与之相匹配的芯片,由机械臂将之挑拣出来,由此可以实现检测结果反馈处理的自动化,简便高效。
[0044]
根据本发明实施例提供的电路板检测方法,基于待识别电路板图像获取电路板芯片的字符图像;将字符图像输入至预设的字符识别模型,输出字符序列识别结果;其中,字符识别模型基于预设训练样本对yolov3神经网络进行训练而得到;基于字符序列识别结果判断电路板芯片与焊接位置是否相对应。通过本发明的实施,结合机器学习的思想来实现电路板芯片的自动检测与识别,并进行芯片焊接位置校验,仅需将待识别电路板图像作为输入,即可直接输出芯片识别结果,无需人工干预,高效准确。
[0045]
第二实施例:
[0046]
为了解决相关技术中采用人工的方式来进行电路板上芯片焊接位置的检测,所导致的作业效率较低以及检测结果准确性无法得到充分保障的技术问题,本实施例示出了一种电路板检测装置,具体请参见图4,本实施例的电路板检测装置包括:
[0047]
获取模块401,用于基于待识别电路板图像获取电路板芯片的字符图像;
[0048]
输出模块402,用于将字符图像输入至预设的字符识别模型,输出字符序列识别结果;其中,字符识别模型基于预设训练样本对yolov3神经网络进行训练而得到;
[0049]
判断模块403,用于基于字符序列识别结果判断电路板芯片与焊接位置是否相对应。
[0050]
在本实施例的一些实施方式中,获取模块具体用于:对待识别电路板图像进行预处理,获取电路板芯片的字符轮廓;基于预设筛选条件对字符轮廓进行筛选,得到有效字符轮廓;将有效字符轮廓中每个字符进行单独分割,得到电路板芯片对应的字符图像。
[0051]
在本实施例的一些实施方式中,判断模块具体用于:将字符序列识别结果与焊接位置对应的预期芯片字符标识进行匹配;基于匹配结果判断电路板芯片与焊接位置是否相对应。
[0052]
在本实施例的一些实施方式中,电路板检测装置还包括:生成模块,用于在基于字
符序列识别结果判断电路板芯片与焊接位置是否相对应之后,当电路板芯片与焊接位置不相对应时,基于待识别电路板图像的采集时间序列参数,确定预期芯片字符标识;基于预期芯片字符标识生成机械臂控制指令;其中,机械臂控制指令用于控制机械臂挑拣与预期芯片字符标识对应的电路板芯片。
[0053]
应当说明的是,前述实施例中的电路板检测方法均可基于本实施例提供的电路板检测装置实现,所属领域的普通技术人员可以清楚的了解到,为描述的方便和简洁,本实施例中所描述的电路板检测装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0054]
采用本实施例提供的电路板检测装置,基于待识别电路板图像获取电路板芯片的字符图像;将字符图像输入至预设的字符识别模型,输出字符序列识别结果;其中,字符识别模型基于预设训练样本对yolov3神经网络进行训练而得到;基于字符序列识别结果判断电路板芯片与焊接位置是否相对应。通过本发明的实施,结合机器学习的思想来实现电路板芯片的自动检测与识别,并进行芯片焊接位置校验,仅需将待识别电路板图像作为输入,即可直接输出芯片识别结果,无需人工干预,高效准确。
[0055]
第三实施例:
[0056]
本实施例提供了一种电子装置,参见图5所示,其包括处理器501、存储器502及通信总线503,其中:通信总线503用于实现处理器501和存储器502之间的连接通信;处理器501用于执行存储器502中存储的一个或者多个计算机程序,以实现上述实施例一中的电路板检测方法中的至少一个步骤。
[0057]
本实施例还提供了一种计算机可读存储介质,该计算机可读存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、计算机程序模块或其他数据)的任何方法或技术中实施的易失性或非易失性、可移除或不可移除的介质。计算机可读存储介质包括但不限于ram(random access memory,随机存取存储器),rom(read-only memory,只读存储器),eeprom(electrically erasable programmable read only memory,带电可擦可编程只读存储器)、闪存或其他存储器技术、cd-rom(compact disc read-only memory,光盘只读存储器),数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。
[0058]
本实施例中的计算机可读存储介质可用于存储一个或者多个计算机程序,其存储的一个或者多个计算机程序可被处理器执行,以实现上述实施例一中的方法的至少一个步骤。
[0059]
本实施例还提供了一种计算机程序,该计算机程序可以分布在计算机可读介质上,由可计算装置来执行,以实现上述实施例一中的方法的至少一个步骤;并且在某些情况下,可以采用不同于上述实施例所描述的顺序执行所示出或描述的至少一个步骤。
[0060]
本实施例还提供了一种计算机程序产品,包括计算机可读装置,该计算机可读装置上存储有如上所示的计算机程序。本实施例中该计算机可读装置可包括如上所示的计算机可读存储介质。
[0061]
可见,本领域的技术人员应该明白,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件(可以用计算装置可执行的计算机程序代码来实现)、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/
单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。
[0062]
此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、计算机程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。所以,本发明不限制于任何特定的硬件和软件结合。
[0063]
以上内容是结合具体的实施方式对本发明实施例所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1