一种食材识别方法、装置和设备与流程

文档序号:26837079发布日期:2021-10-07 09:37阅读:144来源:国知局
一种食材识别方法、装置和设备与流程

本申请涉及图像识别和图像检索技术领域,尤其涉及一种食材识别方法、装置和设备。

背景技术

随着智能冰箱行业的日益发展,食材管理越来越成为智能冰箱行业的研究热点,现有的智能冰箱生产厂家都推出了基于图像识别的智能冰箱食材管理方案。而为了实现对智能冰箱内食材的管理,首先需要识别智能冰箱内食材的食材信息。

现有的食材识别的方法包括基于图像分类的食材识别方法和基于图像检测的食材识别方法。这两种方法的区别在于是否进行食材位置的定位,但这两种方法在识别食材时,都是通过大量的数据标注以及模型训练,生成一个识别模型,基于该识别模型实现对食材的识别。

例如,现有的基于图像的食材识别方法中,采用图像采集装置采集智能冰箱内食材的图像,并根据食材模型对该图像进行识别以获得食材信息,食材模型为通过深度学习算法训练而获得的神经网络模型。

现有技术中,无论是基于图像分类的食材识别方法,还是基于图像检测的食材识别方法,由于食材种类繁多且新品种食材层出不穷,并且即使是同一种类的食材的外观也会千差万别,从而导致识别模型不能基于实际生活中的所有食材进行训练,使得识别模型的拒识率较高。



技术实现要素:

本申请提供了一种食材识别方法、装置、设备和介质,用以解决现有方法中识别模型的拒识率较高的问题。

第一方面,本申请提供了一种食材识别方法,所述方法包括:

基于预先训练完成的特征提取模型,获取输入的食材图像的目标特征向量,并基于预先训练完成的识别模型,识别所述食材图像对应的第一食材信息;

根据所述目标特征向量和预先保存的特征向量与食材信息的对应关系,确定与所述目标特征向量匹配的设定数量特征向量对应的每个第二食材信息;

根据所述第一食材信息与所述每个第二食材信息是否一致,确定所述食材图像对应的目标食材信息并控制智能冰箱输出所述目标食材信息。

进一步地,所述根据所述目标特征向量和预先保存的特征向量与食材信息的对应关系,确定与所述目标特征向量匹配的设定数量特征向量对应的每个第二食材信息,包括:

根据所述目标特征向量和预先保存的每个特征向量,确定所述目标特征向量与每个特征向量的相似度;

将相似度满足条件的设定数量的特征向量,确定为与所述目标特征向量匹配的设定数量的特征向量,将所述设定数量的特征向量对应的每个食材信息确定为每个第二食材信息。

进一步地,所述根据所述第一食材信息与所述每个第二食材信息是否一致,确定所述食材图像对应的目标食材信息,包括:

判断所述第一食材信息与所述每个第二食材信息中的任一第二食材信息是否一致;

若是,则将所述第一食材信息确定为所述食材图像对应的目标食材信息;

若否,则根据所述目标特征向量与每个第二食材信息对应的特征向量的相似度,根据相似度最高的特征向量对应的第二食材信息,确定所述食材图像对应的目标食材信息。

进一步地,所述根据相似度最高的特征向量对应的第二食材信息,确定所述食材图像对应的目标食材信息,包括:

将相似度最高的特征向量对应的第二食材信息,确定为所述食材图像对应的目标食材信息;或

将相似度最高的特征向量对应的第二食材信息和所述第一食材信息,确定为所述食材图像对应的目标食材信息。

进一步地,所述控制智能冰箱输出所述目标食材信息,包括:

控制智能冰箱的显示屏显示所述目标食材信息;和/或,

控制所述智能冰箱语音播报所述目标食材信息。

进一步地,所述方法还包括:

若接收到对输出的所述目标食材信息的更正指示;

接收输入的修改后的目标食材的信息,并对应保存所述目标特征向量和修改后的目标食材信息。

进一步地,训练所述识别模型的过程包括:

获取样本集中的任一样本图像及所述样本图像对应的第一标签信息,其中所述第一标签信息用于标识所述样本图像中包含的食材信息;

通过原始识别模型,获取所述样本图像的第二标签信息;

根据所述第一标签信息和所述第二标签信息,对所述原始识别模型中的各参数的参数值进行调整。

进一步地,确定特征向量与食材信息的对应关系的过程包括:

控制智能冰箱的图像采集装置采集样本图像;

基于所述预先训练完成的特征提取模型,确定所述样本图像的特征向量;

对应保存所述特征向量及接收到的食材信息。

第二方面,本申请提供了一种食材识别装置,所述装置包括:

获取模块,用于基于预先训练完成的特征提取模型,获取输入的食材图像的目标特征向量,并基于预先训练完成的识别模型,识别所述食材图像对应的第一食材信息;

确定模块,用于根据所述目标特征向量和预先保存的特征向量与食材信息的对应关系,确定与所述目标特征向量匹配的设定数量特征向量对应的每个第二食材信息;根据所述第一食材信息与所述每个第二食材信息是否一致,确定所述食材图像对应的目标食材信息;

控制模块,用于控制智能冰箱输出所述目标食材信息。

进一步地,所述确定模块,具体用于根据所述目标特征向量和预先保存的每个特征向量,确定所述目标特征向量与每个特征向量的相似度;

将相似度满足条件的设定数量的特征向量,确定为与所述目标特征向量匹配的设定数量的特征向量,将所述设定数量的特征向量对应的每个食材信息确定为每个第二食材信息。

进一步地,所述确定模块,具体还用于判断所述第一食材信息与所述每个第二食材信息中的任一第二食材信息是否一致;

若是,则将所述第一食材信息确定为所述食材图像对应的目标食材信息;

若否,则根据所述目标特征向量与每个第二食材信息对应的特征向量的相似度,根据相似度最高的特征向量对应的第二食材信息,确定所述食材图像对应的目标食材信息。

进一步地,所述确定模块,具体用于若所述第一食材信息与所述每个第二食材信息中的任一第二食材信息均不一致,将相似度最高的特征向量对应的第二食材信息,确定为所述食材图像对应的目标食材信息;或将相似度最高的特征向量对应的第二食材信息和所述第一食材信息,确定为所述食材图像对应的目标食材信息。

进一步地,所述控制模块,具体用于控制智能冰箱的显示屏显示所述目标食材信息;和/或,控制所述智能冰箱语音播报所述目标食材信息。

进一步地,所述装置还包括:接收模块,用于若接收到对输出的所述目标食材信息的更正指示;接收输入的修改后的目标食材的信息;

保存模块,具体用于对应保存所述目标特征向量和修改后的目标食材信息。

第三方面,本申请还提供了一种电子设备,所述电子设备包括处理器和存储器,所述存储器用于存储程序指令,所述处理器用于执行存储器中存储的计算机程序时实现上述任一所述食材识别方法的步骤。

第四方面,本申请还提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述食材识别方法的步骤。

本申请中预先训练完成的特征提取模型获取到食材图像的目标特征向量,并预先保存特征向量与食材信息的对应关系,确定出与目标特征向量匹配的设定数量的特征向量对应的每个第二食材信息,另外,基于预先训练完成的识别模型还可以获取到第一食材信息,从而根据第一食材信息和每个第二食材信息是否一致,确定目标食材信息。本申请中因为保存有特征向量与食材信息的对应关系,因此基于目标特征向量,可以确定对应的目标食材信息的每个第二食材信息,从而可以提高食材识别的识别率。

附图说明

为了更清楚地说明本申请中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本申请一些实施例提供的一种食材识别方法的过程示意图;

图2为本申请一些实施例提供的一种食材识别方法的过程示意图;

图3为本申请一些实施例提供的一种食材识别方法的过程示意图;

图4为本申请一些实施例提供的一种确定食材图像对应的目标食材信息的过程示意图;

图5为本申请一些实施例提供的一种食材信息修改的示意图;

图6为本申请一些实施例提供的一种食材识别方法的过程示意图;

图7为本申请一些实施例提供的一种特征提取模型进行特征提取的过程示意图;

图8为本申请一些实施例提供的一种特征向量的示意图;

图9为本申请一些实施例提供的一种检索引擎的示意图;

图10为本申请一些实施例提供的一种食材识别装置的结构示意图;

图11为本申请一些实施例提供的一种电子设备结构示意图。

具体实施方式

为了实现动态地更新食材的识别范围,本申请提供了一种食材识别方法、装置、设备和介质。

为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

在本申请中,智能冰箱的图像采集装置采集食材图像,通过预先训练完成的识别模型识别食材图像的第一食材信息,由于识别模型不能识别未经训练的食材图像,本申请的智能冰箱通过预先训练完成的特征提取模型获取食材图像的目标特征向量,并通过预先保存的特征向量与食材信息的对应关系,确定出与目标特征向量匹配的设定数量特征向量对应的每个第二食材信息,根据第一食材信息与每个第二食材信息是否一致,电子设备确定出食材图像对应的目标食材信息,并控制智能冰箱输出该目标食材信息。

图1为本申请一些实施例提供的一种食材识别方法的过程示意图,该过程包括以下步骤:

S101:基于预先训练完成的特征提取模型,获取输入的食材图像的目标特征向量,并基于预先训练完成的识别模型,识别所述食材图像对应的第一食材信息。

本申请提供的食材识别方法可以应用于电子设备,该电子设备可以是智能冰箱,也可以是服务器,其中,该服务器可以是本地服务器,也可以是云端服务器。

若该电子设备是智能冰箱,智能冰箱上安装有图像采集装置,该智能冰箱直接获取该图像采集装置采集的食材图像。若该电子设备是服务器,智能冰箱的图像采集装置采集到食材图像后,将该食材图像发送给服务器。

其中,本申请提供的食材图像的识别方法可以是动态识别,也可以是静态识别。在静态识别时,该食材图像是图像采集装置在开关门时采集该智能冰箱中存在的食材的食材图像。在动态识别时,该食材图像是在存取食材的过程中,该图像采集装置采集用户手中食材的食材图像。

电子设备获取到采集的食材图像后,基于预先训练完成的特征提取模型,对该食材图像进行处理,得到该食材图像的目标特征向量。其中,该预先训练完成的特征提取模型用于输出食材图像的特征向量,该预先训练完成的特征提取模型包括卷积层、池化层等结构。

电子设备获取到采集的食材图像后,基于预先训练完成的识别模型对该食材图像进行识别,可以获取到输入的食材图像对应的第一食材信息。

其中,该特征提取模型可以是区别于识别模型的单独模型,也可以是该识别模型中具有特征向量确定能力的子模型。识别模型中具有特征向量确定能力的子模型输出目标特征向量后,该识别模型中的剩余子模型还会基于该目标特征向量继续进行识别,确定该食材图像对应的第一食材信息。

其中,该识别模型可以是基于特征提取器和分类器的识别模型,也可以是采用深度学习方法进行识别的神经卷积网络模型。若是基于特征提取器和分类器的识别模型,该特征提取器可以是基于方向梯度直方图(Histogram of Oriented Gradient,HOG)、基于局部二值模式(Local Binary Pattern,LBP)、基于组件的检测算法(Deformable Part Model,DPM)中的任一种,该分类器可以是基于支持向量机(Support Vector Machine,SVM)、基于最终分类器(Adaboost)、基于决策树、基于贝叶斯网络、基于神经网络中的任一种。若该识别模型是神经卷积网络模型,则该神经卷积网络模型可以是目标检测算法模型(Fast-CNN)、快速目标检测算法模型(Faster-CNN)、快速目标识别算法模型(YOLO)、目标检测系统(YOLO 9000)中的任一种。

S102:根据所述目标特征向量和预先保存的特征向量与食材信息的对应关系,确定与所述目标特征向量匹配的设定数量特征向量对应的每个第二食材信息。

在获取到该食材图像的目标特征向量后,为了准确的确定该食材图像的食材信息,本申请的电子设备中还预先保存有特征向量与食材信息的对应关系。其中,该预先保存的特征向量与食材信息的对应关系可以是保存在该电子设备的特征检索库中。在确定与该目标特征向量匹配的特征向量时,在该特征检索库中进行检索,确定与该目标特征向量匹配的特征向量。

在该特征向量与食材信息的对应关系中,可能会存在多个与该目标特征向量匹配的特征向量,因此,在本申请中,预先设置有确定的第二食材信息的设定数量,因为特征向量与食材信息是一对一的关系,因此预先设置了第二食材信息的设定数量,也就相当于预先设置了匹配的特征向量的数量。

根据该预先保存的特征向量与食材信息的对应关系,将该获取的目标特征向量与该保存的对应关系中的特征向量进行匹配,从与目标特征向量匹配的特征向量中选择出设定数量的特征向量,并根据特征向量与食材信息的对应关系,确定出该设定数量的每个特征向量对应的食材信息。将该设定数量的食材信息确定为每个第二食材信息。其中,特征向量与目标特征向量匹配可以是指,特征向量与目标特征向量的相似度满足条件。

S103:根据所述第一食材信息与所述每个第二食材信息是否一致,确定所述食材图像对应的目标食材信息并控制智能冰箱输出所述目标食材信息。

在本申请中,由于识别模型识别食材图像的识别率不高,因此该识别模型识别出的第一食材信息是否为该食材图像对应的目标食材信息还不能确定,因为本申请中还将目标特征向量与预先保存的特征向量进行匹配,确定了每个第二食材信息,因此可以根据每个第二食材信息中是否存在与第一食材信息一致的第二食材信息,确定出食材图像对应的目标食材信息。

在确定出该食材图像对应的目标食材信息后,为了使用户确定该食材图像对应的目标食材信息是否准确,还可以控制智能冰箱输出该目标食材信息。

在本申请中,在预先训练完成的特征提取模型为区别于识别模型的独立模型时,识别食材图像的目标食材信息的方法如下,图2为本申请一些实施例提供的一种食材识别方法的过程示意图,如图2所示,同一张食材图像在经过特征提取模型后,获取到该食材图像的目标特征向量,根据目标特征向量,预先保存的特征向量与食材信息的对应关系,确定出与目标特征向量匹配的设定数量的特征向量对应的每个第二食材信息。同时,该同一张食材图像还经过识别模型,在该识别模型中经过特征提取后,基于提取的特征向量识别出食材图像对应的第一食材信息。将第一食材信息和每个第二食材信息通过融合决策,确定出食材图像对应的目标食材信息。

由于在该特征提取模型为区别于识别模型的独立模型时,对食材图像进行识别需要经过两次特征提取环节,因此会导致算力资源的浪费。

为了节约算力资源,在本申请的某些可能的实施例中,该特征提取模型为识别模型中实现特征向量输出的子模型时,识别食材图像的目标食材信息的方法如下,图3为本申请一些实施例提供的一种食材识别方法的过程示意图,如图3所示,同一张食材图像仅经过一次特征提取环节,食材图像输入预先训练的识别模型的子模型,可以获取到该食材图像的目标特征向量,该识别模型中除实现特征提取的子模型的剩余子模型,还会基于该目标特征向量继续进行识别,识别出该食材图像对应的第一食材信息。根据该识别模型的子模型输出的该目标特征向量,预先保存的特征向量与食材信息的对应关系,确定出与目标特征向量匹配的设定数量的特征向量对应的每个第二食材信息。将第一食材信息和每个第二食材信息通过融合决策,确定出食材图像对应的目标食材信息。由于只经过一次特征提取环节,从而节约了大量时间以及算力资源,提高了识别食材时的时间以及算力资源的利用率。

本申请中因为保存有特征向量与食材信息的对应关系,因此基于目标特征向量,可以确定对应的目标食材信息的每个第二食材信息,从而可以提高食材识别的识别率。

为了确定出第二食材信息,在上述实施例的基础上,在本申请中,所述根据所述目标特征向量和预先保存的特征向量与食材信息的对应关系,确定与所述目标特征向量匹配的设定数量特征向量对应的每个第二食材信息,包括:

根据所述目标特征向量和预先保存的每个特征向量,确定所述目标特征向量与每个特征向量的相似度;

将相似度满足条件的设定数量的特征向量,确定为与所述目标特征向量匹配的设定数量的特征向量,将所述设定数量的特征向量对应的每个食材信息确定为每个第二食材信息。

为了确定出第二食材信息,在本申请中该电子设备预先保存的特征向量与食材信息的对应关系中,保存有至少一个对应关系,也就是保存有至少一个特征向量,每个特征向量为不同食材信息对应的特征向量。

为了确定出目标特征向量对应的食材信息,需要确定出目标特征向量匹配的特征向量。而为了确定出与目标特征向量匹配的特征向量,可以基于特征向量之间的相似度来确定。

由于该目标特征向量和每个特征向量都是具有相同维度的向量,因此该目标特征向量和每个特征向量的相似度,可以用余弦值或者欧氏距离等方式进行表示。本申请中不限定计算目标特征向量与每个特征向量的相似度的方式。

在本申请中,为了判断目标特征向量与保存的每个特征向量是否匹配,还需要预先设定相似度的条件。当目标特征向量与预先保存的特征向量的相似度满足预先设定的相似度的条件时,确定特征向量为与目标特征向量匹配的特征向量。

确定了目标特征向量与保存的每个特征向量的相似度后,按照相似度从大到小的顺序,对特征向量进行排序,将排序在前的设定数量的特征向量确定为与目标特征向量匹配的特征向量。

在本申请中,在确定出目标特征向量与每个特征向量的相似度后,判断相似度是否满足设定条件,将相似度满足设定条件的特征向量,确定为与目标特征向量匹配的特征向量,将该匹配的特征向量对应的食材信息确定为第二食材信息。

为了确定出食材图像对应的目标食材信息,在上述各实施例的基础上,在本申请中,所述根据所述第一食材信息与所述每个第二食材信息是否一致,确定所述食材图像对应的目标食材信息,包括:

判断所述第一食材信息与所述每个第二食材信息中的任一第二食材信息是否一致;

若是,则将所述第一食材信息确定为所述食材图像对应的目标食材信息;

若否,确定所述目标特征向量与每个第二食材信息对应的特征向量的相似度,根据相似度最高的特征向量对应的第二食材信息,确定所述食材图像对应的目标食材信息。

在本申请中,该电子设备在确定出第一食材信息与每个第二食材信息后,根据该第一食材信息和每个第二食材信息是否一致,可以确定出该食材图像对应的目标食材信息。

具体的,判断该第一食材信息与每个第二食材信息中的任一第二食材信息是否一致,若该第一食材信息与第二食材信息中的某一第二食材信息一致,说明两种方法能确定为相同的食材信息,则该第一食材信息为该食材图像对应的食材信息的概率较大,因此将该第一食材信息确定为该食材图像对应的目标食材信息。

在判断该第一食材信息和每个第二食材信息中的任一第二食材信息是否一致时,可以是将第二食材信息按照食材信息对应的特征向量的相似度从大到小的顺序排序,首先判断该第一食材信息和相似度最高的特征向量对应的第二食材信息是否一致,若是,则将该第一食材信息确定为该食材图像对应的目标食材信息,若否,则判断该第一食材信息和设定数量的第二食材信息中,除相似度最高的特征向量对应的食材信息之外的每个第二食材信息中的任意一个第二食材信息是否一致,若是,则将该第一食材信息确定为该食材图像对应的目标食材信息。

在第一食材信息与每个第二食材信息均不一致时,说明该识别模型对该食材图像的食材信息识别不准确,为了方便用户确定目标食材信息,在本申请中,根据目标特征向量与匹配的每个特征向量的相似度,确定与该目标特征向量相似度最高的特征向量,将该特征向量对应的第二食材信息,确定为该食材图像对应的目标食材信息。因为此时该识别模型识别的该第一食材信息不准确,而与该目标特征向量最相似的特征向量对应的第二食材信息,是目标食材信息的可能性非常的高,因此根据该相似度最高的特征向量对应的第二食材信息,确定该食材图像对应的目标食材信息。

为了方便用户确定目标食材信息,在上述各实施例的基础上,在本申请中,所述根据相似度最高的特征向量对应的第二食材信息,确定所述食材图像对应的目标食材信息,包括:

将相似度最高的特征向量对应的第二食材信息,确定为所述食材图像对应的目标食材信息;或

将相似度最高的特征向量对应的第二食材信息和所述第一食材信息,确定为所述食材图像对应的目标食材信息。

在第一食材信息与每个第二食材信息均不一致时,说明该识别模型对该食材图像的食材信息识别不准确,该识别模型对食材图像的食材信息识别不准确可能是识别出错误的食材信息,也可能是无法识别,即该识别模型识别出的第一食材信息为空信息。

在本申请中,在该第一食材信息为空信息时,可以将该相似度最高的特征向量对应的第二食材信息,确定为该食材图像对应的目标食材信息。

在该识别模型识别出食材信息时,可以只将相似度最高的特征向量对应的第二食材信息,确定为该食材图像对应的目标食材信息,但是毕竟该第一食材信息和每个第二食材信息均不一致,该相似度最高的特征向量对应的第二食材信息是否正确是不可知的,因此为了方便用户确定目标食材信息,还可以将相似度最高的特征向量对应的第二食材信息和第一食材信息,确定为该食材图像对应的目标食材信息。

为了使用户知晓目标食材信息,在上述各实施例的基础上,在本申请中,所述控制智能冰箱输出所述目标食材信息,包括:

控制智能冰箱的显示屏显示所述目标食材信息;和/或,

控制所述智能冰箱语音播报所述目标食材信息。

在确定出该食材图像对应的目标食材信息后,在本申请中,该电子设备可以是只控制智能冰箱的显示屏显示该目标食材信息,或者该电子设备还可以是只控制智能冰箱语音播放该目标食材信息,或者该电子设备还可以是在控制智能冰箱的显示屏显示该目标食材信息的同时,控制智能冰箱语音播放该目食材信息。

例如,在该目标食材信息只有一个时,且该目标食材信息为苹果时,控制智能冰箱显示和/或语音播报“您放入的是苹果”。在该目标食材信息有两个,识别模型识别出的该第一食材信息为苹果,相似度最高的特征向量对应的第二食材信息为西红柿时,控制智能冰箱显示和/或语音播报“您放入的是苹果还是西红柿呢?”。

在本申请中,该预先训练完成的识别模型是全局模型,需要对所有用户保持一致,该预先保存的特征向量与食材信息的对应关系是局部保存,各用户对应的电子设备保存的特征向量与食材信息的对应关系可以不同。

当电子设备为智能冰箱时,各用户的智能冰箱保存有用户存取过的食材的特征向量与食材信息的对应关系,当电子设备为本地服务器时,各用户的本地服务器保存有用户存取过的食材的特征向量与食材信息的对应关系,该电子设备为云端服务器时,在云端服务器的各用户对应账户的存储空间中,保存有用户存取过的食材的特征向量与食材信息的对应关系。

云端服务器在确定与食材图像的目标特征向量匹配的特征向量时,云端服务器接收到智能冰箱发送的目标特征向量,该云端服务器根据发送该目标特征向量的智能冰箱的标识信息对应账户的存储空间,查找存储空间中保存的特征向量与食材信息的对应关系,根据该对应关系和目标特征向量,确定与目标特征向量匹配的设定数量特征向量对应的第二食材信息。并且对该识别模型和该对应关系可以实现后台的远程更新。

本申请中该电子设备既可以可通过识别模型实现对已训练过的食材的识别,又可以通过预先保存的特征向量与食材信息的对应关系,基于特征提取模型提取的食材图像的目标特征向量,确定与目标特征向量匹配的设定数量特征向量对应的每个第二食材信息,从而实现对识别模型未训练过的食材的识别,从而彻底摆脱了因食材训练数据有限而无法识别未训练的食材的弊端,具备食材识别范围不受识别模型的识别范围限制、无需耗时耗力的模型重训练等优点。

下面通过一个具体的实施例对本申请的基于第一食材信息和每个第二食材信息是否一致,确定食材图像对应的目标食材信息的过程进行说明。

图4为本申请一些实施例提供的一种确定食材图像对应的目标食材信息的过程示意图,该过程包括以下步骤:

S401:基于预先训练完成的特征提取模型,获取输入的食材图像的目标特征向量,并基于预先训练完成的识别模型,识别所述食材图像对应的第一食材信息,根据目标特征向量和预先保存的特征向量与食材信息的对应关系,确定与目标特征向量匹配的5个特征向量,并确定每个特征向量对应的第二食材信息,并根据第二食材信息对应的特征向量与目标特征向量的相似度大小,将第二食材信息按相似度从大到小排序。

S402:判断第一食材信息与5个第二食材信息中的相似度最高的第二食材信息是否一致,若是,则进入S403,若否,则进入S404。

S403:将第一食材信息确定为食材图像对应的目标食材信息,之后进入S406。

S404:判断第一食材信息和其余4个第二食材信息中的任意一个第二食材信息是否一致,若是,则进入S403,若否,则进入S405。

S405:将相似度最高的特征向量对应的第二食材信息,确定为所述食材图像对应的目标食材信息;或将相似度最高的特征向量对应的第二食材信息和所述第一食材信息,确定为所述食材图像对应的目标食材信息。

S406:控制智能冰箱输出目标食材信息。

为了实现对目标食材信息的更正,并实现对保存的特征向量与食材信息的对应关系的自动更新,在上述实施例的基础上,在本申请中,所述方法还包括:

若接收到对输出的所述目标食材信息的更正指示;

接收输入的修改后的目标食材的信息,并对应保存所述目标特征向量和修改后的目标食材信息。

在本申请中,在该电子设备输出该目标食材信息后,如果该目标食材信息不是该食材图像的食材信息,用户可能还会对该目标食材信息进行更正。

若该电子设备接收到用户对该目标食材信息的更正指示时,其中,该更正指示可以是通过智能冰箱的显示屏接收到的,也可以是通过该智能冰箱的声音采集装置接收到用户的更正指示。

该电子设备通过智能冰箱的显示屏接收到用户输入的修改后的目标食材信息,在本申请中,该电子设备将该目标特征向量和修改后的目标食材信息对应保存在特征向量与食材信息的对应关系中。具体的,将该目标特征向量和修改后的目标食材信息对应保存在该特征检索库中。

图5为本申请一些实施例提供的一种食材信息修改的示意图,如图5所示,该过程包括以下步骤:

S501:该电子设备根据确定出的第一食材信息与每个第二食材信息是否一致,确定出食材图像对应的目标食材信息。

S502:控制智能冰箱的显示屏显示目标食材信息;和/或,控制智能冰箱语音播报目标食材信息。

S503:判断是否接收到用户对输出的目标食材信息的更正指示,若是,则进入S504。

S504:接收输入的修改后的目标食材信息,并对应保存目标特征向量和修改后的目标食材信息。

下面通过一个完整的实施例对本申请的食材识别方法的过程进行说明。

图6为本申请一些实施例提供的一种食材识别方法的过程示意图,如图9所示,该过程包括以下步骤:

S601:接收到输入的食材图像。

S602:基于预先训练完成的特征提取模型,获取输入的食材图像的目标特征向量,并基于预先训练完成的识别模型,识别所述食材图像对应的第一食材信息。

S603:根据目标特征向量和预先保存的特征向量与食材信息的对应关系,确定与目标特征向量匹配的设定数量特征向量对应的每个第二食材信息。

S604:判断第一食材信息与每个第二食材信息中的任一第二食材信息是否一致,若是,则进入S605,若否,则进入S606。

S605:将第一食材信息确定为食材图像对应的目标食材信息,之后进入S607。

S606:将相似度最高的特征向量对应的第二食材信息,确定为所述食材图像对应的目标食材信息;或将相似度最高的特征向量对应的第二食材信息和所述第一食材信息,确定为所述食材图像对应的目标食材信息,之后进入S607。

S607:控制智能冰箱的显示屏显示和/或语音播报目标食材信息。

S608:判断是否接收到用户对输出的目标食材信息的更正指示,若是,则进入S609。

S609:接收输入的修改后的目标食材的信息,并在特征检索库中对应保存目标特征向量和修改后的目标食材信息。

为了实现对识别模型的训练,在上述实施例的基础上,在本申请中,训练所述识别模型的过程包括:

获取样本集中的任一样本图像及所述样本图像对应的第一标签信息,其中所述第一标签信息用于标识所述样本图像中包含的食材信息;

通过原始识别模型,获取所述样本图像的第二标签信息;

根据所述第一标签信息和所述第二标签信息,对所述原始识别模型中的各参数的参数值进行调整。

为了实现对识别模型的训练,本申请中保存有进行训练用的样本集,该样本集中的样本图像包括有每一食材信息的食材图像,该样本集中样本图像的第一标签信息为人工预先标注的,其中,该第一标签信息用于标识该样本图像中包含的食材信息。

在本申请中,在获取到样本集中的任一样本图像及该样本图像的第一标签信息后,将该样本图像输入到原始识别模型中,该原始识别模型输出该样本图像的第二标签信息。其中,第二标签信息标识该原始识别模型识别的该样本图像的食材信息。

在根据原始识别模型确定出该样本图像的第二标签信息后,根据该第二标签信息以及该样本图像的第一标签信息,对原始识别模型进行训练,以调整原始识别模型的各项参数的参数值。

对原始识别模型进行训练的样本集中包含的每一个样本图像都进行上述操作,当满足预设的条件时,得到训练完成的识别模型。其中,该预设的条件可以是样本集中的样本图像通过原始识别模型训练后得到的第一标签信息与第二标签信息一致的样本图像的数量大于设定数量;也可以是对原始识别模型进行训练的迭代次数达到设置的最大迭代次数等。具体的,本申请对此不做限制。

作为一种可能的实施方式,在对原始识别模型进行训练时,可以把样本集中的样本图像分为训练样本图像和测试样本图像,先基于训练样本图像对原始识别模型进行训练,再基于测试样本图像对训练完成的识别模型的可靠性进行测试。

训练完成的识别模型在对食材图像进行识别时,先确定食材图像的特征向量,基于特征向量进行分析,从而确定识别结果。为了获取到食材图像的目标特征向量,在本申请中基于预先训练完成的该识别模型,对食材图像进行处理,获取到食材图像的目标特征向量。

其中,由于在预先训练完成的该识别模型中,具体通过哪些层处理后,哪一层的输出为特征向量也可以预先获知,因此可以通过该预先训练完成的识别模型,获取到食材图像的目标特征向量。例如训练完成的该神经网络模型中经过前几层的处理,在倒数第二层输出特征向量,则可以通过该预先训练完成的该神经网络模型中倒数第二层及其之前的各层,获取到食材图像的目标特征向量。

其中,该识别模型获取食材图像的目标特征向量时可以是基于该识别模型中的特征提取器,特征提取器可以是基于方向梯度直方图(Histogram of Oriented Gradient,HOG)、基于局部二值模式(Local Binary Pattern,LBP)、基于尺度不变特征变换(Scale-invariant feature transform,SIFT)、基于颜色直方图中的任一种,还可以是神经网络模型中的某层或多层构成的子模型。具体的,本申请对此不做限制。

在本申请中,对食材图像进行特征提取得到的特征向量较为复杂,需要兼顾颜色、轮廓形状、纹理等特征,因此在本申请中,基于特征提取器进行特征提取时,需要多个特征提取器进行融合才能得到特征向量。基于神经网络模型中的某层或多层构成的子模型,其提取的特征向量是由多通道的特征映射图组成。因此,两种方法得到的特征向量的维数都是成千上万维,属于高维的特征向量。

而高维的特征向量在进行特征向量的匹配时,由于特征维数太多导致无法准确定位得到关键区域的关键特征,并且由于特征维数的增多,还会导致在进行相似度的计算时的计算量增多,从而导致在进行特征向量匹配时的速度变慢。因此,在本申请中,识别模型在确定出食材图像的高维特征向量后,还需要对高维特征向量进行处理,从而得到食材图像的低维特征向量。

在本申请中,食材图像的低维特征向量即保证关键特征被筛选保留,又去除冗余特征拖累与干扰。该对高维特征向量进行特征后处理包括特征选择和特征降维。

图7为本申请一些实施例提供的一种特征提取模型进行特征提取的过程示意图,如图7所示,基于预先训练完成的特征提取模型,对输入的食材图像进行特征提取,确定出食材图像的高维特征向量,对高维特征向量进行特征后处理,即对高维特征向量先进行特征选择,后进行特征降维,确定出食材图像的低维特征向量。

其中,特征选择是指从高维特征向量中的多种特征向量组合中进行关键特征向量或特征向量组合的识别和筛选,获得关键的高维特征向量或高维特征向量组合候选集。具体的,在进行特征选择时,可以采用词袋(BOW)、多尺度金字塔(SPM)等现有技术中的方法选择关键的高维特征向量或高维特征向量组合候选集。

其中,特征降维是指对高维的特征向量或特征向量组合候选集运用一系列的降维方法,获得低维的特征向量或特征向量组合。具体的,在进行特征降维时,可以采用主成分分析(PCA)、奇异值分解(SVD)等现有技术中的方法对已选择的关键的高维特征向量或高维特征向量组合候选集进行降维。

图8为本申请一些实施例提供的特征映射图和特征向量的示意图,该特征映射图和特征向量是根据识别模型确定的,其中该识别模型为神经网络模型。如图8所示,图8中的左图(图中的左右)为C*N*M维的特征映射图,C是特征图的数量,N是每个特征图的行数,M是每个特征图的列数。从连接层输出的特征是C*1*P的特征向量,C是特征向量数量,P为行向量的列数或列向量的行数。无论是C*N*M维还是C*1*P维,都进行特征后处理后,形成矩阵X。其中,C1个N*M的二维特征图与C2个1*P维的行向量经过特征后处理后形成1*(N*M+P)维的矩阵X,图8中的右图(图中的左右)为该矩阵X。

具体的,首先对Ni行Mj列的C1个特征Pij计算均值Avg(Pij),各特征减去均值Pij--Avg(Pij)得到中心化后的C1个特征Pij,然后对C1个Pij计算绝对值|Pij|,得到绝对值最大的特征值作为矩阵X在Ni行Mj列的特征Xij,即Xij=max(|Pij-Avg(Pij)|),该Xij为该食材图像的特征向量。

为了确定特征向量与食材信息的对应关系,在上述实施例的基础上,在本申请中,确定特征向量与食材信息的对应关系的过程包括:

控制智能冰箱的图像采集装置采集样本图像;

基于所述预先训练完成的特征提取模型,确定所述样本图像的特征向量;

对应保存所述特征向量及接收到的食材信息。

为了确定特征向量与食材信息的对应关系,在本申请中,控制智能冰箱的图像采集装置采集样本图像,并将采集到的样本图像进行保存。其中,该样本图像中的食材为不常见的食材。

该电子设备将保存的样本图像输入到该预先训练完成的特征提取模型中,确定出每张样本图像的特征向量。

该电子设备还接收到特征向量对应的食材信息,其中,特征向量对应的食材信息是用户通过智能冰箱的显示屏输入的,并将每张样本图像的特征向量与食材信息对应保存。

在本申请中,该特征向量与食材信息的对应关系位于现有技术中的电子设备的检索引擎的特征文件系统中,其中,该电子设备可以是服务器,也可以是智能冰箱,图9为本申请一些实施例提供的一种检索引擎的示意图,如图9所示,该检索引擎包括高性能特征索引模块和特征文件系统。

其中,该特征文件系统即为本申请中的特征检索库,该特征检索库中包括特征数据库以及相关数据库。特征向量与食材信息的对应关系保存在该特征检索库中。具体的,特征向量保存在该特征数据库中,食材信息保存在该相关数据中,该特征数据库与该相关数据库中存在映射关系,并且该特征数据库还保存有每个特征向量对应的食材信息的索引结果。

该电子设备中现有的检索引擎的作用是确定出与目标特征向量匹配的特征向量的第二食材信息。该高性能特征索引模块的功能是提供一个足够快速高效的特征“存储——读取——比对”结构,其中存储过程需要与特征文件系统相配合,而比对过程需要通过match算法来实现。

该高性能特征索引模块包括内存索引系统和磁盘存储系统,该内存索引系统采用的高性能检索索引方案结合了线性内存索引、倒排hash索引、GPU索引等不同索引的方案,解决了快速检索问题。该磁盘存储系统实现了极高效的内存-磁盘IO机制,采用mmap、pread/pwrite、直接I/O、异步I/O等多种文件I/O方式实现不同场景下的“磁盘-内存”数据映射方案。

在上述各实施例的基础上,图10为本申请一些实施例提供的一种食材识别装置的结构示意图,所述装置包括:

获取模块101,用于基于预先训练完成的特征提取模型,获取输入的食材图像的目标特征向量,并基于预先训练完成的识别模型,识别所述食材图像对应的第一食材信息;

确定模块102,用于根据所述目标特征向量和预先保存的特征向量与食材信息的对应关系,确定与所述目标特征向量匹配的设定数量特征向量对应的每个第二食材信息;根据所述第一食材信息与所述每个第二食材信息是否一致,确定所述食材图像对应的目标食材信息;

控制模块103,用于控制智能冰箱输出所述目标食材信息。

进一步地,所述确定模块102,具体用于根据所述目标特征向量和预先保存的每个特征向量,确定所述目标特征向量与每个特征向量的相似度;

将相似度满足条件的设定数量的特征向量,确定为与所述目标特征向量匹配的设定数量的特征向量,将所述设定数量的特征向量对应的每个食材信息确定为每个第二食材信息。

进一步地,所述确定模块102,具体还用于判断所述第一食材信息与所述每个第二食材信息中的任一第二食材信息是否一致;

若是,则将所述第一食材信息确定为所述食材图像对应的目标食材信息;

若否,则根据所述目标特征向量与每个第二食材信息对应的特征向量的相似度,根据相似度最高的特征向量对应的第二食材信息,确定所述食材图像对应的目标食材信息。

进一步地,所述确定模块102,具体用于若所述第一食材信息与所述每个第二食材信息中的任一第二食材信息均不一致,将相似度最高的特征向量对应的第二食材信息,确定为所述食材图像对应的目标食材信息;或将相似度最高的特征向量对应的第二食材信息和所述第一食材信息,确定为所述食材图像对应的目标食材信息。

进一步地,所述控制模块103,具体用于控制智能冰箱的显示屏显示所述目标食材信息;和/或,控制所述智能冰箱语音播报所述目标食材信息。

进一步地,所述装置还包括:接收模块104,用于若接收到对输出的所述目标食材信息的更正指示;接收输入的修改后的目标食材的信息;

保存模块105,具体用于对应保存所述目标特征向量和修改后的目标食材信息。

具体的,该装置应用于智能冰箱,或者服务器等设置。在本申请中该食材识别装置所涉及的与本申请提供的技术方案相关的概念,解释和详细说明及其它步骤请参见前述方法或其它实施例中关于这些内容的描述,此处不做赘述。

图11为本申请一些实施例提供的一种电子设备结构示意图,在上述各实施例的基础上,本申请还提供了一种电子设备,包括处理器1101、通信接口1102、存储器1103和通信总线1104,其中,处理器1101,通信接口1102,存储器1103通过通信总线1104完成相互间的通信;

所述存储器1103中存储有计算机程序,当所述程序被所述处理器1101执行时,使得所述处理器1101执行如下步骤:

基于预先训练完成的特征提取模型,获取输入的食材图像的目标特征向量,并基于预先训练完成的识别模型,识别所述食材图像对应的第一食材信息;

根据所述目标特征向量和预先保存的特征向量与食材信息的对应关系,确定与所述目标特征向量匹配的设定数量特征向量对应的每个第二食材信息;

根据所述第一食材信息与所述每个第二食材信息是否一致,确定所述食材图像对应的目标食材信息并控制智能冰箱输出所述目标食材信息。

上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口1102用于上述电子设备与其他设备之间的通信。

存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述处理器可以是通用处理器,包括中央处理器、网络处理器(Network Processor,NP)等;还可以是数字指令处理器(Digital Signal Processing,DSP)、专用集成电路、现场可编程门陈列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。

在本申请中该电子设备所涉及的与本申请提供的技术方案相关的概念,解释和详细说明及其它步骤请参见前述方法或其它实施例中关于这些内容的描述,此处不做赘述。

在上述各实施例的基础上,本申请还提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行如下步骤:

基于预先训练完成的特征提取模型,获取输入的食材图像的目标特征向量,并基于预先训练完成的识别模型,识别所述食材图像对应的第一食材信息;

根据所述目标特征向量和预先保存的特征向量与食材信息的对应关系,确定与所述目标特征向量匹配的设定数量特征向量对应的每个第二食材信息;

根据所述第一食材信息与所述每个第二食材信息是否一致,确定所述食材图像对应的目标食材信息并控制智能冰箱输出所述目标食材信息。

在本申请中该计算机可读存储介质所涉及的与本申请提供的技术方案相关的概念,解释和详细说明及其它步骤请参见前述方法或其它实施例中关于这些内容的描述,此处不做赘述。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1