-bc〇i);
[0066] 其中,(xrantCT,y_tCT)为完整灰度BGA焊球的中心点位置坐标,13_为行直线在图像 坐标系y轴的截距,b。。#列直线在图像坐标系X轴的截距;
[0067] 步骤五二、确定等效BGA焊球行和列分类阈值; sin Αθ
[0068] 步骤五三、对等效BGA焊球进行行聚类:利用第i个等效BGA焊球坐标 (么_,34_):反解出等效BGA焊球行直线方程的截距:
[0069]
[0070] 步滕ii四、 t分突_值intercept_thresh,对所有得到的行截距Cw进行聚类 即在阈值intercept_thresh范围内,相等的行截距Cmi.聚为一类,将与一类行截距私^对应 的等效BGA焊球聚为一个行等效BGA焊球簇,且行等效BGA焊球簇在同一行;
[0071] 步骤五五、将步骤五四聚类后,蔟内元素个数为1的行等效BGA焊球簇视为干扰予 以剔除;得到的行等效BGA焊球簇的个数即为BGA芯片焊球行数;
[0072] 然后对所有行等效BGA焊球簇按照蔟内对应的平均行截距的升序进行排序,得到 的排序后的等效BGA焊球蔟则是以等效BGA阵列的行序号由小到大进行排列的;
[0073] 步骤五六、对等效BGA焊球进行列聚类:利用第i个等效BGA焊球坐标 ,反解出对应的列直线方程的列截距I;
[0074]
[0075] 步骤五七、基于分类阈值intercept_thresh,对所有得到的列截距..进列聚类 即在阈值intercept_thresh范围内,相等的列截距化^,聚为一类,将与一类列截距私^对应 的等效BGA焊球聚为一个列等效BGA焊球簇,且此列等效BGA焊球簇在同一列;
[0076] 步骤五八、将步骤五四聚类后,蔟内元素个数为1的列等效BGA焊球簇视为干扰予 以剔除;得到的列等效BGA焊球簇的个数即为BGA芯片焊球列数;
[0077] 然后对所有列等效BGA焊球簇按照蔟内对应的平均列截距的升序进行排序,得到 的排序后的每列等效BGA焊球蔟则是以等效BGA阵列的列序号由小到大进行排列的;
[0078] 步骤五九、提取经过排序后的行等效BGA焊球蔟的第一组、经过排序后的行等效 BGA焊球蔟的最后一组、经过排序后的列等效BGA焊球蔟的第一组和经过排序后的列等效 BGA焊球蔟的最后一组作为边界等效BGA焊球蔟。
[0079] 步骤五四和步骤五七中,对所有得到的行截距私^和列截距&进行聚类的具体实 施方式如下(现仅以私?.的聚类为例):
[0080] St印1:将初始化为第1类Ω i;
[0081] St印2:如果起_ i = 1,2,3····与第j(j = l,2,3...k)类\的聚类中心 满足I匕-P'l </'〃屻夂7" -,则将&归为j类,并重新计算;否则,将^初始化 为k+Ι类;其中,类Ω ,的聚类中心%_是\内所有截距的平均值;
[0082] Step3: i = i+Ι,执行步骤Step2。其它步骤及参数与【具体实施方式】一至四之一相 同。
【具体实施方式】 [0083] 六:本实施方式与一至五之一不同的是:步骤七中步 骤二得到的完整灰度BGA焊球信息列表进行每行等效BGA焊球蔟直线拟合的过程如下:
[0084] 利用每行等效BGA焊球蔟中的每个等效BGA焊球在标识图像上的灰度值,在完整 灰度BGA焊球信息列表中查找对应的完整灰度BGA焊球中心点位置坐标,将每行完整灰度 BGA焊球中心点位置坐标进行直线拟合。其它步骤及参数与【具体实施方式】一至五之一相同。
【具体实施方式】 [0085] 七:本实施方式与一至六之一不同的是:步骤二得到 的完整灰度BGA焊球信息列表进行每列等效BGA焊球蔟直线拟合的过程如下:
[0086] 利用每列等效BGA焊球蔟中的每个等效BGA焊球在标识图像上的灰度值,在完整 灰度BGA焊球信息列表中查找对应的完整灰度BGA焊球中心点位置坐标,将每列完整灰度 BGA焊球中心点位置坐标进行直线拟合。其它步骤及参数与【具体实施方式】一至六之一相同。
【具体实施方式】 [0087] 八:本实施方式与一至七之一不同的是:步骤八中利 用步骤七得到的每行等效BGA焊球蔟拟合直线和每列等效BGA焊球蔟拟合直线,在BGA焊 球标识图像上对等效BGA焊球进行逐行或逐列搜索,进而得到BGA焊球分布矩阵,根据逐行 或逐列搜索得到的所有等效BGA焊球以及步骤二得到的完整灰度BGA焊球信息列表求解得 到BGA标准焊球直径尺寸、BGA标准焊球周长尺寸和BGA标准焊球圆度尺寸具体过程为:
[0088] 求解每行等效BGA焊球蔟拟合直线方程和每列等效BGA焊球蔟拟合直线方程的交 点,并以该交点为中心在BGA标识图像上进行半径为Λ γ/2局部搜索;如果搜索到某一有 效BGA焊球,则有效BGA焊球对应的BGA标识矩阵的所在行列位置的值置为1,否则有效BGA 焊球对应的BGA标识矩阵的所在行列位置的值置为0 (如果未搜索到某一有效BGA焊球,则 将有效BGA焊球对应的BGA标识矩阵的所在行列位置的值置为0);
[0089] 根据逐行或逐列搜索得到的所有等效BGA焊球以及步骤二得到的完整灰度BGA焊 球信息列表求解得到BGA标准焊球直径尺寸、BGA标准焊球周长尺寸和BGA标准焊球圆度 尺寸的具体过程如下:在完整灰度BGA焊球信息列表中与所有搜索到的等效BGA焊球对应 的最小外包圆直径的平均值作为BGA标准焊球直径尺寸;将在完整灰度BGA焊球信息列表 中与所有搜索到的等效BGA焊球对应的周长的平均值作为BGA标准焊球周长尺寸;将在完 整灰度BGA焊球信息列表中与所有搜索到的等效BGA焊球对应的的圆度的平均值作为BGA 标准焊球圆度尺寸。其它步骤及参数与【具体实施方式】一至七之一相同。
【主权项】
1. 一种基于行列直线聚类的多类型BGA忍片视觉识别方法,其特征在于一种基于行列 直线聚类的多类型BGA忍片视觉识别方法具体是按照W下步骤进行的: 步骤一、对摄像头采集到的灰度BGA忍片图像,即为原始图像,进行动态阔值分割得 到二值焊球图像,并对二值焊球图像进行形态学开运算和闭运算处理,处理后的二值焊球 图像上的每个连通域记为一个二值化BGA焊球,然后对每个二值化BGA焊球进行连通域标 记; 步骤二、对步骤一得到的经过连通域标记后的每个二值化BGA焊球在原始图像上对应 邻域范围内进行灰度连通域提取,获得完整灰度BGA焊球,并建立完整灰度BGA焊球信息列 表; 其中,建立完整灰度BGA焊球信息列表内容包括:每个完整灰度BGA焊球所包含的灰度 像素,W及由灰度像素计算得到的每个完整灰度BGA焊球的中屯、点位置坐标、每个完整灰 度BGA焊球对应的最小外包圆直径、每个完整灰度BGA焊球的周长和圆度;每个焊球包含的 灰度像素包括像素坐标和灰度值; 步骤S、用步骤二得到的完整灰度BGA焊球信息列表,建立一个像素灰度值均为0且大 小与原始图像相同的背景图像;并在背景图像中,将对应原始图像中每个完整灰度BGA焊 球中屯、点位置处的灰度值,变为对应二值化BGA焊球的标识序号,此时的背景图像即为BGA 焊球标识图像,BGA焊球标识图像上的每个非0灰度值的像素称为一个等效BGA焊球,所有 等效BGA焊球构成的阵列称为等效BGA阵列; 其中,原始图像中有M*N个完整灰度BGA焊球,对应背景图像中就有M*N个等效BGA焊 球,等效BGA焊球实质为一个像素,完整灰度BGA焊球与等效BGA焊球一一对应;在BGA焊 球标识图像中,计算相邻2个等效BGA焊球的间距A丫,将此间距作为等效BGA焊球间距典 型值; 步骤四、利用步骤S得到的等效BGA焊球间距典型值A丫,在BGA焊球标识图像上,对 等效BGA阵列进行局部分析,确定等效BGA阵列粗略偏转角度A0 ; 其中,局部分析分为针对规则型BGA忍片的局部分析和针对不规则BGA忍片的局部分 析,规则型BGA忍片为相邻行BGA焊球成整齐排列的BGA忍片,不规则BGA忍片为相邻行 BGA焊球成交错排列的BGA忍片; 步骤五、利用步骤S得到的等效BGA焊球间距典型值A丫W及步骤四得到的等效BGA阵列粗略偏转角度A0,在BGA焊球标识图像上,对行和列的等效BGA焊球进行直线聚类得 到每行等效BGA焊球康、每列等效BGA焊球康W及边界等效BGA焊球康; 步骤六、利用步骤五得到的边界等效BGA焊球康中的每个等效BGA焊球在标识图像上 的灰度值,在完整灰度BGA焊球信息列表中查找对应的完整灰度BGA焊球中屯、点位置坐标, 根据完整灰度BGA焊球中屯、点位置坐标,进行边界直线拟合,通过边界拟合直线求解原始 图像中BGA忍片的偏转角度和中屯、位置; 步骤屯、利用步骤五识别得到的每行等效BGA焊球康和每列等效BGA焊球康,W及步骤 二得到的完整灰度BGA焊球信息列表进行每行等效BGA焊球康直线拟合和每列等效BGA焊 球康直线拟合;将所有相邻两行等效BGA焊球康的拟合直线间距的平均值作为BGA忍片焊 球标准行间距;将所有相邻两列等效BGA焊球康拟合直线间距的平均值作为BGA忍片焊球 标准列间距; 步骤八、利用步骤屯得到的每行等效BGA焊球康拟合直线和每列等效BGA焊球康拟合 直线,在BGA焊球标识图像上对等效BGA焊球进行逐行或逐列捜索,进而得到BGA焊球分布 矩阵;根据逐行或逐列捜索得到的所有等效BGA焊球W及步骤二得到的完整灰度BGA焊球 信息列表求解得到BGA标准焊球直径尺寸、BGA标准焊球周长尺寸和BGA标准焊球圆度尺 寸。2.根据权利要求1所述一种基于行列直线聚类的多