商品识别方法、智能终端以及存储装置与流程

专利2022-05-09  35


本发明涉及图像识别技术领域,尤其涉及一种商品识别方法、智能终端以及存储装置。



背景技术:

快消领域为了更好地制定的制定市场投放策略,需要经常对线下渠道的商店进行核查,核查各种商品在货架上的占有率,以便于根据占有率调整市场投放策略。

在进行商品核查时,需要核查不同系列商品中不同规格产品的占有率。然而,同一个系列的不同规格产品,其外表的图像绝大部分完全相同,仅存在极小差异。因此,通过传统图像识别的方式难以准确识别不同规格的商品,只能通过人工识别商品规格以及添加不同规格商品的占有率。

然而,现有的技术方案中最大的缺点在于:在商品规格特别多的情况下,产生的商品规格数据十分繁杂,人工识别的方式效率低、工作强度大、耗时长,而且,人工识别的稳定性差,容易出现识别错误的现象,商品识别的准确率低。



技术实现要素:

为了克服现有技术的不足,本发明提出一种商品识别方法、智能终端以及存储装置,利用具有系列信息、规格信息的商品图片进行训练,并在神经网络中采取双分支网络结构设计,通过不同的分支区分图片中的系列信息和规格信息,使得用于识别商品的特征更具有代表性,提高了商品系列和规格的识别准确率,提高了识别效率,并且无需人工识别,降低了工作强度和人力成本,稳定性高,提高了商品核查的准确性。

为解决上述问题,本发明采用的一种商品识别方法,所述商品识别方法包括:s101:获取商品的图片,并标注所述图片,所述图片的标注信息包括系列信息、规格信息;s102:获取所述图片的特征图,将所述特征图输入第一分支进行系列分类训练,并将所述特征图输入第二分支进行规格分类训练,所述第一分支、第二分支均包括依次连接的注意力机制层、全连接层、损失函数计算层;s103:根据误差反向传播机制迭代训练形成商品识别模型,通过所述商品识别模型待识别图片中商品的系列信息和规格信息。

进一步地,所述获取所述图片的特征图的步骤具体包括:通过卷积神经网络提取所述图片的特征,并根据所述图片形成所述特征图。

进一步地,所述将所述特征图输入第一分支进行系列分类训练的步骤具体包括:所述第一分支接收所述特征图,通过所述注意力机制层形成包含系列特征的第一特征图,控制所述全连接层从所述第一特征图中提取所述系列特征,使所述损失函数计算层根据所述系列特征计算系列级别分类的损失。

进一步地,所述损失函数计算层根据所述系列特征计算系列级别的损失的步骤具体包括:所述损失函数计算层通过xi=xi-max(x1,x2,......,xc)计算系列级别的损失,其中,ls为系列级别的损失,i为商品的系列,x为特征图中的每一通道。

进一步地,所述将所述特征图输入第二分支进行规格分类训练的步骤具体包括:所述第二分支接收所述特征图,通过所述注意力机制层形成包含规格特征的第二特征图,控制所述全连接层从所述第二特征图中提取所述规格特征,使所述损失函数计算层根据所述规格特征计算相同系列不同规格的损失。

进一步地,所述损失函数计算层根据所述规格特征计算相同系列不同规格的损失的步骤具体包括:所述损失函数计算层通过如下公式计算相同系列不同规格的损失:

lg=lsg lc;

d=||xi,a-xi,b||,a≠b;

其中,d表示两个系列相同、规格类别不同的样本特征向量的距离,g(d)表示关于d的权重高斯函数,σ、μ为高斯函数的方差与均值,m表示距离差距和训练差距,i为商品的系列,ki为第i个系列中的商品规格数据,x代表图片,a、b为不同规格商品的系列信息,xi,a、xi,b为负样本对。

进一步地,通过同一系列不同规格的两张图片构建负样本对。

进一步地,所述通过误差反向传播机制迭代训练形成商品识别模型的步骤具体包括:获取第一分支、第二分支的总损失函数,判断所述总损失函数的结果是否满足预设条件;若是,则确定完成所述商品识别模型的训练。

基于相同的发明构思,本发明还提出一种智能终端,所述智能终端包括处理器、存储器,所述处理器与所述存储器通信连接,所述存储器存储有计算机程序,所述处理器根据所述计算机程序执行如上所述的商品识别方法。

基于相同的发明构思,本发明还提出一种存储装置,存储装置存储有程序数据,所述程序数据被用于执行如上所述的商品识别方法。

相比现有技术,本发明的有益效果在于:利用具有系列信息、规格信息的商品图片进行训练,并在神经网络中采取双分支网络结构设计,通过不同的分支区分图片中的系列信息和规格信息,使得用于识别商品的特征更具有代表性,提高了商品系列和规格的识别准确率,提高了识别效率,并且无需人工识别,降低了工作强度和人力成本,稳定性高,提高了商品核查的准确性。

附图说明

图1为本发明商品识别方法一实施例的流程图;

图2为本发明商品识别方法中训练商品识别模型一实施例的流程图;

图3为本发明智能终端一实施例的结构图;

图4为本发明智能终端的处理器执行的商品识别方法一实施例的流程图;

图5为本发明存储装置一实施例的结构图。

具体实施方式

下面,结合附图以及具体实施方式,对本发明做进一步描述,需要说明的是,在不相冲突的前提下,以下描述的各实施例之间或各技术特征之间可以任意组合形成新的实施例。

请参阅图1-2,其中,图1为本发明商品识别方法一实施例的流程图;图2为本发明商品识别方法中训练商品识别模型一实施例的流程图。结合图1-2对本发明的商品识别方法进行说明。

在本实施例中,执行该商品识别方法的设备可以为电脑、服务器、控制平台以及其他能够标注商品的图片,并通过标注后的图片训练商品识别模型的智能终端。其中,商品识别方法包括:

s101:获取商品的图片,并标注所述图片,所述图片的标注信息包括系列信息、规格信息。

在本实施例中,通过线上抓取或拍摄的方式获取商品的图片,并且可以通过智能终端自动标注或人工标注的方式对图片进行标注。其中,智能终端可以根据与图片相关的属性信息、名称、备注以及其他信息获取图片对应的商品的系列和规格,并根据该系列和规格进行标注。

在本实施例中,标注信息为标签,该标签包括系列标签、规格标签。

在一个具体的实施例中,商品包括c个系列,第i个系列包含ki种规格,则在标注时,每种商品分别标注两个标注:系列标签:i,规格标签j,其中,i∈[1,c],j∈[1,ki]。

s102:获取图片的特征图,将特征图输入第一分支进行系列分类训练,并将特征图输入第二分支进行规格分类训练,第一分支、第二分支均包括依次连接的注意力机制层、全连接层、损失函数计算层。

在本实施例中,获取图片的特征图的步骤具体包括:通过卷积神经网络提取图片的特征,并根据图片形成特征图。其中,特征图以矩阵的方式存在。

在本实施例中,将特征图输入第一分支进行系列分类训练的步骤具体包括:第一分支接收特征图,通过注意力机制层形成包含系列特征的第一特征图,控制全连接层从第一特征图中提取系列特征,使损失函数计算层根据系列特征计算系列级别分类的损失。其中,系列特征为特征向量,通过该特征向量计算系列级别分类的损失。

在一个具体的实施例中,注意力机制层输出的第一特征图为c*w*h的矩阵,全连接层输出的系列特征为1*(w*h)的特征向量,其中,c、w、h的数值大小根据商品的系列、规格以及特征数量进行设置。

在本实施例中,第一分支用于区分商品的系列类别,通过在第一分支中引入注意力机制层的方式使第一分支专注于商品在系列方面的特征,从而提高进行系列识别的准确性。

在本实施例中,损失函数计算层采用softmaxloss作为损失函数。

在本实施例中,损失函数计算层根据系列特征计算系列级别的损失的步骤具体包括:损失函数计算层通过xi=xi-max(x1,x2,......,xc)计算系列级别的损失,其中,ls为系列级别的损失,i为商品的系列,x为特征图中的每一通道。

在本实施例中,将特征图输入第二分支进行规格分类训练的步骤具体包括:第二分支接收特征图,通过注意力机制层形成包含规格特征的第二特征图,控制全连接层从第二特征图中提取规格特征,使损失函数计算层根据规格特征计算相同系列不同规格的损失。其中,规格特征为特征向量。

在一个具体的实施例中,注意力机制层输出的第一特征图为c*w*h的矩阵,全连接层输出的系列特征为1*(w*h)的特征向量,其中,c、w、h的数值大小根据商品的系列、规格以及特征数量进行设置。

在本实施例中,第二分支中的注意力机制层专注于提取系列相同、规格不同的特征。

在本实施例中,第二分支中的损失函数计算层根据规格特征计算相同系列不同规格的损失的步骤具体包括:损失函数计算层通过如下公式计算相同系列不同规格的损失:

lg=lsg lc;

d=||xi,a-xi,b||,a≠b;

其中,d表示两个系列相同、规格类别不同的样本特征向量,g(d)表示关于d的权重高斯函数,σ、μ为高斯函数的方差与均值,m表示距离差距和训练差距,i为商品的系列,ki为第i个系列中的商品规格数据,x代表图片,a、b为不同规格商品的系列信息,xi,a、xi,b为负样本对。

在本实施例中,lsg用来度量相同系列不同规格的分类损失,同时通过构造负样本对的方式区分相同系列不同规格的商品。lc用于度量构造负样本对的损失,使得负样本对在空间分布上远离。损失函数lc中的高斯函数d为权重函数,用于加大距离较近的负样本对的权重。其中,通过同一系列不同规格的两张图片构建负样本对。

s103:根据误差反向传播机制迭代训练形成商品识别模型,通过商品识别模型待识别图片中商品的系列信息和规格信息。

在本实施例中,通过误差反向传播机制迭代训练形成商品识别模型的步骤具体包括:获取第一分支、第二分支的总损失函数,判断总损失函数的计算结果是否满足预设条件;若是,则确定完成商品识别模型的训练;若否,则对第一分支、第二分支进行迭代训练。其中,通过第一分支的损失函数和第二分支的损失函数构成总损失函数。

在本实施例中,预设条件为模型全局最优时,总损失函数的数值或第一分支、第二分支中损失函数的数值。

在本实施例中,商品识别模型获取待识别商品的图片后,根据该图片得到图片中的商品在不同系列以及不同规格的得分,将最大得分对应的系列和规格作为商品的系列和规格。

本发明采用的商品识别模型采用双分支网络结构的设计,利用不同分支获取商品的系列和规格信息,使得区分系列、特征的特征向量更具有代表性,并且第二分支中的损失函数作了针对性改进,能够更好地区分不同规格的样本。

本发明的有益效果在于:本发明的商品识别方法利用具有系列信息、规格信息的商品图片进行训练,并在神经网络中采取双分支网络结构设计,通过不同的分支区分图片中的系列信息和规格信息,使得用于识别商品的特征更具有代表性,提高了商品系列和规格的识别准确率,提高了识别效率,并且无需人工识别,降低了工作强度和人力成本,稳定性高,提高了商品核查的准确性。

基于相同的发明构思,本发明还提出一种智能终端,请参阅图3、4,图3为本发明智能终端一实施例的结构图,图4为本发明智能终端的处理器执行的商品识别方法一实施例的流程图,结合图3、4对本发明的智能终端进行说明。

在本实施例中,智能终端可以为手机、电脑、服务器、控制平台以及其他具备处理器、存储器的设备。

在本实施例中,智能终端包括处理器、存储器,处理器与存储器通信连接,存储器存储有计算机程序,处理器根据该计算机程序实现如下所述的商品识别方法。

s201:获取商品的图片,并标注所述图片,所述图片的标注信息包括系列信息、规格信息。

在本实施例中,通过线上抓取或拍摄的方式获取商品的图片,并且可以通过智能终端自动标注或人工标注的方式对图片进行标注。其中,智能终端可以根据与图片相关的属性信息、名称、备注以及其他信息获取图片对应的商品的系列和规格,并根据该系列和规格进行标注。

在本实施例中,标注信息为标签,该标签包括系列标签、规格标签。

在一个具体的实施例中,商品包括c个系列,第i个系列包含ki种规格,则在标注时,每种商品分别标注两个标注:系列标签:i,规格标签j,其中,i∈[1,c],j∈[1,ki]。

s202:获取图片的特征图,将特征图输入第一分支进行系列分类训练,并将特征图输入第二分支进行规格分类训练,第一分支、第二分支均包括依次连接的注意力机制层、全连接层、损失函数计算层。

在本实施例中,获取图片的特征图的步骤具体包括:通过卷积神经网络提取图片的特征,并根据图片形成特征图。其中,特征图以矩阵的方式存在。

在本实施例中,将特征图输入第一分支进行系列分类训练的步骤具体包括:第一分支接收特征图,通过注意力机制层形成包含系列特征的第一特征图,控制全连接层从第一特征图中提取系列特征,使损失函数计算层根据系列特征计算系列级别分类的损失。其中,系列特征为特征向量,通过该特征向量计算系列级别分类的损失。

在一个具体的实施例中,注意力机制层输出的第一特征图为c*w*h的矩阵,全连接层输出的系列特征为1*(w*h)的特征向量,其中,c、w、h的数值大小根据商品的系列、规格以及特征数量进行设置。

在本实施例中,第一分支用于区分商品的系列类别,通过在第一分支中引入注意力机制层的方式使第一分支专注于商品在系列方面的特征,从而提高进行系列识别的准确性。

在本实施例中,损失函数计算层采用softmaxloss作为损失函数。

在本实施例中,损失函数计算层根据系列特征计算系列级别的损失的步骤具体包括:损失函数计算层通过xi=xi-max(x1,x2,......,xc)计算系列级别的损失,其中,ls为系列级别的损失,i为商品的系列,x为特征图中的每一通道。

在本实施例中,将特征图输入第二分支进行规格分类训练的步骤具体包括:第二分支接收特征图,通过注意力机制层形成包含规格特征的第二特征图,控制全连接层从第二特征图中提取规格特征,使损失函数计算层根据规格特征计算相同系列不同规格的损失。其中,规格特征为特征向量。

在一个具体的实施例中,注意力机制层输出的第一特征图为c*w*h的矩阵,全连接层输出的系列特征为1*(w*h)的特征向量,其中,c、w、h的数值大小根据商品的系列、规格以及特征数量进行设置。

在本实施例中,第二分支中的注意力机制层专注于提取系列相同、规格不同的特征。

在本实施例中,第二分支中的损失函数计算层根据规格特征计算相同系列不同规格的损失的步骤具体包括:损失函数计算层通过如下公式计算相同系列不同规格的损失:

lg=lsg lc;

d=||xi,a-xi,b||,a≠b;

其中,d表示两个系列相同、规格类别不同的样本特征向量,g(d)表示关于d的权重高斯函数,σ、μ为高斯函数的方差与均值,m表示距离差距和训练差距,i为商品的系列,ki为第i个系列中的商品规格数据,x代表图片,a、b为不同规格商品的系列信息,xi,a、xi,b为负样本对。

在本实施例中,lsg用来度量相同系列不同规格的分类损失,同时通过构造负样本对的方式区分相同系列不同规格的商品。lc用于度量构造负样本对的损失,使得负样本对在空间分布上远离。损失函数lc中的高斯函数d为权重函数,用于加大距离较近的负样本对的权重。其中,通过同一系列不同规格的两张图片构建负样本对。

s203:根据误差反向传播机制迭代训练形成商品识别模型,通过商品识别模型待识别图片中商品的系列信息和规格信息。

在本实施例中,通过误差反向传播机制迭代训练形成商品识别模型的步骤具体包括:获取第一分支、第二分支的总损失函数,判断总损失函数的计算结果是否满足预设条件;若是,则确定完成商品识别模型的训练;若否,则对第一分支、第二分支进行迭代训练。其中,通过第一分支的损失函数和第二分支的损失函数构成总损失函数。

在本实施例中,预设条件为模型全局最优时,总损失函数的数值或第一分支、第二分支中损失函数的数值。

在本实施例中,商品识别模型获取待识别商品的图片后,根据该图片得到图片中的商品在不同系列以及不同规格的得分,将最大得分对应的系列和规格作为商品的系列和规格。

本发明采用的商品识别模型采用双分支网络结构的设计,利用不同分支获取商品的系列和规格信息,使得区分系列、特征的特征向量更具有代表性,并且第二分支中的损失函数作了针对性改进,能够更好地区分不同规格的样本。

其中,处理器用于控制该智能终端的整体操作,以完成上述的商品识别方法中的全部或部分步骤。存储器用于存储各种类型的数据以支持在该智能终端的操作,这些数据例如可以包括用于在该智能终端上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器static方向直线random方向直线access方向直线memory,简称sram),电可擦除可编程只读存储器electrically方向直线erasable方向直线programmable方向直线read-only方向直线memory,简称eeprom),可擦除可编程只读存储器erasable方向直线programmable方向直线read-only方向直线memory,简称eprom),可编程只读存储器programmable方向直线read-only方向直线memory,简称prom),只读存储器read-only方向直线memory,简称rom),磁存储器,快闪存储器,磁盘或光盘。

基于相同的发明构思,本发明还提出一种存储装置,请参阅图5,图5为本发明存储装置一实施例的结构图,结合图5对本发明的存储装置进行说明。

在本实施例中,存储装置存储有程序数据,该程序数据被用于执行如上述实施例所述的商品识别方法。

其中,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

转载请注明原文地址:https://doc.8miu.com/read-350158.html

最新回复(0)