CN116091416A - 印制电路板组装缺陷检测、变化检测模型训练方法及装置 - Google Patents
印制电路板组装缺陷检测、变化检测模型训练方法及装置 Download PDFInfo
- Publication number
- CN116091416A CN116091416A CN202211619004.9A CN202211619004A CN116091416A CN 116091416 A CN116091416 A CN 116091416A CN 202211619004 A CN202211619004 A CN 202211619004A CN 116091416 A CN116091416 A CN 116091416A
- Authority
- CN
- China
- Prior art keywords
- component image
- image
- vector
- template
- component
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30141—Printed circuit board [PCB]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Quality & Reliability (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)
Abstract
本公开提供一种印制电路板组装缺陷检测、变化检测模型训练方法及装置,涉及人工智能技术领域,具体涉及图像处理、图像检测、深度学习等技术领域,可应用于印刷电路板制造、印刷电路板检测等场景下。具体实现方案包括:获取印制电路板对应的目标图像;对目标图像进行切分,得到元器件对应的元器件图像;获取元器件的模板元器件图像;通过预设的变化检测模型,对元器件图像和模板元器件图像进行检测,得到元器件图像对应的至少一种缺陷类型的第一分类概率;根据元器件图像对应的至少一种缺陷类型的第一分类概率,确定元器件图像对应的目标缺陷类型。本公开可以大大提升缺陷检测的性能,提高印制电路板组装缺陷检测的精度。
Description
技术领域
本公开涉及人工智能技术领域,具体涉及图像处理、图像检测、深度学习等技术领域,可应用于印刷电路板制造、印刷电路板检测等场景下,尤其涉及一种印制电路板组装缺陷检测、变化检测模型训练方法及装置。
背景技术
印制电路板(printed circuit board,PCB)又称印刷线路板,是电子元器件电气相互连接的载体。PCB的制备过程可以称为印制电路板组装(pinted circuit boardassembly,PCBA)。随着PCB的结构越来越复杂多样化,进行PCBA缺陷的检测可以有助于更好地把控PCB的质量。
目前,符合现代工业要求的PCBA缺陷检测方法主要包括:自动光学检测(automated optical inspection)技术、人工目视主观判定法、功能测试法、基于分类网络的图像识别方法等。
发明内容
本公开提供了一种印制电路板组装缺陷检测和变化检测模型训练方法及装置,能够大大提升缺陷检测的性能,提高印制电路板组装缺陷检测的精度,降低印制电路板组装缺陷的误报率,同时有效降低过杀率,提高直通率。
根据本公开的第一方面,提供了一种印制电路板组装缺陷检测方法,所述方法包括:
获取印制电路板对应的目标图像;根据印制电路板中至少一个元器件的位置,对目标图像进行切分,得到至少一个元器件对应的元器件图像;根据印制电路板的标识信息,从预设的模板图像集合中获取至少一个元器件的模板元器件图像,得到元器件图像对应的模板元器件图像;通过预设的变化检测模型,对元器件图像和元器件图像对应的模板元器件图像进行检测,得到元器件图像对应的至少一种缺陷类型的第一分类概率;根据元器件图像对应的至少一种缺陷类型的第一分类概率,确定元器件图像对应的目标缺陷类型。
根据本公开的第二方面,提供了一种变化检测模型训练方法,所述方法包括:
获取样本元器件图像、样本元器件图像的标注信息、以及样本元器件图像对应的样本模板图像,样本元器件图像中包括至少一种缺陷类型,标注信息用于指示样本元器件图像存在的缺陷类型;以样本元器件图像和样本模板图像作为输入、标注信息作为输出,对预设的变化检测网络进行训练,得到变化检测模型。
根据本公开的第三方面,提供了一种印制电路板组装缺陷检测装置,所述装置包括:
获取单元,用于获取印制电路板对应的目标图像;图像处理单元,用于根据印制电路板中至少一个元器件的位置,对目标图像进行切分,得到至少一个元器件对应的元器件图像;获取单元,还用于根据印制电路板的标识信息,从预设的模板图像集合中获取至少一个元器件的模板元器件图像,得到元器件图像对应的模板元器件图像;检测单元,用于通过预设的变化检测模型,对元器件图像和元器件图像对应的模板元器件图像进行检测,得到元器件图像对应的至少一种缺陷类型的第一分类概率;检测单元,还用于根据元器件图像对应的至少一种缺陷类型的第一分类概率,确定元器件图像对应的目标缺陷类型。
根据本公开的第四方面,提供了一种变化检测模型训练装置,所述装置包括:
获取单元,用于获取样本元器件图像、样本元器件图像的标注信息、以及样本元器件图像对应的样本模板图像,样本元器件图像中包括至少一种缺陷类型,标注信息用于指示样本元器件图像存在的缺陷类型;训练单元,用于以样本元器件图像和样本模板图像作为输入、标注信息作为输出,对预设的变化检测网络进行训练,得到变化检测模型。
根据本公开的第五方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如第一方面或第二方面所述的方法。
根据本公开的第六方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使计算机执行根据第一方面或第二方面所述的方法。
根据本公开的第七方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据第一方面或第二方面所述的方法。
根据本公开的第八方面,提供了一种印制电路板组装缺陷检测系统,包括:边缘计算设备和AOI设备;AOI设备用于拍摄印制电路板对应的目标图像;边缘计算设备用于根据第一方面的方法,检测目标图像中的缺陷。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1为本公开实施例提供的PCBA缺陷检测方法的流程示意图;
图2为本公开实施例提供的PCBA缺陷检测方法的另一流程示意图;
图3为本公开实施例提供的变化检测模型的组成示意图;
图4为本公开实施例提供的图1中S104的一种实现流程示意图;
图5为本公开实施例提供的图4中S401的一种实现流程示意图;
图6为本公开实施例提供的PCBA缺陷检测方法的又一流程示意图;
图7为本公开实施例提供的PCBA缺陷检测方法的又一流程示意图;
图8为本公开实施例提供的一种PCBA缺陷检测系统的组成示意图;
图9为本公开实施例提供的变化检测模型训练方法的流程示意图;
图10为本公开实施例提供的PCBA缺陷检测装置的组成示意图;
图11为本公开实施例提供的变化检测模型训练装置的组成示意图;
图12示出了可以用来实施本公开的实施例的示例电子设备1200的示意性框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
应当理解,在本公开各实施例中,字符“/”一般表示前后关联对象是一种“或”的关系。术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。
印制电路板(printed circuit board,PCB)又称印刷线路板,是电子元器件电气相互连接的载体。PCB的制备过程可以称为印制电路板组装(pinted circuit boardassembly,PCBA)。随着PCB的结构越来越复杂多样化,进行PCBA缺陷的检测可以有助于更好地把控PCB的质量。
目前,符合现代工业要求的PCBA缺陷检测方法主要包括:自动光学检测(automated optical inspection,AOI)技术、人工目视主观判定法、功能测试法、基于分类网络的图像识别方法等。
其中,AOI技术可以通过相机对PCB进行扫描获取到PCB焊点区域的图像,运用视觉处理技术完成自动检测PCBA焊接缺陷,提取相应焊点的特征,根据提取的焊点特征与数据库中标准特征进行对比,确定焊接缺陷类型并标示,分析质量问题给出检测结果数据,等待相关人员处理。但AOI技术中,为保证缺陷的召回率,往往导致缺陷检测的过杀率较高,直通率较低,大大增加了人工处理的工作量,检测效率较低。
人工目视主观判定法中,人员主观判断因素强,检测准确率低、人员成本投入高、缺陷检测不连续、数据集合困难度大。
功能测试法中,需要专业的测试流程和专门的测试设备来实现缺陷检测,测试程序的编写复杂,而且推广使用局限性大,检测准确率也较低。
针对新的PCB版型,上述AOI技术需要负载的参数设置和长时间人员培训才具有缺陷检测与分类能力,人工目视主观判定法也需要长时间人员培训,而功能测试法则需要重新配置测试流程和更新测试设备。也即,上述AOI技术、人工目视主观判定法、功能测试法等均无法快速适配新的PCB版型。
相较于AOI技术、人工目视主观判定法、功能测试法等,基于分类网络的图像识别方法虽然可以减少人员主观判断因素造成的干扰、降低人工处理成本,且能够适用于多种PCB版型和快速适配新的PCB版型,但基于分类网络的图像识别方法的检测准确率也较低,且数据标注成本较高。
可以看到,目前的PCBA缺陷检测方法普遍存在检测准确率低、缺陷检测性能较差的问题。
在此背景技术下,本公开提供了一种印制电路板组装(PCBA)缺陷检测方法,可以大大提升缺陷检测的性能,提高PCBA缺陷检测的精度,降低PCBA缺陷的误报率,同时有效降低过杀率,提高直通率。
该方法的执行主体可以是计算机或服务器,或者还可以是其他具有数据处理能力的设备。在此对该方法的执行主体不作限制。
一些实施例中,服务器可以是单独的一个服务器,或者,也可以是由多个服务器构成的服务器集群。部分实施方式中,服务器集群还可以是分布式集群。本公开对服务器的具体实现方式也不作限制。
下面对该PCBA缺陷检测方法进行示例性说明。
图1为本公开实施例提供的PCBA缺陷检测方法的流程示意图。如图1所示,该方法可以包括:
S101、获取印制电路板对应的目标图像。
示例性地,目标图像可以是通过AOI设备的摄像头对经PCBA流程得到的印制电路板进行拍摄得到的。
例如,PCBA生产线上,每产出一个印制电路板,AOI设备均可以通过摄像图对印制电路板进行拍摄,得到印制电路板对应的目标图像。
本公开实施例中,针对每个印制电路板对应的目标图像,均可以按照本公开所提供的PCBA缺陷检测方法进行缺陷检测。
S102、根据印制电路板中至少一个元器件的位置,对目标图像进行切分,得到至少一个元器件对应的元器件图像。
示例性地,一些实现方式中,印制电路板中每个元器件的位置可以为已知的。例如,可以按照印制电路板的制作要求,预先确定印制电路板中每个元器件的坐标。S102可以包括:根据每个元器件(也可以是一个或多个元器件,如至少一个)的坐标,在目标图像中确定每个元器件对应的像素点区域,并对每个元器件对应的像素点区域进行切分,得到每个元器件对应的元器件图像。每个元器件对应的元器件图像也可以称为元器件小图。
另外一些实现方式中,S102也可以包括:对目标图像进行目标检测,以确定印制电路板中每个元器件在目标图像中的位置。然后,根据每个元器件在目标图像中的位置,对每个元器件对应的像素点区域进行切分,得到每个元器件对应的元器件图像。
S103、根据印制电路板的标识信息,从预设的模板图像集合中获取至少一个元器件的模板元器件图像,得到元器件图像对应的模板元器件图像。
示例性地,一些实现方式中,预设的模板图像集合中可以包括一种或多种印制电路板分别对应的元器件的模板元器件图像。不同类型的印制电路板对应的元器件的模板元器件图像可以通过印制电路板的标识信息进行区分。例如,一种标识信息表示一种类型的印制电路板,且该标识信息与该种类型的印制电路板对应的元器件的模板元器件图像之间具有对应关系。S103中,可以根据标识信息与印制电路板对应的元器件的模板元器件图像之间的对应关系,查询得到S101中所述的印制电路板中每个元器件的模板元器件图像。也即,一个元器件对应一个切分得到的元器件图像和一个预设的模板元器件图像。
可选地,模板图像集合中的模板元器件图像的获取方式,可以参考S102中每个元器件对应的元器件图像的获取方式,也可以通过对模板图像进行切分得到。模板图像是指整个印制电路板的图像。可以理解的,模板图像是标准无缺陷的印制电路板的图像。
另外一些实现方式中,预设的模板图像集合中可以包括一种或多种印制电路板分别对应的模板图像(即整个印制电路板的标准图像)。不同类型的印制电路板对应的模板图像可以通过印制电路板的标识信息进行区分。例如,一种标识信息表示一种类型的印制电路板,且该标识信息与该种类型的印制电路板对应的模板图像之间具有对应关系。S103可以包括:根据标识信息与印制电路板对应的模板图像之间的对应关系,查询得到S101中所述的印制电路板对应的模板图像。然后,对S101中所述的印制电路板对应的模板图像,按照元器件的位置进行切分,得到S101中所述的印制电路板中每个元器件的模板元器件图像。也即,一个元器件对应一个切分得到的元器件图像和一个对模板图像进行切分得到的模板元器件图像。
其中,对模板图像进行切分的具体方式可以参考上述对目标图像进行切分的方式,此处不再赘述。
或者,S103中也可以根据S102中切分得到的元器件图像,对印制电路板对应的模板图像进行切分,得到每个元器件的模板元器件图像。
可选地,标识信息可以在目标图像中携带,也可以和目标图像一起获取得到,在此对标识信息的获取方式不作限制。
示例性地,标识信息可以包括印制电路板的版型信息。或者,标识信息也可以是其他能够表示印制电路板的类型的字段或标识,在此不作限制。
S104、通过预设的变化检测模型,对元器件图像和元器件图像对应的模板元器件图像进行检测,得到元器件图像对应的至少一种缺陷类型的第一分类概率。
示例性地,可以将元器件图像和元器件图像对应的模板元器件图像一起输入预设的变化检测模型,变化检测模型可以根据元器件图像和元器件图像对应的模板元器件图像进行检测,输出每个元器件图像对应的至少一种缺陷类型的分类概率。本公开实施例中,变化检测模型输出的分类概率可以称为第一分类概率。
其中,至少一种缺陷类型可以包括:短路、断路、凸起、凹陷、空洞等。本公开对缺陷类型的类别和数量不作限制。
针对每种缺陷类型,变化检测模型可以输出元器件图像中包含该种缺陷类型的概率,即元器件图像对应的该种缺陷类型的第一分类概率。
S105、根据元器件图像对应的至少一种缺陷类型的第一分类概率,确定元器件图像对应的目标缺陷类型。
示例性地,一些实现方式中,针对每个元器件图像,S105中可以根据每个元器件图像对应的每种缺陷类型的第一分类概率,确定第一分类概率大于第一概率阈值的缺陷类型为元器件图像对应的目标缺陷类型,所有元器件图像对应的目标缺陷类型即印制电路板存在的缺陷类型。
其中,第一概率阈值可以为95%、90%等,在此对第一概率阈值的大小不作限制。
可选地,针对不同版型的印制电路板,上述第一概率阈值的大小可以相同或不同。
另外一些实现方式中,针对每个元器件图像,S105中也可以根据每个元器件图像对应的每种缺陷类型的第一分类概率,确定第一分类概率最大的一种或多种缺陷类型为元器件图像对应的目标缺陷类型,在此不作限制。
可选地,对于印制电路板中的背景区域(即未部署元器件的区域),也可以将其认为是一个特殊的元器件区域进行对待,如可以称为背景元器件。针对背景元器件,也可以输出背景元器件图像对应的目标缺陷类型。
本公开实施例通过获取印制电路板对应的目标图像,根据印制电路板中每个(或至少一个)元器件的位置,对目标图像进行切分,得到每个元器件对应的元器件图像,根据印制电路板的标识信息,从预设的模板图像集合中获取每个元器件的模板元器件图像,得到每个元器件图像对应的模板元器件图像,通过预设的变化检测模型,对元器件图像和元器件图像对应的模板元器件图像进行检测,得到每个元器件图像对应的至少一种缺陷类型的第一分类概率,并根据每个元器件图像对应的至少一种缺陷类型的第一分类概率,确定每个元器件图像对应的目标缺陷类型,可以实现结合标准印制电路板中元器件的模板图像,通过变化检测模型来对实际元器件的图像进行检测,以确定印制电路板存在的缺陷类型。其中,通过加入元器件的模板图像,可以为缺陷检测提供更丰富的先验信息,大大提升了缺陷检测的性能,提高了PCBA缺陷检测的精度,能够有效降低PCBA缺陷的误报率。
另外,相较于常规的AOI技术而言,本公开实施例提供的该PCBA缺陷检测方法的抗干扰能力和泛化性能较强,可以适用于多板式、多元器件的综合分析判断,在保证低成本、实时性以及高召回率的前提下,明显降低PCBA缺陷检测的过杀率,提高直通率。
而且,相较于常规的分类方法而言,本公开实施例提供的PCBA缺陷检测方法中,在训练变化检测模型时,对样本数据的标注成本也更小,仅需要针对元器件图像标注其存在的缺陷类型即可。
可选地,上述S102和S103可以通过一个图像对齐模块来实现,上述S104可以通过一个变化检测模块来实现,上述S105可以通过一个后处理模块来实现。其中,图像对齐模块、变化检测模块、以及后处理模块等可以是软件或硬件,又或者软硬件结合实现。例如,可以是一段能够实现相应功能的代码。又例如,前述功能模块还可以能够调用其他程序以实现相应功能的接口。
示例性地,图2为本公开实施例提供的PCBA缺陷检测方法的另一流程示意图。如图2所示,该方法中,图像对齐模块可以接收目标图像,并根据印制电路板中每个元器件的位置,对目标图像进行切分,得到每个元器件对应的元器件图像。图像对齐模块还可以根据印制电路板的标识信息,从预设的模板图像集合中获取每个元器件的模板元器件图像,得到每个元器件图像对应的模板元器件图像,并将元器件图像和对应的模板元器件图像发送给变化检测模块。变化检测模块可以通过预设的变化检测模型,对元器件图像和元器件图像对应的模板元器件图像进行检测,得到每个元器件图像对应的至少一种缺陷类型的第一分类概率。后处理模块可以根据每个元器件图像对应的至少一种缺陷类型的第一分类概率,确定每个元器件图像对应的目标缺陷类型。
可选地,本公开实施例所述的变化检测模型可以基于changeFormer变化检测算法构建的变化检测网络训练得到。例如,图3为本公开实施例提供的变化检测模型的组成示意图。如图3所示,变化检测模型可以包括:编码器、差异模块、以及解码器。
其中,编码器可以根据元器件图像和模板元器件图像在至少两种分辨率下的特征图,获取元器件图像和模板元器件图像在所述至少两种分辨率下的高维特征图。差异模块可以根据元器件图像和模板元器件图像在所述至少两种分辨率下的高维特征图,获取元器件图像和模板元器件图像在所述至少两种分辨率下的特征差异图。解码器可以对特征差异图进行预测,得到元器件图像对应的至少一种缺陷类型的第一分类概率。
示例性地,图4为本公开实施例提供的图1中S104的一种实现流程示意图。如图4所示,S104可以包括:
S401、将元器件图像和模板元器件图像在至少两种分辨率下的特征图输入编码器,通过编码器获取元器件图像和模板元器件图像在至少两种分辨率下的高维特征图。
示例性地,编码器可以为Hierarchical Transformer编码器,可以用于提取二进制图像的粗略和精细特征。Hierarchical Transformer编码器可以包括多个(至少两个),每个编码器可以对应一种分辨率。每个编码器可以输入相应分辨率的元器件图像和模板元器件图像的特征图。如:可以依次向每个编码器输入分辨率不断下降的元器件图像和模板元器件图像的特征图。
编码器对至少两种分辨率下的特征图进行编码后,可以得到元器件图像和模板元器件图像在至少两种分辨率下的高维特征图。
S402、将元器件图像和模板元器件图像在至少两种分辨率下的高维特征图输入差异模块,通过差异模块获取元器件图像和模板元器件图像在至少两种分辨率下的特征差异图。
示例性地,差异模块(difference modules)可以用于计算多尺度(分辨率)下的特征差异。例如,差异模块可以将元器件图像和模板元器件图像在每种分辨率下的高维特征图,经过拼接送入2D卷积、ReLU、BatchNorm2D组成的结构中,计算每种分辨率下两张图像的最佳距离度量,得到元器件图像和模板元器件图像在至少两种分辨率下的特征差异图。
S403、将元器件图像和模板元器件图像在至少两种分辨率下的特征差异图输入解码器,通过解码器对特征差异图进行预测,得到元器件图像对应的至少一种缺陷类型的第一分类概率。
示例性地,解码器可以为多层感知机(multilayer perceptron,MLP)解码器,或轻量MLP解码器,可以用于融合多级特征差异并预测。例如,解码器可以统一上述至少两种分辨率对应的特征差异图的通道维度,然后将其统一下采样到最小特征图尺寸后,连接多种分辨率(如4种)对应的特征差异图。之后,可以将连接后的特征差异图送入一个MLP层完成特征融合,并通过MaxPooling层(可以将特征图的尺寸变为1)和MLP层的处理后,输出元器件图像对应的至少一种缺陷类型的第一分类概率。
本实施例中,通过提取元器件图像和模板元器件图像在至少两种分辨率下的高维特征图,结合元器件图像和模板元器件图像在至少两种分辨率下的高维特征图进行分类概率概率的预测,可以提高分类概率的预测准确度,从而提高PCBA缺陷检测的精度。
另外,本实施例中,只需要获取缺陷类别,并不需要得到具体变化掩码的特点,可以有效降低数据标注成本。
示例性地,图5为本公开实施例提供的图4中S401的一种实现流程示意图。如图5所示,S401可以包括:
S501、通过编码器对元器件图像和模板元器件图像在至少两种分辨率下的特征图进行位置编码,得到元器件图像在至少两种分辨率下的特征图对应的第一向量、第二向量和第三向量,以及,模板元器件图像在至少两种分辨率下的特征图对应的第四向量、第五向量和第六向量。
示例性地,每个编码器接收到输入的元器件图像和模板元器件图像后,可以先分别对元器件图像和模板元器件图像进行位置编码(positional encoding),形成元器件图像和模板元器件图像分别对应的三个输入Q、K、V,其中,元器件图像对应的Q即第一向量、K即第二向量、V即第三向量,模板元器件图像对应的Q即第四向量、K即第五向量、V即第六向量。
S502、通过编码器对第一向量、第二向量和第三向量进行多头注意力处理,得到第七向量、第八向量和第九向量,以及,对第四向量、第五向量和第六向量进行多头注意力处理,得到第十向量、第十一向量和第十二向量。
示例性地,对元器件图像和模板元器件图像分别对应的三个输入Q、K、V,可以经过一个多头注意力模块(multi-head attention)进行处理,得到处理后的Q、K、V。其中,元器件图像对应的处理后的Q、K、V依次称为第七向量、第八向量、以及第九向量,模板元器件图像对应的处理后的Q、K、V依次称为第十向量、第十一向量、以及第十二向量。
S503、通过编码器将第一向量、第二向量和第三向量,与第七向量、第八向量和第九向量进行残差连接后,进行层归一化和非线性变换,并在完成非线性变换后再次进行残差连接和层归一化,输出元器件图像在至少两种分辨率下的高维特征图,以及,将第四向量、第五向量和第六向量,与第十向量、第十一向量和第十二向量进行残差连接后,进行层归一化和非线性变换,并在完成非线性变换后再次进行残差连接和层归一化,输出模板元器件图像在至少两种分辨率下的高维特征图。
例如,可以将处理后的Q、K、V与处理之前的Q、K、V形成残差连接,之后在进行层归一化(layer norm),最后通过feed forward层,完成非线性变换,之后再经过残差连接和层归一化输出。最终得到元器件图像和模板元器件图像在至少两种分辨率下的高维特征图。
本实施例可以获取到特征信息更加丰富的高维特征图,用于后续进行PCBA缺陷检测,能够提高PCBA缺陷检测的精度。
可选地,上述变化检测模型,可以通过采用样本元器件图像、样本元器件图像的标注信息、以及样本元器件图像对应的样本模板图像,对预设的变化检测网络进行训练得到。预设的变化网络的结构可以参考上述变化检测模型的结构,不再赘述。样本元器件图像中包括至少一种缺陷类型,标注信息用于指示样本元器件图像存在的缺陷类型。
图6为本公开实施例提供的PCBA缺陷检测方法的又一流程示意图。如图6所示,一些实施例中,所述通过预设的变化检测模型,对元器件图像和元器件图像对应的模板元器件图像进行检测之前,所述方法还包括:
S601、对元器件图像和模板元器件图像进行快速傅里叶变换,将元器件图像和模板元器件图像的空间域转换为频率域。
示例性地,对元器件图像和模板元器件图像进行快速傅里叶变换(fast Fouriertransform,FFT),将元器件图像和模板元器件图像的空间域转换为频率域后,得到的图像可以称为频域元器件图像和频域模板元器件图像。
S602、将元器件图像频域的低频区域替换为模板元器件图像频域的低频区域。
例如,对于上述频域元器件图像和频域模板元器件图像,可以先通过Numpy.fft.fftshift算法将频域模板元器件图像的低频分量移动到图像中心后,截取预设大小的中心区域,并将截取区域赋值给频域元器件图像,从而实现将元器件图像频域的低频区域替换为模板元器件图像频域的低频区域。其中,预设大小可以为2*2像素点区域,3*3像素点区域等,不作限制。
将元器件图像频域的低频区域替换为模板元器件图像频域的低频区域后,可以执行S603,将将元器件图像和模板元器件图像的频率域转换为空间域。
S603、对元器件图像和模板元器件图像进行快速傅里叶逆变换,将元器件图像和模板元器件图像的频率域转换为空间域。
示例性地,快速傅里叶逆变换也可以称为逆快速傅里叶变换(IFFT)。
应当理解,高频分量主要是对图像边缘和轮廓的度量,低频分量主要是对整幅图像强度。将图像的空间域转换为频率域后,灰度值变化剧烈的地方对应高频,反之则对应低频。
本实施例中,通过对元器件图像和模板元器件图像进行快速傅里叶变换,将元器件图像和模板元器件图像的空间域转换为频率域后,将元器件图像频域的低频区域替换为模板元器件图像频域的低频区域,再对元器件图像和模板元器件图像进行快速傅里叶逆变换,将元器件图像和模板元器件图像的频率域转换为空间域,可以实现元器件图像和模板元器件图像的风格统一化,将元器件图像的成像特点调整成模板元器件图像的成像特点。通过将元器件图像的成像特点调整成模板元器件图像的成像特点,可以提高后续变化检测模型的检测精度,从而进一步提高PCBA缺陷检测的准确性。
示例性地,以上述图2为例,在图像对齐模块和变化检测模块之间还可以包括一个图像一致化模块,图像一致化模块可以用于实现上述风格统一化的功能,此处不再用附图表示。
一些实施例中,所述根据印制电路板的标识信息,从预设的模板图像集合中获取至少一个元器件的模板元器件图像之前,所述方法还包括:确定模板图像集合中存在印制电路板中元器件的模板元器件图像。当模板图像集合中不存在印制电路板中元器件的模板元器件图像时,所述方法还包括:通过预设的分类模型,对元器件图像进行分类,得到元器件图像对应的至少一种缺陷类型的第二分类概率;根据元器件图像对应的至少一种缺陷类型的第二分类概率,确定元器件图像对应的目标缺陷类型。
示例性地,图7为本公开实施例提供的PCBA缺陷检测方法的又一流程示意图。如图7所示,该方法可以包括:
S701、获取印制电路板对应的目标图像。
S701可以参考S101所述,不再赘述。
S702、根据印制电路板中每个元器件的位置,对目标图像进行切分,得到每个元器件对应的元器件图像。
S702可以参考S102所述,不再赘述。
S703、确定模板图像集合中是否存在印制电路板中元器件的模板元器件图像。
应当理解,当模板图像集合中存储的是上述模板图像时,模板图像集合中存在印制电路板中元器件的模板元器件图像是指模板图像集合中存在印制电路板的模板图像。
当确定模板图像集合中存在印制电路板中元器件的模板元器件图像时(即若是),执行S704-S706;当确定模板图像集合中不存在印制电路板中元器件的模板元器件图像时(即若否),执行S707-S708。
S704、根据印制电路板的标识信息,从预设的模板图像集合中获取每个元器件的模板元器件图像,得到每个元器件图像对应的模板元器件图像。
S704可以参考S103所述,不再赘述。
S705、通过预设的变化检测模型,对元器件图像和元器件图像对应的模板元器件图像进行检测,得到每个元器件图像对应的至少一种缺陷类型的第一分类概率。
S705可以参考S104所述,不再赘述。
S706、根据每个元器件图像对应的至少一种缺陷类型的第一分类概率,确定每个元器件图像对应的目标缺陷类型。
S705可以参考S105所述,不再赘述。
S707、通过预设的分类模型,对元器件图像进行分类,得到每个元器件图像对应的至少一种缺陷类型的第二分类概率。
S708、根据每个元器件图像对应的至少一种缺陷类型的第二分类概率,确定每个元器件图像对应的目标缺陷类型。
其中,分类模型可以参考传统深度学习模型,可以通过样本元器件图像以及样本元器件图像的标注信息对神经网络进行训练得到。标注信息用于指示所述样本元器件图像存在的缺陷类型。
将元器件图像输入分类模型后,分类模型可以对元器件图像进行预测,得到元器件图像对应的至少一种缺陷类型的分类概率。本公开实施例中,分类模型输出的分类概率可以称为第二分类概率。
其中,至少一种缺陷类型可以参考前述实施例中所述,不再赘述。
针对每种缺陷类型,分类模型可以输出元器件图像中包含该种缺陷类型的概率,即元器件图像对应的该种缺陷类型的第二分类概率。
根据每个元器件图像对应的至少一种缺陷类型的第二分类概率,确定每个元器件图像对应的目标缺陷类型的具体方式,与根据每个元器件图像对应的至少一种缺陷类型的第一分类概率,确定每个元器件图像对应的目标缺陷类型的具体方式相同或相似,在此不再赘述。
本实施例中,分类模型可以为PCBA缺陷检测提供一层保障,提高检测准确性。例如,当模板集合中不在印制电路板中元器件的模板元器件图像时,可能无法根据模型无法得到准确的检测结果,通过分类模型则可以针对模板集合中不在印制电路板中元器件的模板元器件图像的情况,来保证检测的有效性。
可选地,分类模型可以通过ResNet50网络训练得到,在此不作限制。
一些实施例中,在上述图1所示的实施例的基础上,所述方法还包括:通过预设的分类模型,对元器件图像进行分类,得到元器件图像对应的至少一种缺陷类型的第二分类概率。所述根据元器件图像对应的至少一种缺陷类型的第一分类概率,确定元器件图像对应的目标缺陷类型,包括:以第一分类概率所占权重为第一权重、第二分类概率所占权重为第二权重,确定元器件图像对应的至少一种缺陷类型的目标分类概率;根据元器件图像对应的至少一种缺陷类型的目标分类概率,确定元器件图像对应的目标缺陷类型。
其中,分类模型和第二分类概率可以参考前述实施例所述,不再赘述。
示例性地,假设缺陷类型包括:缺陷类型1、缺陷类型2、以及缺陷类型3,其中,缺陷类型1的第一分类概率为P1、第二分类概率为M1,缺陷类型2的第一分类概率为P2、第二分类概率为M2,缺陷类型3的第一分类概率为P3、第二分类概率为M3,第一权重为α,第二权重为β,则缺陷类型1的目标分类概率可以通过下述公式(1)得到。
Q1=α*P1+β*M1 公式(1)
公式(1)中,Q1表示缺陷类型1的目标分类概率。
缺陷类型2的目标分类概率可以通过下述公式(2)得到。
Q2=α*P2+β*M2 公式(2)
公式(2)中,Q3表示缺陷类型2的目标分类概率。
缺陷类型3的目标分类概率可以通过下述公式(3)得到。
Q3=α*P3+β*M3 公式(3)
公式(3)中,Q3表示缺陷类型3的目标分类概率。
在得到缺陷类型1、缺陷类型2、以及缺陷类型3的目标分类概率后,可以选择目标分类概率大于第二概率阈值的缺陷类型为元器件图像对应的目标缺陷类型,所有元器件图像对应的目标缺陷类型即印制电路板存在的缺陷类型。或者,也可以选择目标分类概率最大的一种或多种缺陷类型作为目标缺陷类型。
其中,第二概率阈值可以为95%、90%等,在此对第二概率阈值的大小不作限制。
可选地,第一权重和第二权重可以相同,也可以不同。一些实现方式中,第一权重和第二权重之和还可以为1,也可以不为1。还有一些实现方式中,第一权重和第二权重均可以为大于0且小于1的数。在此对第一权重和第二权重的大小均不作限制。
本实施例通过结合变化检测模型和分类模型两种模型的检测结果来共同确定PCBA缺陷类型,可以进一步提高PCBA缺陷检测的准确性。
一些实施例中,所述方法还包括:通过预设的字符识别模型,对目标图像进行识别,得到目标图像中包含的字符。
示例性地,字符识别模型可以采用样本图像和样本图像的字符标签,对CRNN网络进行训练得到。其中,字符标签用于标识样本图像中包含的字符,CRNN网络是结合CNN网络和RNN网络,实现端到端可训练的文本识别网络。CRNN网络可以包括:CNN网络、RNN网络以及转录层。目标图像经过CNN网络的处理后,提取得到特征序列,送入RNN网络,RNN网络对特征序列中的每一帧进行预测,转录层对RNN的每帧预测结果进行翻译,得到最终的一个标签的序列,该系列即为目标图像中包含的字符。
本实施例可以对PCBA缺陷检测中涉及的目标图像进行字符识别,能够识别出目标图像中的字符,以为PCBA缺陷检测或之后的其他处理流程提供更多参考信息。
可选地,所述获取印制电路板对应的目标图像,包括:接收来自AOI设备的目标图像。其中,AOI设备包括:AOI数据存储模块和AOI信号存储模块。AOI设备拍摄到目标图像后,根据印制电路板的标识信息,将目标图像存储于AOI数据存储模块,并在AOI信号存储模块中新增标识信息。
当AOI信号存储模块中新增了标识信息时,AOI设备根据标识信息发送AOI数据存储模块中的目标图像。
本实施例可以更好地实现数据监控,能够提高目标图像的查询效率。例如,针对不同版型的印制电路板,AOI设备可以及时监控到AOI信号存储模块中是否新增标识信息,并根据AOI信号存储模块中新增的标识信息,在AOI数据存储模块中选择目标图像进行发送,效率更高。
可选地,所述根据元器件图像对应的至少一种缺陷类型的第一分类概率,确定元器件图像对应的目标缺陷类型之后,所述方法还包括:向AOI设备发送检测结果,检测结果包括:元器件图像对应的目标缺陷类型。
其中,AOI设备还包括:AI结果存储模块和AI信号存储模块;AOI设备接收到检测结果后,根据印制电路板的标识信息,将检测结果存储于AI结果存储模块,并在AI信号存储模块中新增标识信息。
本实施例中,AI结果存储模块和AI信号存储模块可以提高检测结果的存储效率以及查询效率,当后续需要查询PCBA缺陷检测结果时,可以根据AI信号存储模块中新增的标识信息,在AI结果存储模块中进行查询,查询效率较高。
示例性地,图8为本公开实施例提供的一种PCBA缺陷检测系统的组成示意图。如图8所示,PCBA缺陷检测系统可以包括:AOI设备和边缘计算设备。边缘计算设备可以是上述服务器、计算机等,在此不作限制。
AOI设备可以包括:AOI数据存储模块和AOI信号存储模块、AI结果存储模块和AI信号存储模块、监控器、客户端。边缘计算设备可以包括:服务端和推理服务。
AOI设备拍摄到目标图像后,可以通过AOI数据存储模块根据对应板式、板编号(即标识信息)存储目标图像,方便数据溯源。同时,AOI信号存储模块在当前板号队列中存储数据信息(标识信息)。监控器监测到出现新的板号(新的标识信息)时,到AOI数据存储模块内读取对应板号中的目标图像,实现数据的实时监控读取任务,并向客户端转发目标图像。
客户端收到监控器发来的目标图像后,发送给边缘设备处理。
边缘设备中部署的服务端可以接收到目标图像,并将目标图像送入推理服务中。推理服务可以按照前述方法实施例中所述的方式进行PCBA缺陷检测,并将检测结果通过服务端返回给客户端。
客户端收到检测结果后,将结果根据板式、板编号送入AI结果存储模块,完成结果存储,同时AI信号存储模块在当前板号队列中存储当前数据信息,代表当前数据已经处理完成。监控器可以待当前板号所有的数据处理完后,综合统计结果,返回给AOI机台,实现结果输出。
该系统可以便于在工厂局域网范围内完成部署。
基于前述实施例,本公开实施例还提供一种变化检测模型训练方法。图9为本公开实施例提供的变化检测模型训练方法的流程示意图。
如图9所示,变化检测模型训练方法,可以包括:
S901、获取样本元器件图像、样本元器件图像的标注信息、以及样本元器件图像对应的样本模板图像,样本元器件图像中包括至少一种缺陷类型,标注信息用于指示样本元器件图像存在的缺陷类型。
S902、以样本元器件图像和样本模板图像作为输入、标注信息作为输出,对预设的变化检测网络进行训练,得到变化检测模型。
变化检测网络可以参考前述实施例中,不再赘述。
示例性实施例中,本公开实施例还提供一种印制电路板组装(PCBA)缺陷检测装置,可以用于实现如前述实施例所述的PCBA缺陷检测方法。图10为本公开实施例提供的PCBA缺陷检测装置的组成示意图。如图10所示,该PCBA缺陷检测装置可以包括:获取单元1001、图像处理单元1002、检测单元1003。
获取单元1001,用于获取印制电路板对应的目标图像。
图像处理单元1002,用于根据印制电路板中至少一个元器件的位置,对目标图像进行切分,得到至少一个元器件对应的元器件图像。
获取单元1001,还用于根据印制电路板的标识信息,从预设的模板图像集合中获取至少一个元器件的模板元器件图像,得到元器件图像对应的模板元器件图像。
检测单元1003,用于通过预设的变化检测模型,对元器件图像和元器件图像对应的模板元器件图像进行检测,得到元器件图像对应的至少一种缺陷类型的第一分类概率。
检测单元1003,还用于根据元器件图像对应的至少一种缺陷类型的第一分类概率,确定元器件图像对应的目标缺陷类型。
可选地,图像处理单元1002可以包括上述图像对齐模块、图像一致化模块等。检测单元1003可以包括上述变化检测模块、后处理模块等。
可选地,变化检测模型包括:编码器、差异模块、以及解码器;检测单元1003,具体用于:将元器件图像和模板元器件图像在至少两种分辨率下的特征图输入编码器,通过编码器获取元器件图像和模板元器件图像在至少两种分辨率下的高维特征图;将元器件图像和模板元器件图像在至少两种分辨率下的高维特征图输入差异模块,通过差异模块获取元器件图像和模板元器件图像在至少两种分辨率下的特征差异图;将元器件图像和模板元器件图像在至少两种分辨率下的特征差异图输入解码器,通过解码器对特征差异图进行预测,得到元器件图像对应的至少一种缺陷类型的第一分类概率。
可选地,检测单元1003,具体用于:通过编码器对元器件图像和模板元器件图像在至少两种分辨率下的特征图进行位置编码,得到元器件图像在至少两种分辨率下的特征图对应的第一向量、第二向量和第三向量,以及,模板元器件图像在至少两种分辨率下的特征图对应的第四向量、第五向量和第六向量;通过编码器对第一向量、第二向量和第三向量进行多头注意力处理,得到第七向量、第八向量和第九向量,以及,对第四向量、第五向量和第六向量进行多头注意力处理,得到第十向量、第十一向量和第十二向量;通过编码器将第一向量、第二向量和第三向量,与第七向量、第八向量和第九向量进行残差连接后,进行层归一化和非线性变换,并在完成非线性变换后再次进行残差连接和层归一化,输出元器件图像在至少两种分辨率下的高维特征图,以及,将第四向量、第五向量和第六向量,与第十向量、第十一向量和第十二向量进行残差连接后,进行层归一化和非线性变换,并在完成非线性变换后再次进行残差连接和层归一化,输出模板元器件图像在至少两种分辨率下的高维特征图。
可选地,在检测单元1003通过预设的变化检测模型,对元器件图像和元器件图像对应的模板元器件图像进行检测之前,图像处理单元1002,还用于:对元器件图像和模板元器件图像进行快速傅里叶变换,将元器件图像和模板元器件图像的空间域转换为频率域;将元器件图像频域的低频区域替换为模板元器件图像频域的低频区域;对元器件图像和模板元器件图像进行快速傅里叶逆变换,将元器件图像和模板元器件图像的频率域转换为空间域。
可选地,获取单元1001根据印制电路板的标识信息,从预设的模板图像集合中获取至少一个元器件的模板元器件图像之前,还用于确定模板图像集合中存在印制电路板中元器件的模板元器件图像。
当模板图像集合中不存在印制电路板中元器件的模板元器件图像时,检测单元1003用于:通过预设的分类模型,对元器件图像进行分类,得到元器件图像对应的至少一种缺陷类型的第二分类概率;根据元器件图像对应的至少一种缺陷类型的第二分类概率,确定元器件图像对应的目标缺陷类型。
可选地,检测单元1003,还用于通过预设的分类模型,对元器件图像进行分类,得到元器件图像对应的至少一种缺陷类型的第二分类概率。
检测单元1003,具体用于:以第一分类概率所占权重为第一权重、第二分类概率所占权重为第二权重,确定元器件图像对应的至少一种缺陷类型的目标分类概率;根据元器件图像对应的至少一种缺陷类型的目标分类概率,确定元器件图像对应的目标缺陷类型。
可选地,检测单元1003还用于:通过预设的字符识别模型,对目标图像进行识别,得到目标图像中包含的字符。
可选地,获取单元1001具体用于接收来自自动光学检测AOI设备的目标图像。
其中,AOI设备包括:AOI数据存储模块和AOI信号存储模块;AOI设备拍摄到目标图像后,根据印制电路板的标识信息,将目标图像存储于AOI数据存储模块,并在AOI信号存储模块中新增标识信息;当AOI信号存储模块中新增了标识信息时,AOI设备根据标识信息发送AOI数据存储模块中的目标图像。
可选地,检测单元1003还用于向AOI设备发送检测结果,检测结果包括:元器件图像对应的目标缺陷类型。
其中,AOI设备还包括:AI结果存储模块和AI信号存储模块;AOI设备接收到检测结果后,根据印制电路板的标识信息,将检测结果存储于AI结果存储模块,并在AI信号存储模块中新增标识信息。
示例性实施例中,本公开实施例还提供一种变化检测模型训练装置,可以用于实现如前述实施例所述的变化检测模型训练方法。图11为本公开实施例提供的变化检测模型训练装置的组成示意图。如图11所示,该变化检测模型训练装置可以包括:获取单元1101、训练单元1102。
获取单元1101,用于获取样本元器件图像、样本元器件图像的标注信息、以及样本元器件图像对应的样本模板图像,样本元器件图像中包括至少一种缺陷类型,标注信息用于指示样本元器件图像存在的缺陷类型。
训练单元1102,用于以样本元器件图像和样本模板图像作为输入、标注信息作为输出,对预设的变化检测网络进行训练,得到变化检测模型。
示例性实施例中,本公开实施例还提供一种PCBA缺陷检测系统,包括:边缘计算设备和AOI设备。AOI设备用于拍摄印制电路板对应的目标图像;边缘计算设备用于根据前述实施例的PCBA缺陷检测方法,检测目标图像中的缺陷。
本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
示例性实施例中,电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如以上实施例所述的PCBA缺陷检测方法,或者变化检测模型训练方法。该电子设备可以是上述计算机或服务器。
示例性实施例中,可读存储介质可以是存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使计算机执行根据以上实施例所述的PCBA缺陷检测方法,或者变化检测模型训练方法。
示例性实施例中,计算机程序产品包括计算机程序,所述计算机程序在被处理器执行时实现根据以上实施例所述的PCBA缺陷检测方法,或者变化检测模型训练方法。
图12示出了可以用来实施本公开的实施例的示例电子设备1200的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图12所示,电子设备1200包括计算单元1201,其可以根据存储在只读存储器(ROM)1202中的计算机程序或者从存储单元1208加载到随机访问存储器(RAM)1203中的计算机程序,来执行各种适当的动作和处理。在RAM 1203中,还可存储设备1200操作所需的各种程序和数据。计算单元1201、ROM 1202以及RAM 1203通过总线1204彼此相连。输入/输出(I/O)接口1205也连接至总线1204。
电子设备1200中的多个部件连接至I/O接口1205,包括:输入单元1206,例如键盘、鼠标等;输出单元1207,例如各种类型的显示器、扬声器等;存储单元1208,例如磁盘、光盘等;以及通信单元1209,例如网卡、调制解调器、无线通信收发机等。通信单元1209允许电子设备1200通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元1201可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元1201的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元1201执行上文所描述的各个方法和处理,例如PCBA缺陷检测方法,或者变化检测模型训练方法。例如,在一些实施例中,PCBA缺陷检测方法,或者变化检测模型训练方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1208。在一些实施例中,计算机程序的部分或者全部可以经由ROM1202和/或通信单元1209而被载入和/或安装到电子设备1200上。当计算机程序加载到RAM 1203并由计算单元1201执行时,可以执行上文描述的PCBA缺陷检测方法,或者变化检测模型训练方法的一个或多个步骤。备选地,在其他实施例中,计算单元1201可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行PCBA缺陷检测方法,或者变化检测模型训练方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (21)
1.一种印制电路板组装缺陷检测方法,所述方法包括:
获取印制电路板对应的目标图像;
根据所述印制电路板中至少一个元器件的位置,对所述目标图像进行切分,得到所述至少一个元器件对应的元器件图像;
根据所述印制电路板的标识信息,从预设的模板图像集合中获取所述至少一个元器件的模板元器件图像,得到所述元器件图像对应的模板元器件图像;
通过预设的变化检测模型,对所述元器件图像和所述元器件图像对应的所述模板元器件图像进行检测,得到所述元器件图像对应的至少一种缺陷类型的第一分类概率;
根据所述元器件图像对应的至少一种缺陷类型的第一分类概率,确定所述元器件图像对应的目标缺陷类型。
2.根据权利要求1所述的方法,所述变化检测模型包括:编码器、差异模块、以及解码器;所述通过预设的变化检测模型,对所述元器件图像和所述元器件图像对应的所述模板元器件图像进行检测,得到所述元器件图像对应的至少一种缺陷类型的第一分类概率,包括:
将所述元器件图像和所述模板元器件图像在至少两种分辨率下的特征图输入所述编码器,通过所述编码器获取所述元器件图像和所述模板元器件图像在所述至少两种分辨率下的高维特征图;
将所述元器件图像和所述模板元器件图像在所述至少两种分辨率下的高维特征图输入所述差异模块,通过所述差异模块获取所述元器件图像和所述模板元器件图像在所述至少两种分辨率下的特征差异图;
将所述元器件图像和所述模板元器件图像在所述至少两种分辨率下的特征差异图输入所述解码器,通过所述解码器对所述特征差异图进行预测,得到所述元器件图像对应的至少一种缺陷类型的第一分类概率。
3.根据权利要求2所述的方法,所述通过所述编码器获取所述元器件图像和所述模板元器件图像在所述至少两种分辨率下的高维特征图,包括:
通过所述编码器对所述元器件图像和所述模板元器件图像在所述至少两种分辨率下的特征图进行位置编码,得到所述元器件图像在所述至少两种分辨率下的特征图对应的第一向量、第二向量和第三向量,以及,所述模板元器件图像在所述至少两种分辨率下的特征图对应的第四向量、第五向量和第六向量;
通过所述编码器对所述第一向量、所述第二向量和所述第三向量进行多头注意力处理,得到第七向量、第八向量和第九向量,以及,对所述第四向量、所述第五向量和所述第六向量进行多头注意力处理,得到第十向量、第十一向量和第十二向量;
通过所述编码器将所述第一向量、所述第二向量和所述第三向量,与所述第七向量、所述第八向量和所述第九向量进行残差连接后,进行层归一化和非线性变换,并在完成非线性变换后再次进行残差连接和层归一化,输出所述元器件图像在所述至少两种分辨率下的高维特征图,以及,将所述第四向量、所述第五向量和所述第六向量,与所述第十向量、所述第十一向量和所述第十二向量进行残差连接后,进行层归一化和非线性变换,并在完成非线性变换后再次进行残差连接和层归一化,输出所述模板元器件图像在所述至少两种分辨率下的高维特征图。
4.根据权利要求1-3任一项所述的方法,所述通过预设的变化检测模型,对所述元器件图像和所述元器件图像对应的所述模板元器件图像进行检测之前,所述方法还包括:
对所述元器件图像和所述模板元器件图像进行快速傅里叶变换,将所述元器件图像和所述模板元器件图像的空间域转换为频率域;
将所述元器件图像频域的低频区域替换为所述模板元器件图像频域的低频区域;
对所述元器件图像和所述模板元器件图像进行快速傅里叶逆变换,将所述元器件图像和所述模板元器件图像的频率域转换为空间域。
5.根据权利要求1-4任一项所述的方法,所述根据所述印制电路板的标识信息,从预设的模板图像集合中获取所述至少一个元器件的模板元器件图像之前,所述方法还包括:
确定所述模板图像集合中存在所述印制电路板中元器件的模板元器件图像;
当所述模板图像集合中不存在所述印制电路板中元器件的模板元器件图像时,所述方法还包括:
通过预设的分类模型,对所述元器件图像进行分类,得到所述元器件图像对应的所述至少一种缺陷类型的第二分类概率;
根据所述元器件图像对应的所述至少一种缺陷类型的第二分类概率,确定所述元器件图像对应的目标缺陷类型。
6.根据权利要求1-4任一项所述的方法,所述方法还包括:
通过预设的分类模型,对所述元器件图像进行分类,得到所述元器件图像对应的所述至少一种缺陷类型的第二分类概率;
所述根据所述元器件图像对应的至少一种缺陷类型的第一分类概率,确定所述元器件图像对应的目标缺陷类型,包括:
以所述第一分类概率所占权重为第一权重、所述第二分类概率所占权重为第二权重,确定所述元器件图像对应的所述至少一种缺陷类型的目标分类概率;
根据所述元器件图像对应的所述至少一种缺陷类型的目标分类概率,确定所述元器件图像对应的目标缺陷类型。
7.根据权利要求1-6任一项所述的方法,所述方法还包括:
通过预设的字符识别模型,对所述目标图像进行识别,得到所述目标图像中包含的字符。
8.根据权利要求1-7任一项所述的方法,所述获取印制电路板对应的目标图像,包括:
接收来自自动光学检测AOI设备的所述目标图像;
其中,所述AOI设备包括:AOI数据存储模块和AOI信号存储模块;
所述AOI设备拍摄到所述目标图像后,根据所述印制电路板的标识信息,将所述目标图像存储于所述AOI数据存储模块,并在所述AOI信号存储模块中新增所述标识信息;
当所述AOI信号存储模块中新增了所述标识信息时,所述AOI设备根据所述标识信息发送所述AOI数据存储模块中的所述目标图像。
9.根据权利要求8所述的方法,所述根据所述元器件图像对应的至少一种缺陷类型的第一分类概率,确定所述元器件图像对应的目标缺陷类型之后,所述方法还包括:
向所述AOI设备发送检测结果,所述检测结果包括:所述元器件图像对应的目标缺陷类型;
其中,所述AOI设备还包括:AI结果存储模块和AI信号存储模块;
所述AOI设备接收到所述检测结果后,根据所述印制电路板的标识信息,将所述检测结果存储于所述AI结果存储模块,并在所述AI信号存储模块中新增所述标识信息。
10.一种变化检测模型训练方法,所述方法包括:
获取样本元器件图像、所述样本元器件图像的标注信息、以及所述样本元器件图像对应的样本模板图像,所述样本元器件图像中包括至少一种缺陷类型,所述标注信息用于指示所述样本元器件图像存在的缺陷类型;
以所述样本元器件图像和所述样本模板图像作为输入、所述标注信息作为输出,对预设的变化检测网络进行训练,得到变化检测模型。
11.一种印制电路板组装缺陷检测装置,所述装置包括:
获取单元,用于获取印制电路板对应的目标图像;
图像处理单元,用于根据所述印制电路板中至少一个元器件的位置,对所述目标图像进行切分,得到所述至少一个元器件对应的元器件图像;
所述获取单元,还用于根据所述印制电路板的标识信息,从预设的模板图像集合中获取所述至少一个元器件的模板元器件图像,得到所述元器件图像对应的模板元器件图像;
检测单元,用于通过预设的变化检测模型,对所述元器件图像和所述元器件图像对应的所述模板元器件图像进行检测,得到所述元器件图像对应的至少一种缺陷类型的第一分类概率;
所述检测单元,还用于根据所述元器件图像对应的至少一种缺陷类型的第一分类概率,确定所述元器件图像对应的目标缺陷类型。
12.根据权利要求11所述的装置,所述变化检测模型包括:编码器、差异模块、以及解码器;所述检测单元,具体用于:
将所述元器件图像和所述模板元器件图像在至少两种分辨率下的特征图输入所述编码器,通过所述编码器获取所述元器件图像和所述模板元器件图像在所述至少两种分辨率下的高维特征图;
将所述元器件图像和所述模板元器件图像在所述至少两种分辨率下的高维特征图输入所述差异模块,通过所述差异模块获取所述元器件图像和所述模板元器件图像在所述至少两种分辨率下的特征差异图;
将所述元器件图像和所述模板元器件图像在所述至少两种分辨率下的特征差异图输入所述解码器,通过所述解码器对所述特征差异图进行预测,得到所述元器件图像对应的至少一种缺陷类型的第一分类概率。
13.根据权利要求12所述的装置,所述检测单元,具体用于:
通过所述编码器对所述元器件图像和所述模板元器件图像在所述至少两种分辨率下的特征图进行位置编码,得到所述元器件图像在所述至少两种分辨率下的特征图对应的第一向量、第二向量和第三向量,以及,所述模板元器件图像在所述至少两种分辨率下的特征图对应的第四向量、第五向量和第六向量;
通过所述编码器对所述第一向量、所述第二向量和所述第三向量进行多头注意力处理,得到第七向量、第八向量和第九向量,以及,对所述第四向量、所述第五向量和所述第六向量进行多头注意力处理,得到第十向量、第十一向量和第十二向量;
通过所述编码器将所述第一向量、所述第二向量和所述第三向量,与所述第七向量、所述第八向量和所述第九向量进行残差连接后,进行层归一化和非线性变换,并在完成非线性变换后再次进行残差连接和层归一化,输出所述元器件图像在所述至少两种分辨率下的高维特征图,以及,将所述第四向量、所述第五向量和所述第六向量,与所述第十向量、所述第十一向量和所述第十二向量进行残差连接后,进行层归一化和非线性变换,并在完成非线性变换后再次进行残差连接和层归一化,输出所述模板元器件图像在所述至少两种分辨率下的高维特征图。
14.根据权利要求11-13任一项所述的装置,在所述检测单元通过预设的变化检测模型,对所述元器件图像和所述元器件图像对应的所述模板元器件图像进行检测之前,所述图像处理单元,还用于:
对所述元器件图像和所述模板元器件图像进行快速傅里叶变换,将所述元器件图像和所述模板元器件图像的空间域转换为频率域;
将所述元器件图像频域的低频区域替换为所述模板元器件图像频域的低频区域;
对所述元器件图像和所述模板元器件图像进行快速傅里叶逆变换,将所述元器件图像和所述模板元器件图像的频率域转换为空间域。
15.根据权利要求11-14任一项所述的装置,所述获取单元根据所述印制电路板的标识信息,从预设的模板图像集合中获取所述至少一个元器件的模板元器件图像之前,还用于确定所述模板图像集合中存在所述印制电路板中元器件的模板元器件图像;
当所述模板图像集合中不存在所述印制电路板中元器件的模板元器件图像时,所述检测单元用于:
通过预设的分类模型,对所述元器件图像进行分类,得到所述元器件图像对应的所述至少一种缺陷类型的第二分类概率;
根据所述元器件图像对应的所述至少一种缺陷类型的第二分类概率,确定所述元器件图像对应的目标缺陷类型。
16.根据权利要求11-14任一项所述的装置,所述检测单元,还用于通过预设的分类模型,对所述元器件图像进行分类,得到所述元器件图像对应的所述至少一种缺陷类型的第二分类概率;
所述检测单元,具体用于:
以所述第一分类概率所占权重为第一权重、所述第二分类概率所占权重为第二权重,确定所述元器件图像对应的所述至少一种缺陷类型的目标分类概率;
根据所述元器件图像对应的所述至少一种缺陷类型的目标分类概率,确定所述元器件图像对应的目标缺陷类型。
17.一种变化检测模型训练装置,所述装置包括:
获取单元,用于获取样本元器件图像、所述样本元器件图像的标注信息、以及所述样本元器件图像对应的样本模板图像,所述样本元器件图像中包括至少一种缺陷类型,所述标注信息用于指示所述样本元器件图像存在的缺陷类型;
训练单元,用于以所述样本元器件图像和所述样本模板图像作为输入、所述标注信息作为输出,对预设的变化检测网络进行训练,得到变化检测模型。
18.一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-9任一项所述的方法,或者权利要求10所述的方法。
19.一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使计算机执行根据权利要求1-9任一项所述的方法,或者权利要求10所述的方法。
20.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-9任一项所述的方法,或者权利要求10所述的方法。
21.一种印制电路板组装缺陷检测系统,包括:边缘计算设备和AOI设备;
所述AOI设备用于拍摄印制电路板对应的目标图像;
所述边缘计算设备用于根据权利要求1-9任一项所述的方法,检测所述目标图像中的缺陷。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211619004.9A CN116091416A (zh) | 2022-12-12 | 2022-12-12 | 印制电路板组装缺陷检测、变化检测模型训练方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211619004.9A CN116091416A (zh) | 2022-12-12 | 2022-12-12 | 印制电路板组装缺陷检测、变化检测模型训练方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116091416A true CN116091416A (zh) | 2023-05-09 |
Family
ID=86211222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211619004.9A Pending CN116091416A (zh) | 2022-12-12 | 2022-12-12 | 印制电路板组装缺陷检测、变化检测模型训练方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116091416A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117456168A (zh) * | 2023-11-08 | 2024-01-26 | 珠海瑞杰电子科技有限公司 | 一种基于数据分析的pcba智能检测系统及方法 |
-
2022
- 2022-12-12 CN CN202211619004.9A patent/CN116091416A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117456168A (zh) * | 2023-11-08 | 2024-01-26 | 珠海瑞杰电子科技有限公司 | 一种基于数据分析的pcba智能检测系统及方法 |
CN117456168B (zh) * | 2023-11-08 | 2024-04-16 | 珠海瑞杰电子科技有限公司 | 一种基于数据分析的pcba智能检测系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11694461B2 (en) | Optical character recognition method and apparatus, electronic device and storage medium | |
CN108171203B (zh) | 用于识别车辆的方法和装置 | |
CN111768381A (zh) | 零部件缺陷检测方法、装置及电子设备 | |
CN113409284B (zh) | 电路板故障检测方法、装置、设备以及存储介质 | |
TWI716012B (zh) | 樣本標註方法、裝置、儲存媒體和計算設備、損傷類別的識別方法及裝置 | |
CN112613569B (zh) | 图像识别方法、图像分类模型的训练方法及装置 | |
CN115631178B (zh) | 自动晶圆缺陷检测方法、系统、设备及存储介质 | |
CN115409990B (zh) | 一种医学图像分割方法、装置、设备及存储介质 | |
CN111524113A (zh) | 提升链异常识别方法、系统、设备及介质 | |
CN114419035A (zh) | 产品识别方法、模型训练方法、装置和电子设备 | |
CN116091416A (zh) | 印制电路板组装缺陷检测、变化检测模型训练方法及装置 | |
CN113312969A (zh) | 一种基于三维视觉的零部件识别与定位方法、系统 | |
CN103913150B (zh) | 智能电能表电子元器件一致性检测方法 | |
CN115471476A (zh) | 一种部件缺陷检测方法、装置、设备及介质 | |
CN112052730A (zh) | 一种3d动态人像识别监控设备及方法 | |
CN111723453A (zh) | 用于增材制造机器的重涂器自动化监控系统和方法 | |
Wang et al. | Improved YOLOv3 detection method for PCB plug-in solder joint defects based on ordered probability density weighting and attention mechanism | |
Trajkova et al. | Active learning for automated visual inspection of manufactured products | |
CN116246287B (zh) | 目标对象识别方法、训练方法、装置以及存储介质 | |
Zhou et al. | An adaptive clustering method detecting the surface defects on linear guide rails | |
CN117237681A (zh) | 图像处理方法、装置及相关设备 | |
Shi et al. | Research on wire rope wear detection based on computer vision | |
CN116309963A (zh) | 一种图像的批量标注方法、装置、电子设备及存储介质 | |
CN115631370A (zh) | 一种基于卷积神经网络的mri序列类别的识别方法及装置 | |
CN115984158A (zh) | 缺陷分析方法、装置、电子设备及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |