首页> 中国专利> 基于人工智能识别食物热量并计算运动步数的方法、系统

基于人工智能识别食物热量并计算运动步数的方法、系统

摘要

本方案涉及一种基于人工智能识别食物热量并计算运动步数的方法。所述方法包括:获取目标图像;目标图像中包含有食物、盛放食物的容器;将目标图像分别输入至第一人工智能识别模型、第二人工智能识别模型;并通过第一人工智能识别模型输出食物识别数据,通过第二人工智能识别模型输出容器识别数据;根据食物识别数据、容器识别数据计算食物热量信息;采集用户信息,并根据用户信息、食物热量信息计算运动步数。根据食物的类型以及盛放食物的容器大小来计算食物热量,提高了食物热量计算的准确性,根据用户信息以及食物热量来计算运动步数,可以提高运动步数计算的针对性。

著录项

  • 公开/公告号CN112599221A

    专利类型发明专利

  • 公开/公告日2021-04-02

    原文格式PDF

  • 申请/专利权人 陕西汇乐网络科技有限公司;

    申请/专利号CN202011531601.7

  • 发明设计人 杨洋;

    申请日2020-12-22

  • 分类号G16H20/60(20180101);G16H20/30(20180101);

  • 代理机构32266 苏州中合知识产权代理事务所(普通合伙);

  • 代理人刘奇

  • 地址 710000 陕西省西安市国家民用航天产业基地航拓路汇航广场A座10层EBC

  • 入库时间 2023-06-19 10:27:30

说明书

技术领域

本发明涉及计算机技术领域,特别是涉及一种基于人工智能识别食物热量并计算运动步数的方法、系统。

背景技术

随着社会的发展,人们的生活水平在不断提高,越来越多的人注重身体健康。另外随着智能手机上的传感器越来越多,手机收集到的个人运动数据和身体指标数据也越来越被人们关注,而且人们的生活质量普遍提升,肥胖人群也在不断增多,女性也越来越关注身材方面的保养,对饮食也有了健康和营养方面的要求,并且也希望在这些方面能有数据的参考。由于长期以来因为食物种类繁多烹饪方式的不同,出现了大量非标准的食物,这些方面的数据采集分析难度巨大。

传统的运动量计算方法通常是根据用户信息计算运动时长,从而建议用户运动具体的时长,存在针对性不强的问题。

发明内容

基于此,为了解决上述技术问题,提供一种基于人工智能识别食物热量并计算运动步数的方法、系统,可以提高运动步数计算的针对性。

一种基于人工智能识别食物热量并计算运动步数的方法,所述方法包括:

获取目标图像;所述目标图像中包含有食物、盛放食物的容器;

将所述目标图像分别输入至第一人工智能识别模型、第二人工智能识别模型;并通过所述第一人工智能识别模型输出食物识别数据,通过所述第二人工智能识别模型输出容器识别数据;

根据所述食物识别数据、所述容器识别数据计算食物热量信息;

采集用户信息,并根据所述用户信息、所述食物热量信息计算运动步数。

在其中一个实施例中,所述通过所述第一人工智能识别模型输出食物识别数据,包括:

通过所述第一人工智能识别模型提取所述目标图像中的食物特征;

根据所述食物特征查询食物营养成分数据;

将所述食物特征、所述食物营养成分数据作为所述食物识别数据输出。

在其中一个实施例中,所述通过所述第二人工智能识别模型输出容器识别数据,包括:

通过所述第二人工智能识别模型获取容器种类;

根据所述容器种类查找容器规格数据;

将所述容器种类、所述容器规格数据作为所述容器识别数据输出。

在其中一个实施例中,所述采集用户信息,包括:

获取用户注册请求,并根据所述用户注册请求展示用户信息编辑界面;

通过所述用户信息编辑界面获取用户身高、用户体重;

将所述用户身高、所述用户体重作为所述用户信息。

在其中一个实施例中,所述根据所述用户信息、所述食物热量信息计算运动步数,包括:

提取所述用户身高、所述用户体重,并根据所述用户身高计算用户步长;

根据所述用户步长、所述用户体重计算单位运动步数;

根据所述单位运动步数以及所述食物热量信息计算运动步数。

在其中一个实施例中,所述方法还包括:

获取用户运动信息;

根据计算出来的所述运动步数、所述用户运动信息,计算用户运动目标完成度;

根据所述运动目标完成度提示用户完成运动。

在其中一个实施例中,所述第一人工智能识别模型、所述第二人工智能识别模型均为深度学习模型。

一种基于人工智能识别食物热量并计算运动步数的系统,所述系统包括:

图像获取模块,用于获取目标图像;所述目标图像中包含有食物、盛放食物的容器;

数据输出模块,用于将所述目标图像分别输入至第一人工智能识别模型、第二人工智能识别模型;并通过所述第一人工智能识别模型输出食物识别数据,通过所述第二人工智能识别模型输出容器识别数据;

热量信息计算模块,用于根据所述食物识别数据、所述容器识别数据计算食物热量信息;

运动步数计算模块,用于采集用户信息,并根据所述用户信息、所述食物热量信息计算运动步数。

上述基于人工智能识别食物热量并计算运动步数的方法、系统,通过获取目标图像;目标图像中包含有食物、盛放食物的容器;将目标图像分别输入至第一人工智能识别模型、第二人工智能识别模型;并通过第一人工智能识别模型输出食物识别数据,通过第二人工智能识别模型输出容器识别数据;根据食物识别数据、容器识别数据计算食物热量信息;采集用户信息,并根据用户信息、食物热量信息计算运动步数。根据食物的类型以及盛放食物的容器大小来计算食物热量,提高了食物热量计算的准确性,根据用户信息以及食物热量来计算运动步数,可以提高运动步数计算的针对性。

附图说明

图1为一个实施例中基于人工智能识别食物热量并计算运动步数的方法的应用环境图;

图2为一个实施例中基于人工智能识别食物热量并计算运动步数的方法的流程示意图;

图3为一个实施例中基于人工智能识别食物热量并计算运动步数的系统的结构框图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述约束条件,但这些约束条件不受这些术语限制。这些术语仅用于将第一个人工智能识别模型与另一个人工智能识别模型区分。举例来说,在不脱离本申请的范围的情况下,可以将第一人工智能识别模型称为第二人工智能识别模型,且类似地,可将第二人工智能识别模型称为第一人工智能识别模型。第一人工智能识别模型和第二人工智能识别模型两者都是人工智能识别模型,但其不是同一人工智能识别模型。

本申请实施例提供的基于人工智能识别食物热量并计算运动步数的方法,可以应用于如图1所示的应用环境中。如图1所示,该应用环境包括计算机设备110。计算机设备110可以获取目标图像;目标图像中包含有食物、盛放食物的容器;计算机设备110可以将目标图像分别输入至第一人工智能识别模型、第二人工智能识别模型;并通过第一人工智能识别模型输出食物识别数据,通过第二人工智能识别模型输出容器识别数据;计算机设备110可以根据食物识别数据、容器识别数据计算食物热量信息;计算机设备110可以采集用户信息,并根据用户信息、食物热量信息计算运动步数。其中,计算机设备110可以但不限于是各种智能手机、机器人、平板电脑和便携式可穿戴设备等。

在一个实施例中,如图2所示,提供了一种基于人工智能识别食物热量并计算运动步数的方法,包括以下步骤:

步骤202,获取目标图像;目标图像中包含有食物、盛放食物的容器。

其中,目标图像可以是通过计算机设备采集的,包含有食物以及盛放食物的容器的图像。例如,用户可以通过手机等设备采集目标图像。

步骤204,将目标图像分别输入至第一人工智能识别模型、第二人工智能识别模型;并通过第一人工智能识别模型输出食物识别数据,通过第二人工智能识别模型输出容器识别数据。

第一人工智能识别模型可以是食物AI识别模型,第二人工智能识别模型可以是餐饮容器AI识别模型。其中,第一人工智能识别模型可以用于识别食物数据,第二人工智能识别模型可以用于识别容器数据。

计算机设备获取到目标图像后,可以对目标图像进行图像分割。计算机设备可以将分割后的目标图像输入到第一人工智能识别模型、第二人工智能识别模型中,从而输出食物识别数据、容器识别数据。

步骤206,根据食物识别数据、容器识别数据计算食物热量信息。

计算机设备可以根据食物识别数据、容器识别数据计算出食物的热量信息。具体的,食物识别数据乘以容器识别数据的乘积为食物的热量信息。

步骤208,采集用户信息,并根据用户信息、食物热量信息计算运动步数。

用户信息可以是用户在注册时输入的个人信息,例如,用户信息可以是用户的身高、体重等信息。计算机设备可以根据用户信息和食物热量信息来计算运动步数。计算机设备还可以计算出消耗同样热量的快跑、跳绳、游泳、深蹲等需要的运动量。

在本实施例中,通过获取目标图像;目标图像中包含有食物、盛放食物的容器;将目标图像分别输入至第一人工智能识别模型、第二人工智能识别模型;并通过第一人工智能识别模型输出食物识别数据,通过第二人工智能识别模型输出容器识别数据;根据食物识别数据、容器识别数据计算食物热量信息;采集用户信息,并根据用户信息、食物热量信息计算运动步数。根据食物的类型以及盛放食物的容器大小来计算食物热量,提高了食物热量计算的准确性,根据用户信息以及食物热量来计算运动步数,可以提高运动步数计算的针对性。

在一个实施例中,提供的一种基于人工智能识别食物热量并计算运动步数的方法还可以包括输出食物识别数据的过程,具体过程包括:通过第一人工智能识别模型提取目标图像中的食物特征;根据食物特征查询食物营养成分数据;将食物特征、食物营养成分数据作为食物识别数据输出。

计算机设备可以通过第一人工智能识别模型,对上传的目标图像进行食物特征提取,从而识别分析出食物的种类,并根据食物特征查询食物营养成分数据,即食物相关营养素每百克的含量。计算机设备可以将将食物特征、食物营养成分数据作为食物识别数据输出。

在本实施例中,第一人工智能识别模型可以是预先训练好的,用于识别图像中食物的种类、输出食物的营养成分数据。具体的,通过收集到的食物图片样本喂养深度学习算法,从而确定参数模型训练出可以识别中餐和西餐包括果蔬的第一人工智能识别模型,然后通过查询食物营养成分数据,返回对应食物营养信息。

在一个实施例中,提供的一种基于人工智能识别食物热量并计算运动步数的方法还可以包括输出容器识别数据的过程,具体过程包括:通过第二人工智能识别模型获取容器种类;根据容器种类查找容器规格数据;将容器种类、容器规格数据作为容器识别数据输出。

计算机设备可以通过第二识别模块识别出目标图像中的容器种类,从而根据容器种类查找到容器规格数据,并输出。

第二人工智能识别模型可以是预先训练好的,用于对上传的目标图像提取其中容器并识别容器规格和容量。其中,第二人工智能识别模型通过提取目标图像中的容器特征信息,通过机器学习算法特征信息参数训练出可以识别容器信息的第二人工智能识别模型,然后查询建立的容器规格信息。

在一个实施例中,提供的一种基于人工智能识别食物热量并计算运动步数的方法还可以包括采集用户信息的过程,具体过程包括:获取用户注册请求,并根据用户注册请求展示用户信息编辑界面;通过用户信息编辑界面获取用户身高、用户体重;将用户身高、用户体重作为用户信息。

用户可以通过触发计算机设备发送注册请求,计算机设备可以根据用户注册请求展示出用户信息编辑界面。用户可以通过用户信息编辑界面进行信息填写,例如,用户可以通过用户信息编辑界面填写自己的身高、体重等信息。计算机设备在获取到用户身高、用户体重后,可以将其作为用户信息。

在一个实施例中,提供的一种基于人工智能识别食物热量并计算运动步数的方法还可以包括计算运动步数的过程,具体过程包括:提取用户身高、用户体重,并根据用户身高计算用户步长;根据用户步长、用户体重计算单位运动步数;根据单位运动步数以及食物热量信息计算运动步数。

计算机设备可以提取用户信息中的用户身高、用户体重等信息。计算机设备可以根据用户身高计算出用户步长,其中,步长=(身高-155.911)/0.262。计算机设备可以根据用户步长、用户体重计算单位运动步数,其中,单位运动步数可以用于表示用户每走一步消耗的卡路里Q,Q=(0.0175*3.0*体重(公斤))/110,其中,0.0175为每分钟热量消耗参数,3.0为正常步行代谢当量MET,110为正常每分钟步数。

计算机设备可以根据单位运动步数以及食物热量信息来计算运动步数。运动步数可以是消耗掉食物所需要的步数E,其中,E=食物的总热量*1000/Q。

在一个实施例中,提供的一种基于人工智能识别食物热量并计算运动步数的方法还可以包括提示用户完成运动的过程,具体过程包括:获取用户运动信息;根据计算出来的运动步数、用户运动信息,计算用户运动目标完成度;根据运动目标完成度提示用户完成运动。

计算机设备可以从计步软件等应用软件中获取用户运动信息,其中,用户运动信息可以用于表示用户的运动步数。计算机设备可以根据计算出来的运动步数以及用户运动信息,计算出用户还需要完成的运动步数以及运动目标完成度,并提示用户完成运动。

在一个实施例中,第一人工智能识别模型、第二人工智能识别模型均为深度学习模型。

其中,第一人工智能识别模型、第二人工智能识别模型的训练可以是基于开源深度学习平台搭建的训练模型管理框架,通过使用GoogLeNet卷积神经网络模型库解决食物和容器图像分类问题。卷积神经网络模型库可以通过连续使用卷积和池化层的组合提取图像特征。

GoogLeNet的主要特点是网络不仅有深度,还在横向上具有“宽度”,空间分布范围更广的图像信息适合用较大的卷积核来提取其特征;而空间分布范围较小的图像信息则适合用较小的卷积核来提取其特征。为了解决这个问题,GoogLeNet提出了一种被称为Inception模块的方案。Inception模块使用3个不同大小的卷积核对输入图片进行卷积操作,并附加最大池化,将这4个操作的输出沿着通道这一维度进行拼接,构成的输出特征图将会包含经过不同大小的卷积核提取出来的特征。Inception模块采用多通路(multi-path)的设计形式,每个支路使用不同大小的卷积核,最终输出特征图的通道数是每个支路输出通道数的总和,这将会导致输出通道数变得很大,尤其是使用多个Inception模块串联操作的时候,模型参数量会变得非常大。为了减小参数量,在每个3x3和5x5的卷积层之前,增加1x1的卷积层来控制输出通道数;在最大池化层后面增加1x1卷积层减小输出通道数。在主体卷积部分中使用5个模块(block),每个模块之间使用步幅为2的3×3最大池化层来减小输出高宽。其中,第一模块使用一个64通道的7×7卷积层。第二模块使用2个卷积层:首先是64通道的1×1卷积层,然后是将通道增大3倍的3×3卷积层。第三模块串联2个完整的Inception块。第四模块串联了5个Inception块。第五模块串联了2个Inception块。第五模块的后面紧跟输出层,使用全局平均池化层来将每个通道的高和宽变成1,最后接上一个输出个数为标签类别数的全连接层。

具体实施方法是:通过PaddleHub迁移学习一个目标检测模型,首先将原模型的MobileNet_v2替换为resnet_v2_50_imagenet进行迁移学习,并保存训练好的模型。接着使用PaddleLite提供的model_optimize_tool对模型进行优化,同时转化成PaddleLite支持的文件格式,在手机上步数。最后,对之前的模型进行裁剪,剪裁后提高精度再提取食物和容器的特征点。

数据集采用网络爬虫爬取各地食物图片样本,并通过公开的食物成分表,集合总数统计食物营养成分数据。

采用BasicFinder数据标注工具,对食物图片样本和容器图片样本进行分类标注。通过数据标注训练模型后将对图像进行两次识别,第一次识别对食物种类进行识别,并查询相关数据库获取该食物每百克的营养素含量数据,第二次识别提取容器特征,识别容器种类,并查询该容器对应的容量信息。

应该理解的是,虽然上述流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图3所示,提供了一种基于人工智能识别食物热量并计算运动步数的系统,包括:图像获取模块310、数据输出模块320、热量信息计算模块330和运动步数计算模块340,其中:

图像获取模块310,用于获取目标图像;目标图像中包含有食物、盛放食物的容器;

数据输出模块320,用于将目标图像分别输入至第一人工智能识别模型、第二人工智能识别模型;并通过第一人工智能识别模型输出食物识别数据,通过第二人工智能识别模型输出容器识别数据;

热量信息计算模块330,用于根据食物识别数据、容器识别数据计算食物热量信息;

运动步数计算模块340,用于采集用户信息,并根据用户信息、食物热量信息计算运动步数。

在一个实施例中,数据输出模块320还用于通过第一人工智能识别模型提取目标图像中的食物特征;根据食物特征查询食物营养成分数据;将食物特征、食物营养成分数据作为食物识别数据输出。

在一个实施例中,数据输出模块320还用于通过第二人工智能识别模型获取容器种类;根据容器种类查找容器规格数据;将容器种类、容器规格数据作为容器识别数据输出。

在一个实施例中,运动步数计算模块340还用于获取用户注册请求,并根据用户注册请求展示用户信息编辑界面;通过用户信息编辑界面获取用户身高、用户体重;将用户身高、用户体重作为用户信息。

在一个实施例中,运动步数计算模块340还用于提取用户身高、用户体重,并根据用户身高计算用户步长;根据用户步长、用户体重计算单位运动步数;根据单位运动步数以及食物热量信息计算运动步数。

在一个实施例中,运动步数计算模块340还用于获取用户运动信息;根据计算出来的运动步数、用户运动信息,计算用户运动目标完成度;根据运动目标完成度提示用户完成运动。

在一个实施例中,第一人工智能识别模型、第二人工智能识别模型均为深度学习模型。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号