CN108280837B - 基于变换的x射线图像中bga焊球轮廓提取方法 - Google Patents

基于变换的x射线图像中bga焊球轮廓提取方法 Download PDF

Info

Publication number
CN108280837B
CN108280837B CN201810071752.5A CN201810071752A CN108280837B CN 108280837 B CN108280837 B CN 108280837B CN 201810071752 A CN201810071752 A CN 201810071752A CN 108280837 B CN108280837 B CN 108280837B
Authority
CN
China
Prior art keywords
image
dst
loc
welding
mask
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.)
Active
Application number
CN201810071752.5A
Other languages
English (en)
Other versions
CN108280837A (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.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
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 University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN201810071752.5A priority Critical patent/CN108280837B/zh
Publication of CN108280837A publication Critical patent/CN108280837A/zh
Application granted granted Critical
Publication of CN108280837B publication Critical patent/CN108280837B/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/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/48Extraction of image or video features by mapping characteristic values of the pattern into a parameter space, e.g. Hough transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10116X-ray image
    • 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
    • G06T2207/30152Solder

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Electric Connection Of Electric Components To Printed Circuits (AREA)

Abstract

本发明提出了一种基于变换的X射线图像中BGA焊球轮廓提取方法,包括如下步骤:S1,获取焊点原始图像,对原始图像进行圆检测,得到焊点图像,对每个焊点的焊球进行初识别,得到每个焊点的ROI;S2,对原始图像进行变换,获取目标图像后,对目标图像进行边缘检测;S3,将检测结果映射回原始坐标系得到掩膜图像,以此对原始图像做掩膜处理,提取出单个焊点图像;对掩膜图像进行边缘提取,从而提取出焊点轮廓图像。

Description

基于变换的X射线图像中BGA焊球轮廓提取方法
技术领域
本发明涉及计算机软件自动化领域,尤其涉及一种基于变换的X射线图像中BGA焊球轮廓提取方法。
背景技术
现有技术中,对PCB板上BGA焊点轮廓提取方法主要有以下3种:
1.在降噪等预处理后进行阈值分割来提取BGA焊点;
2.使用漫水法对图像进行逐步填充以及改进的“基于扫描线的种子填充方”来获取BGA焊点;
3.使用Canny等边缘检测方法识别焊点边缘,从而获得焊球目标。
第一种方法只利用了数字图像的灰度信息,对灰度干扰及图像质量要求高,且易受到内部气泡和外部导线的干扰;第二种方法也容易受到复杂周边环境,如多导线连接和灰度分布不均匀的影响,导致误识别;第三种方法主要是使用了梯度信息进行检测,但忽略目标为圆形这一信息,使得检测的结果不够精准。所以在BGA缺陷检测技术中,焊球目标的准确分割是本领域亟需解决的基础问题。而且这些方法都是依赖参数的,参数的调整直接决定了处理效果的优劣,使用参数会造成数据主观性增强。
发明内容
本发明旨在至少解决现有技术中存在的技术问题,特别创新地提出了一种基于变换的X射线图像中BGA焊球轮廓提取方法。
为了实现本发明的上述目的,本发明提供了一种基于变换的X射线图像中BGA焊球轮廓提取方法,其特征在于,包括如下步骤:
S1,获取焊点原始图像,对原始图像进行圆检测,识别出原始图像中焊点的初步位置,得到每个焊点的ROI(感兴趣区域);
S2,对原始图像进行变换,获取目标图像后,使用无参数的方法对目标图像进行边缘检测;
S3,将检测结果映射回原始坐标系得到掩膜图像,以此对原始图像做掩膜处理,提取出单个焊点图像;对掩膜图像进行边缘提取,从而提取出焊点轮廓图像。
所述的基于变换的X射线图像中BGA焊球轮廓提取方法,优选的,所述S1包括:
S1-1,对原始图像进行基于霍夫变换的圆检测,初步获得到各个焊点Ci的圆心坐标Pi及半径Ri
S1-2,对所识别的焊点Ci,以圆心坐标Pi为中心,直径2Ri乘以一个倍率k作为边长的正方形区域,作为焊点Ci的ROI(感兴趣区域)。
所述的基于变换的X射线图像中BGA焊球轮廓提取方法,优选的,所述S2包括:
S2-1,对S1中提取的每一个焊点的ROI进行如下处理,对原始ROI Psrc进行变换,假设Psrc大小为(2R+1)×(2R+1),则令目标图像Pdst大小为(R+1)×L;其中L为目标图像的高度,R为原始ROI中焊点的半径。
S2-2,在目标图像Pdst中进行目标边缘检测,具体方法如下,将Pdst与[1,-1]做相关运算,得到相关运算后的目标图像Pdst|conv2,将Pdst|conv2的左右各20%置0,得到经过置0处理后的目标图像Pdst|conv2|mask,检测Pdst|conv2|mask中每一行的最大值的位置,则有向量:
Loc={loc1,loc2,...,locj,...,locL}
Loc[j]=locj,其中j为正整数,locj等于Pdst|conv2|mask第j行中最大值的位置。
如果Pdst|conv2|mask中的某一行存在多个最大值,则locj等于这些最大值位置的中心点。
所述的基于变换的X射线图像中BGA焊球轮廓提取方法,优选的,所述S2还包括:
由Psrc经过变换,得到Pdst的方法如下:
令两幅图像的坐标系分别如下:
Psrc:坐标系位于图像中心,向右为X轴正方向,向上为Y轴正方向;
Pdst:坐标系原点位于图像左下角,向右为X轴正方向,向上为Y轴正方向;
对于Pdst中的任意点P(x,y),其值由下述方法计算得到:
Pdst(x,y)=Psrc(x×cos(y),x×sin(y))。
所述的基于变换的X射线图像中BGA焊球轮廓提取方法,优选的,所述S3包括:
S3-1将检测结果映射回原始图像,则生成另一副掩膜图像Pans,Pans是二值图像,其大小和Psrc一样,其值如下所示:
Figure GDA0002449944080000031
其中
Figure GDA0002449944080000032
由于向量Loc是离散的,因此当索引非自然数时,需要用插值的方式得到结果,使用线性插值,方法如下:
Loc(t)=(t-floor(t))×Loc[top(t)]+(top(t)-t)×Loc[floor(t)]
其中,floor(t)表示向下取整,top(t)表示向上取整,t为任意实数,在此应用场景中,t等于上上式中的
Figure GDA0002449944080000041
其中,atan2函数与普通意义上的四象限反正切有所区别,采用如下定义:
Figure GDA0002449944080000042
其中arctan是标准的反正切函数
S3-2,使用Pans对Psrc做如下处理,
Figure GDA0002449944080000043
即在ROI中提取出了焊点;
S3-3,对Pans做边缘提取,即提取出了焊点轮廓。提取的方法如下:
首先,遍历Pans中所有点,若某一点8邻域像素的值与其相同,则将其标记为“非目标点”,否则,将其标记为“目标点”。然后,将Pans中所有的“非目标点”的值修改为0,将Pans中所有的“目标点”修改为1。最后,得到了焊点的轮廓图。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
本发明将提出一种不需要参数方法获取焊点原始图像,对原始图像进行圆检测,得到单个焊点图像,对每个焊点的焊球进行初识别,对原始图像进行变换,获取目标图像后,使用无参数的方法对目标图像进行边缘检测;根据检测结果形成掩膜图像;将原始图像做掩膜处理,提取出单个焊点图像;对掩膜图像进行边缘提取,从而提取出焊点轮廓图像,增强了图像识别率,具有很高的适应性。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1是本发明流程图;
图2是本发明效果图;
图3是本发明另一效果图;
图4A、4B是本发明参数效果图;
图5A为Pdst的图像;
图5B为Pdst|conv2|mask的图像;
图5C是Pdst|conv2|mask中每一行最大值点的示意图。
图6A为ROI的原始图像;
图6B是本发明提取单个焊点的效果图。
图7是本发明提取单个焊点的轮廓的效果图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
在本发明的描述中,需要理解的是,术语“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
在本发明的描述中,除非另有规定和限定,需要说明的是,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是机械连接或电连接,也可以是两个元件内部的连通,可以是直接相连,也可以通过中间媒介间接相连,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
如图1所示,轮廓提取处理流程如下:
S1获取焊点原始图像,对原始图像进行圆检测,得到焊点图像,对每个焊点的焊球进行初识别,得到每个焊点的ROI(感兴趣区域);
1、焊球识别:对如图2所示的原始图像进行基于霍夫变换的圆检测,初步获得到各个焊点Ci的圆心坐标Pi及半径Ri;结果如图3所示。相应的圆心坐标及半径如下表:
1 2 3 4 5 6 7 8
圆心坐标 (154,539) (169,352) (138,726) (319,546) (184,168) (498,209) (484,379) (347,189)
半径 44 45 45 42 45 41 41 43
9 10 11 12 13 14 15 16
圆心坐标 (637,226) (332,366) (304,727) (625,392) (457,727) (472,553) (599,727) (612,561)
半径 40 42 42 40 41 40 39 40
2、ROI(感兴趣区域)的提取:对原始图像进行圆检测,得到每个焊点的圆心和半径,然后把每个焊点及其周围的区域作为ROI提取出来。对于步骤1中所识别的焊点Ci,以圆心坐标Pi和直径2Ri乘以一个倍率k作为边长的正方形区域,作为标准的感兴趣区域,此处k为1.3;如图3所示。以本实施例中的焊点1为例,其圆心坐标是(154,539),半径是44,则提取x坐标从97到211,y坐标是从482到596的正方形区域。步骤1和步骤2即为焊球初识别。
S2焊球精识别的过程
S2-1对原始图像进行变换,如图4A和4B所示:假设原始图像Psrc的大小为(2R+1)×(2R+1),则令目标图像Pdst大小为(R+1)×L,
为方便描述,令两幅图像的坐标系分别如下:
Psrc:坐标系位于图像中心,向右为X轴正方向,向上为Y轴正方向。
Pdst:坐标系原点位于图像左下角,向右为X轴正方向,向上为Y轴正方向。
对于Pdst中的任意点P(xi,yi),其值由下述方法计算得到:
Pdst(xi,yi)=Psrc(x×cos(y),x×sin(y))
得到的Pdst如图5A所示
S2-2在目标图像Pdst中进行边缘检测,将Pdst与[1,-1]做相关运算,得到Pdst|conv2,将Pdst|conv2的左右各20%归0,得到Pdst|conv2|mask,如图5B所示。检测Pdst|conv2|mask中每一行的最大值的位置,则有向量:
Loc={loc1,loc2,...,locj,...,locL}
Loc[j]=locj
相应的Pdst|conv2|mask中每一行的最大值点入图5C中所示。
S3-1将检测结果映射回原始图像,则生成另一副掩膜图像Pans,Pans是二值图像,其大小和Psrc一样,其值如下所示:
Figure GDA0002449944080000081
其中
Figure GDA0002449944080000082
由于LOC是离散的,因此当索引非自然数时,需要用插值的方式得到结果,使用线性插值,方法如下:
Loc(t)=(t-floor(t))×Loc[top(t)]+(top(t)-t)×Loc[floor(t)]
其中,floor(t)表示向下取整,top(t)表示向上取整,t为待取整的实数。
S3-2,使用Pans对Psrc做如下处理,
Figure GDA0002449944080000083
即在ROI中提取出了焊点;
S3-3,对Pans做边缘提取,即提取出了焊点轮廓。提取的方法如下:
首先,遍历Pans中所有点,若某一点8邻域像素的值与其相同,则将其标记为“非目标点”,否则,将其标记为“目标点”。然后,将Pans中所有的“非目标点”的值修改为0,将Pans中所有的“目标点”修改为1。最后,得到了焊点的轮廓图。
图6A是单个焊点ROI的原始图像,图6B是这个ROI中焊点的提取结果。
图7是提取出的焊点轮廓。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。

Claims (3)

1.一种基于变换的X射线图像中BGA焊球轮廓提取方法,其特征在于,包括如下步骤:
S1,获取焊点原始图像,对原始图像进行圆检测,识别出原始图像中焊点的初步位置,得到每个焊点的ROI感兴趣区域;
S2,对原始图像进行变换,获取目标图像后,使用无参数的方法对目标图像进行边缘检测;
所述S2还包括:
S2-1,对S1中提取的每一个焊点的ROI进行如下处理,对原始图像Psrc进行变换,假设Psrc大小为(2R+1)×(2R+1),则令目标图像Pdst大小为(R+1)×L;其中L为目标图像的高度,R为原始ROI中焊点的半径;
S2-2,在目标图像Pdst中进行目标边缘检测,具体方法如下,将Pdst与[1,-1]做矩阵运算,得到矩阵运算后的目标图像Pdst|conv2,将Pdst|conv2的左右各20%置0,得到经过置0处理后的目标图像Pdst|conv2|mask,检测Pdst|conv2|mask中每一行的最大值的位置,则有向量:
Loc={loc1,loc2,...,locj,...,locL},
Loc[j]=locj,其中j为正整数,locj等于Pdst|conv2|mask第j行中最大值的位置;
如果Pdst|conv2|mask中的某一行存在多个最大值,则locj等于这些最大值位置的中心点;
S3,将检测结果映射回原始坐标系得到掩膜图像,以此对原始图像做掩膜处理,提取出单个焊点图像;对掩膜图像进行边缘提取,从而提取出焊点轮廓图像;
所述S3包括:
S3-1将检测结果映射回原始图像,则生成另一副掩膜图像Pans,Pans是二值图像,其大小和Psrc一样,其值如下所示:
Figure FDA0002481466310000021
由于向量Loc是离散的,因此当索引非自然数时,需要用插值的方式得到结果,使用线性插值,方法如下:
Loc(t)=(t-floor(t))×Loc[top(t)]+(top(t)-t)×Loc[floor(t)]
其中,floor(t)表示向下取整,top(t)表示向上取整,t为任意实数,在此应用场景中,t等于
Figure FDA0002481466310000022
其中,atan2函数与普通意义上的四象限反正切有所区别,采用如下定义:
Figure FDA0002481466310000023
其中arctan是标准的反正切函数
S3-2,使用Pans对Psrc做如下处理,
Figure FDA0002481466310000024
即在ROI中提取出了焊点;
S3-3,对Pans做边缘提取,即提取出了焊点轮廓;提取的方法如下:
首先,遍历Pans中所有点,若某一点8邻域像素的值与其相同,则将其标记为“非目标点”,否则,将其标记为“目标点”;然后,将Pans中所有的“非目标点”的值修改为0,将Pans中所有的“目标点”修改为1;最后,得到了焊点的轮廓图。
2.根据权利要求1所述的基于变换的X射线图像中BGA焊球轮廓提取方法,其特征在于,所述S1包括:
S1-1,对原始图像进行基于霍夫变换的圆检测,初步获得到各个焊点Ci的圆心坐标Pi及半径Ri
S1-2,对所识别的焊点Ci,以圆心坐标Pi为中心,直径2Ri乘以一个倍率k作为边长的正方形区域,作为焊点Ci的ROI感兴趣区域。
3.根据权利要求1所述的基于变换的X射线图像中BGA焊球轮廓提取方法,其特征在于,所述S2还包括:
由Psrc经过变换,得到Pdst的方法如下:
令两幅图像的坐标系分别如下:
Psrc:坐标系位于图像中心,向右为X轴正方向,向上为Y轴正方向;
Pdst:坐标系原点位于图像左下角,向右为X轴正方向,向上为Y轴正方向;
对于Pdst中的任意点P(x,y),其值由下述方法计算得到:
Pdst(x,y)=Psrc(x×cos(y),x×sin(y))。
CN201810071752.5A 2018-01-25 2018-01-25 基于变换的x射线图像中bga焊球轮廓提取方法 Active CN108280837B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810071752.5A CN108280837B (zh) 2018-01-25 2018-01-25 基于变换的x射线图像中bga焊球轮廓提取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810071752.5A CN108280837B (zh) 2018-01-25 2018-01-25 基于变换的x射线图像中bga焊球轮廓提取方法

Publications (2)

Publication Number Publication Date
CN108280837A CN108280837A (zh) 2018-07-13
CN108280837B true CN108280837B (zh) 2020-06-26

Family

ID=62804996

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810071752.5A Active CN108280837B (zh) 2018-01-25 2018-01-25 基于变换的x射线图像中bga焊球轮廓提取方法

Country Status (1)

Country Link
CN (1) CN108280837B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110763700A (zh) * 2019-10-22 2020-02-07 深选智能科技(南京)有限公司 一种半导体元器件缺陷检测方法和设备
CN111307818B (zh) * 2020-02-25 2021-07-20 华南理工大学 一种锂电池极耳激光焊点视觉在线检测方法
CN113218970A (zh) * 2021-03-17 2021-08-06 上海师范大学 一种基于x射线的bga封装质量自动检测方法
CN114299086B (zh) * 2021-12-24 2023-05-26 深圳明锐理想科技有限公司 一种低对比度成像的图像分割处理方法、电子设备及系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5574379B2 (ja) * 2010-10-13 2014-08-20 富士機械製造株式会社 画像処理装置及び画像処理方法
CN104036253A (zh) * 2014-06-20 2014-09-10 智慧城市系统服务(中国)有限公司 一种车道线追踪方法及系统
CN107507182B (zh) * 2017-09-25 2019-10-25 电子科技大学 一种基于x射线图像的bga焊球提取方法

Also Published As

Publication number Publication date
CN108280837A (zh) 2018-07-13

Similar Documents

Publication Publication Date Title
CN108280837B (zh) 基于变换的x射线图像中bga焊球轮廓提取方法
CN110648367A (zh) 一种基于多层深度与彩色视觉信息的几何体目标定位方法
CN112233133B (zh) 基于otsu和区域生长法的电厂高温管道缺陷检测与分割方法
CN108416809B (zh) 一种基于机器视觉的钢桶螺纹盖位姿识别方法
CN108898147B (zh) 一种基于角点检测的二维图像边缘平直化方法、装置
CN114821114B (zh) 一种基于视觉系统的坡口切割机器人图像处理方法
KR100823549B1 (ko) 조선소 소조립 용접부재 위치 인식 방법
CN110414385B (zh) 一种基于单应性变换和特征窗口的车道线检测方法及系统
JP2011043969A (ja) 画像特徴点抽出方法
CN111652844B (zh) 一种基于数字图像区域增长的x射线缺陷检测方法及系统
CN114463314A (zh) 一种基于色彩差影模型的晶圆缺陷检测方法及系统
CN108416358B (zh) 一种空间目标特征提取方法和装置
CN113689365B (zh) 一种基于Azure Kinect的目标跟踪定位方法
CN111489389A (zh) 一种光斑中心检测方法
CN108205641B (zh) 手势图像处理方法及装置
CN117611525A (zh) 一种受电弓滑板磨耗视觉检测方法和系统
CN107507182A (zh) 一种基于x射线图像的bga焊球提取方法
CN112132820A (zh) 基于YOLOv2算法接触网定位管斜拉线故障检测方法
CN105761237A (zh) 基于mean shift的芯片X光图像层次分割
CN111862007B (zh) 基于方差区域分割的货车制动缸倾斜检测方法
CN115063426A (zh) 一种基于二维b超图像的标测导管扫查断面切点识别方法
CN110298799B (zh) 一种pcb图像定位校正方法
CN115187744A (zh) 一种基于激光点云的机柜识别方法
CN113793315A (zh) 一种基于单目视觉的相机平面和目标平面夹角估算方法
CN113487589A (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