CN109034196A - 模型生成方法及装置、食物识别方法及装置 - Google Patents
模型生成方法及装置、食物识别方法及装置 Download PDFInfo
- Publication number
- CN109034196A CN109034196A CN201810645557.9A CN201810645557A CN109034196A CN 109034196 A CN109034196 A CN 109034196A CN 201810645557 A CN201810645557 A CN 201810645557A CN 109034196 A CN109034196 A CN 109034196A
- Authority
- CN
- China
- Prior art keywords
- food
- picture
- trained
- model
- recognition result
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 235000013305 food Nutrition 0.000 title claims abstract description 172
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 25
- 238000012797 qualification Methods 0.000 claims abstract description 8
- 238000012549 training Methods 0.000 claims description 23
- 238000001914 filtration Methods 0.000 claims description 12
- 235000005911 diet Nutrition 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 8
- 238000013434 data augmentation Methods 0.000 claims description 6
- 230000000378 dietary effect Effects 0.000 claims description 6
- 238000007781 pre-processing Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 claims description 5
- 235000013399 edible fruits Nutrition 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 9
- 238000001514 detection method Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 230000037213 diet Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20024—Filtering details
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/68—Food, e.g. fruit or vegetables
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Image Analysis (AREA)
Abstract
本发明实施例提供了一种模型生成方法及装置、食物识别方法及装置。该模型生成方法包括:针对多种食物类别中的每种食物,获取对应的若干食物图片;对获取的食物图片分别进行预处理;根据预处理后得到的每个食物图片,获取对应的至少一个待训练图片;利用卷积神经网络模型对获得的待训练图片进行训练,得到食物识别模型。本发明实施例所提供的技术方案,用以在一定程度上解决中国的食物目前没有对应的识别方案的问题。
Description
【技术领域】
本发明涉及通信领域,尤其涉及一种模型生成方法及装置、食物识别方法及装置。
【背景技术】
食物识别指的是根据提供的图片进行识别,得到食物的名称,这样,用户只要提供食物的图片,如拍摄的照片,就可以知道是什么食物,也可以相当于输入了食物的名称,十分方便。
现有的食物识别都是针对西方食物的,所使用的识别方法有基于支持向量机(Support Vector Machine,SVM)模型的。然而,西方食物种类较少,中国的食物种类数量较大,针对中国的食物目前没有对应的识别方案。
【发明内容】
有鉴于此,本发明实施例提供了一种模型生成方法及装置、食物识别方法及装置,用以在一定程度上解决中国的食物目前没有对应的识别方案的问题。
第一方面,本发明实施例提供一种模型生成方法,包括:
针对多种食物类别中的每种食物,获取对应的若干食物图片;
对获取的食物图片分别进行预处理;
根据预处理后得到的每个食物图片,获取对应的至少一个待训练图片;
利用卷积神经网络模型对获得的待训练图片进行训练,得到食物识别模型。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述对获取的食物图片分别进行预处理,包括:
对获取的食物图片分别进行高斯滤波;
对高斯滤波后得到的食物图片进行图像增强处理。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,根据预处理后得到的每个食物图片,获取对应的至少一个待训练图片,包括:
通过指定的数据增广方式,对预处理后得到的每个食物图片进行处理,得到对应的至少一个待训练图片。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述卷积神经网络模型为初级残差Inception-ResNet-v2模型。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述食物的种类为至少1000种,每种食物对应的食物图片为至少2000个。
第二方面,本发明实施例提供一种食物识别方法,包括:
获取用户输入的待识别图片;
利用食物识别模型,对所述待识别图片进行识别,获得至少两个识别结果,每个所述识别结果包括食物名称;所述食物识别模型为利用权利要求1至5中任一方法生成的食物识别模型;
输出所述至少两个识别结果。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,输出所述至少两个识别结果之前,所述方法还包括:根据每个识别结果,获得对应的热量数据;
输出所述至少两个识别结果包括:输出至少两个识别结果和每个识别结果对应的热量数据。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述方法还包括:
获取用户在至少两个识别结果中选择的一个识别结果;
根据用户选出的识别结果和该识别结果对应的热量数据,记录本次饮食数据。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述方法还包括:
获取用户输入的其他识别结果;
根据用户输入的其他识别结果,更新待训练图片;
利用卷积神经网络模型对更新后得到的待训练图片进行重新训练,得到重新训练后的食物识别模型。
第三方面,本发明实施例提供一种模型生成装置,包括:
图片获取模块,用于针对多种食物类别中的每种食物,获取对应的若干食物图片;
预处理模块,用于对获取的食物图片分别进行预处理;
扩展模块,用于根据预处理后得到的每个食物图片,获取对应的至少一个待训练图片;
训练模块,用于利用卷积神经网络模型对获得的待训练图片进行训练,得到食物识别模型。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述预处理模块具体用于:
对获取的食物图片分别进行高斯滤波;
对高斯滤波后得到的食物图片进行图像增强处理。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述扩展模块具体用于:
通过指定的数据增广方式,对预处理后得到的每个食物图片进行处理,得到对应的至少一个待训练图片。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述卷积神经网络模型为初级残差Inception-ResNet-v2模型。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述食物的种类为至少1000种,每种食物对应的食物图片为至少2000个。
第四方面,本发明实施例提供一种食物识别装置,包括:
图片获取模块,用于获取用户输入的待识别图片;
识别模块,用于利用食物识别模型,对所述待识别图片进行识别,获得至少两个识别结果,每个所述识别结果包括食物名称;所述食物识别模型为利用权利要求10至14中任一装置生成的食物识别模型;
输出模块,用于输出所述至少两个识别结果。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述装置还包括:数据获取模块,用于根据每个识别结果,获得对应的热量数据;
所述输出模块具体用于:输出至少两个识别结果和每个识别结果对应的热量数据。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述装置还包括:
第一输入获取模块,用于获取用户在至少两个识别结果中选择的一个识别结果;
数据记录模块,用于根据用户选出的识别结果和该识别结果对应的热量数据,记录本次饮食数据。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述装置还包括:
第二输入获取模块,用于获取用户输入的其他识别结果;
数据更新模块,用于根据用户输入的其他识别结果,更新待训练图片;
训练模块,用于利用卷积神经网络模型对更新后得到的待训练图片进行重新训练,得到重新训练后的食物识别模型。
本发明实施例具有以下有益效果:
本发明实施例中,针对每种食物类别分别得到对应的待训练图片,并用卷积神经网络模型进行训练,以生成食物识别模型,该食物识别模型可以对用户提供的图片进行识别,得到对应的识别结果,因此提供了一个完善的食物识别方案,能够支持对种类繁多的中国食物的训练和识别,弥补了现有技术中没有中国食物识别的方案的空白,在一定程度上解决了中国的食物目前没有对应的识别方案的问题。
【附图说明】
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例所提供的模型生成方法的流程示意图;
图2为本发明实施例所提供的食物识别方法的流程示意图;
图3为本发明实施例所提供的模型生成方法及食物识别方法的流程示意图;
图4为本发明实施例所提供的模型生成装置的功能方块图;
图5为本发明实施例所提供的食物识别装置的功能方块图。
【具体实施方式】
为了更好的理解本发明的技术方案,下面结合附图对本发明实施例进行详细描述。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
请参考图1,其为本发明实施例所提供的模型生成方法的流程示意图,如图1所示,该方法可以包括以下步骤:
S101、针对多种食物类别中的每种食物,获取对应的若干食物图片。
S102、对获取的食物图片分别进行预处理。
S103、根据预处理后得到的每个食物图片,获取对应的至少一个待训练图片。
S104、利用卷积神经网络模型对获得的待训练图片进行训练,得到食物识别模型。
具体的,根据已有用户的饮食记录,可以选择覆盖各地区常见的1000多种食物图片,其中每种食物收集至少2000个对应的图片。需要说明的是,食物种类的选择十分重要,通过对已有用户记录的分析,能够在1000种食物的前提下,尽量满足更多用户的需求,因此最终选择的食物种类能够覆盖中式食物、水果和西式食物,其中中式食物覆盖了中国各地区的常见食物。
在一种可行的实施方案中,对获取的食物图片分别进行预处理可以包括:首先,对获取的食物图片分别进行高斯滤波;然后,对高斯滤波后得到的食物图片进行图像增强处理。
在一种可行的实施方案中,根据预处理后得到的每个食物图片,获取对应的至少一个待训练图片可以包括:通过指定的数据增广方式,对预处理后得到的每个食物图片进行处理,得到对应的至少一个待训练图片。
举例说明,本发明实施例中,可以通过对食物图片进行不同尺寸的剪裁、进行不同的对比度调整、进行不同的饱和度调整、进行不同的颜色调整或进行随机扰动等处理,来增加用于进行训练的图片数量。
具体的,本发明实施例中,可以利用卷积神经网络模型将S103中得到的待训练图片进行训练,以得到食物识别模型。例如,卷积神经网络模型为初级残差(Inception-ResNet-v2)模型。
需要说明的是,可以选择开源框架TensorFlow进行网络构建及模型训练,TensorFlow是谷歌开源的机器学习框架,在用于深度学习研究时,可以方便构建所需要的模型,同时能够自动计算反向梯度,在计算的各个环节都减少了代码数量和难度。本发明实施例中,可以利用该开源框架TensorFlow构建初级残差(Inception-ResNet-v2)模型,该模型与其他卷积神经网络模型相比,具有更大的深度和宽度,因此能够更准确的识别。
卷积神经网络模型被用来以张量的形式输入,例如一个彩色图片对应3个二维矩阵,分别表示三个颜色通道的像素强度。一个典型的卷积神经网络模型可以包含一系列阶段,最开始主要包括卷积层和采样层,卷积层的输入和输出都是多重矩阵,卷积层包含多个卷积核,每个卷积核都是一个矩阵,每个卷积核相当于是一个滤波器,可以输出一个特定的特征图,每个特征图也就是卷积层的一个输出单元,然后可以通过一个非线性激活函数进一步将特征图传输到下一层进行处理。其中,Inception模块能够将1*1、3*3、5*5的卷积核与3*3的采样层得到的特征矩阵拼接在一起,一方面可以增加卷积神经网络模型的宽度,另一方面增加了卷积神经网络模型的对图片尺寸的适应性,还可以提高卷积神经网络模型内部计算资源的利用率。初级残差(Inception-ResNet-v2)模型是初级模型Inception与残差模型ResNet结合的优化版,结合了初级模型Inception与残基的连接,可以解决卷积神经网络模型加深过程中梯度退化问题,可以成功的训练更深的神经网络,并且可以加快训练的速度,获得更好的性能。
请参考图2,其为本发明实施例所提供的食物识别方法的流程示意图,如图2所示,该方法可以包括以下步骤:
S201、获取用户输入的待识别图片。
S202、利用食物识别模型,对所述待识别图片进行识别,获得至少两个识别结果,每个所述识别结果包括食物名称;所述食物识别模型为利用上述模型生成方法生成的食物识别模型。
S203、输出所述至少两个识别结果。
在一个具体的实施方案中,可以获取用户在相册中选择的图片作为待识别图片,或者,也可以获取用户即时拍摄的照片作为待识别图片。
具体的,利用食物识别模型对获取的待识别图片进行图片识别,获得至少两个识别结果。例如,可以得到5个识别结果,这5个识别结果是概率最大的识别结果。
其中,识别结果可以包含食物名称。
进一步的,在获得识别结果之后,输出识别结果之前,还可以根据每个识别结果,获得对应的热量数据。然后,可以输出至少两个识别结果和每个识别结果对应的热量数据。
在一个具体的实施方案中,可以预先在数据库中存储每个食物名称及对应的热量数据,这样,在获得识别结果之后,可以根据识别结果查询数据库,从而可以查询到食物对应的热量数据,进而可以与识别结果一起显示给用户。
进一步的,输出识别结果给用户之后,用户既可以在输出的至少两个识别结果中选择其中的食物名称,或者,如果用户认为没有正确的食物名称,也可以在输入框输入认为正确的食物名称。
如果用户选择其中的食物名称,则可以获取用户在至少两个识别结果中选择的一个识别结果;进而,根据用户选出的识别结果和该识别结果对应的热量数据,记录本次饮食数据。
相反的,如果用户没有进行选择,而是在输入框输入认为正确的食物名称,则可以获取到用户输入的其他识别结果;然后,根据用户输入的其他识别结果,更新待训练图片;再利用卷积神经网络模型对更新后得到的待训练图片进行重新训练,得到重新训练后的食物识别模型,该重新训练后的食物识别模型继续用于进行食物图片的识别,实现了识别结果纠错,还可以将正确的识别结果作为待训练图片进行训练,实现了模型的更新和优化,这种闭环模式可以自动且不断地拓展模型可识别食物的种类。
请参考图3,其为本发明实施例所提供的模型生成方法及食物识别方法的流程示意图,如图3所示,该方法可以包括以下步骤:
S301、获取用户用手机拍摄的食物图片。
S302、对用户提供的食物图片进行预处理。
S303、利用预先生成的食物识别模型对预处理后得到的食物图片进行识别,得到5个识别结果。
S304、输出5个识别结果,这5个识别结果是可能性最大的5个食物名称,且默认其中第一个识别结果是正确的名称。
S305、判断5个识别结果中是否有正确的识别结果,如果是,执行步骤S306,如果否,执行步骤S307。
S306、如果5个识别结果中有正确的识别结果,则根据该识别结果所包含的食物名称查询对应的热量数据,并记录当次饮食数据。
S307、如果5个识别结果中没有正确的识别结果,获取用户输入的食物名称,利用用户输入的食物名称以及食物图片更新待训练图片。
S308、利用更新后的待训练图片进行训练,生成新的食物识别模型,用以下次进行食物识别,这样,可以不断扩大食物图片的数据库,经过重新训练后会不断提高模型的识别准确度。
本发明实施例还提供一种模型生成装置,请参考图4,其为本发明实施例所提供的模型生成装置的功能方块图,如图4所示,该装置包括:
图片获取模块40,用于针对多种食物类别中的每种食物,获取对应的若干食物图片;
预处理模块41,用于对获取的食物图片分别进行预处理;
扩展模块42,用于根据预处理后得到的每个食物图片,获取对应的至少一个待训练图片;
训练模块43,用于利用卷积神经网络模型对获得的待训练图片进行训练,得到食物识别模型。
在一种可行的实施方案中,所述预处理模块41具体用于:
对获取的食物图片分别进行高斯滤波;
对高斯滤波后得到的食物图片进行图像增强处理。
在一种可行的实施方案中,所述扩展模块42具体用于:
通过指定的数据增广方式,对预处理后得到的每个食物图片进行处理,得到对应的至少一个待训练图片。
在一种可行的实施方案中,所述卷积神经网络模型为初级残差Inception-ResNet-v2模型。
在一种可行的实施方案中,所述食物的种类为至少1000种,每种食物对应的食物图片为至少2000个。
本发明实施例还提供了一种食物识别装置,请参考图5,其为本发明实施例所提供的食物识别装置的功能方块图,如图5所示,所述装置包括:
图片获取模块50,用于获取用户输入的待识别图片;
识别模块51,用于利用食物识别模型,对所述待识别图片进行识别,获得至少两个识别结果,每个所述识别结果包括食物名称;所述食物识别模型为利用权利要求10至14中任一装置生成的食物识别模型;
输出模块52,用于输出所述至少两个识别结果。
在一种可行的实施方案中,所述装置还包括:数据获取模块53,用于根据每个识别结果,获得对应的热量数据;
所述输出模块52具体用于:输出至少两个识别结果和每个识别结果对应的热量数据。
在一种可行的实施方案中,所述装置还包括:
第一输入获取模块54,用于获取用户在至少两个识别结果中选择的一个识别结果;
数据记录模块55,用于根据用户选出的识别结果和该识别结果对应的热量数据,记录本次饮食数据。
在一种可行的实施方案中,所述装置还包括:
第二输入获取模块56,用于获取用户输入的其他识别结果;
数据更新模块57,用于根据用户输入的其他识别结果,更新待训练图片;
训练模块58,用于利用卷积神经网络模型对更新后得到的待训练图片进行重新训练,得到重新训练后的食物识别模型。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(Processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (18)
1.一种模型生成方法,其特征在于,所述方法包括:
针对多种食物类别中的每种食物,获取对应的若干食物图片;
对获取的食物图片分别进行预处理;
根据预处理后得到的每个食物图片,获取对应的至少一个待训练图片;
利用卷积神经网络模型对获得的待训练图片进行训练,得到食物识别模型。
2.根据权利要求1所述的方法,其特征在于,所述对获取的食物图片分别进行预处理,包括:
对获取的食物图片分别进行高斯滤波;
对高斯滤波后得到的食物图片进行图像增强处理。
3.根据权利要求1或2所述的方法,其特征在于,根据预处理后得到的每个食物图片,获取对应的至少一个待训练图片,包括:
通过指定的数据增广方式,对预处理后得到的每个食物图片进行处理,得到对应的至少一个待训练图片。
4.根据权利要求1所述的方法,其特征在于,所述卷积神经网络模型为初级残差Inception-ResNet-v2模型。
5.根据权利要求1所述的方法,其特征在于,所述食物的种类为至少1000种,每种食物对应的食物图片为至少2000个。
6.一种食物识别方法,其特征在于,所述方法包括:
获取用户输入的待识别图片;
利用食物识别模型,对所述待识别图片进行识别,获得至少两个识别结果,每个所述识别结果包括食物名称;所述食物识别模型为利用权利要求1至5中任一方法生成的食物识别模型;
输出所述至少两个识别结果。
7.根据权利要求6所述的方法,其特征在于,输出所述至少两个识别结果之前,所述方法还包括:根据每个识别结果,获得对应的热量数据;
输出所述至少两个识别结果包括:输出至少两个识别结果和每个识别结果对应的热量数据。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
获取用户在至少两个识别结果中选择的一个识别结果;
根据用户选出的识别结果和该识别结果对应的热量数据,记录本次饮食数据。
9.根据权利要求6所述的方法,其特征在于,所述方法还包括:
获取用户输入的其他识别结果;
根据用户输入的其他识别结果,更新待训练图片;
利用卷积神经网络模型对更新后得到的待训练图片进行重新训练,得到重新训练后的食物识别模型。
10.一种模型生成装置,其特征在于,所述装置包括:
图片获取模块,用于针对多种食物类别中的每种食物,获取对应的若干食物图片;
预处理模块,用于对获取的食物图片分别进行预处理;
扩展模块,用于根据预处理后得到的每个食物图片,获取对应的至少一个待训练图片;
训练模块,用于利用卷积神经网络模型对获得的待训练图片进行训练,得到食物识别模型。
11.根据权利要求10所述的装置,其特征在于,所述预处理模块具体用于:
对获取的食物图片分别进行高斯滤波;
对高斯滤波后得到的食物图片进行图像增强处理。
12.根据权利要求10或11所述的装置,其特征在于,所述扩展模块具体用于:
通过指定的数据增广方式,对预处理后得到的每个食物图片进行处理,得到对应的至少一个待训练图片。
13.根据权利要求10所述的装置,其特征在于,所述卷积神经网络模型为初级残差Inception-ResNet-v2模型。
14.根据权利要求10所述的装置,其特征在于,所述食物的种类为至少1000种,每种食物对应的食物图片为至少2000个。
15.一种食物识别装置,其特征在于,所述装置包括:
图片获取模块,用于获取用户输入的待识别图片;
识别模块,用于利用食物识别模型,对所述待识别图片进行识别,获得至少两个识别结果,每个所述识别结果包括食物名称;所述食物识别模型为利用权利要求10至14中任一装置生成的食物识别模型;
输出模块,用于输出所述至少两个识别结果。
16.根据权利要求15所述的装置,其特征在于,所述装置还包括:数据获取模块,用于根据每个识别结果,获得对应的热量数据;
所述输出模块具体用于:输出至少两个识别结果和每个识别结果对应的热量数据。
17.根据权利要求15所述的装置,其特征在于,所述装置还包括:
第一输入获取模块,用于获取用户在至少两个识别结果中选择的一个识别结果;
数据记录模块,用于根据用户选出的识别结果和该识别结果对应的热量数据,记录本次饮食数据。
18.根据权利要求15所述的装置,其特征在于,所述装置还包括:
第二输入获取模块,用于获取用户输入的其他识别结果;
数据更新模块,用于根据用户输入的其他识别结果,更新待训练图片;
训练模块,用于利用卷积神经网络模型对更新后得到的待训练图片进行重新训练,得到重新训练后的食物识别模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810645557.9A CN109034196A (zh) | 2018-06-21 | 2018-06-21 | 模型生成方法及装置、食物识别方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810645557.9A CN109034196A (zh) | 2018-06-21 | 2018-06-21 | 模型生成方法及装置、食物识别方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109034196A true CN109034196A (zh) | 2018-12-18 |
Family
ID=64610728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810645557.9A Pending CN109034196A (zh) | 2018-06-21 | 2018-06-21 | 模型生成方法及装置、食物识别方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109034196A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110211667A (zh) * | 2019-05-30 | 2019-09-06 | 爱多特(广东)网络技术有限公司 | 基于人工智能的总热量控制和智能体重管理方法及系统 |
CN111222569A (zh) * | 2020-01-06 | 2020-06-02 | 宇龙计算机通信科技(深圳)有限公司 | 识别食物的方法、装置、电子设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106203493A (zh) * | 2016-07-04 | 2016-12-07 | 何广森 | 一种食物识别装置及识别方法 |
CN107133629A (zh) * | 2016-02-29 | 2017-09-05 | 百度在线网络技术(北京)有限公司 | 图片分类方法、装置和移动终端 |
CN107679078A (zh) * | 2017-08-29 | 2018-02-09 | 银江股份有限公司 | 一种基于深度学习的卡口图像车辆快速检索方法及系统 |
CN107731278A (zh) * | 2017-09-04 | 2018-02-23 | 广东数相智能科技有限公司 | 一种食物识别方法、营养健康分析方法、系统及装置 |
CN107862249A (zh) * | 2017-10-18 | 2018-03-30 | 太原理工大学 | 一种分叉掌纹识别方法及装置 |
CN108021916A (zh) * | 2017-12-31 | 2018-05-11 | 南京航空航天大学 | 基于注意力机制的深度学习糖尿病视网膜病变分类方法 |
-
2018
- 2018-06-21 CN CN201810645557.9A patent/CN109034196A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107133629A (zh) * | 2016-02-29 | 2017-09-05 | 百度在线网络技术(北京)有限公司 | 图片分类方法、装置和移动终端 |
CN106203493A (zh) * | 2016-07-04 | 2016-12-07 | 何广森 | 一种食物识别装置及识别方法 |
CN107679078A (zh) * | 2017-08-29 | 2018-02-09 | 银江股份有限公司 | 一种基于深度学习的卡口图像车辆快速检索方法及系统 |
CN107731278A (zh) * | 2017-09-04 | 2018-02-23 | 广东数相智能科技有限公司 | 一种食物识别方法、营养健康分析方法、系统及装置 |
CN107862249A (zh) * | 2017-10-18 | 2018-03-30 | 太原理工大学 | 一种分叉掌纹识别方法及装置 |
CN108021916A (zh) * | 2017-12-31 | 2018-05-11 | 南京航空航天大学 | 基于注意力机制的深度学习糖尿病视网膜病变分类方法 |
Non-Patent Citations (2)
Title |
---|
柴铎等: "运用开端神经网络进行人体姿态识别", 《通信学报》 * |
胡欢: "车辆特征学习与车型识别", 《中国优秀硕士学位论文全文数据库工程科技II辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110211667A (zh) * | 2019-05-30 | 2019-09-06 | 爱多特(广东)网络技术有限公司 | 基于人工智能的总热量控制和智能体重管理方法及系统 |
CN111222569A (zh) * | 2020-01-06 | 2020-06-02 | 宇龙计算机通信科技(深圳)有限公司 | 识别食物的方法、装置、电子设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019100723A1 (zh) | 训练多标签分类模型的方法和装置 | |
CN110533097A (zh) | 一种图像清晰度识别方法、装置、电子设备及存储介质 | |
CN111476708B (zh) | 模型生成方法、模型获取方法、装置、设备及存储介质 | |
CN107578060A (zh) | 一种基于可判别区域的深度神经网络用于菜品图像分类的方法 | |
CN110659581B (zh) | 一种图像处理方法、装置、设备和存储介质 | |
CN108960207A (zh) | 一种图像识别的方法、系统及相关组件 | |
CN109919304A (zh) | 神经网络搜索方法、装置、可读存储介质和计算机设备 | |
CN106503723A (zh) | 一种视频分类方法及装置 | |
CN108596338A (zh) | 一种神经网络训练集的获取方法及其系统 | |
CN110555527A (zh) | 延时摄影视频的生成方法及设备 | |
CN107153838A (zh) | 一种照片自动分级方法及装置 | |
CN109635833A (zh) | 一种基于云平台和模型智能推荐的图像识别方法及系统 | |
CN107508866A (zh) | 减小移动设备端神经网络模型更新的传输消耗的方法 | |
CN110046617A (zh) | 一种基于深度学习的数字电表读数自适应识别方法 | |
CN109597908A (zh) | 基于人脸识别的照片搜索方法、装置、设备及存储介质 | |
KR20200143450A (ko) | 화상 처리 방법, 장치, 전자 장치 및 저장 매체 | |
CN109034196A (zh) | 模型生成方法及装置、食物识别方法及装置 | |
CN111767424B (zh) | 图像处理方法、装置、电子设备及计算机存储介质 | |
CN113239875A (zh) | 人脸特征的获取方法、系统、装置及计算机可读存储介质 | |
CN110321936A (zh) | 一种基于vgg16及svm实现图片二分类的方法 | |
KR20200092492A (ko) | 의미 인식 기반의 이미지 보정 방법 및 그를 위한 장치 | |
CN108681708A (zh) | 一种基于Inception神经网络模型的掌静脉图像识别方法、装置及存储介质 | |
CN114170484B (zh) | 图片属性预测方法、装置、电子设备和存储介质 | |
CN107133631A (zh) | 一种识别电视台图标的方法及装置 | |
CN106778550B (zh) | 一种人脸检测的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181218 |
|
RJ01 | Rejection of invention patent application after publication |