CN113205511A - 基于深层神经网络的电子元器件批量信息检测方法及系统 - Google Patents

基于深层神经网络的电子元器件批量信息检测方法及系统 Download PDF

Info

Publication number
CN113205511A
CN113205511A CN202110572538.XA CN202110572538A CN113205511A CN 113205511 A CN113205511 A CN 113205511A CN 202110572538 A CN202110572538 A CN 202110572538A CN 113205511 A CN113205511 A CN 113205511A
Authority
CN
China
Prior art keywords
image
neural network
deep neural
component
information
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.)
Granted
Application number
CN202110572538.XA
Other languages
English (en)
Other versions
CN113205511B (zh
Inventor
朱涛
王小龙
刘天赐
王志伟
杨一粟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Key System and Integrated Circuit Co Ltd
Original Assignee
China Key System and Integrated Circuit Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Key System and Integrated Circuit Co Ltd filed Critical China Key System and Integrated Circuit Co Ltd
Priority to CN202110572538.XA priority Critical patent/CN113205511B/zh
Publication of CN113205511A publication Critical patent/CN113205511A/zh
Application granted granted Critical
Publication of CN113205511B publication Critical patent/CN113205511B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/62Text, e.g. of license plates, overlay texts or captions on TV images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20024Filtering details
    • G06T2207/20032Median filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20076Probabilistic image processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Image Analysis (AREA)

Abstract

本发明涉及基于深层神经网络的电子元器件批量信息检测方法,包括:获取待检测批量芯片的第一图像;对第一图像进行预处理得到增强的灰度图像作为第二图像;使用训练好的目标定位深层神经网络模型确定视野范围内所有芯片的位置;使用图像模板匹配计算出每个芯片的偏移角度;将所有目标依据偏移角度进行修正,并将其处理后得到的正向图单独截取出来作为第三图像;使用训练好的文本定位深层神经网络模型确定芯片表面文本区域位置并将其作为第四图像;使用训练好的字符识别深层神经网络模型确定第四图像文本区域的具体内容;通过串口将识别结果写入txt文档并发送给上位机软件。该方法检测的准确率高、检测效率高、检测成本低、通用性好、易维护。

Description

基于深层神经网络的电子元器件批量信息检测方法及系统
技术领域
本发明涉及一种电子元器件批量检测的方法,尤其是基于深层神经网络的电子元器件批量信息检测方法及系统。
背景技术
现今社会,电子元器件的地位非常重要,应用范围也越来越大。以元器件为例,随着科学技术的飞速发展,其使用数量随之暴增。不论对于哪种电子元器件而言,在生产出来后都需要对其进行内核、外设电路等进行封装及测试,最终再将这些检测结果与元器件表面所印有的型号、批次等信息进行绑定。这样就能在元器件发生故障的情况下及时进行排查、溯源等工作,从而使得电子元器件在工业生产的各个环节都能得到有力的保障。但元器件生产的数量之多,检测工序又较为复杂,特别是在信息检测及录入环节,人为地去操作这些信息目前仍然占据了很大的比重。由于数量巨大,所以在这方面的人工成本也会非常的高,智能化的检测是减少成本的重要途径。
一般情况,同一种功能的元器件会衍生出很多型号。而对于元器件表面信息的检测及录入工作而言,为了尽可能地减小环境因素对后期检测能力的影响、目前所采用的都基于专用光源、专用导轨、专用相机组成的专用系统。一般的检测方式就是对单一目标进行模板匹配,而该方法对阈值化分割的精度要求过高,光源、相机的参数稍有不同就可能导致整个系统的失效。并且此类系统需要经常人工维护,定期校准、调参。而且模板匹配方法,针对性太强,只能对一种特定的元器件做检测,而且对元器件的种类、型号、摆放角度都有限制。针对其他型号的元器件,则需要人工重新去建立合适的模板图像,否则检测精度会受到很大的影响。元器件具有尺寸小的特点,且生产量大,需检测元器件的数目多。目前的检测技术大多采用的仍是逐一检测的方法,速度较慢、容易漏检,且检测过程繁琐,检测效率较低。
因此,现有电子元器件信息检测技术存在难以对多目标批量进行识别、专用性过强、维护和使用难度偏大、检测精度低、检测效率低的问题。
发明内容
为解决上述问题,本发明提供一种能进行批量检测,并且检测的准确率达到99.5%,检测效率高的基于深层神经网络的电子元器件批量信息检测方法,具体技术方案为:
基于深层神经网络的电子元器件批量信息检测方法,包括以下步骤:
图像采集,通过相机获取待检测批量元器件的第一图像;
图像预处理,第一图像通过设定阈值进行形态学处理,去除噪点得到经过增强的灰度图像,将灰度图像作为第二图像;
元器件的位置区域检测,使用设计并训练好的目标定位深层神经网络模型对第二图像进行元器件目标位置检测,检测结果为包含元器件在内的一个最小正向外接矩形边界框,返回结果是此边界框的中心点坐标、宽、高、置信度以及类别概率,从而确定出视野范围内每一个元器件的位置区域;
元器件的偏移角度检测,使用基于HALCON建立的图像模板匹配计算出每个位置区域的偏移角度;
偏移角度修正,根据偏移角度对位置区域进行矫正,得到元器件四边与图像视野水平、垂直方向相互平行的正向图,并将正向图单独截取出来作为第三图像;
文本区域位置检测,使用设计并训练好的文本定位深层神经网络模型对第三图像处理得到元器件表面的文本区域位置,并将文本区域位置作为第四图像;
文本内容识别,使用设计并训练好的字符识别深层神经网络模型对第四图像进行识别,得到元器件表面信息;
存档并上传,将元器件信息写入文档,并上传给上位机软件;
得到批量信息,上位机软件将接收到的元器件表面信息,替换缺省状态下文件对应字段的数据,得到检测的批量信息。
其中,所述图像预处理中包括基于OpenCV对第一图像依次进行腐蚀、膨胀、高帽变换以及中值滤波处理。
优选的,所述目标定位深层神经网络模型的设计和训练包括以下步骤:
大批量地采集目标元器件样本图像,制作网络训练所需要的数据集,并完成位置区域的标定,所述标定时采用两点标注的形式确定位置区域;
将每张图片上的所有目标都以两点坐标的形式储存在一个xml文件之中,所述两点坐标分别为矩形的位置区域的两个对角坐标;
在Ubuntu系统上对预设的YOLO系列网络进行调优训练,经过迭代得到目标定位深层神经网络模型。
进一步的,所述元器件的位置区域检测时包括以下步骤:
目标定位深层神经网络模型先将输入图片修改为统一的尺416×416像素,接着把图片分割为S×S的网格,输出是一个S×S×(5×B+C)的张量,其中S为最开始将图像划分网格的行列数,每个网格需要检测B个边界框,每个边界框都包含5个参数信息,分别为预测参数(x,y,w,h)和置信度评分,其中(x,y,w,h)为物体的中心位置相对格子位置的偏移及宽度和高度,其数值均被归一化至[0,1],C代表目标类别数;
通过对数据集进行k-means聚类,产生9个不同尺寸的大小的anchor,并将其应用于三个不同的特征层,三个不同的特征层分别为:13×13特征图对应(116,90)、(156,198)和(373,326)的anchor;26×26特征图对应(30,61)、(62,45)和(59,119)的anchor;52×52特征图对应(10,13)、(16,130)和(33,23)的anchor;
其中边界框的置信度评分用于衡量网络内模板物体的准确度和衡量边界框的准确度;
衡量网络内目标物体的准确度时用Pr(object)表示,当边界框内检测到物体的时候,Pr(object)=1;当边界框内没有检测到物体的时候,Pr(object)=0;
衡量边界框的准确度时用预测框与实际框的交并比(IntersectionOverUnion,IOU)来表征,记为
Figure BDA0003083092840000031
计算方式是“预测边框”与“真实边框”的交集与并集的比值;当目标框内有物体时,置信度评分数值由
Figure BDA0003083092840000032
来表示,整幅图片中每个网格中各个目标的分类概率记为Pr(calss),Pr(calss)的计算如下列公式:
Figure BDA0003083092840000033
其中Pr(class|object)为每个网格单元内预测C个条件类别的概率,i的取值为1,2,3L C。
优选的,在使用YOLO算法时,当目标被多次检测,有多个框时候使用非极大值抑制算法进行边框回归(BoundingboxRegression,Bbox)的冗余裁剪,去除多余的框,得到最后预测结果。
优选的,所述元器件的位置区域检测时得到的检测结果是与目标网格单元相关的偏移值大小,计算公式如下:
bx=σ(tx)+cx
by=σ(ty)+cy
Figure BDA0003083092840000041
Figure BDA0003083092840000042
其中,bx,by,bw,bh为预测的中心坐标x,y;tx,ty,tw,th则是网络的输出;cx和cy是网格的左上角坐标;pw和ph是anchor的尺寸。
优选的,所述图像模板建立包括以下步骤:
剪裁图像,模板图像采用的是紧密贴合元器件的最小外接矩形,并通过reduce_domain算子裁剪得到;
使用create_shape_model算子创建形状模板,设置NumLevel为4,Contrast为30;
使用find_shap_model算子搜索匹配最佳区域,并将搜索到的与模板图像的匹配分值储存至参数Score中,所述find_shap_model算子返回的结果包括匹配分值、位置区域的坐标以及旋转角度。
优选的,所述文本定位深层神经网络模型的设计和训练包括以下步骤:
大批量地采集各类不同元器件上的文本区域图像,制作网络训练所需要的文本区域定位数据集;
对完成的文本区域进行标定,所述标定时采用两点标注的形式确定文本区域,将每张图片上的所有目标都以两点坐标的形式储存在一个xml文件之中,所述两点坐标分别为矩形的文字区域的两个对角坐标;
在Ubuntu系统上对预设的YOLO系列网络进行调优训练,经过迭代得到文本定位深层神经网络模型。
优选的,所述字符识别深层神经网络模型的设计和训练包括以下步骤:
采用迁移学习的方法在现有的字符识别网络权重的基础上,结合部分前期采集到的电子元器件表面字符数据库进行迁移学习。
基于深层神经网络的电子元器件批量信息检测系统,包括:图像采集系统,用于采集元器件图像得到第一图像;图像预处理系统,用于对图形采集系统得到的第一图像进行预处理得到第二图像;元器件的位置区域检测系统,用于对第二图像进行元器件目标位置检测得到每个元器件的位置区域;元器件的偏移角度检测系统,用于对元器件的位置区域进行角度检测得到每个位置区域的偏移角度;偏移角度修正系统,用于根据偏移角度修正每个位置区域得到第三图像;文本区域位置检测系统,用于对第三图像进行处理得到元器件表面的文本区域位置,并将文本区域位置定义为第四图像;文本内容识别系统,用于对第四图像进行识别得到元器件表面信息;存档系统,用于对元器件表面信息进行存档,并上传给上位机软件;及上位机软件,用于对存档的元器件表面信息进行整合得到检测批量信息。
与现有技术相比本发明具有以下有益效果:
本发明提供的基于深层神经网络的电子元器件批量信息检测方法检测的准确率可达到99.5%,检测效率高、检测成本低、通用性好、易维护。
1、能一次对芯片等电子元器件进行批量位置检测,相较于以往单一芯片逐个检测的方法而言,极大提升了检测效率;
2、能迅速、准确地识别目标摆放的角度信息,并及时进行矫正,大大降低了后续字符检测环节中文本信息识别的出错率;
3、能快速识别芯片上的数字和字母等信息,并具备通信传输功能,在上位机界面上能及时显示,避免了以往人工录入速度慢、易出错、成本高等问题;
4、对于不同种类的元器件,所训练的字符识别深层神经网络模型均能高效地进行识别,无须重新进行神经网络的训练,具有良好的鲁棒性;
5、能将芯片字符识别结果通过串口发送到测试机台,测试机台上位机接收到串口数据后写入测试机台输出文件中,传输过程流畅迅速,芯片相关信息能得到永久保存;
6、经过深度学习的深层神经网络的网络模型,在对芯片位置、字符识别的检测任务中,能克服阴影或者光照不均的影响,依然可以对目标图像的位置和信息内容做出一个准确的判断,受外界环境因素干扰较小。
附图说明
图1是基于深层神经网络的电子元器件批量信息检测方法的流程图;
图2是元器件的位置区域检测的示意图;
图3是对文字字符区域进行字符内容识别的示意图;
图4是基于深层神经网络的电子元器件批量信息检测系统的结构框图;
图5是基于深层神经网络的电子元器件批量信息检测系统的软件和硬件的结构框图。
具体实施方式
现结合附图对本发明作进一步说明。
如图1至图3所示,基于深层神经网络的电子元器件批量信息检测方法,包括以下步骤:
图像采集,通过相机获取待检测批量元器件的第一图像;
图像预处理,第一图像通过设定阈值进行形态学处理,去除噪点得到经过增强的灰度图像,将灰度图像作为第二图像;
元器件的位置区域检测,使用设计并训练好的目标定位深层神经网络模型对第二图像进行元器件目标位置检测,检测结果为包含元器件在内的一个最小正向外接矩形边界框,返回结果是此边界框的中心点坐标、宽、高、置信度以及类别概率,从而确定出视野范围内每一个元器件的位置区域;
元器件的偏移角度检测,使用基于HALCON建立的图像模板匹配计算出每个位置区域的偏移角度;
偏移角度修正,根据偏移角度对位置区域进行矫正,得到元器件四边与图像视野水平、垂直方向相互平行的正向图,并将正向图单独截取出来作为第三图像;
文本区域位置检测,使用设计并训练好的文本定位深层神经网络模型对第三图像处理得到元器件表面的文本区域位置,并将文本区域位置作为第四图像;
文本内容识别,使用设计并训练好的字符识别深层神经网络模型对第四图像进行识别,得到元器件表面信息;
存档并上传,将元器件信息写入文档,并上传给上位机软件;
得到批量信息,上位机软件将接收到的元器件表面信息,替换缺省状态下文件对应字段的数据,得到检测的批量信息。
其中上位机软件还可以将接收到的元器件表面信息与预先输入的元器件信息和/或其他测试信息进行整合,替换缺省状态下文件对应字段的数据,得到检测的批量信息。
具体的,可以按照以下步骤进行:
步骤一:部署相机、光源等设备,在调试好各项参数的情况下,采集电子元器件高质量图像,得到第一图像。对采集到的样本图像的要求为光照均匀、细节清晰、曝光及对比度得当。第一图像也称为目标图像。
步骤二:基于OpenCV对相机采集的第一图像设定阈值进行形态学处理,去除噪点使图像更加平滑,最终得到经过增强的灰度图像,灰度图像作为第二图像。
步骤三:设计并训练目标定位深层神经网络模型。前期需集中大批量地采集目标元器件样本图像,制作网络训练所需要的数据集,并完成目标区域的标定工作。标定工具使用的是国际机器视觉比赛上常用的LabelImg标注软件,采用两点标注的形式确定目标位置。对于每张图片上的所有目标,最终都会以两点坐标的形式储存在一个xml文件之中。随后在Ubuntu16.04系统上对所设计的目标定位深层神经网络模型进行调优训练,经过近百万次迭代形成最终所使用的项目权重。
步骤四:对步骤二处理得到的第二图像(灰度图像)利用步骤三所训练得到的深层神经网络模型进行元器件目标位置检测。检测结果为包含目标在内的一个最小正向外接矩形边界框,返回结果是此边界框的中心点坐标、宽、高、置信度以及类别概率,从而确定出每一个目标(元器件)的位置区域。
步骤五:对于每一个元器件的位置区域利用前期基于HALCON所建立的目标图像模板,进行元器件偏移角度的检测。根据不同偏移角度将其进行矫正,在避免上下左右颠倒的情况下,得到元器件四边与图像视野水平、垂直方向相互平行的正向图,将正向图单独截取出来作为第三图像。后续的字符信息检测工作都是在得到的这一正向图上进行展开。
步骤六:设计并训练文本定位深层神经网络模型。前期需集中大批量地采集各类不同元器件上的文本区域图像,制作网络训练所需要的文本区域定位数据集,并完成目标文本区域的标定工作,标定方式与步骤三一致,不同的是将标定目标换由电子元器件成了字符文本区域。随后在Ubuntu16.04系统上对所设计的文本定位深层神经网络模型进行调优训练,经过近百万次迭代形成最终所使用的项目权重;
步骤七:对步骤五处理得到的第三图像(正向图),利用步骤六所训练得到的文本定位深层神经网络模型进行元器件文本区域位置检测,返回结果的表示方式与步骤四一致,得到第四图像;
步骤八:设计并训练字符识别深层神经网络模型。由于字符识别的数据库样本较为丰富,在光学字符识别(OpticalCharacterRecognition,OCR)领域已经有大量成熟的权重参数可供使用。但芯片等一些电子元器件表面信息字符较小且印刷比较集中,存在一定的特殊性。为了提升这类产品表面信息的检测效果,字符识别的训练所采用的是迁移学习的方法,即在现有的字符识别网络权重的基础上,结合部分前期采集到的电子元器件表面字符数据库进行迁移学习,训练平台依然是在Ubuntu16.04系统上进行的。相比于完全采用自建数据库进行训练的方式,这种方法极大节约了训练的时间,同时也提升了最终的字符检测效果。
步骤九:对步骤七所识别得到的文本字符区域,利用步骤八经过迁移学习所得到的字符深层神经网络模型对第四图像进行元器件文本字符内容检测,返回结果相比之前额外包含英文、数字等内容信息。
步骤十:将获取到的元件编码、生产批号等信息进行整理写入txt文档,将其通过串口立即传送到上位机软件,并在屏幕上进行显示。
步骤十一:上位机软件将接收到的元器件表面信息与它相关的测试信息进行整合,最终形成测试报告并永久保存。
实施例一
如图1至图3所示,基于深层神经网络的电子元器件批量信息检测方法,包括以下步骤:
步骤一:部署相机、光源等设备,采集高质量的电子元器件的图像。图像的采集依赖于一套完善的光学系统,本设备的光学系统由工业相机、条形光源及同轴光源所组成。光源的目的是为了辅助成像设备,提高成像质量。通过调节相机焦距、光圈大小、光照亮度、曝光时间、对比度、白平衡等参数,最终得到光照均匀、细节清晰、曝光及对比度得当的检测图像作为系统输入。随后会对相机的各项参数进行储存与锁定,在外界环境保持不变的情况下,这套参数将持续使用。
步骤二:对图像进行形态学处理,去除噪点使图像更加平滑,最终得到经过增强的灰度图像。基于OpenCV,本方法所用到的形态学处理方式包含膨胀、腐蚀、高帽变换以及中值滤波。首先对图像中的某一像素f(x,y),使用结构元g进行灰度形态学腐蚀运算,腐蚀可以使目标缩小,目标内的孔洞增大,能起到消除孤立噪声的作用,具体公式如下:
Figure BDA0003083092840000091
随后将腐蚀后的图像进行膨胀运算,使其恢复到与原来相似的大小,具体公式如下:
Figure BDA0003083092840000092
通过对采集到的图像先进行腐蚀再进行膨胀,整个过程也被称为图像的开运算,开运算能去除图像的一些“毛刺”,从而达到平滑图像的效果。但拍摄到的图像往往还会因为光源光照不均等影响,出现局部亮度变化明显的问题,使得印字与塑封体表面的对比度较低,因此还需要对图像进行光照校正。光照矫正采用的是高帽变换的方法,用较大的结构元对图像先进行开运算,然后再用原图像减去开运算的结果。具体公式如下:
h=f-f og
经过光照校正后的图像还会有很多噪声,对后续处理产生干扰,需要对图像进行滤波。试验发现,图像中噪声多为孤立亮点,中值滤波器能有效去除图像中较小的孤立亮点。为此,本文选用一个大小为3×3的中值滤波器,处理方法是用滤波模板在图像上逐个像素滑动,使其遍历整幅图像,对模板覆盖的像素亮度进行排序,选取中间值替换模板中心所在的像素值。
步骤三:设计并训练目标定位深层神经网络模型。经典的深度卷积神经网络的结构具有很多类型,例如全卷积网络FCN、SegNet等。但出于对速度和精度的高要求,本文以预设的YOLO系列网络为基础来进行训练。
网络训练阶段所使用的数据样本为20000张经步骤二得来的图像。标定工具使用的是国际机器视觉比赛上常用的LabelImg标注软件,采用两点标注的形式确定目标位置。标定要求为使电子元器件目标,完全被一个最小外接正向矩形紧密包裹如图2所示,记录矩形框左上与右下两个角点的坐标,以及相应的类别。最终,对于每张图片上的所有目标,都会以两点坐标以及类别的VOC数据格式储存在一个xml文件之中。网络训练在Ubuntu16.04系统平台上进行,在20000张样本中使用18000张图像进行训练,2000张样本进行来测试。初始学习率设定为0.0001,权值衰减率和动量分别为0.0005和0.9,共进行20000个Epoch的训练,每个Epoch迭代1000次。网络的损失函数包含两个部分:
(1)边界框回归带来的误差Lbox,这一误差来自中心坐标误差和宽高误差之和,公式如下:
Figure BDA0003083092840000101
Figure BDA0003083092840000102
Lbox=Lcenter+Lwh
上式中,参数
Figure BDA0003083092840000103
表示的是第i个网格中的第j个边界框是否负责此类目标,是则为1,否则为0;网格一共是s×s个,每个网格会产生B个边界框。
(2)判断框中是否有目标的概率的置信度误差Lobj,公式如下。其中
Figure BDA0003083092840000104
表示真实值,与
Figure BDA0003083092840000105
的定义类似。
Figure BDA0003083092840000106
Figure BDA0003083092840000107
综上所述,电子元器件目标定位深层神经网络的损失函数L设定如下:
L=Lbox+Lobj
网络先将输入图片修改为统一的尺416×416像素,接着把图片分割为S×S的网格。输出是一个S×S×(5×B+C)的张量。其中S为最开始将图像划分网格的行列数,每个网格需要检测B个边界框,每个边界框都包含5个参数信息,分别为预测参数(x,y,w,h)和置信度评分,(x,y,w,h)为物体的中心位置相对格子位置的偏移及宽度和高度,其数值均被归一化至[0,1],C代表目标类别数。对于本方法而言通过对数据集进行k-means聚类,产生了9个不同尺寸的大小的锚点框(anchor),即预测对象约束范围,并将其应用于三个不同的特征层。分别为:13×13特征图对应(116,90)、(156,198)和(373,326)的anchor;26×26特征图对应(30,61)、(62,45)和(59,119)的anchor;52×52特征图对应(10,13)、(16,130)和(33,23)的anchor;
其中边界框的置信度评分可以衡量两方面,其一是衡量网络内目标物体的准确度,用Pr(object)表示,当边界框内检测到物体的时候,Pr(object)=1。当边界框内没有检测到物体的时候,Pr(object)=0。其二是衡量边界框的准确度,用预测框与实际框的交并比(IntersectionOverUnion,IOU)来表征,记为
Figure BDA0003083092840000111
计算方式是“预测边框”与“真实边框”的交集与并集的比值。当目标框内有物体时,置信度评分数值由
Figure BDA0003083092840000112
来表示。整幅图片中每个网格中各个目标的分类概率记为Pr(calss),Pr(calss)的计算如下列公式:
Figure BDA0003083092840000113
其中Pr(class|object)为每个网格单元内预测C个条件类别的概率,i的取值为1,2,3L C。在使用YOLO算法时,存在一个情况是目标被多次检测,有多个框,这个时候使用非极大值抑制算法进行边框回归(BoundingboxRegression,Bbox)的冗余裁剪,去除多余的框,得到最后预测结果。
步骤四:对步骤二处理得到的灰度图像,利用步骤三所训练得到的深层神经网络模型进行元器件目标位置检测。检测结果不是直接的边界框的坐标,而是与目标网格单元相关的偏移值大小。其计算公式如下:
bx=σ(tx)+cx
by=σ(ty)+cy
Figure BDA0003083092840000114
Figure BDA0003083092840000115
其中,bx,by,bw,bh为预测的中心坐标x,y;tx,ty,tw,th则是网络的输出;cx和cy是网格的左上角坐标;pw和ph是anchor的尺寸。置信度是每个边界框输出的一个重要参数,它的大小代表着该框中是否含有目标的概率,后期通过非极大值抑制,低于某一设置阈值的框会被直接去除,从而最终确定出每一个目标的位置区域。
步骤五:对于每一个目标区域,利用前期基于HALCON所建立的目标图像模板,进行元器件偏移角度的检测。由于芯片等电子元器件多为矩形,模板图像采用的是紧密贴合目标的最小外接矩形,随后使用reduce_domain算子将其裁剪得来。使用create_shape_model算子创建形状模板,设置NumLevel为4,Contrast为30,一同优化其他例如AngleStart、AngleExtent、Metric等参数。最后使用find_shap_model算子搜索匹配最佳区域。并将搜索到目标对象的匹配分值储存至参数Score中。find_shap_model算子返回的结果除了匹配分值外,还有目标的坐标以及旋转角度。根据不同偏移角度将其进行矫正,在避免上下左右颠倒的情况下,得到元器件四边与图像视野水平、垂直方向相互平行的正向图。后续的字符信息检测工作都是在得到的这一正向图上进行展开。
步骤六:设计并训练文本定位深层神经网络文本定位深层神经网络。前期需集中大批量地采集各类不同元器件上的文本区域图像,制作网络训练所需要的文本区域定位数据集,并完成目标文本区域的标定工作,标定方式与步骤三一致,不同的是将标定目标由电子元器件换成了字符文本区域。随后在Ubuntu16.04系统上对所设计的文本定位深层神经网络文本定位深层神经网络进行调优训练,在20000张样本中使用18000张图像进行训练,2000张样本进行来测试。初始学习率设定为0.0001,权值衰减率和动量分别为0.0005和0.9,共进行20000个Epoch的训练,每个Epoch迭代1000次。每1000次保存一个模型,经过近百万次迭代形成最终所使用的项目权重。
步骤七:对步骤五处理得到的正向图,利用步骤六所训练得到的深层神经网络模型进行元器件文本区域位置检测,返回结果的表示方式与步骤四一致。
步骤八:设计并训练字符识别深层神经网络。采用的是迁移学习的方法,即在现有的字符识别网络权重的基础上,结合部分前期采集到的电子元器件表面字符数据库进行迁移学习,训练平台依然是在Ubuntu16.04系统上进行的。相比于完全采用自建数据库进行训练的方式,这种方法极大节约了训练的时间,同时也提升了最终的字符检测效果。训练参数大部分仍然与步骤三保持一致,但与之前训练所不同的是,由于网络输出的目标不再仅有一类,而是一个包含72个大小写的英文字母以及从0到9这一共10个阿拉伯数字在内的82个目标。此时网络的损失函数则需添加一个额外的用来计算这82个不同目标的类别误差Lclass,公式如下:
Figure BDA0003083092840000121
此时,字符识别深层神经网络的损失函数L设定如下:
L=Lbox+Lobj+Lclass
步骤九:如图3所示,对步骤七所识别得到的文本字符区域。利用步骤八经过迁移学习所得到的文本字符深层神经网络模型进行元器件文本字符内容检测,返回结果相比之前额外包含英文、数字等内容信息。对于每一个识别到的字符目标,都能得到其中心点的坐标以及对应每种不同类别的概率信息。取概率最大的类别作为字符识别的最终内容。
步骤十:将获取到的元件编码、生产批号等信息进行整理写入txt文档,将其通过串口立即传送到上位机软件,并在屏幕上进行显示。由于前期在图像预处理环节已经将目标元件正向置于视野之中,所以对平行的不同文本框之间,可以依据文本框中心点的横坐标xt,由小到大依次分不同的行进行信息的写入。而对于同一个文本框的字符目标而言,由于其目标几乎完全处于同一水平线上,所以可以依据同一文本框中不同字符中心点的纵坐标yc从左至右依次将识别到的内容写入文档。
步骤十一:上位机软件将接收到的元器件表面信息与它相关的测试信息进行整合,替换缺省状态下文件对应字段的数据,最终形成测试报告并永久保存。
实施例二
如图4和图5所示,基于深层神经网络的电子元器件批量信息检测系统,包括:图像采集系统,用于采集元器件图像得到第一图像;图像预处理系统,用于对图形采集系统得到的第一图像进行预处理得到第二图像;元器件的位置区域处理系统,用于对第二图像进行元器件目标位置检测得到每个元器件的位置区域;元器件的偏移角度处理系统,用于对元器件的位置区域进行角度检测得到每个位置区域的偏移角度;偏移角度修正系统,用于根据偏移角度修正每个位置区域得到第三图像;文本区域位置处理系统,用于对第三图像进行处理得到元器件表面的文本区域位置,并将文本区域位置定义为第四图像;文本内容识别系统,用于对第四图像进行识别得到元器件表面信息;存档系统,用于对元器件表面信息进行存档,并上传给上位机软件;及上位机软件,用于对存档的元器件表面信息进行整合得到检测批量信息。
以上结合具体实施例描述了本发明的技术原理。这些描述只是为了解释本发明的原理,而不能以任何方式解释为对本发明保护范围的限制。基于此处的解释,本领域的技术人员不需要付出创造性的劳动即可联想到本发明的其它具体实施方式,这些方式都将落入本发明权利要求的保护范围之内。

Claims (10)

1.基于深层神经网络的电子元器件批量信息检测方法,其特征在于,包括以下步骤:
图像采集,通过相机获取待检测批量元器件的第一图像;
图像预处理,第一图像通过设定阈值进行形态学处理,去除噪点得到经过增强的灰度图像,将灰度图像作为第二图像;
元器件的位置区域检测,使用设计并训练好的目标定位深层神经网络模型对第二图像进行元器件目标位置检测,检测结果为包含元器件在内的一个最小正向外接矩形边界框,返回结果是此边界框的中心点坐标、宽、高、置信度以及类别概率,从而确定出视野范围内每一个元器件的位置区域;
元器件的偏移角度检测,使用基于HALCON建立的图像模板匹配计算出每个位置区域的偏移角度;
偏移角度修正,根据偏移角度对位置区域进行矫正,得到元器件四边与图像视野水平、垂直方向相互平行的正向图,并将正向图单独截取出来作为第三图像;
文本区域位置检测,使用设计并训练好的文本定位深层神经网络模型对第三图像处理得到元器件表面的文本区域位置,并将文本区域位置作为第四图像;
文本内容识别,使用设计并训练好的字符识别深层神经网络模型对第四图像进行识别,得到元器件表面信息;
存档并上传,将元器件信息写入文档,并上传给上位机软件;
得到批量信息,上位机软件将接收到的元器件表面信息,替换缺省状态下文件对应字段的数据,得到检测的批量信息。
2.根据权利要求1所述的基于深层神经网络的电子元器件批量信息检测方法,其特征在于,所述图像预处理中包括基于OpenCV对第一图像依次进行腐蚀、膨胀、高帽变换以及中值滤波处理。
3.根据权利要求1所述的基于深层神经网络的电子元器件批量信息检测方法,其特征在于,所述目标定位深层神经网络模型的设计和训练包括以下步骤:
大批量地采集目标元器件样本图像,制作网络训练所需要的数据集,并完成位置区域的标定,所述标定时采用两点标注的形式确定位置区域;
将每张图片上的所有目标都以两点坐标的形式储存在一个xml文件之中,所述两点坐标分别为矩形的位置区域的两个对角坐标;
在Ubuntu系统上对预设的YOLO系列网络进行调优训练,经过迭代得到目标定位深层神经网络模型。
4.根据权利要求3所述的基于深层神经网络的电子元器件批量信息检测方法,其特征在于,所述元器件的位置区域检测时包括以下步骤:
目标定位深层神经网络模型先将输入图片修改为统一的尺416×416像素,接着把图片分割为S×S的网格,输出是一个S×S×(5×B+C)的张量,其中S为最开始将图像划分网格的行列数,每个网格需要检测B个边界框,每个边界框都包含5个参数信息,分别为预测参数(x,y,w,h)和置信度评分,其中(x,y,w,h)为物体的中心位置相对格子位置的偏移及宽度和高度,其数值均被归一化至[0,1],C代表目标类别数;
通过对数据集进行k-means聚类,产生9个不同尺寸的大小的anchor,并将其应用于三个不同的特征层,三个不同的特征层分别为:13×13特征图对应(116,90)、(156,198)和(373,326)的anchor;26×26特征图对应(30,61)、(62,45)和(59,119)的anchor;52×52特征图对应(10,13)、(16,130)和(33,23)的anchor;
其中边界框的置信度评分用于衡量网络内模板物体的准确度和衡量边界框的准确度;
衡量网络内目标物体的准确度时用Pr(object)表示,当边界框内检测到物体的时候,Pr(object)=1;当边界框内没有检测到物体的时候,Pr(object)=0;
衡量边界框的准确度时用预测框与实际框的交并比(IntersectionOverUnion,IOU)来表征,记为
Figure FDA0003083092830000021
计算方式是“预测边框”与“真实边框”的交集与并集的比值;当目标框内有物体时,置信度评分数值由
Figure FDA0003083092830000022
来表示,整幅图片中每个网格中各个目标的分类概率记为Pr(calss),Pr(calss)的计算如下列公式:
Figure FDA0003083092830000023
其中Pr(class|object)为每个网格单元内预测C个条件类别的概率,i的取值为1,2,3LC。
5.根据权利要求4所述的基于深层神经网络的电子元器件批量信息检测方法,其特征在于,在使用YOLO算法时,当目标被多次检测,有多个框时候使用非极大值抑制算法进行边框回归(BoundingboxRegression,Bbox)的冗余裁剪,去除多余的框,得到最后预测结果。
6.根据权利要求4所述的基于深层神经网络的电子元器件批量信息检测方法,其特征在于,所述元器件的位置区域检测时得到的检测结果是与目标网格单元相关的偏移值大小,计算公式如下:
bx=σ(tx)+cx
by=σ(ty)+cy
Figure FDA0003083092830000031
Figure FDA0003083092830000032
其中,bx,by,bw,bh为预测的中心坐标x,y;tx,ty,tw,th则是网络的输出;cx和cy是网格的左上角坐标;pw和ph是anchor的尺寸。
7.根据权利要求1至6任一项所述的基于深层神经网络的电子元器件批量信息检测方法,其特征在于,所述图像模板建立包括以下步骤:
剪裁图像,模板图像采用的是紧密贴合元器件的最小外接矩形,并通过reduce_domain算子裁剪得到;
使用create_shape_model算子创建形状模板,设置NumLevel为4,Contrast为30;
使用find_shap_model算子搜索匹配最佳区域,并将搜索到的与模板图像的匹配分值储存至参数Score中,所述find_shap_model算子返回的结果包括匹配分值、位置区域的坐标以及旋转角度。
8.根据权利要求1至6任一项所述的基于深层神经网络的电子元器件批量信息检测方法,其特征在于,所述文本定位深层神经网络模型的设计和训练包括以下步骤:
大批量地采集各类不同元器件上的文本区域图像,制作网络训练所需要的文本区域定位数据集;
对完成的文本区域进行标定,所述标定时采用两点标注的形式确定文本区域,将每张图片上的所有目标都以两点坐标的形式储存在一个xml文件之中,所述两点坐标分别为矩形的文字区域的两个对角坐标;
在Ubuntu系统上对预设的YOLO系列网络进行调优训练,经过迭代得到文本定位深层神经网络模型。
9.根据权利要求1至6任一项所述的基于深层神经网络的电子元器件批量信息检测方法,其特征在于,所述字符识别深层神经网络模型的设计和训练包括以下步骤:
采用迁移学习的方法在现有的字符识别网络权重的基础上,结合部分前期采集到的电子元器件表面字符数据库进行迁移学习。
10.基于深层神经网络的电子元器件批量信息检测系统,其特征在于,包括:
图像采集系统,用于采集元器件图像得到第一图像;
图像预处理系统,用于对图形采集系统得到的第一图像进行预处理得到第二图像;
元器件的位置区域检测系统,用于对第二图像进行元器件目标位置检测得到每个元器件的位置区域;
元器件的偏移角度检测系统,用于对元器件的位置区域进行角度检测得到每个位置区域的偏移角度;
偏移角度修正系统,用于根据偏移角度修正每个位置区域得到第三图像;
文本区域位置检测系统,用于对第三图像进行处理得到元器件表面的文本区域位置,并将文本区域位置定义为第四图像;
文本内容识别系统,用于对第四图像进行识别得到元器件表面信息;
存档系统,用于对元器件表面信息进行存档,并上传给上位机软件;及
上位机软件,用于对存档的元器件表面信息进行整合得到检测批量信息。
CN202110572538.XA 2021-05-25 2021-05-25 基于深层神经网络的电子元器件批量信息检测方法及系统 Active CN113205511B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110572538.XA CN113205511B (zh) 2021-05-25 2021-05-25 基于深层神经网络的电子元器件批量信息检测方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110572538.XA CN113205511B (zh) 2021-05-25 2021-05-25 基于深层神经网络的电子元器件批量信息检测方法及系统

Publications (2)

Publication Number Publication Date
CN113205511A true CN113205511A (zh) 2021-08-03
CN113205511B CN113205511B (zh) 2023-09-29

Family

ID=77023149

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110572538.XA Active CN113205511B (zh) 2021-05-25 2021-05-25 基于深层神经网络的电子元器件批量信息检测方法及系统

Country Status (1)

Country Link
CN (1) CN113205511B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113920289A (zh) * 2021-09-26 2022-01-11 广西大学 一种基于深度学习的芯片imei码检测识别方法
CN115393255A (zh) * 2022-02-17 2022-11-25 中科芯集成电路有限公司 基于视觉与神经网络的航空杆件自动组装检测装置及方法
CN115423783A (zh) * 2022-09-13 2022-12-02 优层智能科技(上海)有限公司 一种用于光伏组件边框及接线盒灌胶的质检方法和装置
CN117058241A (zh) * 2023-10-10 2023-11-14 轩创(广州)网络科技有限公司 一种基于人工智能的电子元件定位方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108121984A (zh) * 2016-11-30 2018-06-05 杭州海康威视数字技术股份有限公司 一种字符识别方法及装置
CN110070536A (zh) * 2019-04-24 2019-07-30 南京邮电大学 一种基于深度学习的pcb板元器件检测方法
CN110321892A (zh) * 2019-06-04 2019-10-11 腾讯科技(深圳)有限公司 一种图片筛选方法、装置及电子设备
CN111753828A (zh) * 2020-05-19 2020-10-09 重庆邮电大学 一种基于深度卷积神经网络的自然场景水平文字检测方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108121984A (zh) * 2016-11-30 2018-06-05 杭州海康威视数字技术股份有限公司 一种字符识别方法及装置
CN110070536A (zh) * 2019-04-24 2019-07-30 南京邮电大学 一种基于深度学习的pcb板元器件检测方法
CN110321892A (zh) * 2019-06-04 2019-10-11 腾讯科技(深圳)有限公司 一种图片筛选方法、装置及电子设备
CN111753828A (zh) * 2020-05-19 2020-10-09 重庆邮电大学 一种基于深度卷积神经网络的自然场景水平文字检测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
鲁然;徐永进;李晨;沈曙明;严华江;任旭;武占河;: "元器件信息识别系统的设计及应用", 浙江电力, no. 05 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113920289A (zh) * 2021-09-26 2022-01-11 广西大学 一种基于深度学习的芯片imei码检测识别方法
CN115393255A (zh) * 2022-02-17 2022-11-25 中科芯集成电路有限公司 基于视觉与神经网络的航空杆件自动组装检测装置及方法
CN115423783A (zh) * 2022-09-13 2022-12-02 优层智能科技(上海)有限公司 一种用于光伏组件边框及接线盒灌胶的质检方法和装置
CN117058241A (zh) * 2023-10-10 2023-11-14 轩创(广州)网络科技有限公司 一种基于人工智能的电子元件定位方法及系统
CN117058241B (zh) * 2023-10-10 2024-03-29 轩创(广州)网络科技有限公司 一种基于人工智能的电子元件定位方法及系统

Also Published As

Publication number Publication date
CN113205511B (zh) 2023-09-29

Similar Documents

Publication Publication Date Title
CN113205511B (zh) 基于深层神经网络的电子元器件批量信息检测方法及系统
CN110992317B (zh) 一种基于语义分割的pcb板缺陷检测方法
CN110059694B (zh) 电力行业复杂场景下的文字数据的智能识别方法
US20210390678A1 (en) Method for monitoring manufacture of assembly units
CN110060237B (zh) 一种故障检测方法、装置、设备及系统
CN111402226A (zh) 一种基于级联卷积神经网络的表面疵点检测方法
CN108711148B (zh) 一种基于深度学习的轮胎缺陷智能检测方法
CN110021005A (zh) 电路板瑕疵筛选方法及其装置与计算机可读取记录介质
CN110992349A (zh) 一种基于深度学习的地下管道异常自动化定位与识别方法
CN109919934A (zh) 一种基于多源域深度迁移学习的液晶面板缺陷检测方法
CN109886928A (zh) 一种目标细胞标记方法、装置、存储介质及终端设备
CN116188475A (zh) 一种外观缺陷自动光学检测的智慧控制方法、系统及介质
CN112651966A (zh) 一种基于acyolov4_csp的印刷电路板微小缺陷检测方法
CN113222913B (zh) 一种电路板缺陷检测定位方法、装置和存储介质
CN112232371A (zh) 一种基于YOLOv3与文本识别的美式车牌识别方法
CN113256623B (zh) 一种基于改进mask rcnn的fpc缺陷检测方法
CN112365497A (zh) 基于TridentNet和Cascade-RCNN结构的高速目标检测方法和系统
CN112819748B (zh) 一种带钢表面缺陷识别模型的训练方法及装置
CN112184679A (zh) 一种基于YOLOv3的酒瓶瑕疵自动检测方法
CN111242899A (zh) 基于图像的瑕疵检测方法及计算机可读存储介质
CN110728269A (zh) 一种高铁接触网支柱杆号牌识别方法
CN110687120A (zh) 法兰外观质量检测系统
CN118115835A (zh) 导光板缺陷小样本数据扩充方法、系统、设备及存储介质
CN118038489A (zh) 视觉算法测试过程及数据的优化方法
CN116664540A (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
GR01 Patent grant
GR01 Patent grant