一种基于图像的食物信息提供方法

文档序号:6550063阅读:125来源:国知局
一种基于图像的食物信息提供方法
【专利摘要】本发明公开了一种基于图像的食物信息提供方法,其通过预先收集食物图像,建立食物标签及与该食物标签相对应的食物信息,并对所述的食物图像进行标注,接收待识别图像后,通过对其进行图像显著性检测得到待识别图像的主体区域,根据该主体区域对待识别图像与数据库的食物图像进行相似度匹配,得到相似度最高的食物图像,并将该食物图像对应的食物标签作为待识别图像的食物标签,最后通过该食物标签获取待识别图像的食物信息;不仅能够大大提升识别主体对象的正确率,适应各式各样的构图,而且仅需通过图像就能够获取食物信息,给用户带来极大的便利,为人们的生活健康提供有利的帮助。
【专利说明】一种基于图像的食物信息提供方法
【技术领域】
[0001]本发明涉及一种信息处理方法,特别是一种基于图像的食物信息提供方法。
【背景技术】
[0002]目前,我们在识别图像中的主体对象主要是提取图像的最中间位置的图像来进行识别,但是我们在拍摄时为了使拍摄照片更好看,往往在构图上采用“黄金分割”,它是广泛存在于自然界的一种现象,简单的说就是将摄影的主体对象放在位于画面大约三分之一处,让人觉得画面和谐充满美感。“黄金分割法”又称“三分法则”,“三分法则”就是将整个画面在横、竖方向各用两条直线分割成等份的三部分,我们将拍摄的主体放置在任意一条直线或直线的交点上这样比较符合人类的视觉习惯。拍摄时可直接调出相机的“井”字辅助线,将拍摄主体放在4个交叉点上,这样画面立刻就活了起来。而这样就导致图像主体识别的错误率居高不下。而健康一直是我们关注的重大问题之一,但大部分对食物的了解有限,有的连名称都不知道,更无法查询其相应的信息,因此如何通过拍摄图像并识别食物主体从而获取食物的各种相关信息成为我们关注的重点。

【发明内容】

[0003]本发明为解决上述问题,提供了一种基于图像的食物信息提供方法,方便快捷,且图像识别的准确率高。
[0004]为实现上述目的,本发明采用的技术方案为:
[0005]一种基于图像的食物信息提供方法,其特征在于,包括以下步骤:
[0006]10.收集食物图像,建立食物标签及与该食物标签相对应的食物信息,对所述的食物图像进行标注食物标签并储存至系统数据库;
[0007]20.接收待识别图像;
[0008]30.对所述待识别图像进行图像显著性检测以获取图像的显著性区域;
[0009]40.计算包含所述的显著性区域的最大矩形区域,得到待识别图像的主体区域;
[0010]50.根据所述的主体区域对待识别图像与数据库的食物图像进行相似度匹配,得到相似度最高的食物图像,并将该食物图像对应的食物标签作为待识别图像的食物标签,通过该食物标签获取待识别图像的食物信息。
[0011]优选的,所述的食物图像包括:食物外包装的图像、食物内包装的图像、食物真实的图像、食物的细节图像,所述的步骤10中还对收集到的食物图像进行显著性检测以及获取该食物图像的主体区域。
[0012]优选的,所述的步骤30中对待识别图像进行图像显著性检测进一步包括:
[0013]31.提取图像特征:采用高斯滤波器对待识别图像进行滤波和采样,形成以待识别图像为底层的高斯金字塔模型;然后对高斯金字塔模型中的每一层分别提取各种图像特征,形成特征金字塔模型;再根据该特征金字塔模型进行计算得到所述待识别图像的特征图;[0014]32.生成显著图:把每一个所述的特征图归一化处理,并将各个归一化处理后的特征图进行综合计算,得到对应于待识别图像的显著图。
[0015]优选的,所述的步骤30中对待识别图像进行图像显著性检测后生成显著图,用白色和黑色对该显著图进行标记以获取图像的显著性区域,其中,白色表示图像中显著的区域,黑色表示图像中不显著的区域。
[0016]优选的,所述的步骤40中计算包含所述的显著性区域的最大矩形区域,主要通过标记法对所述显著图进行连通区域的计算和提取,从而得到最大矩形区域。
[0017]优选的,所述的标记法进一步包括:
[0018]41.初始标记值记为I ;
[0019]42.对所述显著图进行逐行扫描,找到一个未标记区域的颜色为白色的像素点,标记该像素点的标记值为I ;
[0020]43.检查该点的八邻域的像素点并标记像素点满足为颜色为白色的像素点且未被标记的标记值为当前标记值,同时将新增的标记像素点记录下来作为区域增长的种子点;
[0021]44.在后续的标记像素点过程中,不断从记录种子点的数组中取出一个种子,实施上述的操作,如此循环,直到记录种子点的数组为空;
[0022]45.若一个连通区域标记结束,则标记值+1,并遍历下一个连通区域,直到所有像素点被标记为止;
[0023]46.获取每个标记值的最大区域,并将每个标记值为I的白色区域连接起来,然后计算出显著性区域与非显著性区域的比例达到最大的矩形区域为所述的最大矩形区域。
[0024]优选的,所述的食物标签包括以下标签的一种或多种:饮料标签、蛋糕标签、罐头标签。
[0025]优选的,所述的食物信息包括以下信息的一种或多种:卡路里含量、脂肪含量、蛋白含量、淡水化合物含量、消化时间。
[0026]优选的,所述的步骤50中根据所述的主体区域对待识别图像与数据库的食物图像进行相似度匹配,主要是利用感知哈希算法进行计算,得到数据库中与待识别图像匹配度最闻的食物图像。
[0027]本发明的有益效果是:
[0028]本发明的一种基于图像的食物信息提供方法,其通过预先收集食物图像,建立食物标签及与该食物标签相对应的食物信息,并对所述的食物图像进行标注,接收待识别图像后,通过对其进行图像显著性检测得到待识别图像的主体区域,根据该主体区域对待识别图像与数据库的食物图像进行相似度匹配,得到相似度最高的食物图像,并将该食物图像对应的食物标签作为待识别图像的食物标签,最后通过该食物标签获取待识别图像的食物信息;不仅能够大大提升识别主体对象的正确率,适应各式各样的构图,而且仅需通过图像就能够获取食物信息,给用户带来极大的便利,为人们的生活健康提供有利的帮助。
【专利附图】

【附图说明】
[0029]此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0030]图1为本发明一种基于图像的食物信息提供方法的流程简图。【具体实施方式】
[0031]为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图及实施例对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0032]如图1所示,本发明的一种基于图像的食物信息提供方法,其包括以下步骤:
[0033]10.收集食物图像,建立食物标签及与该食物标签相对应的食物信息,对所述的食物图像进行标注食物标签并储存至系统数据库;
[0034]20.接收待识别图像;
[0035]30.对所述待识别图像进行图像显著性检测以获取图像的显著性区域;
[0036]40.计算包含所述的显著性区域的最大矩形区域,得到待识别图像的主体区域;主要是为了获取显著性区域最大的部分,命为主体区域,方便接下来的主体对象的识别;
[0037]50.根据所述的主体区域对待识别图像与数据库的食物图像进行相似度匹配,得到相似度最高的食物图像,并将该食物图像对应的食物标签作为待识别图像的食物标签,通过该食物标签获取待识别图像的食物信息。
[0038]所述的食物图像包括:食物外包装的图像、食物内包装的图像、食物真实的图像、食物的细节图像,所述的步骤10中还对收集到的食物图像进行显著性检测以及获取该食物图像的主体区域,以提高步骤50中的相似度匹配的精度。
[0039]所述的步骤30中对待识别图像进行图像显著性检测进一步包括:
[0040]31.提取图像特征:采用高斯滤波器对待识别图像进行滤波和采样,形成以待识别图像为底层的高斯金字塔模型;然后对高斯金字塔模型中的每一层分别提取各种图像特征,形成特征金字塔模型;再根据该特征金字塔模型进行计算得到所述待识别图像的特征图;具体为:先把待识别图像表示成9层的高斯金字塔,其中第O层是待识别图像,I到8层分别是用5*5的高斯滤波器对待识别图像进行滤波和采样形成的,大小分别为待识别图像的1/2到1/256,然后对金字塔每一层分别提取各种特征,例如:亮度、红色、绿色、蓝色、黄色、方向等特征,形成特征金字塔,然后再进行计算得到各个特征的特征图。
[0041]32.生成显著图:把每一个所述的特征图归一化处理,并将各个归一化处理后的特征图进行综合计算,得到对应于待识别图像的显著图;具体为:对每个特征图分别用二维高斯差函数进行卷积,并把卷积结果叠加回原特征图,使同种特征以侧抑制的方式在空间上竞争;卷积和迭代过程进行多次,这样可以让少数几个最显著的点均匀分布在整个特征图上,从而每个特征图上只保留少数的几个显著点,在叠加多个特征图时能把多种显著特征的点突现出来;接下来分别把每一类归一化后的特征图逐点求和,得到对应于每一类特征的显著图,综合所有特征的显著性,就得到对应于待识别图像的显著图。。
[0042]所述的步骤30中对待识别图像进行图像显著性检测后生成显著图,用白色和黑色对该显著图进行标记以获取图像的显著性区域,其中,白色表示图像中显著的区域,黑色表示图像中不显著的区域。
[0043]所述的步骤40中计算包含所述的显著性区域的最大矩形区域,主要通过标记法对所述显著图进行连通区域的计算和提取,从而得到最大矩形区域。
[0044]所述的标记法进一步包括:[0045]41.初始标记值记为I ;
[0046]42.对所述显著图进行逐行扫描,找到一个未标记区域的颜色为白色的像素点,标记该像素点的标记值为I ;
[0047]43.检查该点的八邻域的像素点并标记像素点满足为颜色为白色的像素点且未被标记的标记值为当前标记值,同时将新增的标记像素点记录下来作为区域增长的种子点;
[0048]44.在后续的标记像素点过程中,不断从记录种子点的数组中取出一个种子,实施上述的操作,如此循环,直到记录种子点的数组为空;
[0049]45.若一个连通区域标记结束,则标记值+1,并遍历下一个连通区域,直到所有像素点被标记为止;
[0050]46.获取每个标记值的最大区域,并将每个标记值为I的白色区域连接起来,然后计算出显著性区域与非显著性区域的比例达到最大的矩形区域为所述的最大矩形区域。
[0051]本实施例中,所述的食物标签包括以下标签的一种或多种:饮料标签、蛋糕标签、罐头标签等,例如饮料标签还可以进一步细分为可口可乐、雪碧等;所述的食物信息主要是指健康信息,本实施例中包括以下信息的一种或多种:卡路里含量、脂肪含量、蛋白含量、淡水化合物含量、消化时间。
[0052]本实施例中,所述的步骤50中根据所述的主体区域对待识别图像与数据库的食物图像进行相似度匹配,主要是利用感知哈希算法进行计算,得到数据库中与待识别图像匹配度最高的食物图像。其中,感知哈希算法进行计算的步骤如下:
[0053]①缩小尺寸:
[0054]将图像缩小到8x8的尺寸,总共64个像素;这一步的作用是去除图像的细节,只保留结构、明暗等基本信息,摒弃不同尺寸、比例带来的图像差异。
[0055]②简化色彩:
[0056]将缩小后的图像,转为64级灰度;也就是说,所有像素点总共只有64种颜色。
[0057]③计算平均值:
[0058]计算所有64个像素的灰度平均值。
[0059]④比较像素的灰度:
[0060]将每个像素的灰度,与平均值进行比较;大于或等于平均值,记为I ;小于平均值,记为O。
[0061]⑤计算哈希值:
[0062]将上一步的比较结果,组合在一起,就构成了一个64位的整数,相当于这张图像的指纹。组合的次序并不重要,只要保证所有图像都采用同样次序就行了。
[0063]查找相似度最高的图像即通过计算两张图像的哈希值在各个位置上的距离总和,得到距离总和最低的图像为与待识别图像相似度最高的食物图像。
[0064]本发明通过收集各种食物相关的图像,并且为其打上合适的食物标签,并且将该食物的相关信息记录起来储存在系统数据库;接收待识别图像后,通过对其进行图像显著性检测得到待识别图像的主体区域,根据该主体区域对待识别图像与数据库的食物图像进行相似度匹配,得到相似度最高的食物图像,并将该食物图像对应的食物标签作为待识别图像的食物标签,最后通过该食物标签获取待识别图像的食物信息;不仅能够大大提升识别主体对象的正确率,适应各式各样的构图,而且仅需通过图像就能够获取食物信息,给用户带来极大的便利,为人们的生活健康提供有利的帮助。
[0065]上述说明示出并描述了本发明的优选实施例,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
【权利要求】
1.一种基于图像的食物信息提供方法,其特征在于,包括以下步骤: .10.收集食物图像,建立食物标签及与该食物标签相对应的食物信息,对所述的食物图像进行标注食物标签并储存至系统数据库; .20.接收待识别图像; .30.对所述待识别图像进行图像显著性检测以获取图像的显著性区域; .40.计算包含所述的显著性区域的最大矩形区域,得到待识别图像的主体区域; .50.根据所述的主体区域对待识别图像与数据库的食物图像进行相似度匹配,得到相似度最高的食物图像,并将该食物图像对应的食物标签作为待识别图像的食物标签,通过该食物标签获取待识别图像的食物信息。
2.根据权利要求1所述的一种基于图像的食物信息提供方法,其特征在于:所述的食物图像包括:食物外包装的图像、食物内包装的图像、食物真实的图像、食物的细节图像,所述的步骤10中还对收集到的食物图像进行显著性检测以及获取该食物图像的主体区域。
3.根据权利要求1所述的一种基于图像的食物信息提供方法,其特征在于:所述的步骤30中对待识别图像进行图像显著性检测进一步包括: 31.提取图像特征:采用高斯滤波器对待识别图像进行滤波和采样,形成以待识别图像为底层的高斯金字塔模型;然后对高斯金字塔模型中的每一层分别提取各种图像特征,形成特征金字塔模型;再根据该特征金字塔模型进行计算得到所述待识别图像的特征图; 32.生成显著图:把每一个所述的特征图归一化处理,并将各个归一化处理后的特征图进行综合计算,得到对应于待识别图像的显著图。
4.根据权利要求1或3所述的一种基于图像的食物信息提供方法,其特征在于:所述的步骤30中对待识别图像进行图像显著性检测后生成显著图,用白色和黑色对该显著图进行标记以获取图像的显著性区域,其中,白色表示图像中显著的区域,黑色表示图像中不显著的区域。
5.根据权利要求4所述的一种基于图像的食物信息提供方法,其特征在于:所述的步骤40中计算包含所述的显著性区域的最大矩形区域,主要通过标记法对所述显著图进行连通区域的计算和提取,从而得到最大矩形区域。
6.根据权利要求5所述的一种基于图像的食物信息提供方法,其特征在于:所述的标记法进一步包括: .41.初始标记值记为I; .42.对所述显著图进行逐行扫描,找到一个未标记区域的颜色为白色的像素点,标记该像素点的标记值为I ; .43.检查该点的八邻域的像素点并标记像素点满足为颜色为白色的像素点且未被标记的标记值为当前标记值,同时将新增的标记像素点记录下来作为区域增长的种子点; .44.在后续的标记像素点过程中,不断从记录种子点的数组中取出一个种子,实施上述的操作,如此循环,直到记录种子点的数组为空; .45.若一个连通区域标记结束,则标记值+1,并遍历下一个连通区域,直到所有像素点被标记为止; .46.获取每个标记值的最大区域,并将每个标记值为I的白色区域连接起来,然后计算出显著性区域与非显著性区域的比例达到最大的矩形区域为所述的最大矩形区域。
7.根据权利要求1所述的一种基于图像的食物信息提供方法,其特征在于:所述的食物标签包括以下标签的一种或多种:饮料标签、蛋糕标签、罐头标签。
8.根据权利要求1所述的一种基于图像的食物信息提供方法,其特征在于:所述的食物信息包括以下信息的一种或多种:卡路里含量、脂肪含量、蛋白含量、淡水化合物含量、消化时间。
9.根据权利要求1所述的一种基于图像的食物信息提供方法,其特征在于:所述的步骤50中根据所述的主体区域对待识别图像与数据库的食物图像进行相似度匹配,主要是利用感知哈希算法进 行计算,得到数据库中与待识别图像匹配度最高的食物图像。
【文档编号】G06K9/46GK104021207SQ201410273492
【公开日】2014年9月3日 申请日期:2014年6月18日 优先权日:2014年6月18日
【发明者】张伟, 傅松林, 李志阳, 张长定 申请人:厦门美图之家科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1