本发明涉及机器视觉技术领域,具体涉及一种基于机器视觉的胶囊检测方法及系统。
背景技术:
胶囊检测,是指对胶囊漏片、残片、胶囊脏污以及胶囊混装等一系列的质量检测,该环节对于胶囊的生产至关重要,其关系到用户的健康安全问题。而现在对于胶囊的检测,基本采用人工,但人工容易产生误检漏检的情况,并且效率低,现在急需一种高效率的检测方法和系统来实现胶囊检测的自动化。
针对现有技术的不足,国内外也对如何实现胶囊的自动化检测进行了研究,如公开号为:cn1943886的中国专利申请,公开了“一种基于计算机视觉的软胶囊质量在线检测的装置与方法”,该检测方法是:利用软胶囊在胶囊排列输送部分上有序排列并随着输送链前进,在计算机视觉识别部分内触动光电触发传感器,光电触发传感器将胶囊位置发送给控制模块和计算机,并触发计算机内的高速图像采集卡,采集胶囊的图像。计算机在每次拍摄完后,及时对所拍摄的序列图像进行处理,提取面积、大小、形状等特征参数,通过识别软件完成胶囊是否为异型丸和重量的检测。最后通过控制模块将剔除指令发送到胶囊剔除动作部分,由电磁阀产生动作,将异型丸和重量不合格的胶囊从输送链上准确的剔除。合格的软胶囊自动进入接料盒中。但是该方法利用机器视觉技术对胶囊进行检测时并未具体公开具体的图像处理过程,而且只能针对某一种特定的胶囊设计,通过性不高,鲁棒性不强,检测精度不高。
技术实现要素:
针对现有技术的不足,本发明提出了一种基于机器视觉的胶囊检测方法及系统,本基于机器视觉的胶囊检测方法及系统检测精度高,适应性广泛,能够检测各种型号规格胶囊。
为实现上述技术方案,本发明提供了一种基于机器视觉的胶囊检测方法,具体包括以下步骤:
步骤1:工业摄像机采集图像;
步骤2:利用采集的图像离线制作胶囊模板;
步骤3:利用模板匹配在线定位胶囊的中心和方向并分割出每个胶囊图像;
步骤4:校正分割出的胶囊图像;
步骤5:利用校正好的胶囊图像与胶囊模板做比较,输出缺陷检测结果信息。
优选的,所述步骤2中,利用采集的图像离线制作胶囊模板,主要包括以下步骤:
步骤21:从采集的图像截取胶囊图像;
步骤22:采用canny边缘检测算法,检测胶囊图像的边缘,作为胶囊模板。
优选的,所述步骤3中,利用模板匹配在线定位胶囊的中心和方向并分割出每个胶囊图像,
主要包括以下步骤:
步骤31:根据公式1求出模板边缘点与离该点最近的待检测图像边缘之间的均方距离
其中,t表示模板边缘,d(r,c)表示边缘提取后的待检测图像和模板的距离;
步骤32:判断均方距离是否小于设置的阈值,如果是,即可认为找到一个胶囊实例,并且
得到胶囊实例的中心(x0,y0)和方向θ;
步骤33:根据胶囊实例的中心和方向,可求仿射变换矩阵,具体计算公式如下所示:
通过对胶囊模板边缘进行仿射变换,变换公式如下所示:
根据公式3得到胶囊的实例边缘,其中,点(u,v)为模板边缘像素点,(x,y)为胶囊实例的
边缘像素点;
步骤33:根据每个胶囊的实例边缘像素点,将每个胶囊图像分割出来。
优选的,所述步骤31中,边缘提取后的待检测图像和模板的距离d(r,c)采用hausdorff距离度量。
优选的,所述步骤4中,校正分割出的胶囊图像的方法为:使用仿射畸变的胶囊实例,通过公式2中的变换矩阵h,得到校正好的胶囊实例。
优选的,所述步骤5中,利用校正好的胶囊图像与胶囊模板做比较,具体步骤如下:
步骤51:利用校正好的胶囊图像和胶囊模板进行减影操作,得到缺陷图像;
步骤52:利用otsu算法对缺陷图像进行阈值化,得到最后的缺陷二值图。
本发明还提供了一种基于上述胶囊检测方法的检测系统,包括:
图像采集模块,所述图像采集模块包括工业摄像机和工业光源,用于采集胶囊图像;
图像处理模块,所述图像处理模块为用于对图像采集模块传送过来的胶囊图像进行缺陷检
测的软件,搭载在工控机上;
控制执行模块,根据图像处理模块传送过来的胶囊缺陷检测结果信息,控制执行机构对胶囊采取相应的动作。
优选的,所述图像处理模块软件包括人机交互界面、数据库和图像处理算法,其中人机交互界面提供接口给用户选取制作胶囊模板,以及图像和参数的显示;数据库对胶囊检测过程中的检测数据进行存储和管理;图像处理算法用于对胶囊的缺陷检测。
本发明提供的一种基于机器视觉的胶囊检测方法及检测系统的有益效果在于:
1)本基于机器视觉的胶囊检测方法采用基于边缘的模板匹配定位分割采集图像中的待检测胶囊,再通过校正后的待检测胶囊与模板进行比较,检测出缺陷,其基于边缘的模板匹配算法,不受光线变化影响,并且在存在遮挡和混乱等复杂情况下,还是可以快速准确地定位分割采集图像中地胶囊,其适用各种不同种类的胶囊检测,实用性强,实现了胶囊检测的自动化,提高了检测的质量和效率。
2)本基于机器视觉的胶囊检测系统通过图像采集模块、图像处理模块和控制执行模块之间的配合可以高效实现缺陷胶囊的检测,不仅检测精度高,适应性广泛,而且能够检测各种型号规格的胶囊。
附图说明
图1为发明中基于机器视觉的胶囊检测方法的流程示意图。
图2为发明中待检测图像模板匹配分割胶囊图像示意图。
图3为发明中基于机器视觉的胶囊检测系统的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。本领域普通人员在没有做出创造性劳动前提下所获得的所有其他实施例,均属于本发明的保护范围。
实施例1:一种基于机器视觉的胶囊检测方法。
参照图1和图2所示,一种基于机器视觉的胶囊检测方法,具体包括如下步骤:
步骤1:工业摄像机采集图像,具体为通过工业光源照射放置在流水线上的胶囊体,然后通过工业照相机进行照片拍摄。
步骤2:利用采集的图像离线制作胶囊模板,并具体包括
步骤21:从步骤1中采集的图像内截取胶囊图像;
步骤22:采用canny边缘检测算法,检测胶囊图像的边缘,作为胶囊模板。
步骤3:利用模板匹配在线定位胶囊的中心和方向并分割出每个胶囊图像,具体包括
步骤31:根据公式1求出模板边缘点与离该点最近的待检测图像边缘之间的均方距离
其中,t表示模板边缘,d(r,c)表示边缘提取后的待检测图像和模板的距离;
步骤32:判断均方距离是否小于设置的阈值,如果是,即可认为找到一个胶囊实例,并且
得到胶囊实例的中心(x0,y0)和方向θ;
步骤33:根据胶囊实例的中心和方向,可求仿射变换矩阵,具体计算公式如下所示:
通过对胶囊模板边缘进行仿射变换,变换公式如下所示:
根据公式3得到胶囊的实例边缘,其中,点(u,v)为模板边缘像素点,(x,y)为胶囊实例的
边缘像素点;
步骤33:根据每个胶囊的实例边缘像素点,将每个胶囊图像分割出来。
步骤4:校正分割出的胶囊图像,使用仿射畸变的胶囊实例,通过公式2中的变换矩阵h,得到校正好的胶囊实例。
步骤5:利用校正好的胶囊图像与胶囊模板做比较,输出缺陷检测结果信息,具体包括
步骤51:利用校正好的胶囊图像和胶囊模板进行减影操作,得到缺陷图像;
步骤52:利用otsu算法对缺陷图像进行阈值化,得到最后的缺陷二值图。
本基于机器视觉的胶囊检测方法采用基于边缘的模板匹配定位分割采集图像中的待检测胶囊,再通过校正后的待检测胶囊与模板进行比较,检测出缺陷,其基于边缘的模板匹配算法,不受光线变化影响,并且在存在遮挡和混乱等复杂情况下,还是可以快速准确地定位分割采集图像中地胶囊,其适用各种不同种类的胶囊检测,实用性强,实现了胶囊检测的自动化,提高了检测的质量和效率。
实施例2:一种基于机器视觉的胶囊检测系统。
参照图3所示,一种基于实施例1中基于机器视觉的胶囊检测方法的检测系统,包括:
图像采集模块,所述图像采集模块包括工业摄像机和工业光源,用于采集胶囊图像;
图像处理模块,所述图像处理模块为用于对图像采集模块传送过来的胶囊图像进行缺陷检
测的软件,搭载在工控机上;
控制执行模块,根据图像处理模块传送过来的胶囊缺陷检测结果信息,控制执行机构对胶囊采取相应的动作。
本实施例中,图像采集模块与图像处理模块信号相连,工业摄像机采集的图像可以通过串口通信传送给搭载在工控机上的图像处理软件;图像处理模块与控制执行模块信息相连,控制器可以为plc,图像处理软件可以把胶囊检测的最终结果通过以太网接口gige发送给plc,plc根据检测结果控制执行模块对胶囊做出相应地动作。
本实施例中,图像处理模块软件包括人机交互界面、数据库和图像处理算法。其中人机交互界面提供接口给用户选取制作胶囊模板,以及一些图像和参数的显示;数据库对胶囊检测过程中的检测数据进行存储和管理;图像处理算法用于对胶囊的缺陷检测。
本基于机器视觉的胶囊检测系统通过图像采集模块、图像处理模块和控制执行模块之间的配合可以高效实现缺陷胶囊的检测,不仅检测精度高,适应性广泛,而且能够检测各种型号规格的胶囊。
以上所述为本发明的较佳实施例而已,但本发明不应局限于该实施例和附图所公开的内容,所以凡是不脱离本发明所公开的精神下完成的等效或修改,都落入本发明保护的范围。