一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

食物能量确定方法、装置、设备及存储介质与流程

2022-07-30 15:46:07 来源:中国专利 TAG:


1.本技术涉及计算机应用技术领域,特别是涉及一种食物能量确定方法、装置、设备及存储介质。


背景技术:

2.目前,在肥胖症治疗、糖尿病治疗、减肥等活动中,都需要对食物热量、碳水化合物、蛋白质、脂肪等能量进行控制。比如,在儿童肥胖症治疗活动中,医生为了能够让患者控制热量的摄入,会要求患者,每餐大概吃多少素食、荤菜、米饭等,患者在餐前对餐食进行拍照发送给医生,医生通过图片判断食物热量大致是多少,患者改顿的饭是否合格。在糖尿病治疗活动中也是类似,患者按照医生的餐食要求制作食物,在餐前对餐食进行拍照后发送给医生,医生通过图片判断食物热量、碳水化合物、蛋白质、脂肪等能量大致是多少。
3.现有的这种方式完全依赖于医生的经验进行食物能量多少的判断,偏差较大,效率较低,而且需要花费医生较大的精力,人力成本较高。


技术实现要素:

4.本技术的目的是提供一种食物能量确定方法、装置、设备及存储介质,以提高食物能量确定的准确性和确定效率,减少人力成本。
5.为解决上述技术问题,本技术提供如下技术方案:
6.一种食物能量确定方法,包括:
7.确定目标图片中包含的目标餐盒,所述目标餐盒包括多个餐格,每个餐格中装有食物;
8.对所述目标餐盒的每个餐格中的食物进行识别;
9.基于预先构建的食物重量信息库,确定所述目标餐盒的每个餐格中食物的重量信息,所述食物重量信息库包括多种餐盒的每个餐格中装有不同食物时对应食物的重量信息;
10.根据预先获得的食物能量数据库和所述目标餐盒的每个餐格中食物的重量信息,确定所述目标餐盒所装食物的能量。
11.在本技术的一种具体实施方式中,所述对所述目标餐盒的每个餐格中的食物进行识别,包括:
12.对所述目标图片进行图像分割,得到多个图像切片,每个图像切片包括一个餐格;
13.分别对每个图像切片进行图像识别,确定每个图像切片的餐格中所装的食物。
14.在本技术的一种具体实施方式中,所述基于预先构建的食物重量信息库,确定所述目标餐盒的每个餐格中食物的重量信息,包括:
15.在预先构建的食物重量信息库中查询得到所述目标餐盒对应的多条重量信息;
16.针对识别到的每种食物,在所述目标餐盒对应的多条重量信息中,筛选出当前食物对应其所在餐格的重量信息。
17.在本技术的一种具体实施方式中,所述筛选出当前食物对应其所在餐格的重量信息之后,还包括:
18.确定所述目标餐盒中所述当前食物的估算体积与所述当前食物所在餐格的容积的比例关系;
19.根据所述比例关系,调整筛选出的所述当前食物的重量信息。
20.在本技术的一种具体实施方式中,所述根据预先获得的食物能量数据库和所述目标餐盒的每个餐格中食物的重量信息,确定所述目标餐盒所装食物的能量,包括:
21.在预先获得的食物能量数据库中查询识别到的每种食物的单位重量对应的能量;
22.根据每个餐格中食物的重量信息和查询到的每种食物的单位重量对应的能量,确定每个餐格中食物的能量;
23.将每个餐格中食物的能量进行累加,获得所述目标餐盒所装食物的能量。
24.在本技术的一种具体实施方式中,所述确定目标图片中包含的目标餐盒,包括:
25.对目标图片中的餐盒特征进行识别;
26.根据识别到的餐盒特征,确定所述目标图片中包含的目标餐盒。
27.在本技术的一种具体实施方式中,所述能量包括热量、碳水化合物、蛋白质、脂肪中的至少一种营养元素。
28.在本技术的一种具体实施方式中,在所述确定目标图片中包含的目标餐盒之前,还包括:
29.对所述目标图片进行异常检测;
30.如果未检测到异常,则执行所述确定目标图片中包含的目标餐盒的步骤。
31.在本技术的一种具体实施方式中,在所述确定所述目标餐盒所装食物的能量之后,还包括:
32.输出提示信息,所述提示信息用于提示所述目标餐盒所装食物的能量是否满足预设的能量要求。
33.一种食物能量确定装置,包括:
34.目标餐盒确定模块,用于确定目标图片中包含的目标餐盒,所述目标餐盒包括多个餐格,每个餐格中装有食物;
35.食物识别模块,用于对所述目标餐盒的每个餐格中的食物进行识别;
36.重量信息确定模块,用于基于预先构建的食物重量信息库,确定所述目标餐盒的每个餐格中食物的重量信息,所述食物重量信息库包括多种餐盒的每个餐格中装有不同食物时对应食物的重量信息;
37.食物能量确定模块,用于根据预先获得的食物能量数据库和所述目标餐盒的每个餐格中食物的重量信息,确定所述目标餐盒所装食物的能量。
38.一种电子设备,包括:
39.存储器,用于存储计算机程序;
40.处理器,用于执行所述计算机程序时实现上述的食物能量确定方法的步骤。
41.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的食物能量确定方法的步骤。
42.一种计算机程序产品,所述计算机程序产品包括计算机指令,所述计算机指令存
储在计算机可读存储介质中,且适于由处理器读取并执行,以使得具有所述处理器的电子设备执行上述的食物能量确定方法。
43.应用本技术实施例所提供的技术方案,先确定出目标图片中包含的目标餐盒,该目标餐盒包括多个餐格,每个餐格中装有食物,然后对目标餐盒的每个餐格中的食物进行识别,并基于食物重量信息库,确定目标餐盒的每个餐格中食物的重量信息,最后根据食物能量数据库和目标餐盒的每个餐格中食物的重量信息,确定目标餐盒所装食物的能量。通过食物重量信息库,可以准确确定出每个餐格中食物的重量信息,再通过食物能量数据库和确定出的食物的重量信息,可以自动、快速、准确地确定出目标餐盒所装食物的能量,提高食物能量确定效率,减少人力成本。
44.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
45.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
46.图1为本技术实施例中一种食物能量确定方法的实施流程图;
47.图2为本技术实施例中一种食物能量确定具体过程示意图;
48.图3为本技术实施例中一种食物能量确定装置的结构示意图;
49.图4为本技术实施例中一种电子设备的结构示意图。
具体实施方式
50.为了使本技术领域的人员更好地理解本技术方案,下面结合附图和具体实施方式对本技术作进一步的详细说明。显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
51.本技术的核心是提供一种食物能量确定方法。
52.该方法可以应用于客户端,如安装在终端上的app(application,应用程序)、浏览器等客户端。客户端可以为用户提供图片上传入口。用户在肥胖症治疗、糖尿病治疗、减肥等活动中,可以将每餐食物装在指定的餐盒中拍照,通过图片上传入口上传图片至客户端,客户端确定图片中包含的餐盒,对餐盒的每个餐格中的食物进行识别,基于食物重量信息库,确定每个餐格中食物的重量信息,并根据食物能量数据库和每个餐格中食物的重量信息,确定餐盒所装食物的能量。在客户端侧执行本技术实施例所提供的技术方案,客户端预先得到食物重量信息库和食物能量数据库后,即可不再依赖于网络,可以快速、准确地确定出食物能量。
53.该方法还可以应用于服务端,服务端与客户端通信,用户通过客户端提供的图片上传入口将图片上传至服务端,服务端确定图片中包含的餐盒,对餐盒的每个餐格中的食物进行识别,基于食物重量信息库,确定每个餐格中食物的重量信息,并根据食物能量数据
库和每个餐格中食物的重量信息,确定餐盒所装食物的能量。在服务端侧执行本技术实施例所提供的技术方案,可以借助于服务端强大的数据处理能力,更快速、准确地确定出食物能量,而且可以及时更新食物重量信息库和食物能量数据库,进一步提高食物能量确定的准确性。
54.参见图1所示,为本技术实施例所提供的一种食物能量确定方法的实施流程图,该方法可以包括以下步骤:
55.s110:确定目标图片中包含的目标餐盒。
56.目标餐盒包括多个餐格,每个餐格中装有食物。
57.在本技术实施例中,根据用户参与的不同活动可以为用户指定使用不同样式的餐盒。比如,在儿童肥胖症治疗活动中,指定餐盒样式1的餐盒,在糖尿病治疗活动中,指定餐盒样式2的餐盒。每个餐盒可以包括多个餐格,每个餐格的大小或形状可相同或不同。
58.目标图片可以是用户将食物装在餐盒后拍照上传的图片。得到目标图片后,可以确定目标图片中包含的目标餐盒。比如确定目标图片中包含的目标餐盒为餐盒样式1的餐盒。目标餐盒包括多个餐格,每个餐格中装有食物,比如,装有西红柿炒鸡蛋、木须肉、米饭等。
59.s120:对目标餐盒的每个餐格中的食物进行识别。
60.得到目标图片,并确定出目标图片中包含的目标餐盒后,可以对目标餐盒的每个餐格中的食物进行识别。目标餐盒的每个餐格中装有食物,不同食物的能量不同,需要先识别出目标餐盒的每个餐格中的食物。具体的,可以通过深度学习模型进行食物识别,还可以通过相关技术的识别接口进行食物识别。比如,识别出目标餐盒的第一个餐格中装有香菇油菜,第二个餐格中装有芹菜炒肉,第三个餐格中装有米饭。
61.可以按照设定的编号规则对目标餐盒包括的每个餐格进行编号,以对不同餐格进行区分,如编号为格子1、格子2、格子3等。如果目标餐盒包括的每个餐格的大小、形状都相同,则每个餐格对应一种识别到的食物即可,如格子1对应香菇油菜,格子2对应芹菜炒肉,格子3对应米饭,或者,格子1对应芹菜炒肉,格子2对应米饭,格子3对应香菇油菜。如果目标餐盒包括的每个餐格的大小或形状不同,则需准确确定餐格和识别到的食物的对应关系,如格子1对应香菇油菜,格子2对应芹菜炒肉,格子3对应米饭。
62.s130:基于预先构建的食物重量信息库,确定目标餐盒的每个餐格中食物的重量信息。
63.食物重量信息库包括多种餐盒的每个餐格中装有不同食物时对应食物的重量信息。
64.在本技术实施例中,可以通过多种方式获取多种餐盒的每个餐格中装有不同食物时对应食物的重量信息,如可以通过称重、经验估算、餐格容积*食物密度、深度学习模型识别等方式获取到相应的重量信息,构建一个食物重量信息库。即食物重量信息库中包括多种餐盒的每个餐格中装有不同食物时对应食物的重量信息。
65.食物重量信息库的具体示例如表1所示,在该食物重量信息库中,包括餐盒样式1的餐盒的每个餐格中装有不同食物时对应食物的重量信息。
[0066][0067][0068]
表1
[0069]
通过表1可以看出,餐盒样式1的餐盒包括三个餐格,餐格编号分别为格子1、格子2和格子3,不同餐格编号的餐格装有不同食物时对应食物的重量信息可以包括食物估算重量、食物估算重量下限、食物估算重量上限及重量单位。如格子1装有西红柿炒鸡蛋时,食物估算重量为105g,食物估算重量下限为84g,食物估算重量上限为125g,格子1装有木须肉时,食物估算重量为85g,食物估算重量下限为68g,食物估算重量上限为102g,
……

[0070]
当然,上述表1仅为一种具体示例,用户日常所吃食物可以有成百上千种,在食物重量信息库中可以包括更多种餐盒及更多种食物对应的重量信息。可以根据实际情况对食物重量信息库进行更新,如调整重量信息,以提高重量信息的准确性,或者增加更多的食物或者餐盒样式,使得食物重量信息库更具有普适性。
[0071]
确定出目标图片中包含的目标餐盒,对目标餐盒的每个餐格中的食物进行识别之后,进一步可以通过查询食物重量信息库,确定目标餐盒的每个餐格中食物的重量信息。
[0072]
预先构建一个食物重量信息库,记录多种餐盒的每个餐格中装有不同食物时对应食物的重量信息,在识别出目标餐盒的每个餐格中的食物后,通过查询食物重量信息库可以快速、准确地得到目标餐盒的每个餐格中食物的重量信息。
[0073]
s140:根据预先获得的食物能量数据库和目标餐盒的每个餐格中食物的重量信息,确定目标餐盒所装食物的能量。
[0074]
在本技术实施例中,可以预先获得食物能量数据库,食物能量数据库也可称为食物知识图谱。在食物能量数据库中包含多种食物的单位重量对应的能量,如包含多种食物每100g所含的热量、碳水化合物、蛋白质、脂肪等能量的数值。
[0075]
确定出目标餐盒的每个餐格中食物的重量信息后,根据食物能量数据库和目标餐盒的每个餐格中食物的重量信息,可以确定出目标餐盒所装食物的能量。能量可以包括热量、碳水化合物、蛋白质、脂肪中的至少一种营养元素。
[0076]
应用本技术实施例所提供的方法,先确定出目标图片中包含的目标餐盒,该目标餐盒包括多个餐格,每个餐格中装有食物,然后对目标餐盒的每个餐格中的食物进行识别,并基于食物重量信息库,确定目标餐盒的每个餐格中食物的重量信息,最后根据食物能量数据库和目标餐盒的每个餐格中食物的重量信息,确定目标餐盒所装食物的能量。通过食物重量信息库,可以准确确定出每个餐格中食物的重量信息,再通过食物能量数据库和确定出的食物的重量信息,可以自动、快速、准确地确定出目标餐盒所装食物的能量,提高食物能量确定效率,减少人力成本。
[0077]
在本技术的一个实施例中,对目标餐盒的每个餐格中的食物进行识别,可以包括以下步骤:
[0078]
步骤一:对目标图片进行图像分割,得到多个图像切片,每个图像切片包括一个餐格;
[0079]
步骤二:分别对每个图像切片进行图像识别,确定每个图像切片的餐格中所装的食物。
[0080]
为方便描述,将上述两个步骤结合起来进行说明。
[0081]
在本技术实施例中,在得到目标图片,确定目标图片中包含的目标餐盒后,可以基于餐格边界特征对目标图片进行图像分割,得到多个图像切片。具体的,可以应用相关图像分割技术对目标图片进行图像分割。得到的每个图像切片包括一个餐格。比如,目标餐盒包
括三个餐格,则对目标图片进行图像分割后,可以得到三个图像切片,图像切片1中包含餐格1,图像切片2中包含餐格2,图像切片3中包含餐格3。
[0082]
得到多个图像切片后,分别对每个图像切片进行图像识别,可以确定每个图像切片的餐格中所装的食物。具体的,可以通过预先训练获得的深度学习模型分别对每个图像切片进行图像识别,确定每个图像切片的餐格中所装的食物。或者,通过相关技术中识别接口依次对每个图像切片进行图像识别,确定每个图像切片的餐格中所装的食物。
[0083]
对目标图片进行图像分割,使得目标餐盒的每个餐格对应一个图像切片,再对每个图像切片进行图像识别,可以避免目标图片中其他部分影响识别结果,可以提高食物识别准确性。
[0084]
在本技术的一个实施例中,基于预先构建的食物重量信息库,确定目标餐盒的每个餐格中食物的重量信息,可以包括以下步骤:
[0085]
第一个步骤:在预先构建的食物重量信息库中查询得到目标餐盒对应的多条重量信息;
[0086]
第二个步骤:针对识别到的每种食物,在目标餐盒对应的多条重量信息中,筛选出当前食物对应其所在餐格的重量信息。
[0087]
为方便描述,将上述两个步骤结合起来进行说明。
[0088]
在本技术实施例中,确定出目标图片中包含的目标餐盒,并对目标餐盒的每个餐格中的食物进行识别之后,可以先在预先构建的食物重量信息库中查询得到目标餐盒对应的多条重量信息。然后针对识别到的每种食物,在目标餐盒对应的多条重量信息中,筛选出当前食物对应其所在餐格的重量信息,可以将筛选出的当前食物对应其所在餐格的重量信息确定为目标餐盒中当前食物的重量信息。当前食物为当前操作所针对的食物。
[0089]
比如,假设目标餐盒为餐盒样式1的餐盒,对目标餐盒的每个餐格中的食物进行识别,得到格子1对应香菇油菜,格子2对应芹菜炒肉,格子3对应米饭,查询食物重量信息库,先得到餐盒样式1的餐盒对应的多条重量信息,然后针对识别到的每种食物,在餐盒样式1的餐盒对应的多条重量信息中,筛选出当前食物对应其所在餐格的重量信息,可以得到格子1装有香菇油菜时食物估算重量为95g,食物估算重量下限为76g,食物估算重量上限为114g,得到格子2装有芹菜炒肉时食物估算重量为80g,食物估算重量下限为64g,食物估算重量上限为96g,得到格子3装有米饭时食物估算重量为100g,食物估算重量下限为80g,食物估算重量上限为120g。
[0090]
先在食物重量信息库中查询得到目标餐盒对应的多条重量信息,再在目标餐盒对应的多条重量信息中,筛选出识别到的每种食物对应其所在餐格的重量信息,可以快速确定出目标餐盒的每个餐格中食物的重量信息。
[0091]
在本技术的一个实施例中,在筛选出当前食物对应其所在餐格的重量信息之后,该方法还可以包括以下步骤:
[0092]
步骤一:确定目标餐盒中当前食物的估算体积与当前食物所在餐格的容积的比例关系;
[0093]
步骤二:根据比例关系,调整筛选出的当前食物的重量信息。
[0094]
为方便描述,将上述两个步骤结合起来进行说明。
[0095]
在本技术实施例中,食物重量信息库中包括的多种餐盒的每个餐格中装有不同食
物时对应食物的重量信息可以是某种状态下对应的重量信息,如装满状态下对应的重量信息。在实际应用中,用户在每个餐格中装的食物可能并不是装满状态。针对识别到的每种食物,在目标餐盒对应的多条重量信息中,筛选出当前食物对应其所在餐格的重量信息之后,可以确定目标餐盒中当前食物的估算体积与当前食物所在餐格的容积的比例关系。具体的,可以通过深度学习模型对目标图片中当前食物的体积进行估算,得到估算体积。目标餐盒的每个餐格的容积可以预先获得。将目标餐盒中当前食物的估算体积与当前食物所在餐格的容积相除,可以得到二者的比例关系。根据比例关系,可以调整筛选出的当前食物的重量信息。具体的,可以将筛选出的当前食物的重量信息与该比例关系相乘,得到调整后当前食物的重量信息。
[0096]
比如,目标餐盒的格子1中装的香菇油菜的估算体积与格子1的容积的比例关系为3/4,则调整后可以得到格子1装有香菇油菜时食物估算重量为95*3/4=71.25g,食物估算重量下限为76*3/4=57g,食物估算重量上限为114*3/4=85.5g。
[0097]
根据目标餐盒中当前食物的估算体积与当前食物所在餐格的容积的比例关系,对筛选出的每种食物的重量信息进行调整,可以提高食物重量确定的准确性。
[0098]
在本技术的一个实施例中,根据预先获得的食物能量数据库和目标餐盒的每个餐格中食物的重量信息,确定目标餐盒所装食物的能量,可以包括以下步骤:
[0099]
第一个步骤:在预先获得的食物能量数据库中查询识别到的每种食物的单位重量对应的能量;
[0100]
第二个步骤:根据每个餐格中食物的重量信息和查询到的每种食物的单位重量对应的能量,确定每个餐格中食物的能量;
[0101]
第三个步骤:将每个餐格中食物的能量进行累加,获得目标餐盒所装食物的能量。
[0102]
为方便描述,将上述三个步骤结合起来进行说明。
[0103]
在本技术实施例中,预先获得的食物能量数据库可以包括多种食物单位重量对应的能量,如包括西红柿炒鸡蛋每100g所含的热量、碳水化合物、蛋白质、脂肪等能量的数值。
[0104]
在识别到目标餐盒的每个餐格中的食物之后,可以在食物能量数据库中查询识别到的每种食物的单位重量对应的能量。具体的,可以通过实体链接技术将识别到的每种食物映射到食物能量数据库中,得到每种食物的单位重量对应的能量。
[0105]
根据每个餐格中食物的重量信息和查询到的每种食物的单位重量对应的能量,可以确定每个餐格中食物的能量。具体的,针对每种食物,可以将该食物的重量信息与该食物的单位重量对应的能量进行相乘,得到该食物的能量。
[0106]
确定出每个餐格中食物的能量之后,进一步可以将每个餐格中食物的能量进行累加,获得目标餐盒所装食物的能量。如果能量包括多种营养元素,则需将同类营养元素进行累加。比如,目标餐盒包括三个餐格,目标餐盒的格子1中食物的能量包括x1卡路里的热量和y1克蛋白质,格子2中食物的能量包括x2卡路里的热量和y2克蛋白质,格子3中食物的能量包括x3卡路里的热量和y3克蛋白质,将每个餐格中食物的能量进行累加,获得的目标餐盒所装食物的能量包括(x1 x2 x3)卡路里的热量和(y1 y2 y3)克的蛋白质。
[0107]
通过食物能量数据库和每个餐格中食物的重量信息,先确定出每个餐格中食物的能量,再将每个餐格中食物的能量进行累加,可以准确确定出目标餐盒所装食物的能量。
[0108]
重量信息可以包括食物估算重量、食物估算重量下限和食物估算重量上限,相应
的,确定出的目标餐盒所装食物的能量也可以得到食物估算能量、食物估算能量下限和食物估算能量上限。
[0109]
在本技术的一个实施例中,确定目标图片中包含的目标餐盒,可以包括以下步骤:
[0110]
步骤一:对目标图片中的餐盒特征进行识别;
[0111]
步骤二:根据识别到的餐盒特征,确定目标图片中包含的目标餐盒。
[0112]
为便于描述,将上述两个步骤结合起来进行说明。
[0113]
在本技术实施例中,不同餐盒具有不同餐盒特征,比如餐盒上粘贴的图文标识,或者不同餐盒包含的餐格个数不同。获得目标图片后,可以对目标图片中的餐格特征进行识别,根据识别到的餐盒特征,确定目标图片中包含的目标餐盒。
[0114]
根据餐盒特征,可以准确确定出目标图片中包含的目标餐盒,为后续的重量、能量的准确确定等提供基础保障。
[0115]
在本技术的一个实施例中,在确定目标图片中包含的目标餐盒之前,该方法还可以包括以下步骤:
[0116]
对目标图片进行异常检测;如果未检测到异常,则执行确定目标图片中包含的目标餐盒的步骤。
[0117]
在本技术实施例中,在得到目标图片后,在确定目标图片中包含的目标餐盒之前,可以先对目标图片进行异常检测。具体的,可以确定目标图片的清晰度是否达到设定的清晰度阈值,或者,确定目标图片中的餐盒是否为指定餐盒。
[0118]
可以预先训练异常检测模型,训练时使用的正样本可以为清晰度高于预设清晰度阈值的图片和/或指定餐盒的图片,负样本可以为清晰度低于清晰度阈值和/或其他餐盒以及家用餐具的图片。通过预先训练获得的异常检测模型可以对目标图片进行异常检测。如果未检测到异常,则可以执行确定目标图片中包含的目标餐盒的步骤,如果检测到异常,则可以返回异常提示信息,以使用户根据异常提示信息调整餐食,重新拍照上传图片。
[0119]
通过异常检测可以确定目标图片是否存在异常,对于存在异常的图片不再进行后续步骤的操作,节省计算资源。
[0120]
在本技术的一个实施例中,在确定目标餐盒所装食物的能量之后,该方法还可以包括以下步骤:
[0121]
输出提示信息,提示信息用于提示目标餐盒所装食物的能量是否满足预设的能量要求。
[0122]
可以理解的是,对于不同用户可以设定不同的能量要求,在确定目标餐盒所装食物的能量之后,可以将确定出的目标餐盒所装食物的能量与预设的能量要求进行比较,并确定目标餐盒所装食物的能量是否满足预设的能量要求,输出相应的提示信息。如果目标餐盒所装食物的能量满足预设的能量要求,则可以输出合格提示信息,如果目标餐盒所装食物的能量不满足预设的能量要求,则可以输出不合格提示信息以及具体哪种营养元素不符合要求,以提示用户及时调整饮食结构,为用户饮食调整提供依据。
[0123]
为方便理解,以图2所示的食物能量确定具体过程为例,对本技术实施例再次进行说明。
[0124]
先获得目标图片,目标图片为用户将食物装在指定餐盒后拍照上传;
[0125]
对目标图片进行异常检测,如果检测到异常,则结束能量确定过程,如果未检测到
异常,则确定目标图片中包含的目标餐盒,即确定目标图片中包含哪种餐盒样式的餐盒;
[0126]
然后进行食物识别,识别目标餐盒的每个餐格中的食物,即确定目标餐盒的每个餐格中装的是哪种食物;
[0127]
再进行食物重量信息确定,基于食物重量信息库,确定目标餐盒的每个餐格中食物的重量信息;
[0128]
再进行食物能量确定,根据食物能量数据库和目标餐盒的每个餐格中食物的重量信息,确定目标餐盒所装食物的能量;
[0129]
最后输出提示信息,将目标餐盒所装食物的能量与能量要求进行比较,给出相应的提示信息。
[0130]
通过上述过程,可以自动、快速、准确地确定出目标餐盒所装食物的能量,提高食物能量确定的准确性和确定效率,减少人力成本,为用户进行饮食调整提供重要依据。
[0131]
相应于上面的方法实施例,本技术实施例还提供了一种食物能量确定装置,下文描述的食物能量确定装置与上文描述的食物能量确定方法可相互对应参照。
[0132]
参见图3所示,该装置可以包括以下模块:
[0133]
目标餐盒确定模块310,用于确定目标图片中包含的目标餐盒,目标餐盒包括多个餐格,每个餐格中装有食物;
[0134]
食物识别模块320,用于对目标餐盒的每个餐格中的食物进行识别;
[0135]
重量信息确定模块330,用于基于预先构建的食物重量信息库,确定目标餐盒的每个餐格中食物的重量信息,食物重量信息库包括多种餐盒的每个餐格中装有不同食物时对应食物的重量信息;
[0136]
食物能量确定模块340,用于根据预先获得的食物能量数据库和目标餐盒的每个餐格中食物的重量信息,确定目标餐盒所装食物的能量。
[0137]
应用本技术实施例所提供的装置,先确定出目标图片中包含的目标餐盒,该目标餐盒包括多个餐格,每个餐格中装有食物,然后对目标餐盒的每个餐格中的食物进行识别,并基于食物重量信息库,确定目标餐盒的每个餐格中食物的重量信息,最后根据食物能量数据库和目标餐盒的每个餐格中食物的重量信息,确定目标餐盒所装食物的能量。通过食物重量信息库,可以准确确定出每个餐格中食物的重量信息,再通过食物能量数据库和确定出的食物的重量信息,可以自动、快速、准确地确定出目标餐盒所装食物的能量,提高食物能量确定效率,减少人力成本。
[0138]
在本技术的一种具体实施方式中,食物识别模块320,用于:
[0139]
对目标图片进行图像分割,得到多个图像切片,每个图像切片包括一个餐格;
[0140]
分别对每个图像切片进行图像识别,确定每个图像切片的餐格中所装的食物。
[0141]
在本技术的一种具体实施方式中,重量信息确定模块330,用于:
[0142]
在预先构建的食物重量信息库中查询得到目标餐盒对应的多条重量信息;
[0143]
针对识别到的每种食物,在目标餐盒对应的多条重量信息中,筛选出当前食物对应其所在餐格的重量信息。
[0144]
在本技术的一种具体实施方式中,重量信息确定模块330,还用于:
[0145]
在筛选出当前食物对应其所在餐格的重量信息之后,确定目标餐盒中当前食物的估算体积与当前食物所在餐格的容积的比例关系;
[0146]
根据比例关系,调整筛选出的当前食物的重量信息。
[0147]
在本技术的一种具体实施方式中,食物能量确定模块340,用于:
[0148]
在预先获得的食物能量数据库中查询识别到的每种食物的单位重量对应的能量;
[0149]
根据每个餐格中食物的重量信息和查询到的每种食物的单位重量对应的能量,确定每个餐格中食物的能量;
[0150]
将每个餐格中食物的能量进行累加,获得目标餐盒所装食物的能量。
[0151]
在本技术的一种具体实施方式中,目标餐盒确定模块310,用于:
[0152]
对目标图片中的餐盒特征进行识别;
[0153]
根据识别到的餐盒特征,确定目标图片中包含的目标餐盒。
[0154]
在本技术的一种具体实施方式中,能量包括热量、碳水化合物、蛋白质、脂肪中的至少一种营养元素。
[0155]
在本技术的一种具体实施方式中,还包括异常检测模块,用于:
[0156]
在确定目标图片中包含的目标餐盒之前,对目标图片进行异常检测;
[0157]
如果未检测到异常,则执行确定目标图片中包含的目标餐盒的步骤。
[0158]
在本技术的一种具体实施方式中,还包括提示信息输出模块,用于:
[0159]
在确定目标餐盒所装食物的能量之后,输出提示信息,提示信息用于提示目标餐盒所装食物的能量是否满足预设的能量要求。
[0160]
相应于上面的方法实施例,本技术实施例还提供了一种电子设备,包括:
[0161]
存储器,用于存储计算机程序;
[0162]
处理器,用于执行计算机程序时实现上述食物能量确定方法的步骤。
[0163]
如图4所示,为电子设备的组成结构示意图,电子设备可以包括:处理器10、存储器11、通信接口12和通信总线13。处理器10、存储器11、通信接口12均通过通信总线13完成相互间的通信。
[0164]
在本技术实施例中,处理器10可以为中央处理器(central processing unit,cpu)、特定应用集成电路、数字信号处理器、现场可编程门阵列或者其他可编程逻辑器件等。
[0165]
处理器10可以调用存储器11中存储的程序,具体的,处理器10可以执行食物能量确定方法的实施例中的操作。
[0166]
存储器11中用于存放一个或者一个以上程序,程序可以包括程序代码,程序代码包括计算机操作指令,在本技术实施例中,存储器11中至少存储有用于实现以下功能的程序:
[0167]
确定目标图片中包含的目标餐盒,目标餐盒包括多个餐格,每个餐格中装有食物;
[0168]
对目标餐盒的每个餐格中的食物进行识别;
[0169]
基于预先构建的食物重量信息库,确定目标餐盒的每个餐格中食物的重量信息,食物重量信息库包括多种餐盒的每个餐格中装有不同食物时对应食物的重量信息;
[0170]
根据预先获得的食物能量数据库和目标餐盒的每个餐格中食物的重量信息,确定目标餐盒所装食物的能量。
[0171]
在一种可能的实现方式中,存储器11可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统,以及至少一个功能(比如信息查询功能、图像识别功能)所需的应
用程序等;存储数据区可存储使用过程中所创建的数据,如重量数据、能量数据等。
[0172]
此外,存储器11可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件或其他易失性固态存储器件。
[0173]
通信接口12可以为通信模块的接口,用于与其他设备或者系统连接。
[0174]
当然,需要说明的是,图4所示的结构并不构成对本技术实施例中电子设备的限定,在实际应用中电子设备可以包括比图4所示的更多或更少的部件,或者组合某些部件。
[0175]
相应于上面的方法实施例,本技术实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述食物能量确定方法的步骤。
[0176]
此外,需要说明的是:本技术实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或者计算机程序可以包括计算机指令,该计算机指令可以存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器可以执行该计算机指令,使得该电子设备执行前文所对应实施例中食物能量确定方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本技术所涉及的计算机程序产品或者计算机程序实施例中未披露的技术细节,请参照本技术方法实施例的描述。
[0177]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
[0178]
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0179]
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
[0180]
本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以对本技术进行若干改进和修饰,这些改进和修饰也落入本技术权利要求的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献