本发明涉及电子电路,尤其涉及一种基于深度学习的印刷电路板电路结构识别方法、装置及计算机可读存储介质。
背景技术:
1、
2、印刷电路板(printed circuit board,pcb)是电子设备的核心主体,受pcb中诸多器件的生产工艺、装配质量、操作环境、使用寿命等因素的影响,pcb在使用过程中不可避免地会出现故障,pcb故障会影响重要设备的正常运行。
3、传统的设备维修技术,是通过手工绘制设备电路原理图,进而制作pcb进行修复。该方法需打磨pcb,再根据每层板面进行手工复刻当前层的电路原理图,操作繁琐;而且人工手动进行pcb的复刻工作费时费力、效率低下。尤其对于多层pcb,pcb的层数较多且存在埋孔等,绘制过程更加复杂。
4、随着计算机视觉技术的发展,其在某种程度上可以取代传统的人工手动的繁重工作。现阶段有关pcb的计算机视觉类研究主要基于对pcb的缺陷(如线路的短接或者断路)以及部分器件(如色环电阻阻值大小)进行识别和目标分割,对pcb的整体电路结构的识别还是空白。目前,对pcb的整体电路结构的反演工作还是由人工手动执行。
5、因此,如何智能地、高效地实现pcb整体电路结构的反演工作,一直是本领域技术人员致力于解决的难题。
技术实现思路
1、本技术实施例通过提供一种基于深度学习的印刷电路板电路结构识别方法,解决了现有技术中人工手动进行pcb复刻工作费时费力、效率低下的技术问题。
2、为解决上述技术问题,第一方面,本技术实施例提供了一种印刷电路板电路结构识别方法,包括:
3、获取印刷电路板各层的pcb图片;
4、基于经过预先训练的第一神经网络识别所述pcb图片上的焊点和过孔,其中,所述第一神经网络通过预先训练被配置为可根据所述pcb图片识别其上的焊点和过孔分布;
5、基于经过预先训练的第二神经网络识别所述pcb图片上的导线区域,其中,所述第二神经网络通过预先训练被配置为可根据所述pcb图片识别其上的导线区域。
6、优选地,将所述第一神经网络的识别结果和所述第二神经网络的识别结果保存在同一个文件夹中。
7、优选地,所述第一神经网络为yolov3网络,所述第二神经网络为yolov5网络。
8、优选地,所述方法还包括:预先训练所述第一神经网络,所述预先训练所述第一神经网络包括:
9、获取训练用的输入样本集,所述输入样本集为印刷电路板各层的pcb图片;
10、标注输入样本集pcb图片上的第一关键特征,作为训练用的第一输出样本集;所述第一关键特征包括pcb图片上的焊点、过孔以及焊点、过孔存在与否的条件概率;
11、对第一神经网络模型进行预处理;所述预处理包括:输入数据增强设置、模型权重预训练、损失函数构建、模型参数设定;
12、将所述输入样本集和第一输出样本集输入预处理后的第一神经网络模型进行训练,得到召回率满足要求的网络模型。
13、优选地,所述标注输入样本集pcb图片上的关键特征的具体方法为:
14、建立x-y坐标轴;将每个焊点、过孔分别以矩形边框进行标记,焊点/过孔的具体特征向量为{px、py、pw、ph、pr},px表示焊点/过孔所处的矩形边框的中心点在x轴上的坐标,py表示焊点/过孔所处的矩形边框的中心点在y轴上的坐标,pw表示焊点/过孔所处的矩形边框的宽度,ph表示焊点/过孔所处的矩形边框的高度,pr表示焊点/过孔存在与否的条件概率。
15、优选地,所述方法还包括:预先训练所述第二神经网络,所述预先训练所述第二神经网络包括:
16、获取训练用的输入样本集,所述输入样本集为印刷电路板各层的pcb图片;
17、标注输入样本集pcb图片上的第二关键特征,作为训练用的第二输出样本集;所述第二关键特征包括pcb图片上的导线区域及其导线区域存在与否的条件概率ps;
18、对第二神经网络模型进行预处理;所述预处理包括:输入数据增强设置、模型权重预训练、损失函数构建、模型参数设定;
19、将所述输入样本集和第二输出样本集输入预处理后的第二神经网络模型进行训练,得到召回率满足要求的网络模型。
20、优选地,所述损失函数构建时,损失函数包括三部分误差损失:位置误差损失、置信误差损失和分类误差损失,且位置误差损失、置信误差损失和分类误差损失的权重系数不同。
21、优选地,所述位置误差损失权重系数为5,没有目标的网格中预测框的置信误差损失的权重系数为0.5,有目标的网格中预测框的置信误差损失和分类误差损失权重系数均为1。
22、第二方面,本技术实施例提供了一种印刷电路板电路结构识别装置,所述装置包括:
23、获取模块,用于获取印刷电路板各层的pcb图片;
24、焊点和过孔识别模块,用于基于经过预先训练的第一神经网络识别所述pcb图片上的焊点和过孔,其中,所述第一神经网络通过预先训练被配置为可根据所述pcb图片识别其上的焊点和过孔分布;
25、导线区域识别模块,用于基于经过预先训练的第二神经网络识别所述pcb图片上的导线区域,其中,所述第二神经网络通过预先训练被配置为可根据所述pcb图片识别其上的导线区域。
26、第三方面,本技术实施例提供了一种印刷电路板电路结构识别装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以下步骤:
27、获取印刷电路板各层的pcb图片;
28、基于经过预先训练的第一神经网络识别所述pcb图片上的焊点和过孔,其中,所述第一神经网络通过预先训练被配置为可根据所述pcb图片识别其上的焊点和过孔分布;
29、基于经过预先训练的第二神经网络识别所述pcb图片上的导线区域,其中,所述第二神经网络通过预先训练被配置为可根据所述pcb图片识别其上的导线区域。
30、第四方面,本技术实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:
31、获取印刷电路板各层的pcb图片;
32、基于经过预先训练的第一神经网络识别所述pcb图片上的焊点和过孔,其中,所述第一神经网络通过预先训练被配置为可根据所述pcb图片识别其上的焊点和过孔分布;
33、基于经过预先训练的第二神经网络识别所述pcb图片上的导线区域,其中,所述第二神经网络通过预先训练被配置为可根据所述pcb图片识别其上的导线区域。
34、本技术实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
35、1、本技术提供的方法利用计算机视觉技术自动对pcb图片上的焊点、过孔以及导线区域进行标定,解决了现有技术中人工手动进行pcb反演工作费时费力、效率低下的技术问题,提高了工作效率,为电子设备修复其中印刷电路板提供了极大的便利。
36、2、本技术独创性地使用标注的方法创建训练样本集,将pcb图片上的每个焊点、过孔分别以矩形边框进行标记,将导线区域通过多点连接形成关联区域进行标记,如此可以实现模型的训练。
37、3、在模型训练时,对输入的图片进行mosaic马赛克数据增强处理,如此增加了输入数据的可利用性,提高了模型的预测精度和计算效率。
38、4、设置模型的损失函数包括三部分误差损失:位置误差损失、置信误差损失、分类误差损失,且三部分误差损失在损失函数中所占权重不一样,如此可以提高模型的预测精度和计算效率。