一种食品包装袋检测方法及系统转让专利

申请号 : CN202310197298.9

文献号 : CN115880699B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王俊凤胥秀丽

申请人 : 济南市莱芜区综合检验检测中心

摘要 :

本发明涉及图像处理技术领域,具体涉及一种食品包装袋检测方法及系统。该方法首先获取食品包装袋图像中的喷码区域;根据像素点和其他像素点之间的距离、像素点的法向量之间的相似程度得到像素点的骨架拟合度;基于像素点的骨架拟合度和相邻像素点的颜色特征相似性,计算像素点的骨架信息密度;根据像素点与每个最优窗口的中心点的骨架信息密度差异,计算像素点的分布距离,根据分布距离构建距离场;从距离场中提取出骨架提取结果,对喷码区域的喷码质量进行判断。本发明实现利用改进的K3M顺序迭代算法对食品包装袋上的喷码进行检测,以便于后续将属于残次品的食品包装袋从流水线上剔除。

权利要求 :

1.一种食品包装袋检测方法,其特征在于,该方法包括以下步骤:

获取食品包装袋图像中含喷码字符的喷码区域;

对于喷码区域内的每个喷码字符,基于像素点对应的法线方向,对每个喷码字符上的像素点进行聚类,得到多个分割字符区域;对于每个像素点,根据像素点和其他像素点之间的距离、像素点的法向量之间的相似程度得到食品包装袋图像中像素点的骨架拟合度;

基于像素点的骨架拟合度和相邻像素点的颜色特征相似性,计算像素点的骨架信息密度;在分割字符区域上滑动滑窗,基于窗口内像素点的骨架信息密度之和筛选出最优窗口;

根据像素点与每个最优窗口的中心点的骨架信息密度差异,计算食品包装袋图像中像素点的分布距离,根据分布距离构建距离场;基于距离场中像素点的邻域内像素点的分布距离,对距离场中部分像素点进行筛除,从距离场中提取出骨架提取结果;

基于骨架提取结果对喷码区域的喷码质量进行判断;

其中,根据像素点和其他像素点之间的距离、像素点的法向量之间的相似程度得到食品包装袋图像中像素点的骨架拟合度的方法为:初始骨架拟合度的计算公式为:

其中, 为分割字符区域a中像素点i的初始骨架拟合度; 为分割字符区域a中像素点i到区域轮廓序列中第x个轮廓点的欧式距离;N为分割字符区域a对应的区域轮廓序列中轮廓点的数量; 为像素点i到法向量所在直线的垂直距离; 为自然常数; 为分割字符区域a中像素点i的法向量; 为分割字符区域a中曲率最大点的法向量;

为法向量 和法向量 的余弦相似度; 为方差函数;

为分割字符区域a中像素点i对应的轮廓序列上所有像素点与区域轮廓序列对应的的方差;

每个像素点对应的初始骨架拟合度在所有像素点对应的初始骨架拟合度之和中的占比,为像素点对应的骨架拟合度;

其中,基于像素点的骨架拟合度和相邻像素点的颜色特征相似性,计算像素点的骨架信息密度的方法为:选取任一像素点作为目标像素点,计算目标像素点所在窗口内的最大灰度差值;通过颜色聚合向量将窗口内的像素点量化为多种量化颜色;计算每种量化颜色中聚合像素点和非聚合像素点的数量差值;将窗口内所有量化颜色对应的数量差值之和与最大灰度差值的乘积作为调节信息密度;将所述调节信息密度和所述骨架拟合度的乘积作为骨架信息量;目标像素点对应的窗口内各像素点的骨架信息量的方差的倒数作为目标像素点的骨架信息密度。

2.根据权利要求1所述的一种食品包装袋检测方法,其特征在于,所述基于距离场中像素点的邻域内像素点的分布距离,对距离场中部分像素点进行筛除,从距离场中提取出骨架提取结果,包括:对于每个分割字符区域,获取分割字符区域中每个像素点的分布距离的均值作为初始分割距离,对距离场中分布距离为初始分割距离的像素点进行K3M顺序迭代判断;选取分布距离为初始分割距离的任一像素点作为第一像素点,当第一像素点的邻域内存在大于预设像素点数量阈值个分布距离相等的像素点时,将第一像素点进行删除;当分布距离为初始分割距离的像素点均被删除时,将分布距离大于初始分割距离的像素点全部删除;

以预设步长迭代初始分割阈值,进行像素点的删除,当分布距离对应的像素点存在被删除和被保留两类像素点时,对被保留的像素点进行标记,当迭代的初始分割阈值达到分布距离最小值时,得到骨架的初步提取结果;当初步提取结果中骨架每行的宽度大于1个像素点时,保留骨架信息密度最大的像素点,当初步提取结果中骨架每行的宽度为1个像素点时,停止迭代,得到分割字符区域对应的骨架提取结果。

3.根据权利要求1所述的一种食品包装袋检测方法,其特征在于,所述基于像素点对应的法线方向,对每个喷码字符上的像素点进行聚类,得到多个分割字符区域,包括:基于像素点对应的法线方向,利用k均值聚类算法对每个喷码字符上的像素点进行聚类,得到多个聚类簇;一个聚类簇内的像素点构成一个分割字符区域。

4.根据权利要求1所述的一种食品包装袋检测方法,其特征在于,所述基于窗口内像素点的骨架信息密度之和筛选出最优窗口,包括:计算各窗口内各像素点的骨架信息密度之和,按照骨架信息密度之和从大到小的顺序,将前预设数量阈值个骨架信息密度之和对应的窗口作为最优窗口。

5.根据权利要求1所述的一种食品包装袋检测方法,其特征在于,所述根据像素点与每个最优窗口的中心点的骨架信息密度差异,计算食品包装袋图像中像素点的分布距离,包括:对于每个像素点,计算每个像素点与每个最优窗口的中心点的骨架信息密度的差值的均值,所述差值的均值为像素点对应的分布距离。

6.根据权利要求1所述的一种食品包装袋检测方法,其特征在于,所述根据分布距离构建距离场,包括:将每个像素点对应的分布距离作为像素点在距离场上对应的数值。

7.根据权利要求1所述的一种食品包装袋检测方法,其特征在于,所述基于骨架提取结果对喷码区域的喷码质量进行判断,包括:当骨架提取结果与模板库中存在模板骨架完全重叠时,判定骨架提取结果对应的喷码区域不存在喷码缺陷;当骨架提取结果与模板库中所有模板骨架均不完全重叠时,判定骨架提取结果对应的喷码区域存在喷码缺陷。

8.一种食品包装袋检测系统,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1 7任意一项所述一种食品包装袋检测方法的步骤。

~

说明书 :

一种食品包装袋检测方法及系统

技术领域

[0001] 本发明涉及图像处理技术领域,具体涉及一种食品包装袋检测方法及系统。

背景技术

[0002] 随着物质需求的增长,人们对食品的成分和质量安全等相关信息的关注越来越多,为了便于保鲜和存储食物,食品包装袋的重要性逐渐凸显,食品包装袋的样式也越来越多,随之而来的食品包装袋的检测要求也越来越多。食品包装袋的检测主要分为包装袋上的印刷检测、包装袋的尺寸检测和包装袋的性能检测。其中印刷检测的标准是图案不能跑版、商标和图案文字等清晰完整、包装袋表面平整无异味;一旦食品包装袋的检测没有达标,例如食品包装袋上的生产日期和保质日期在印刷过程中如果出现了不清晰不完整的问题,则可能会危害到食品的安全质量,严重的还会影响消费者的购买欲望,因此对食品包装袋的检测是必可不少的。
[0003] 目前常见的对食品包装袋的印刷检测通常是利用K3M顺序迭代算法提取喷码字符的骨架,将提取得到的喷码字符骨架与模板骨架进行对比,判断印刷是否存在缺陷。该方法对不同形状或不规则喷码字符的骨架进行提取时容易偏离中心,影响喷码检测的准确性。

发明内容

[0004] 为了解决传统K3M顺序迭代算法进行骨架提取时容易偏离中心,影响喷码检测的准确性的技术问题,本发明的目的在于提供一种食品包装袋检测方法及系统,所采用的技术方案具体如下:
[0005] 第一方面,本发明一个实施例提供了一种食品包装袋检测方法,该方法包括以下步骤:
[0006] 获取食品包装袋图像中含喷码字符的喷码区域;
[0007] 对于喷码区域内的每个喷码字符,基于像素点对应的法线方向,对每个喷码字符上的像素点进行聚类,得到多个分割字符区域;对于每个像素点,根据像素点和其他像素点之间的距离、像素点的法向量之间的相似程度得到食品包装袋图像中像素点的骨架拟合度;
[0008] 基于像素点的骨架拟合度和相邻像素点的颜色特征相似性,计算像素点的骨架信息密度;在分割字符区域上滑动滑窗,基于窗口内像素点的骨架信息密度之和筛选出最优窗口;根据像素点与每个最优窗口的中心点的骨架信息密度差异,计算食品包装袋图像中像素点的分布距离,根据分布距离构建距离场;基于距离场中像素点的邻域内像素点的分布距离,对距离场中部分像素点进行筛除,从距离场中提取出骨架提取结果;
[0009] 基于骨架提取结果对喷码区域的喷码质量进行判断。
[0010] 优选的,所述,根据像素点和其他像素点之间的距离、像素点的法向量之间的相似程度得到食品包装袋图像中像素点的骨架拟合度,包括:
[0011] 初始骨架拟合度的计算公式为:
[0012]
[0013] 其中, 为分割字符区域a中像素点i的初始骨架拟合度; 为分割字符区域a中像素点i到区域轮廓序列中第x个轮廓点的欧式距离;N为分割字符区域a对应的区域轮廓序列中轮廓点的数量; 为像素点i到法向量所在直线的垂直距离;为自然常数; 为分割字符区域a中像素点i的法向量; 为分割字符区域a中曲率最大点的法向量;为法向量 和法向量 的余弦相似度;为方差函数; 为分
割字符区域a中像素点i对应的轮廓序列上所有像素点与区域轮廓序列对应的 的方差;
[0014] 每个像素点对应的初始骨架拟合度在所有像素点对应的初始骨架拟合度之和中的占比,为像素点对应的骨架拟合度。
[0015] 优选的,所述基于像素点的骨架拟合度和相邻像素点的颜色特征相似性,计算像素点的骨架信息密度,包括:
[0016] 选取任一像素点作为目标像素点,计算目标像素点所在窗口内的最大灰度差值;通过颜色聚合向量将窗口内的像素点量化为多种量化颜色;计算每种量化颜色中聚合像素点和非聚合像素点的数量差值;将窗口内所有量化颜色对应的数量差值之和与最大灰度差值的乘积作为调节信息密度;将所述调节信息密度和所述骨架拟合度的乘积作为骨架信息量;目标像素点对应的窗口内各像素点的骨架信息量的方差的倒数作为目标像素点的骨架信息密度。
[0017] 优选的,所述基于距离场中像素点的邻域内像素点的分布距离,对距离场中部分像素点进行筛除,从距离场中提取出骨架提取结果,包括:
[0018] 对于每个分割字符区域,获取分割字符区域中每个像素点的分布距离的均值作为初始分割距离,对距离场中分布距离为初始分割距离的像素点进行K3M顺序迭代判断;选取分布距离为初始分割距离的任一像素点作为第一像素点,当第一像素点的邻域内存在大于预设像素点数量阈值个分布距离相等的像素点时,将第一像素点进行删除;当分布距离为初始分割距离的像素点均被删除时,将分布距离大于初始分割距离的像素点全部删除;
[0019] 以预设步长迭代初始分割阈值,进行像素点的删除,当分布距离对应的像素点存在被删除和被保留两类像素点时,对被保留的像素点进行标记,当迭代的初始分割阈值达到分布距离最小值时,得到骨架的初步提取结果;当初步提取结果中骨架每行的宽度大于1个像素点时,保留骨架信息密度最大的像素点,当初步提取结果中骨架每行的宽度为1个像素点时,停止迭代,得到分割字符区域对应的骨架提取结果。
[0020] 优选的,所述基于像素点对应的法线方向,对每个喷码字符上的像素点进行聚类,得到多个分割字符区域,包括:
[0021] 基于像素点对应的法线方向,利用k均值聚类算法对每个喷码字符上的像素点进行聚类,得到多个聚类簇;一个聚类簇内的像素点构成一个分割字符区域。
[0022] 优选的,所述基于窗口内像素点的骨架信息密度之和筛选出最优窗口,包括:
[0023] 计算各窗口内各像素点的骨架信息密度之和,按照骨架信息密度之和从大到小的顺序,将前预设数量阈值个骨架信息密度之和对应的窗口作为最优窗口。
[0024] 优选的,所述根据像素点与每个最优窗口的中心点的骨架信息密度差异,计算食品包装袋图像中像素点的分布距离,包括:
[0025] 对于每个像素点,计算每个像素点与每个最优窗口的中心点的骨架信息密度的差值的均值,所述差值的均值为像素点对应的分布距离。
[0026] 优选的,所述根据分布距离构建距离场,包括:
[0027] 将每个像素点对应的分布距离作为像素点在距离场上对应的数值。
[0028] 优选的,所述基于骨架提取结果对喷码区域的喷码质量进行判断,包括:
[0029] 当骨架提取结果与模板库中存在模板骨架完全重叠时,判定骨架提取结果对应的喷码区域不存在喷码缺陷;当骨架提取结果与模板库中所有模板骨架均不完全重叠时,判定骨架提取结果对应的喷码区域存在喷码缺陷。
[0030] 第二方面,本发明一个实施例提供了一种食品包装袋检测系统,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述一种食品包装袋检测方法。
[0031] 本发明实施例至少具有如下有益效果:
[0032] 本发明涉及图像处理技术领域。由于在利用传统K3M顺序迭代算法获取食品包装袋上的喷码字符的骨架提取结果时,如果发生了喷码缺陷,对不同形状或者不规则喷码字符的骨架提取容易偏离中心,影响喷码检测的准确性。本发明基于像素点对字符骨架提取结果的影响大小构建了像素点的骨架拟合度,也即基于像素点和其他像素点的距离和像素点的法向量之间的相似程度得到了像素点的骨架拟合度,骨架拟合度实现了对分割字符区域内的像素点均进行骨架提取结果的评估,解决了在喷码区域内存在喷码缺陷时将少量分割字符区域内像素点作为边缘点删除的问题;基于像素点邻域内的图像信息构建了像素点对应的骨架信息密度,也即基于像素点的骨架拟合度和相邻像素点的颜色特征相似性,计算像素点的骨架信息密度,基于像素点的骨架信息密度的差值计算了像素点的分布距离,构建了距离场,通过距离场加快像素点的判断速度,并约束了K3M顺序迭代过程中像素点的范围,使得最后得到的骨架提取结果更加符合食品包装袋上的实际喷码情况。最后基于骨架提取结果对喷码区域的喷码质量进行判断。本发明实现利用改进的K3M顺序迭代算法对食品包装袋上的喷码进行检测,提高了喷码检测的准确性,以便于后续将属于残次品的食品包装袋从流水线上剔除。

附图说明

[0033] 为了更清楚地说明本发明实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
[0034] 图1为本发明一个实施例所提供的一种食品包装袋检测方法的方法流程图;
[0035] 图2为本发明一个实施例所提供的喷码字符3对应的多个分割字符区域的示意图;
[0036] 图3为本发明一个实施例所提供的距离场的示意图。

具体实施方式

[0037] 为了更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的一种食品包装袋检测方法及系统,其具体实施方式、结构、特征及其功效,详细说明如下。在下述说明中,不同的“一个实施例”或“另一个实施例”指的不一定是同一实施例。此外,一或多个实施例中的特定特征、结构或特点可由任何合适形式组合。
[0038] 除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。
[0039] 本发明实施例提供了一种食品包装袋检测方法及系统的具体实施方法,该方法适用于食品包装袋上的印刷字符检测的场景。该场景下对于印有生产日期等信息的食品包装袋,进行食品包装袋上的喷码的检测。为了解决传统K3M顺序迭代算法进行骨架提取时容易偏离中心,影响喷码检测的准确性的技术问题,本发明在获取食品包装袋图像后和对应的喷码区域后,基于像素点对字符骨架提取结果的影响大小以及像素点邻域内的图像信息构建了骨架拟合系数和骨架信息密度,基于骨架信息密度构建了分割字符区域对应的距离场,通过距离场加快像素点判断速度并约束了K3M顺序迭代过程中像素点的范围,使得获取的喷码字符骨架更符合食品包装袋上的实际喷码情况。
[0040] 下面结合附图具体的说明本发明所提供的一种食品包装袋检测方法及系统的具体方案。
[0041] 请参阅图1,其示出了本发明一个实施例提供的一种食品包装袋检测方法的方法流程图,该方法包括以下步骤:
[0042] 步骤S100,获取食品包装袋图像中含喷码字符的喷码区域。
[0043] 生产加工的食品包装袋传输至检测区域,在传送带周围选择合适的位置放置条形光源,避免光照不均匀对后续喷码检测的影响,该条形光源为条形LED光源,在传送袋上方放置工业CCD相机,用于获取每个食品包装袋的表面图像,该表面图像为RGB图像。在获取表面图像的过程中,难免受到周围噪声的干扰,从而导致所获得的表面图像质量下降,因此需要对表面图像进行去噪处理。常见的图像去噪技术有:高斯滤波去噪、双边滤波去噪、小波去噪等,为了保留尽可能多的表面图像中的图像信息,本发明利用双边滤波去噪技术对所获得的表面图像进行去噪预处理。需要说明的是,双边滤波去噪为公知技术,具体过程不再详细赘述。将预处理后的表面图像作为食品包装袋图像,利用食品包装袋图像进行后续食品包装袋上的喷码检测。
[0044] 即实现了利用工业相机和去噪技术获取待检测的食品包装袋图像,用于后续食品包装袋上的喷码检测。
[0045] 由于本发明的目的是对生产的食品包装袋上的喷码进行检测,剔除存在喷码缺陷的食品包装袋。标准食品包装袋上的喷码结果在食品包装袋图像中表现为字符清晰且相邻字符之间的间隔均匀一致,而喷码缺陷会破坏这种特点。本发明中喷码缺陷包括漏印、残缺、错印和污染四类缺陷,因此如果待检测的喷码区域内发生了喷码缺陷,此类喷码区域与标准喷码区域在颜色空间内对应的色调直方图、亮度直方图等图像信息统计结果会存在一定差异。除此之外,如果对喷码所在喷码区域进行骨架提取,逐渐筛选能够表征喷码字符骨架的像素点,这些像素点构成的字符骨架结果也大不相同。因此基于食品包装袋图像中喷码字符的图像信息和字符骨架提取结果得到待检测的喷码区域的检测结果,将存在喷码缺陷的食品包装袋剔除。
[0046] 由于模板匹配的方法经常用于图像缺陷,将待检测图像与模板图像进行匹配,但是在本发明中,待检测图像为食品包装袋图像,检测目的是生产信息对应的喷码字符是否存在缺陷,不能直接模板匹配的原因在于喷码字符是变化的,不同的生产信息对应不同的喷码,喷码的位置也是不固定的;其次喷码字符在食品包装袋图像中所占区域太小,利用窗口滑动与模板图像匹配的计算量过大,绝大多数区域并不是喷码字符所在区域,不能满足快速匹配的要求。因此本发明首先从食品包装袋图像中获取喷码字符所在的喷码区域,进一步的利用改进的K3M算法,将匹配对象细化到一个像素宽度,能够提高检测速率。
[0047] 食品包装袋图像上包含各种喷码,本发明针对生产信息的喷码缺陷进行检测。喷码缺陷包括字符漏印、字符残缺、字符错印、字符污染四种缺陷。生产信息的喷码具有一定的喷印标准,例如喷码区域的大小,相邻字符间的间隔等等。如果发生上述四种喷码缺陷的现象,那么食品包装袋图像中的生产信息的喷码结果与标准喷码结果之间将会存在差异,不同类型的喷码缺陷对应的差异不同。例如生产信息的发生字符漏印或者残缺时,那么属于字符的像素点就会丢失一部分,在缺陷区域内像素点的统计结果与标准喷码结果相同空间位置区域内像素点的统计结果会存在明显差异。
[0048] 进一步的,利用神经网络获取食品包装袋图像中含有喷码字符的喷码区域,具体的:
[0049] 获取大量的食品包装袋图像,人为对食品包装袋图像进行标记,目标区域和非目标区域分别用0和1表示,利用独热编码将图像标记与食品包装袋图像进行编码,将大量的编码结果作为神经网络的输入,神经网络的输出是食品包装袋图像中的目标区域,该目标区域也即食品包装袋图像中含有喷码字符的喷码区域,在本发明实施例中利用的神经网络为ResNet50,优化算法为Adam算法。需要说明是的,神经网络的训练为本领域技术人员的公知技术,具体过程不再赘述。训练完成后,利用神经网络输出食品包装袋图像中含有生产信息喷码字符的喷码区域。实现了通过神经网络处理,得到食品包装袋图像中的喷码区域。
[0050] 步骤S200,对于喷码区域内的每个喷码字符,基于像素点对应的法线方向,对每个喷码字符上的像素点进行聚类,得到多个分割字符区域;对于每个像素点,根据像素点和其他像素点之间的距离、像素点的法向量之间的相似程度得到食品包装袋图像中像素点的骨架拟合度。
[0051] 进一步的,基于喷码区域内每个喷码字符的分割结果,计算每个像素点对应的骨架拟合度。
[0052] 根据上述步骤得到了食品包装袋图像中生产信息喷码字符所在的喷码区域,进一步的对喷码区域内的喷码字符进行分析检测。在喷码缺陷的四种类型中,字符错印、字符残缺和字符污染都会影响到单个字符的轮廓和形状,而字符漏印是整个字符的丢失,会造成喷码区域内整体喷码字符轮廓和形状的改变。因此,本发明考虑对喷码区域内字符骨架进行提取,通过骨架提取结果进行后续喷码缺陷的检测。
[0053] K3M顺序迭代算法进行图像骨架提取的基本原理是,如果一个像素点周围相邻的八个像素点都是物体像素点,那么这个像素点就是图像内部的点应该删除。这种方法通过不断的迭代进行像素点的判断,没有距离的约束很容易将骨架偏离图像中心,而且在本发明中如果出现喷码缺陷,K3M顺序迭代算法向内推进过程中将无法严格按照图像收缩的方向进行,会导致喷码字符骨架的定位不够准确。
[0054] 生产信息的喷码内容都是以数字的形式在食品包装袋图像中存在,包含从0到9的10个数字,喷码字符的骨架提取可以理解为每个数字中不同区域的细化过程。精准度较高的骨架提取结果,骨架的方向与相应字符区域上的方向是一致的。因此本发明中考虑将喷码区域内每个喷码字符进行分割处理,分割的目的是为了将每个喷码字符区域内具有相似法线方向的像素点聚集到一起,使得提取的字符骨架更拟合喷码字符的结构。基于喷码字符中各像素点对应的法线方向,利用k均值聚类算法对喷码区域内每个喷码字符进行分割处理,具体的:基于像素点对应的法线方向,利用k均值聚类算法对每个喷码字符上的像素点进行聚类,得到多个聚类簇,一个聚类簇内的像素点构成一个分割字符区域。在本发明实施例中k的值取4,即将每个喷码字符分割成4个分割字符区域,在其他实施例中实施者可根据实际情况调整该取值。请参阅图2,图2为喷码字符3对应的多个分割字符区域的示意图。
图2中与分割字符区域1的法向量相交的实线箭头为分割字符区域1中曲率最大的点的切线;图2中与分割字符区域2的法向量相交的实线箭头为分割字符区域2中曲率最大的点的切线;图2中与分割字符区域3的法向量相交的实线箭头为分割字符区域3中曲率最大的点的切线;图2中与分割字符区域4的法向量相交的实线箭头为分割字符区域4中曲率最大的点的切线;图2中3条不带有箭头的虚线段将喷码字符3分割为了4个分割字符区域,分别为分割字符区域1、分割字符区域2、分割字符区域3和分割字符区域4。
[0055] 在本发明实施例中k均值聚类算法中的度量距离的计算方法为:计算像素点和分割字符区域的种子点的欧式距离的开平方,计算像素点和分割字符区域的种子点的灰度差值的开平方,该欧式距离的开平方与该灰度差值的开平方之和作为像素点对应的度量距离。
[0056] 该度量距离的计算公式为:
[0057]
[0058] 其中, 为k均值聚类算法中种子点z和像素点i的度量距离;为分割字符区域的种子点; 为种子点z与像素点i的欧式距离; 为像素点i与种子点之间的灰度差值。在本发明实施例中所有喷码字符分割的度量距离的计算公式均为该公式。
[0059] 该度量距离的计算公式不仅反映了像素点和种子点之间的距离,还反映了像素点和种子点之间的灰度差异,以此实现对像素点的分类。通过像素点和种子点之间的灰度差异反映像素点和种子点之间的距离,是因为位置越相近的像素点,其受到的灯光的影响或者是在喷绘时喷制出的颜色更为相近,其更应该划分至同一分割字符区域。故像素点和种子点对应的欧式距离越小,则像素点和种子点之间的度量距离越小,反之亦反,该欧式距离和度量距离呈正比关系。同样的,像素点和种子点对应的灰度差异越小,则像素点和种子点之间的度量距离越小,反之亦反,该灰度差异和度量距离呈正比关系。
[0060] 对于每个像素点,根据像素点和其他像素点之间的距离、像素点的法向量之间的相似程度得到食品包装袋图像中像素点的骨架拟合度,具体的:
[0061] 首先获取像素点所在分割字符区域的区域轮廓序列,具体的:获取分割字符区域中曲率最大的边缘点,在曲率最大的边缘点左右两侧各取10个边缘点,与曲率最大的边缘点组成包含21个像素点的局部轮廓,按照左到右排序得到区域轮廓序列。再获取像素点对应的轮廓序列,像素点所对应的轮廓序列的获取方法为:以像素点为中心左右各取10个像素点,包括中心像素点,将含有21个像素点的局部轮廓按照左到右排序组成像素点的轮廓序列。
[0062] 初始骨架拟合度的计算公式为:
[0063]
[0064] 其中, 为分割字符区域a中像素点i的初始骨架拟合度; 为分割字符区域a中像素点i到区域轮廓序列中第x个轮廓点的欧式距离;N为分割字符区域a对应的区域轮廓序列中轮廓点的数量; 为像素点i到法向量所在直线的垂直距离;为自然常数; 为分割字符区域a中像素点i的法向量; 为分割字符区域a中曲率最大点的法向量;为法向量 和法向量 的余弦相似度;为方差函数; 为分
割字符区域a中像素点i对应的轮廓序列上所有像素点与区域轮廓序列对应的 的方差。
[0065] 每个像素点对应的初始骨架拟合度在所有像素点对应的初始骨架拟合度之和中的占比,为像素点对应的骨架拟合度。
[0066] 分割字符区域内像素点与分割字符区域对应的聚类簇的种子点的距离越远,反映像素点越远离分割字符区域可能的骨架细化结果,该像素点越不影响骨架最终位置。像素点的法线方向与所在分割字符区域的法线方向差异越大,像素点越有可能位于靠近分割字符区域边缘,像素点对细化结果的约束越弱,越不影响骨架最终位置。骨架拟合度由分割字符区域内像素点的骨架距离权重和骨架方向权重共同影响。
[0067] 其中, 是像素点i的距离波动度。 越大,说明像素点到区域轮廓上的投影距离与直线距离变化越大,将像素点作为骨架上的像素点得到的骨架与局部轮廓的差异越大。 为分割字符区域a中像素点i对应的轮廓序列上所有像素点与区域轮廓序列对应的 的方差,这样计算的原因是由于切点与其相邻边缘点组成的区域轮廓序列是对分割字符区域的轮廓结构影响较大的,对骨架提取结果的影响也应当是较大的,骨架提取结果上存在一些相邻的像素点,这些像素点组成的轮廓序列与区域轮廓序列之间的距离应该是几乎不变的。需要说明的是,这里的切点即为曲率最大的点。
[0068] 其中, 是像素点i的骨架距离权重,骨架距离权重反映的是像素点与分割字符区域法向量周围像素点之间轮廓距离的不稳定程度,该骨架距离权重越大,则像素点越有可能位于分割字符区域的边缘上,在进行骨架提取的时候越应该进行删除。
[0069] 其中, 为分割字符区域a中曲率最大点的法向量,将该法向量作为分割字符区域的法向量,曲率的计算可以利用最小二乘法拟合平面计算,为本领域技术人员的公知技术,具体过程不再赘述。 为像素点i的骨架方向权重,反映的是喷码区域中像素点i的法线方向与分割字符区域a的法线方向之间的相似程度,骨架方向权重越大,像素点i越靠近分割字符区域a两侧边缘,对骨架的提取结果影响越小。
[0070] 骨架拟合度反映了分割字符区域a内像素点i对分割字符区域a的骨架提取结果的影响大小,像素点i与分割字符区域a内像素点的分布距离越远,周围存在非分割字符区域像素点的可能性越大,即 越大,骨架距离权重 越小;像素点i的法线方向与分割字符区域的法线方向越相似,说明像素点i越靠近分割字符区域边缘上曲率最大的像素点,即 越大,对细化结果的影响越小,骨架拟合度越低。
[0071] 当喷码区域内存在喷码缺陷时,传统K3M是在像素点为中心3*3大小的区域内腐蚀的,并不是所有的像素点都应该取对应的3*3区域进行腐蚀,例如字符残缺的现象会导致分割字符区域局部是断开的,每个像素点去进行腐蚀,每个断开的分割字符区域就会得到一个骨架提取结果,腐蚀过程中很有可能把真正骨架上的像素点腐蚀掉,即一个分割字符区域可能存在多个不连续的骨架提取结果,会造成字符骨架局部畸变的问题。骨架拟合度对于分割字符区域内的任意像素点都会进行骨架提取结果的评估,骨架拟合度考虑了不同分割字符区域像素点对骨架提取结果的影响,其有益效果在于解决了喷码区域内存在喷码缺陷时将少量分割字符区域内像素点作为边缘点删除的问题。
[0072] 通过对喷码区域内每个喷码字符的分割处理,得到像素点的骨架拟合度。
[0073] 步骤S300,基于像素点的骨架拟合度和相邻像素点的颜色特征相似性,计算像素点的骨架信息密度;在喷码区域上滑动滑窗,基于窗口内像素点的骨架信息密度之和筛选出最优窗口;根据像素点与每个最优窗口的中心点的骨架信息密度差异,计算食品包装袋图像中像素点的分布距离,根据分布距离构建距离场;基于距离场中像素点的邻域内像素点的分布距离,对距离场中部分像素点进行筛除,从距离场中提取出骨架提取结果。
[0074] 根据步骤S200得到喷码区域内每个喷码字符区域内像素点的骨架拟合度,基于像素点的骨架拟合度和相邻像素点的颜色特征相似性,获取像素点图像信息的局部密度。获取图像信息局部密度的目的在于K3M顺序迭代过程是对像素点邻域中是否存在3个或3个以上像素点相邻的情况,如果存在多点相邻的情况,删除该点。也就是说被删除点都存在上述情况,这些像素点之间具有一定的相似性。对于被作为骨架的最后剩余的宽为一个像素的图像,骨架中的像素点往往是位于图像中心区域,在本发明中骨架上的像素点通常是靠近每个分割字符区域的中心点的,因此可以将每个分割字符区域中心点作为目标位置,计算其余像素点与目标位置的距离,根据所有像素点到目标位置的距离得到距离场。基于该分析,构建骨架信息密度,用于表征每个像素点邻域内像素点对骨架提取信息的相似性,具体的:基于像素点的骨架拟合度和相邻像素点的颜色特征相似性,计算像素点的骨架信息密度。该骨架信息密度的获取方法为:选取任一像素点作为目标像素点,计算目标像素点所在窗口内的最大灰度差值;通过颜色聚合向量将窗口内的像素点量化为多种量化颜色,每种量化颜色中含有聚合像素点和非聚合像素点;计算每种量化颜色中聚合像素点和非聚合像素点的数量差值;将窗口内所有量化颜色对应的数量差值之和与最大灰度差值的乘积作为调节信息密度;将所述调节信息密度和所述骨架拟合度的乘积作为骨架信息量;目标像素点对应的窗口内各像素点的骨架信息量的方差的倒数作为目标像素点的骨架信息密度。
[0075] 该骨架信息量的计算公式为:
[0076]
[0077] 其中, 为分割字符区域a中像素点i的骨架信息量; 为分割字符区域a中像素点i的骨架拟合度; 为分割字符区域a中像素点i所在窗口w内的最大灰度差值;为窗口w内像素点的量化颜色的种类数量; 为窗口w内第b种量化颜色中聚合像素点的数量; 为窗口w内第b种量化颜色中非聚合像素点的数量; 为窗口w内第b种量化颜色中聚合像素点和非聚合像素点的数量差值; 为分割
字符区域a中像素点i所在窗口w的调节信息密度。
[0078] 以像素点i对应的窗口w内各像素点的骨架信息量的方差的倒数作为像素点i的骨架信息密度。
[0079] 在本发明实施例中设定窗口内的量化颜色的种类数量为6,也即在本发明实施例中B的取值为6。在本发明实施例中聚合阈值的大小取经验值4,在其他实施例中实施者可根据实际情况调整该取值。需要说明的是,颜色聚合向量为本领域技术人员的公知技术,在此不再进行赘述。
[0080] 其中, 为像素点i的局部信息差值,反映了像素点与邻域内像素点图像信息的差异程度,局部信息差值越大,则像素点与邻域内像素点图像信息的差异程度越大。骨架拟合度 反映的是像素点对分割字符区域a的骨架提取结果的影响程度; 反映的是分割字符区域a中像素点i的图像信息分
布情况,因此将两者的乘积作为像素点i在分割字符区域a中的骨架信息量,以便于后续得到骨架信息密度。骨架信息密度反映了像素点i作为分割字符区域a骨架提取结果中像素点的可能性。骨架信息密度越大,像素点i越有可能成为骨架提取结果上的像素点。
[0081] 骨架信息密度反映了像素点成为分割字符区域a骨架提取结果上像素点的可能性,与邻域内像素点分布图像的信息差异越小,对应的局部信息差值越大,像素点i与邻域内像素点的越不相似;骨架信息值的方差越大,即骨架信息密度 越小,说明像素点i邻域内像素点对骨架提取结果的影响程度各有不同,像素点越不可能成为骨架提取结果上的像素点。
[0082] 进一步的,计算每个像素点的骨架信息密度,由于最后构成骨架的像素点往往是靠近图像中心线的,因此认为骨架信息密度最大,且到水平方向两侧像素点的骨架信息密度都是逐渐减小的像素点能够作为目标位置的候选点。
[0083] 在分割字符区域上滑动滑窗,基于窗口内像素点的骨架信息密度之和筛选出最优窗口,具体的:计算各窗口内各像素点的骨架信息密度之和,按照骨架信息密度之和从大到小的顺序,将前预设数量阈值个骨架信息密度之和对应的窗口作为最优窗口。在本发明实施例中预设数量阈值的取值为5,在其他实施例中实施者可根据实际情况调整该取值。也即对于每个分割字符区域,获取骨架信息密度累加和最大的M个窗口,本发明中M的大小取经验值5,将5个窗口中心点的集合记为集合 。
[0084] 对于每个喷码字符,根据距离场和骨架信息密度进行骨架提取,具体的,首先计算分布距离,构建距离场,从距离场中获取分布距离最小值。根据像素点与每个最优窗口的中心点的骨架信息密度差异,计算食品包装袋图像中像素点的分布距离,根据分布距离构建距离场。分布距离的获取方法为:对于每个像素点,计算每个像素点与每个最优窗口的中心点的骨架信息密度的差值的均值,所述差值的均值为像素点对应的分布距离。将每个像素点对应的分布距离作为像素点在距离场上对应的数值。请参阅图3,为距离场的示意图。
[0085] 进一步的,对于每个分割字符区域,获取分割字符区域中每个像素点的分布距离的均值作为初始分割距离,对距离场中分布距离为初始分割距离的像素点进行K3M顺序迭代判断;选取分布距离为初始分割距离的任一像素点作为第一像素点,当第一像素点的邻域内存在大于预设像素点数量阈值个分布距离相等的像素点时,将第一像素点进行删除;当分布距离为初始分割距离的像素点均被删除时,将分布距离大于初始分割距离的像素点全部删除,在本发明实施例中按照常规的预设像素点数量阈值的取值为3,在其他实施例中实施者可根据实际情况调节该取值。以预设步长迭代初始分割阈值,进行像素点的删除,当分布距离对应的像素点存在被删除和被保留两类像素点时,对被保留的像素点进行标记,当不断迭代的初始分割阈值达到分布距离最小值时,得到骨架的初步提取结果;当初步提取结果中骨架每行的宽度大于1个像素点时,保留骨架信息密度最大的像素点,当初步提取结果中骨架每行的宽度为1个像素点时,停止迭代,得到分割字符区域对应的骨架提取结果。在本发明实施例中预设步长为1,在其他实施例中实施者可根据实际情况调整该取值。
[0086] 也即为设置初始分割距离 ,该初始分割距离为所属分割字符区域中每个像素点的分布距离的均值,查询距离场中分布距离为 的像素点x,对像素点x进行K3M顺序迭代判断,判断的方式是x邻域内是否存在3个或者3个以上分布距离相等的像素点,根据判断结果进行删除或保留,如果分布距离 对应的所有像素点都被判定为删除,将大于初始分割距离的像素点全部删除。需要说明的是,K3M顺序迭代为本领域技术人员的公知技术,具体过程不再详细赘述。以步长为1,迭代初始分割距离 ,进行像素点的删除,如果一个分割距离存在被删除和被保留两类像素点,对于被保留的像素点进行标记,当分割距离达到分布距离最小值 时得到骨架的初步提取结果,如果骨架每行宽度大于1个像素点,保留骨架信息密度最大的像素点,保证骨架宽度为1。当骨架宽度为1个像素点时,停止迭代得到分割字符区域a对应的骨架提取结果。
[0087] 按照相同的步骤,获取喷码区域内所有字符的骨架提取结果,将喷码区域内骨架提取结果记为TF。实现了根据骨架拟合度和距离场对食品包装袋图像中的喷码字符进行处理,得到喷码区域内每个喷码字符的骨架提取结果TF。
[0088] 步骤S400,基于骨架提取结果对喷码区域的喷码质量进行判断。
[0089] 根据步骤S300对所有生产信息标准喷码结果进行骨架提取,将每个生产信息对应的骨架提取结果作为模板骨架,将所有模板骨架放入到模板库中。将得到的待检测的食品包装袋图像中喷码区域的骨架提取结果TF分别与模板库中的每一个模板骨架进行重叠区域的检测。在本发明实施例中,利用尺度不变特征变换获取重叠区域的检测结果,获取尺度不变特征为本领域技术人员的公知技术,具体过程不再赘述。根据重叠区域的检测结果获取包装袋的喷码检测结果,当骨架提取结果TF与模板库中一个模板骨架完全重叠,说明包装袋上的喷码是正常的,判定骨架提取结果对应的喷码区域不存在喷码缺陷;当骨架提取结果TF与模板库中所有的模板骨架都不完全重叠,说明包装袋上存在喷码缺陷,判定骨架提取结果对应的喷码区域存在喷码缺陷。
[0090] 根据步骤S100 S400获取食品包装袋生产流水线上存在喷码缺陷的食品包装袋,~对于存在喷码缺陷的食品包装袋不能实现食品保险储存,在生产流水线上划分为残次品,应当在检测系统末端位置放置剔除装置进行剔除处理。目前加工生产中常见的剔除装置有:橡胶等柔性材料的制作的抓手、机器人手臂、气动喷头等等,考虑到食品包装袋的重量和后续的处理工艺,本发明实施例中选择利用机械吸盘将被认为是残次品的食品包装袋吸附放入收纳箱中完成剔除,也即将判定为存在喷码缺陷的食品包装袋吸附放入收纳箱中完成剔除,残次品包装袋的剔除流程为:当包装袋传输到传感器下方时,传感器输出高电平到开关控制器,如果检测结果是存在喷码缺陷的残次品包装袋,开关控制器控制机械吸盘将残次品剔除,对于检测结果中无喷码缺陷的食品包装袋,继续传输到下一加工阶段。
[0091] 综上所述,本发明涉及图像处理技术领域。该方法首先获取食品包装袋图像中含喷码字符的喷码区域;对于喷码区域内的每个喷码字符,基于像素点对应的法线方向,对每个喷码字符上的像素点进行聚类,得到多个分割字符区域;对于每个像素点,根据像素点和其他像素点之间的距离、像素点的法向量之间的相似程度得到食品包装袋图像中像素点的骨架拟合度;基于像素点的骨架拟合度和相邻像素点的颜色特征相似性,计算像素点的骨架信息密度;在喷码区域上滑动滑窗,基于窗口内像素点的骨架信息密度之和筛选出最优窗口;根据像素点与每个最优窗口的中心点的骨架信息密度差异,计算食品包装袋图像中像素点的分布距离,根据分布距离构建距离场;基于距离场中像素点的邻域内像素点的分布距离,对距离场中部分像素点进行筛除,从距离场中提取出骨架提取结果;基于骨架提取结果对喷码区域的喷码质量进行判断。以便于实现利用改进的K3M顺序迭代算法对食品包装袋上的喷码进行检测,将属于残次品的食品包装袋从流水线上剔除。
[0092] 本发明实施例还提出了一种食品包装袋检测系统,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。由于一种食品包装袋检测方法在上述给出了详细描述,不再赘述。
[0093] 需要说明的是:上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0094] 本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。