本发明涉及机器视觉计数领域,尤其涉及一种用于三极管计数的图像处理方法及装置。
背景技术:
在工业生产中,由于芯片数量多且形状小,传统方法对其进行封装计数是一项非常耗费人力时间的工作。利用传统的方法对三极管进行计数,存在人工计数慢、精度低和劳动强度大的问题。
技术实现要素:
本发明实施例的目的是提供一种用于三极管计数的图像处理方法,能够解决传统的封装计数耗费人力时间的缺点,达到了计数时间快、精准度高的目的。
为实现上述目的,一方面,本发明的第一实施例提供了一种用于三极管计数的图像处理方法,包括以下步骤:
提取x光拍摄的三极管图像,得到原图像;
根据固定阈值在所述原图像中进行第一全局阈值分割,获得第一图像;
将所述第一图像进行第一连通域联合,获得第二图像,并对所述第二图像进行预处理,获得第三图像;
将所述第三图像进行自动阈值,得到三极管区域;
对所述三极管区域进行特征提取和区域个数统计,得到三极管个数。
进一步的,所述对所述第二图像进行预处理,获得第三图像,具体为:
根据形状-区域面积特征,提取出所述第二图像中像素点在90000-9999999的区域,并对所述区域进行孔洞填充,得到第一区域;
将所述第一区域进行形态学膨胀运算,得到第二区域;
通过在所述原图像中减去所述第二区域,得到所述第三图像。
进一步的,所述将所述第三图像进行自动阈值,得到三极管区域,具体为:
对所述第三图像进行灰度值统计,并将统计出的数据函数化,得到第一函数;
将所述第一函数进行高斯平滑处理,提取所述第一函数的y值;
提取所述y值中的所有波峰,并获取倒数第三个波峰与倒数第二个波峰间的极小值;
将所述极小值和0作为分割阈值,并对所述第三图像进行第二全局阈值分割,得到第三区域;
对所述第三区域进行灰度级开运算,得到所述三极管区域。
进一步的,所述对所述三极管区域进行特征提取和区域个数统计,得到三极管个数,具体为:
对所述三极管区域进行第二连通域联合,得到第四图像;
根据形状-区域面积特征,提取出所述第四图像中像素点在5-10000的区域,得到第四区域;
统计所述第四区域的个数,并将所述个数除以3,得到所述三极管个数n。
进一步的,所述固定阈值为0-100。
另一方面,本发明提供的第二实施例提供了一种用于三极管计数的图像处理装置,包括图像提取模块、第一图像获取模块、图像预处理模块、阈值分割模块和计数模块;
所述图像提取模块,用于提取x光拍摄的三极管图像,得到原图像;
所述第一图像获取模块,用于根据固定阈值在所述原图像中进行第一全局阈值分割,获得第一图像;
所述图像预处理模块,用于将所述第一图像进行第一连通域联合,获得第二图像,并对所述第二图像进行预处理,获得第三图像;
所述阈值分割模块,用于将所述第三图像进行自动阈值,得到三极管区域;
所述计数模块,用于对所述三极管区域进行特征提取和区域个数统计,得到三极管个数n。
进一步地,所述图像预处理模块,具体用于:
根据形状-区域面积特征,提取出所述第二图像中像素点在90000-9999999的区域,并对所述区域进行孔洞填充,得到第一区域;
将所述第一区域进行形态学膨胀运算,得到第二区域;
通过在所述原图像中减去所述第二区域,得到所述第三图像。
进一步地,所述阈值分割模块,具体用于:
对所述第三图像进行灰度值统计,并将统计出的数据函数化,得到第一函数;
将所述第一函数进行高斯平滑处理,提取所述第一函数的y值;
提取所述y值中的所有波峰,并获取倒数第三个波峰与倒数第二个波峰间的极小值;
将所述极小值和0作为分割阈值,并对所述第三图像进行第二全局阈值分割,得到第三区域;
对所述第三区域进行灰度级开运算,得到所述三极管区域。
进一步地,所述计数模块,具体用于:对所述三极管区域进行第二连通域联合,得到第四图像;
根据形状-区域面积特征,提取出所述第四图像中像素点在5-10000的区域,得到第四区域;
统计所述第四区域的个数,并将所述个数除以3,得到所述三极管个数n。
进一步地,所述固定阈值为0-100。
实施本发明实施例,具有如下有益效果:
本发明提供一种用于三极管计数的图像处理方法,包括提取x光拍摄的三极管图像,得到原图像;根据固定阈值在用于三极管计数的图像处理方法原图像中进行第一全局阈值分割,获得第一图像;将用于三极管计数的图像处理方法第一图像进行第一连通域联合,获得第二图像,并对用于三极管计数的图像处理方法第二图像进行预处理,获得第三图像;将用于三极管计数的图像处理方法第三图像进行自动阈值,得到三极管区域;对用于三极管计数的图像处理方法三极管区域进行特征提取和区域个数统计,得到三极管个数n,能够解决传统的封装计数耗费人力时间的缺点,达到了计数时间快、精准度高的目的。
附图说明
图1是本发明提供的用于三极管计数的图像处理方法的一种实施例的流程示意图;
图2是本发明提供的用于三极管计数的图像处理方法的一种实施例中步骤s3的流程示意图;
图3是本发明提供的用于三极管计数的图像处理方法的一种实施例中步骤s4的流程示意图;
图4是本发明提供的用于三极管计数的图像处理方法的一种实施例中步骤s5的流程示意图;
图5是本发明提供的用于三极管计数的图像处理装置的一种实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的第一实施例图,请参见图1,1是本发明提供的用于三极管计数的图像处理方法的实施例的流程示意图。如图1所示,该认证方法包括步骤s1至步骤s5,各步骤具体如下:
s1,提取x光拍摄的三极管图像,得到原图像。
s2,根据固定阈值在原图像中进行第一全局阈值分割,获得第一图像。
s3,将第一图像进行第一连通域联合,获得第二图像,并对第二图像进行预处理,获得第三图像。
s4,将第三图像进行自动阈值,得到三极管区域。
s5,对三极管区域进行特征提取和区域个数统计,得到三极管个数n。
在本发明实施例中,本发明提供的用于三极管计数的图像处理方法和装置,采用提取图像区域的形状面积特征对图像进行预处理,并通过对预处理后的图像进行增强对比度、灰度开运算和特征提取操作,能够有效地去除图像中的干扰区域,从而有利于提高对三极管的计数精度;同时本发明利用机器视觉对三极管个数进行计数,能够快速得到计数结果,从而有效地提高了三极管计数的效率。
请参见图2,图2是本实施例中步骤s3的流程示意图。
在本实施例中,步骤s3包括步骤s31-s33,具体为:
s31,根据形状-区域面积特征,提取出第二图像中像素点在90000-9999999的区域,并对区域进行孔洞填充,得到第一区域;
s32,将第一区域进行形态学膨胀运算,得到第二区域;
s33,通过在原图像中减去第二区域,得到第三图像。
在本发明是实施例中,通过提取第三图像中像素点在90000-9999999的区域,并对所提取区域进行空洞填充,能够有效地提高所提取区域的精度;再通过四连通结构元形态学膨胀算法对进行空洞填充之后的区域背景进行填充,膨胀到不能膨胀为止,得到第三区域。能够有效地提高所得图像区域的准确性,从而能够有利于提高三极管计数的精度。
请参见图3,图3是本实施例中步骤s4的流程示意图。
在本实施例中,步骤s4包括步骤s41-s45,具体为:
s41,对第三图像进行灰度值统计,并将统计出的数据函数化,得到第一函数;
s42,将第一函数进行高斯平滑处理,提取第一函数的y值;
s43,提取y值中的所有波峰,并获取倒数第三个波峰与倒数第二个波峰间的极小值;
s44,将极小值和0作为分割阈值,并对第三图像进行第二全局阈值分割,得到第三区域;
s45,对第三区域进行灰度级开运算,得到三极管区域。
在本发明实施例中,在本发明实施例中,通过对第三图像进行增强对比度、灰度开运算和特征提取,能够有效地去除图像中的干扰区域,从而有利于提高三极管计数的精度。
请参见图4,图4是本实施例中步骤s5的流程示意图。
在本实施例中,步骤s5包括步骤s51-s53,具体为:
s51,对三极管区域进行第二连通域联合,得到第四图像;
s52,根据形状-区域面积特征,提取出第四图像中像素点在5-10000的区域,得到第四区域;
s53,统计第四区域的个数,并将个数除以3,得到三极管个数n。
在本发明实施例中,在本发明实施例中,本方法得到的三极管个数具有高精度的特点。
为了更好的说明本发明的工作原理,以下为本发明的用于三极管计数的图像处理方法的流程步骤:首先,采集通过x光拍摄的三极管图像,得到原图像;然后对三极管图像进行全局阈值分割,提取出所有灰度值在0-100内的像素点,得到第一图像;对第一图像进行连通域联合,得到第二图像,根据形状-区域面积特征筛选出第二图像中像素点在90000-9999999的区域,对此区域进行孔洞填充,得到第一区域;然后对第一区域做形态学膨胀运算,得到第二区域,再从原图像中减去第二区域并作为预处理后的图像,得到第三图像;然后对第三图像进行灰度值统计,将统计的数据函数化,得到第一函数,对第一函数进行高斯平滑后并分离出函数的y值,再找出y值中的所有极大值,即波峰,找出倒数第三个波峰与倒数第二个波峰间的极小值,并将该极小值与0作为阈值,对第三图像进行全局阈值分割,得到第三区域,再对第三区域做灰度级开运算,得到三极管区域;最后对三极管区域进行连通域联合,得到第四图像,根据形状-区域面积特征筛选出第四图像中像素点在5-10000的区域,并统计出该区域的个数并除以3,即为三极管的个数n。
请参阅图5,本发明的第二实施例提供了一种用于三极管计数的图像处理装置,包括图像提取模块101、第一图像获取模块102、图像预处理模块103、阈值分割模块104和计数模块105;
图像提取模块101,用于提取x光拍摄的三极管图像,得到原图像;
第一图像获取模块102,用于根据固定阈值在原图像中进行第一全局阈值分割,获得第一图像;
图像预处理模块103,用于将第一图像进行第一连通域联合,获得第二图像,并对第二图像进行预处理,获得第三图像;
阈值分割模块104,用于将第三图像进行自动阈值,得到三极管区域;
计数模块105,用于对三极管区域进行特征提取和区域个数统计,得到三极管个数n。
在本发明实施例中,本发明提供的用于三极管计数的图像处理方法和装置,采用提取图像区域的形状面积特征对图像进行预处理,并通过对预处理后的图像进行增强对比度、灰度开运算和特征提取操作,能够有效地去除图像中的干扰区域,从而有利于提高对三极管的计数精度;同时本发明利用机器视觉对三极管个数进行计数,能够快速得到计数结果,从而有效地提高了三极管计数的效率。
作为本发明实施例的一种具体实施方式,图像预处理模块103,具体用于:
根据形状-区域面积特征,提取出第二图像中像素点在90000-9999999的区域,并对区域进行孔洞填充,得到第一区域;
将第一区域进行形态学膨胀运算,得到第二区域;
通过在原图像中减去第二区域,得到第三图像。
在本发明是实施例中,通过提取第三图像中像素点在90000-9999999的区域,并对所提取区域进行空洞填充,能够有效地提高所提取区域的精度;再通过四连通结构元形态学膨胀算法对进行空洞填充之后的区域背景进行填充,膨胀到不能膨胀为止,得到第三区域;能够有效地提高所得图像区域的准确性,从而能够有利于提高三极管计数的精度。
作为本发明实施例的一种具体实施方式,阈值分割模块104,具体用于:
对第三图像进行灰度值统计,并将统计出的数据函数化,得到第一函数;
将第一函数进行高斯平滑处理,提取第一函数的y值;
提取y值中的所有波峰,并获取倒数第三个波峰与倒数第二个波峰间的极小值;
将极小值和0作为分割阈值,并对第三图像进行第二全局阈值分割,得到第三区域;
对第三区域进行灰度级开运算,得到三极管区域。
在本发明实施例中,在本发明实施例中,通过对第三图像进行增强对比度、灰度开运算和特征提取,能够有效地去除图像中的干扰区域,从而有利于提高三极管计数的精度。
作为本发明实施例的一种具体实施方式,计数模块105,具体用于:对三极管区域进行第二连通域联合,得到第四图像;
根据形状-区域面积特征,提取出第四图像中像素点在5-10000的区域,得到第四区域;
统计第四区域的个数,并将个数除以3,得到三极管个数n。
在本发明实施例中,在本发明实施例中,本方法得到的三极管个数具有高精度的特点。
作为本发明实施例的一种具体实施方式,固定阈值为0-100。
实施本发明实施例,具有如下有益效果:
在本发明实施例中,本发明提供的用于三极管计数的图像处理方法和装置,采用提取图像区域的形状面积特征对图像进行预处理,并通过对预处理后的图像进行增强对比度、灰度开运算和特征提取操作,能够有效地去除图像中的干扰区域,从而有利于提高对三极管的计数精度;同时本发明利用机器视觉对三极管个数进行计数,能够快速得到计数结果,从而有效地提高了三极管计数的效率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各种方法的实施例的流程。其中,的存储介质可为磁碟、光盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、电载波信号、电信信号以及软件分发介质等。
以上是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。