产学研创新服务平台(开云优惠体育网页版入口)
专利申请类型:发明专利;专利名称:一种乳粉包装标签视觉识别方法及系统
专利类型:发明专利
专利申请号:CN202411289276.6
专利申请(专利权)人:陕西圣唐乳业有限公司
权利人地址:陕西省渭南市富平县高新技术产业开发区泰安路中段东侧
专利发明(设计)人:杨维静,徐永杰,安文邦,吕杏杏,褚帆
专利摘要:本发明涉及数据处理技术领域,具体涉及一种乳粉包装标签视觉识别方法及系统,包括:获取奶粉罐灰度图像以及在奶粉罐灰度图像中预设若干直线,采集同一品类奶粉罐的表面标签作为现有模板;获取奶粉罐沿每条直线的形变程度,进一步获取奶粉罐的中心线;获取奶粉罐沿中心线的垂直方向上的形变程度;根据奶粉罐沿中心线的形变程度与奶粉罐沿中心线的垂直方向上的形变程度,获取奶粉罐灰度图像中每个像素点的匹配权重,进一步获取每个像素点的相关系数,根据相关系数对奶粉罐灰度图像与现有模板进行模板匹配,完成奶粉罐标签的视觉识别。本发明旨在提高对奶粉罐上的标签的精确识别度。
主权利要求:
1.一种乳粉包装标签视觉识别方法,其特征在于,该方法包括以下步骤:获取奶粉罐灰度图像以及在奶粉罐灰度图像中预设若干直线,采集同一品类奶粉罐的表面标签作为现有模板;
根据奶粉罐灰度图像中的信息不同区域,将奶粉罐灰度图像划分为不同的连通域,根据所有连通域内像素点沿不同直线方向的灰度变化,获取奶粉罐沿每条直线的形变程度,进一步获取奶粉罐的中心线;
根据奶粉罐的中心线的每个像素点构建若干条垂直线,根据每个连通域内像素点沿中心线的垂直线方向的灰度变化,获取奶粉罐沿中心线的垂直方向上的形变程度;
根据奶粉罐沿中心线的形变程度与奶粉罐沿中心线的垂直方向上的形变程度,获取奶粉罐灰度图像中每个像素点的匹配权重;
根据奶粉罐灰度图像中所有像素点的匹配权重,获取每个像素点的相关系数,根据相关系数对奶粉罐灰度图像与现有模板进行模板匹配,完成奶粉罐标签的视觉识别;
所述获取每个像素点的相关系数包括:
将奶粉罐灰度图像中每个像素点的匹配权重与现有模板中每个像素点的归一化相关系数匹配函数的乘积,记为每个像素点的相关系数;
所述获取奶粉罐沿每条直线的形变程度包括:
奶粉罐沿第 条直线的形变程度的计算公式为:
其中, 表示奶粉罐沿第 条直线的形变程度; 表示以第 条直线在第 个连通域的第 个像素点为垂心,垂直于第 条直线且经过第 个像素点的所有像素点的灰度均值;
表示以第 条直线在第 个连通域的第 个像素点为垂心,垂直于第 条直线且经过第 个像素点的所有像素点的灰度均值; 表示第 条直线在第 个连通域中经过的像素点数量; 表示第 条直线在奶粉罐灰度图像中穿过的连通域数量; 表示线性归一化函数;
所述获取奶粉罐沿中心线的垂直方向上的形变程度包括:
奶粉罐沿中心线的第 条垂直线的形变程度的计算公式为:
其中, 表示奶粉罐沿中心线的第 条垂直线的形变程度; 表示中心线的第 条垂直线穿过的连通域数量; 表示中心线的第 条垂直线穿过的第 个连通域内像素点行数; 表示中心线的第 条垂直线穿过的第 个连通域内第 行像素点的灰度均值;
表示中心线的第 条垂直线穿过的第 个连通域内第 行像素点的灰度均值;
表示线性归一化函数。
2.根据权利要求1所述一种乳粉包装标签视觉识别方法,其特征在于,所述获取奶粉罐灰度图像以及在奶粉罐灰度图像中预设若干直线包括:以奶粉罐灰度图像的中心像素点为基准,根据预设的间隔角度过中心像素点作直线,得到奶粉罐灰度图像的若干条直线。
3.根据权利要求1所述一种乳粉包装标签视觉识别方法,其特征在于,所述获取奶粉罐的中心线包括:获取奶粉罐沿每条直线的形变程度,将奶粉罐沿每条直线的形变程度最小的直线记为奶粉罐的中心线。
4.根据权利要求1所述一种乳粉包装标签视觉识别方法,其特征在于,所述连通域的具体获取方式为:利用深度优先算法将奶粉罐灰度图像划分为不同的连通域。
5.根据权利要求1所述一种乳粉包装标签视觉识别方法,其特征在于,所述垂直线的具体获取方式为:将过中心线的第 个像素点并且垂直于中心线的直线记为中心线的第 条垂直线。
6.根据权利要求1所述一种乳粉包装标签视觉识别方法,其特征在于,所述获取奶粉罐灰度图像中每个像素点的匹配权重包括:对于奶粉罐灰度图像中任意一个像素点,将奶粉罐沿中心线的形变程度与奶粉罐沿中心线的垂直方向上的形变程度的平方和开平方根的结果,记为奶粉罐灰度图像上任意一个像素点的形变程度;
在奶粉罐灰度图像上,从左上角开始,以每个像素点为中心像素点构建滑动窗口,沿着水平方向逐个像素点移动,将中心像素点的形变程度在滑动窗口内的归一化的结果,记为每个中心像素点的匹配权重,直至滑动窗口遍历完整的奶粉罐灰度图像,得到所有像素点的匹配权重。
7.一种乳粉包装标签视觉识别系统,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1?6任一项所述的一种乳粉包装标签视觉识别方法的步骤。 说明书 : 一种乳粉包装标签视觉识别方法及系统技术领域[0001] 本发明涉及数据处理技术领域,具体涉及一种乳粉包装标签视觉识别方法及系统。背景技术[0002] 为了便于进行产品区分,罐装容器型商品均需要附加商品名称展示的柱面标签,柱面标签的质量直接关乎商品本身的质量以及观赏性,所以对于罐装产品的柱面标签的质量管控在生产中不可缺少。[0003] 在罐装奶粉的生产过程中,因为不同年龄段的婴幼儿适用的配方奶粉各不相同,而消费者用以区分不同产品的最直观的方式就是查看奶粉标签,由于柱面标签由于拍摄角度以及柱面曲面的原因,其在二维图像中会产生各种不同的形变,因此不能精确识别出奶粉罐上的标签。发明内容[0004] 本发明提供一种乳粉包装标签视觉识别方法及系统,以解决现有的问题。[0005] 本发明的一种乳粉包装标签视觉识别方法及系统采用如下技术方案:[0006] 本发明一个实施例提供了一种乳粉包装标签视觉识别方法,该方法包括以下步骤:[0007] 获取奶粉罐灰度图像以及在奶粉罐灰度图像中预设若干直线,采集同一品类奶粉罐的表面标签作为现有模板;[0008] 根据奶粉罐灰度图像中的信息不同区域,将奶粉罐灰度图像划分为不同的连通域,根据所有连通域内像素点沿不同直线方向的灰度变化,获取奶粉罐沿每条直线的形变程度,进一步获取奶粉罐的中心线;[0009] 根据奶粉罐的中心线的每个像素点构建若干条垂直线,根据每个连通域内像素点沿中心线的垂直线方向的灰度变化,获取奶粉罐沿中心线的垂直方向上的形变程度;[0010] 根据奶粉罐沿中心线的形变程度与奶粉罐沿中心线的垂直方向上的形变程度,获取奶粉罐灰度图像中每个像素点的匹配权重;[0011] 根据奶粉罐灰度图像中所有像素点的匹配权重,获取每个像素点的相关系数,根据相关系数对奶粉罐灰度图像与现有模板进行模板匹配,完成奶粉罐标签的视觉识别。[0012] 进一步地,所述获取奶粉罐灰度图像以及在奶粉罐灰度图像中预设若干直线包括:[0013] 以奶粉罐灰度图像的中心像素点为基准,根据预设的间隔角度过中心像素点作直线,得到奶粉罐灰度图像的若干条直线。[0014] 进一步地,所述获取奶粉罐的中心线包括:[0015] 获取奶粉罐沿每条直线的形变程度,将奶粉罐沿每条直线的形变程度最小的直线记为奶粉罐的中心线。[0016] 进一步地,所述获取奶粉罐沿每条直线的形变程度包括:[0017] 奶粉罐沿第 条直线的形变程度的计算公式为:[0018][0019] 其中, 表示奶粉罐沿第 条直线的形变程度; 表示以第 条直线在第 个连通域的第 个像素点为垂心,垂直于第 条直线且经过第 个像素点的所有像素点的灰度均值; 表示以第 条直线在第 个连通域的第 个像素点为垂心,垂直于第 条直线且经过第 个像素点的所有像素点的灰度均值; 表示第 条直线在第 个连通域中经过的像素点数量; 表示第 条直线在奶粉罐灰度图像中穿过的连通域数量;表示线性归一化函数。[0020] 进一步地,所述连通域的具体获取方式为:[0021] 利用深度优先算法将奶粉罐灰度图像划分为不同的连通域。[0022] 进一步地,所述获取奶粉罐沿中心线的垂直方向上的形变程度包括:[0023] 奶粉罐沿中心线的第 条垂直线的形变程度的计算公式为:[0024][0025] 其中, 表示奶粉罐沿中心线的第 条垂直线的形变程度; 表示中心线的第条垂直线穿过的连通域数量; 表示中心线的第 条垂直线穿过的第 个连通域内像素点行数; 表示中心线的第 条垂直线穿过的第 个连通域内第 行像素点的灰度均值; 表示中心线的第 条垂直线穿过的第 个连通域内第 行像素点的灰度均值; 表示线性归一化函数。[0026] 进一步地,所述垂直线的具体获取方式为:[0027] 将过中心线的第 个像素点并且垂直于中心线的直线记为中心线的第 条垂直线。[0028] 进一步地,所述获取奶粉罐灰度图像中每个像素点的匹配权重包括:[0029] 对于奶粉罐灰度图像中任意一个像素点,将奶粉罐沿中心线的形变程度与奶粉罐沿中心线的垂直方向上的形变程度的平方和开平方根的结果,记为奶粉罐灰度图像上任意一个像素点的形变程度;[0030] 在奶粉罐灰度图像上,从左上角开始,以每个像素点为中心像素点构建滑动窗口,沿着水平方向逐个像素点移动,将中心像素点的形变程度在滑动窗口内的归一化的结果,记为每个中心像素点的匹配权重,直至滑动窗口遍历完整的奶粉罐灰度图像,得到所有像素点的匹配权重。[0031] 进一步地,所述获取每个像素点的相关系数包括:[0032] 将奶粉罐灰度图像中每个像素点的匹配权重与现有模板中每个像素点的归一化相关系数匹配函数的乘积,记为每个像素点的相关系数。[0033] 本发明还提出了一种乳粉包装标签视觉识别系统,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述存储器存储的计算机程序,以实现前述所述的一种乳粉包装标签视觉识别方法的步骤。[0034] 本发明的技术方案的有益效果是:获取奶粉罐灰度图像以及在奶粉罐灰度图像中预设若干直线,采集同一品类奶粉罐的表面标签作为现有模板,为后续模板匹配提供依据;获取奶粉罐沿每条直线的形变程度,测量奶粉罐沿预设直线的形变程度可以确定奶粉罐的整体形状,进一步获取奶粉罐的中心线,为了解决由于拍摄角度的原因,获取的奶粉罐灰度图像在二维平面可能存在倾斜的情况,不能直接确定奶粉罐的中心线;获取奶粉罐沿中心线的垂直方向上的形变程度,有益于了解奶粉罐表面的局部膨胀或收缩情况,提高对奶粉罐表面标签的位置和形状的精确识别;根据奶粉罐沿中心线的形变程度与奶粉罐沿中心线的垂直方向上的形变程度,获取奶粉罐灰度图像中每个像素点的匹配权重,进一步获取每个像素点的相关系数,根据相关系数对奶粉罐灰度图像与现有模板进行模板匹配,完成奶粉罐标签的视觉识别,提高对奶粉罐上的标签的精确识别度。附图说明[0035] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。[0036] 图1为本发明一种乳粉包装标签视觉识别方法的步骤流程图;[0037] 图2为奶粉罐的直角坐标系。具体实施方式[0038] 为了更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的一种乳粉包装标签视觉识别方法及系统,其具体实施方式、结构、特征及其功效,详细说明如下。在下述说明中,不同的“一个实施例”或“另一个实施例”指的不一定是同一实施例。此外,一或多个实施例中的特定特征、结构或特点可由任何合适形式组合。[0039] 除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。[0040] 下面结合附图具体的说明本发明所提供的一种乳粉包装标签视觉识别方法及系统的具体方案。[0041] 请参阅图1,其示出了本发明一个实施例提供的一种乳粉包装标签视觉识别方法的步骤流程图,该方法包括以下步骤:[0042] 步骤S001:获取奶粉罐灰度图像以及在奶粉罐灰度图像中预设若干直线,采集同一品类奶粉罐的表面标签作为现有模板。[0043] 通过相机获取奶粉罐图像,利用神经网络语义分割提取奶粉罐图像中的奶粉罐区域,对奶粉罐区域进行灰度化处理得到奶粉罐灰度图像,其中,神经网络语义分割为公知技术,具体方法在此不做介绍。[0044] 以奶粉罐灰度图像的中心像素点为基准,根据预设的间隔角度过中心像素点作直线,得到奶粉罐灰度图像的若干条直线,每条直线都由奶粉罐灰度图像中的像素点构成。本实施例预设的间隔角度以22.5度为例进行叙述,其它实施方式中可设置为其它值,本实施例不进行限定。[0045] 采集同一品类奶粉罐的表面标签作为现有模板。[0046] 步骤S002:根据奶粉罐灰度图像中的信息不同区域,将奶粉罐灰度图像划分为不同的连通域,根据所有连通域内像素点沿不同直线方向的灰度变化,获取奶粉罐沿每条直线的形变程度,进一步获取奶粉罐的中心线。[0047] 需要说明的是,由于拍摄角度的原因,获取的奶粉罐灰度图像在二维平面可能存在倾斜的情况,不能以奶粉罐灰度图像中的竖直方向的线作为中心线,需要检测奶粉罐灰度图像自身的中心线。在三维空间中,奶粉罐侧面平行于中心轴的若干直线相互平行,而在相机拍摄的二维平面图像中,由于物体与镜头的距离以及拍摄角度的原因,奶粉罐侧面平行于中心轴的若干直线表现出近小远大的特点,在奶粉罐灰度图像中沿镜头的延伸方向呈喇叭状收缩。但是奶粉罐侧面在任何拍摄角度中,与中心轴平行的直线的总体形变程度最小。[0048] 进一步需要说明的是,由于厂家对奶粉罐的形象设计,奶粉罐表面存在花纹、文字和图案等,因此可以将奶粉罐灰度图像划分为不同的区域,每个区域的灰度分布存在显著差异,而区域内部的灰度分布较为一致。[0049] 具体的,利用深度优先算法将奶粉罐灰度图像划分为不同的连通域,每个连通域内像素点的灰度、纹理等相似。根据每个连通域内像素点沿直线方向的灰度变化,获取奶粉罐沿每条直线的形变程度。奶粉罐沿第 条直线的形变程度的计算公式为:[0050][0051] 其中, 表示奶粉罐沿第 条直线的形变程度; 表示以第 条直线在第 个连通域的第 个像素点为垂心,垂直于第 条直线且经过第 个像素点的所有像素点的灰度均值; 表示以第 条直线在第 个连通域的第 个像素点为垂心,垂直于第 条直线且经过第 个像素点的所有像素点的灰度均值; 表示第 条直线在第 个连通域中经过的像素点数量; 表示第 条直线在奶粉罐灰度图像中穿过的连通域数量;表示线性归一化函数,将数据值归一化至 区间内。[0052] 表示相邻两个像素点的灰度均值之差,用来衡量相邻像素点之间的灰度变化情况,该值越大,说明相邻像素点的灰度均值之间的差异很大。表示沿第 条直线的所有相邻像素点灰度均值之差的总和,用来衡量沿第 条直线的灰度变化累积情况,该值越大,说明沿第 条直线的灰度变化累积程度较高,即灰度变化非常剧烈。每个连通域内的像素点灰度分布具有较高的一致性,在连通域内,垂直于直线的灰度分布情况,越均匀则受到的形变导致的灰度值变化越。吹娜≈翟叫。得餍伪涑潭仍叫。 的取值越大,说明形变程度越大。[0053] 同理,根据上述方法获得奶粉罐沿每条直线的形变程度,将奶粉罐沿每条直线的形变程度最小的直线记为奶粉罐的中心线。[0054] 步骤S003:根据奶粉罐的中心线的每个像素点构建若干条垂直线,根据每个连通域内像素点沿中心线的垂直线方向的灰度变化,获取奶粉罐沿中心线的垂直方向上的形变程度。[0055] 需要说明的是,通过上述步骤得到的奶粉罐的中心线,由于需要在奶粉罐灰度图像中做标签识别,因此要遍历整个奶粉罐灰度图像,需要从中心线的两侧延伸方向计算对应的形变程度,对于标签识别及调整模板匹配权重至关重要。由于奶粉罐的几何特性和对称性,其中心线上的任一像素点周围的形变程度在两侧应该是对称的,像素点沿两侧延伸方向相同距离处的形变程度应该是对称相同的。[0056] 具体的,将过中心线的第 个像素点并且垂直于中心线的直线记为中心线的第条垂直线,奶粉罐沿中心线的第 条垂直线的形变程度的计算公式为:[0057][0058] 其中, 表示奶粉罐沿中心线的第 条垂直线的形变程度; 表示中心线的第条垂直线穿过的连通域数量; 表示中心线的第 条垂直线穿过的第 个连通域内像素点行数; 表示中心线的第 条垂直线穿过的第 个连通域内第 行像素点的灰度均值; 表示中心线的第 条垂直线穿过的第 个连通域内第 行像素点的灰度均值; 表示线性归一化函数,将数据值归一化至 区间内。[0059] 表示相邻两行像素点的灰度均值之差,用来衡量相邻行像素点之间的灰度变化情况,该值越大,说明相邻行像素点的灰度均值之间的差异很大。表示沿第 条垂直线的所有相邻行像素点灰度均值之差的总和,用来衡量沿第 条垂直线的灰度变化累积情况,该值越大,说明沿第 条垂直线的灰度变化累积程度较高,即灰度变化非常剧烈。 的取值越。得髂谭酃扪刂行南叩牡谔醮怪毕叩男伪涑潭仍叫。 的取值越大,说明奶粉罐沿中心线的第 条垂直线的形变程度越大。[0060] 同理,根据上述方法获得奶粉罐沿中心线的每条垂直线的形变程度,即奶粉罐沿中心线的垂直方向上的形变程度。[0061] 步骤S004:根据奶粉罐沿中心线的形变程度与奶粉罐沿中心线的垂直方向上的形变程度,获取奶粉罐灰度图像中每个像素点的匹配权重。[0062] 需要说明的是,对于奶粉罐沿中心线的形变程度,可以将中心线上的像素点作为自变量、形变程度为因变量的函数映射;对于奶粉罐沿中心线的垂直方向上的形变程度,可以将与中心线垂直方向上的像素点作为自变量、形变程度为因变量的函数映射。因此,根据奶粉罐的中心线以及中心线的垂直方向建立的直角坐标系,相比直接以奶粉罐灰度图像的竖直与水平延伸方向建立坐标系,通过考虑形变对像素点的影响,使得该坐标系的坐标值可以更好的反映奶粉罐灰度图像中的像素点在奶粉罐圆柱体上的对应位置。根据奶粉罐沿每条直线的形变程度以及奶粉罐沿中心线的垂直方向上的形变程度,可以获取奶粉罐灰度图像中任一像素点的形变程度。[0063] 具体的,以奶粉罐的右下角的像素点为原点,中心线方向为纵轴,垂直于中心线的方向为横轴建立奶粉罐的直角坐标系,建立的奶粉罐的直角坐标系如图2所示,图2中实线矩形即为拍摄的奶粉罐图像,图2中虚线矩形即为奶粉罐灰度图像。对于奶粉罐灰度图像中任意一个像素点,将奶粉罐沿中心线的形变程度与奶粉罐沿中心线的垂直方向上的形变程度的平方和开平方根的结果,记为奶粉罐灰度图像上任意一个像素点的形变程度。[0064] 需要说明的是,标签识别的本质就是使用滑窗法遍历整个图像,将现有标签的特征与滑窗内的像素信息进行模板匹配,针对不存在畸变情况的平面图形,直接使用上述方法进行模板匹配即可;针对采集的奶粉罐灰度图像,由于奶粉罐圆柱体的侧面是曲面以及各不相同的拍摄角度等原因导致奶粉罐的标签产生形变,因此需要对识别模板进行调整。构建滑动窗口,局部分析奶粉罐灰度图像,可以更好地捕捉到局部形变的信息,通过在滑动窗口内对形变程度大的像素点赋予更高的匹配权重,可以增强对形变标签的识别能力。[0065] 具体的,在奶粉罐灰度图像上,从左上角开始,以每个像素点为中心像素点构建大小为 的滑动窗口,沿着水平方向逐个像素点移动,将中心像素点的形变程度在滑动窗口内的归一化的结果,记为每个中心像素点的匹配权重,直至滑动窗口遍历完整的奶粉罐灰度图像,得到所有像素点的匹配权重。本实施例滑动窗口大小以 为例进行叙述,其它实施方式中可设置为其它值,本实施例不进行限定。[0066] 步骤S005:根据奶粉罐灰度图像中所有像素点的匹配权重,获取每个像素点的相关系数,根据相关系数对奶粉罐灰度图像与现有模板进行模板匹配,完成奶粉罐标签的视觉识别。[0067] 根据上述步骤,获取到奶粉罐灰度图像中每个像素点的形变情况以及每个像素点在标签识别中的匹配权重,使用现有模板匹配算法对待检测奶粉罐进行标签识别。[0068] 将奶粉罐灰度图像中每个像素点的匹配权重与现有模板中每个像素点的归一化相关系数匹配函数的乘积,记为每个像素点的相关系数。对每个像素点的相关系数进行归一化,归一化的值越大,说明像素点与现有模板中对应位置的像素点的相似度越高,采用窗口滑动的方法,对局部区域进行整体匹配获得灰度图像中每个像素点的匹配结果。匹配结果表示奶粉罐灰度图像中与模板最相似的部分,将所有像素点的匹配结果构成的图像记为匹配图像,完成对乳粉包装标签的视觉识别。所需说明的是,相关系数匹配函数为现有模板匹配的归一化相关系数匹配法的计算函数,具体计算过程本实施例不再赘述。[0069] 至此,本发明完成。[0070] 综上所述,在本发明实施例中,本发明还提供了一种乳粉包装标签视觉识别系统,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述存储器存储的计算机程序,以实现前述所述的一种乳粉包装标签视觉识别方法的步骤。[0071] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
专利地区:陕西
专利申请日期:2024-09-14
专利公开日期:2024-11-19
专利公告号:CN118823397B