食物图像检测方法及装置与流程

文档序号:11200202阅读:412来源:国知局
食物图像检测方法及装置与流程

本发明涉及图像处理领域,特别是涉及一种食物图像检测方法及装置。



背景技术:

目前,智能终端设备已成为人们生活中必不可少的物品,人们经常在智能终端中存储拍摄的各类照片。随着人们生活水平的提高,人们越来越重视饮食健康,经常会选取智能终端内存储的食物图片进行膳食分析或健康分析,然而,传统用户选取食物图片的方式为人工查找,用户要在杂乱无章的、数目繁多的照片中逐张查看,选出包括食物图像的图片,食物图像选取效率低,且用户人工劳动强度大,用户选取食物图像非常不方便。



技术实现要素:

基于此,有必要针对传统在智能终端中选取食物图像效率低、操作不方便的问题,提供一种食物图像检测方法及装置。

一种食物图像检测方法,包括以下步骤:

获取目标图像;

对获取到的目标图像进行预处理;

将预处理后的目标图像输入食物图像检测模型,得到目标图像的食物特征隶属度;

将食物特征隶属度与预设食物特征隶属度阈值进行比较;

当食物特征隶属度大于或等于预设食物特征隶属度阈值时,标记目标图像为食物图像。

在其中一个实施例中,上述食物图像检测方法还包括:

当食物特征隶属度大于或等于预设食物特征隶属度阈值时,获取目标图像中食物图像的位置,标记食物图像的位置。

在其中一个实施例中,获取目标图像的步骤之前,还包括对食物图像样本集进行可变形部件模型算法训练得到食物图像检测模型的步骤,对食物图像样本集进行可变形部件模型算法训练得到食物图像检测模型的步骤包括:

获取食物图像样本集,食物图像样本集包括多张食物图像;

对食物图像进行预处理;

对食物特征图像进行食物位置标注;

将完成食物位置标注的食物图像输入可变形部件模型,将食物位置处的图像划分为多个检测窗口,提取每个检测窗口内的食物图像梯度特征,生成食物梯度特征直方图,获取多个食物梯度特征直方图;对多个食物图像梯度特征直方图进行线性拟合得到食物图像检测模型。

在其中一个实施例中,对多张食物图像的食物图像梯度特征直方图进行线性拟合得到食物图像检测模型的步骤之前,还包括:

通过可变形部件模型检测多张非食物图像,获取多个非食物图像梯度特征直方图;

将多个非食物图像梯度特征直方图和多个食物图像梯度特征直方图进行支持向量机分类,获取多个用于进行线性拟合的食物图像梯度特征直方图。

在其中一个实施例中,上述食物图像检测方法还包括:

获取多张食物图像和多张非食物图像;

获取预设食物特征隶属度阈值范围;

将多张食物图像和多张非食物图像输入食物图像检测模型,根据预设食物特征隶属度阈值范围选取多个食物特征隶属度阈值检测多张食物图像和多张非食物图像,计算每个食物特征隶属度阈值对应的查准率和查全率,选取得到的查准率与查全率之和最大的食物特征隶属度阈值为预设食物特征隶属度阈值。

一种食物图像检测装置,包括:

目标图像获取模块,用于获取目标图像;

图像预处理模块,用于对获取到的目标图像进行预处理;

图像检测模块,用于将预处理后的目标图像输入食物图像检测模型,得到目标图像的食物特征隶属度;

阈值比较模块,用于将食物特征隶属度与预设食物特征隶属度阈值进行比较;

图像标记模块,用于当食物特征隶属度大于或等于预设食物特征隶属度阈值时,标记目标图像为食物图像。

在其中一个实施例中,上述食物图像检测装置还包括:

位置标记模块,用于当食物特征隶属度大于或等于预设食物特征隶属度阈值时,获取目标图像中食物图像的位置,标记食物图像的位置。

在其中一个实施例中,上述食物图像检测装置还包括用于对食物图像样本集进行可变形部件模型算法训练得到食物图像检测模型的模型训练模块,该模型训练模块包括:

第一样本图像获取模块,用于获取食物图像样本集,食物图像样本集包括多张食物图像;

样本图像预处理模块,用于对食物图像进行预处理;

样本图像标记模块,用于对食物特征图像进行食物位置标注;

图像训练模块,用于将完成食物位置标注的食物图像输入可变形部件模型,将食物位置处的图像划分为多个检测窗口,提取每个检测窗口内的食物图像梯度特征,生成食物梯度特征直方图,获取多个食物梯度特征直方图;对多个食物图像梯度特征直方图进行线性拟合得到食物图像检测模型。

在其中一个实施例中,上述模型训练模块还包括:

第二样本图像获取模块,用于通过可变形部件模型检测多张非食物图像,获取多个非食物图像梯度特征直方图;

梯度特征直方图分类模块,用于将多个非食物图像梯度特征直方图和多个食物图像梯度特征直方图进行支持向量机分类,获取多个用于进行线性拟合的食物图像梯度特征直方图。

在其中一个实施例中,上述模型训练模块还包括:

检测图像获取模块,用于获取多张食物图像和多张非食物图像;

隶属度阈值获取模块,用于获取预设食物特征隶属度阈值范围;

预设隶属度阈值选取模块,用于将多张食物图像和多张非食物图像输入食物图像检测模型,根据预设食物特征隶属度阈值范围选取多个食物特征隶属度阈值检测多张食物图像和多张非食物图像,计算每个食物特征隶属度阈值对应的查准率和查全率,选取得到的查准率与查全率之和最大的食物特征隶属度阈值为预设食物特征隶属度阈值。

上述食物图像检测方法及装置,通过食物图像检测模型检测目标图像,得到目标图像的食物特征隶属度,并将目标图像的食物特征隶属度与预设食物特征隶属度阈值进行比较,当食物特征隶属度大于或等于预设食物特征隶属度阈值时,标记目标图像为食物图像,实现了食物图像自动检测,食物图像检测效率高,能够大大提高食物图像选取效率,有效降低人工劳动强度,方便用户快速、准确的选取食物图片。

附图说明

图1为一个实施例中食物图像检测方法的流程图;

图2为一个实施例中训练得到食物图像检测模型的方法流程图;

图3为一个实施例中根据每个食物特征隶属度阈值对应的检测查准率和检测查全率绘制的查准率-查全率曲线示意图;

图4为一个实施例中食物图像检测装置的结构示意图;

图5为又一个实施例中食物图像检测装置的结构示意图;

图6为一个实施例中模型训练模块的结构示意图;

图7为又一个实施例中模型训练模块的结构示意图。

具体实施方式

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

请参阅图1,一种食物图像检测方法,包括以下步骤:

步骤102:获取目标图像。

目标图像为待检测图像,目标图像可以是用户输入或指定的任意图像,如,目标图像可以是食物图像、人物图像或风景图像等任意图像,终端获取到待检测的目标图像后执行步骤104。本实施例中,终端可以是智能手机、平板电脑或便携式可穿戴设备等电子设备,本实施例不做具体限定。

步骤104:对获取到的目标图像进行预处理。

具体地,对目标图像进行预处理包括对目标图像的尺寸大小、各像素点数据等进行标准化处理使图像符合检测模型的输入需求。

步骤106:将预处理后的目标图像输入食物图像检测模型,得到目标图像的食物特征隶属度。

具体地,食物图像检测模型是通过对食物图像样本集进行可变形部件模型算法训练得到的,食物图像检测模型的输出结果为目标图像的食物特征隶属度。本实施例中,食物特征隶属度即为目标图像与食物图像梯度特征直方图的相似度。食物图像检测模型存储可变形模型部件算法和通过对食物图像样本集进行可变形部件模型算法训练得到的食物图像梯度特征直方图,食物图像检测模型对目标图像进行可变形部件模型算法检测,计算目标图像的梯度特征直方图与存储的食物图像梯度特征直方图的相似度,得到目标图像的事物特征隶属度。终端将经过预处理后的目标图像输入食物图像检测模型可以获得目标图像的食物图像隶属度。

步骤108:将食物特征隶属度与预设食物特征隶属度阈值进行比较。

具体地,当获取到目标图像的食物图像隶属度后,将得到的目标图像食物隶属度与预设食物特征隶属度阈值进行比较,判断目标图像是否为食物图像,当食物特征隶属度大于或等于预设食物特征隶属度阈值时,目标图像为食物图像,执行步骤110;否则,目标图像为非食物图像,不做处理。

步骤110:当食物特征隶属度大于或等于预设食物特征隶属度阈值时,标记目标图像为食物图像。

上述食物图像检测方法,通过食物图像检测模型检测目标图像,得到目标图像的食物特征隶属度,并将目标图像的食物特征隶属度与预设食物特征隶属度阈值进行比较,当食物特征隶属度大于或等于预设食物特征隶属度阈值时,标记目标图像为食物图像,实现了食物图像自动检测,食物图像检测效率高,能够大大提高食物图像选取效率,有效降低人工劳动强度,方便用户快速、准确的选取食物图片。

在一个实施例中,上述食物图像检测方法还包括:当食物特征隶属度大于或等于预设食物特征隶属度阈值时,获取目标图像中食物图像的位置,标记食物图像的位置。

具体地,当食物特征隶属于阈值大于或等于预设食物特征隶属度阈值时,目标图像为食物图像,此时,进一步分析目标图像中食物图像的位置,并对食物图像的位置进行标记,如可采用矩形框标记等,以输出食物图像的位置。

在一个实施例中,获取目标图像的步骤之前,还包括对食物图像样本集进行可变形部件模型算法训练得到食物图像检测模型的步骤,如图2所示,对食物图像样本集进行可变形部件模型算法训练得到食物图像检测模型的步骤包括:

步骤202:获取食物图像样本集,食物图像样本集包括多张食物图像。

本实施例中,采集多张食物图像建立食物图像样本集,如,食物图像包括糕点、面食、糖类、虾类、肉类、骨类、鱼类和蔬菜类等八个类别的食物图像。具体地,分别选取以上八个类别的食物图像各500张,共计4000张食物图像建立食物图像样本集。具体食物图像数量可根据实际精度要求进行选取,本实施例不做具体限定。

步骤204:对食物图像进行预处理。

具体地,对食物图像样本集中的所有食物图像进行图像宽度缩放预处理,将每张样本食物图像的宽度均缩放到400像素,以保证终端运行速度。

步骤206:对食物特征图像进行食物位置标注。

具体地,通过人工在各样本食物图像中标注食物位置,终端记录人工标注的食物位置。如,本实施例中,人工采用外接矩形框标出食物位置,终端记录外接矩形框的左上角和右下角的x坐标和y坐标,记录食物位置。例如,样本食物图像中包括3碗菜,则人工标记3碗菜的外接矩形框,终端记录每个外接矩形框的左上角和右下角的x坐标和y坐标。

步骤208:将完成食物位置标注的食物图像输入可变形部件模型,将食物位置处的图像划分为多个检测窗口,提取每个检测窗口内的食物图像梯度特征,生成食物梯度特征直方图,获取多个食物梯度特征直方图;对多个食物图像梯度特征直方图进行线性拟合得到食物图像检测模型。

对标注好食物位置的样本食物图像输入可变形部件模型,本实施例中,采用dpm(deformablepartmodels)可变形部件模型算法在matlab(matrix&laboratory,矩阵实验室)中进行训练,获得.mat格式的食物图像检测模型,并将.mat格式的模型转为.txt格式的模型文件进行存储。

可变形部件模型算法主要包括两方面内容:可变形部件模型和多模型,可变形部件模型是指把物体当做由多个可变形和移动位置的部件构成,并根据这些部件与模型常见位置的差异评估其匹配程度,这样可以应对物体变形的情况,能提高检测准确率。一般的,训练时会自动发现多个多个部件,生成多个子模型,实际检测时包含一个根模型和多个子模型。多模型是指针对物体不同视角或不同形状采用不同模型,如食物图像的俯视图和侧视图,或圆形食物与长条形食物,检测到的特征差异是很大的,如果仅采用同一个模型去匹配,那么准确率就会很低。本实施例中,食物图像检测模型包括3个不同视角的根模型,分别为俯视视角根模型,45°视角根模型和侧面20°视角根模型,每个视角的根模型包括8个部件,即每个视角的根模型包括八个子模型,子模型的分辨率为根模型的分辨率的2倍,能够有效保证检测精度。具体根模型的数量可根据标记的食物位置处的图像长宽比来区分,实际应用中如果需要更高的检测精度可以在训练时增加根模型数量。

具体地,本实施例中,将完成食物位置标注的食物图像输入可变形部件模型进行训练,会根据标注的食物图像块的长宽比划分到3个类别,1:1,1:0.8,1:0.6;长宽比接近1:1的属于俯视视角,接近1:0.8的属于45°视角,接近1:0.6的属于20°视角,对每个类别对应地建立1个根模型,并基于每个根模型生成八个子模型。对标注的食物图像块,提取每个检测窗口内的食物图像梯度特征,生成样本食物图像的食物梯度特征直方图,对每张样本食物图像进行上述操作,获取多个样本图像的食物梯度特征直方图;再对获取到的多个食物图像梯度特征直方图进行线性拟合得到食物图像检测模型。

在一个实施例中,步骤208中,对多张食物图像的食物图像梯度特征直方图进行线性拟合得到食物图像检测模型的步骤之前,还包括:通过可变形部件模型检测多张非食物图像,获取多个非食物图像梯度特征直方图;将多个非食物图像梯度特征直方图和多个食物图像梯度特征直方图进行支持向量机分类,获取多个用于进行线性拟合的食物图像梯度特征直方图。

具体地,非食物图像可以为包括人物图像、景物图像等不包含食物图像的图片。本实施例中,选取20000张非食物图像输入可变性部件模型进行检测,与上述对食物图像样本集进行可变形部件模型算法训练得到食物图像检测模型的步骤相同,首先对非食物图像样本集中的所有图像进行预处理,将图像宽度缩放到400像素,再通过人工标注非食物图像中的图像主体(如人物或景物)的位置,之后将非食物图像输入可变形部件模型,将标注的图像主体位置处的图像划分为多个检测窗口,提取每个检测窗口内的非食物图像梯度特征,生成非食物梯度特征直方图,获取多个非食物梯度特征直方图;然后,将获取到的多个非食物图像梯度特征直方图和多个食物图像梯度特征直方图进行支持向量机分类,得到食物图像与非食物图像的梯度特征分类阈值,将满足梯度特征分类阈值要求即梯度特征值大于分类阈值的梯度特征直方图做为用于进行线性拟合的食物图像梯度特征直方图,获取多个用于进行线性拟合的食物图像梯度特征直方图。本实施例中,将食物图像做为正样本,并采集非食物图像做为负样本,通过负样本图像的梯度特征直方图对正样本图像的梯度特征直方图进行分类验证,能够提高食物检测模型的训练精度,从而有效保证食物检测模型的检测精度。

在一个实施例中,上述对食物图像样本集进行可变形部件模型算法训练得到食物图像检测模型的步骤还包括:获取多张食物图像和多张非食物图像;获取预设食物特征隶属度阈值范围;将多张食物图像和多张非食物图像输入食物图像检测模型,根据预设食物特征隶属度阈值范围选取多个食物特征隶属度阈值检测多张食物图像和多张非食物图像,计算每个食物特征隶属度阈值对应的查准率和查全率,选取得到的查准率和查全率相等的食物特征隶属度阈值为预设食物特征隶属度阈值。

本实施例中,在完成食物图像检测模型训练后,采用不同的食物特征隶属度阈值对食物图像检测模型进行食物特征隶属度阈值选取测试,根据预设食物特征隶属度阈值范围选取多个食物特征隶属度阈值检测多张食物图像和多张非食物图像,计算每个食物特征隶属度阈值对应的查准率和查全率,绘制查准率-查全率曲线(p-r曲线),得到p-r曲线中查准率和查全率相等的查准率-查全率平衡点坐标,将与查准率-查全率平衡点坐标对应的食物特征隶属度阈值做为预设食物特征隶属度阈值。由于随着食物特征隶属度阈值递增,查准率会逐渐升高,查全率会逐渐变低,为保证食物图像检测精度,需要同时保证查准率和查全率,本实施例中将得到的查准率和查全率相等的事物特征隶属度阈值做为用于食物图像检测的最优食物特征隶属度阈值,并通过绘制p-r曲线获取查准率-查全率平衡点,进而确定预设食物特征隶属度阈值,能够有效保证预设食物特征隶属度阈值的选取精度,保证食物图像检测模型的检测精度。

具体地,本实施例中,选取400张食物图像和600张非食物图像共1000张图像做为测试图像集,预设食物特征隶属度阈值范围为-2~0,以0.2为步长,选取-1.4、-1.2、-1.0、-0.8、-0.6、-0.4及-0.2七个食物特征隶属度阈值进行食物图像检测测试。选定测试图像集和食物特征隶属度阈值后,将测试图像集中的食物图像和非食物图像均输入食物图像检测模型,根据选定的七个食物特征隶属度阈值分别对输入图像进行检测,计算各食物特征隶属度阈值对应的查准率(precision)和查全率(即召回率(recall)),绘制查准率-查全率曲线(p-r曲线),得到如图3所示的p-r曲线示意图。如图3所示,a点的坐标对应食物特征隶属度阈值为-1.4时对测试集图像进行检测得到的查准率和查全率,查准率和查全率之和为1.8002;b点的坐标对应食物特征隶属度阈值为-1.2时对测试集图像进行检测得到的查准率和查全率,查准率和查全率之和为1.8454;以此类推,g点的坐标对应食物特征隶属度阈值为-0.2时对测试集图像进行检测得到的查准率和查全率,查准率和查全率之和为1.7655。根据a点坐标至j点坐标绘制得到p-r曲线后,获取查准率与查全率之和最大值为1.8665,对应c点,因此,得到与查准率与查全率之和最大的c点坐标对应的食物特征隶属度阈值为-1.0,确定预设食物特征隶属度阈值为-1.0。本实施例中,查准率查全率之和最大值刚好为c点坐标之和,因此直接确定预设食物特征隶属度阈值为-1.0。在其他实施例中,若查准率与查全率之和最大的坐标点位于两个已知食物特征隶属度阈值的坐标点之间,则需进一步在相邻的两个已知食物特征隶属度阈值之间选取多个食物特征隶属度阈值对测试集图像进行检测,最终得到与查准率与查全率之和最大的坐标点对应的食物特征隶属度阈值确定为预设食物特征隶属度阈值。

进一步的,本实施例中,选取得到的查准率与查全率之和最大的食物特征隶属度阈值作为预设食物特征隶属度阈值,但是,在实际应用中,可根据实际需要选取其它方式确定预设食物特征隶属度阈值,如,在其它实施例中,还可以选择得到的查准率和查全率相等的食物特征隶属度阈值作为预设食物特征隶属度阈值;也可以选择得到的查准率最高或查全率最高的食物特征隶属度阈值作为预设食物特征隶属度阈值,以上选取得到的查准率与查全率之和最大的食物特征隶属度阈值作为预设食物特征隶属度阈值只是一个实施例,并不做具体限定。

以下列举具体实施例,以介绍采用上述食物图像检测方法检测单张待检测图像是否为食物图像的详细过程为例,对上述食物图像检测方法进行详细说明。

步骤1),获取待检测的目标图像。

步骤2),对目标图像进行预处理。

为提高检测速度,先将目标图像的宽度缩放为400像素,再对目标图像进行4-10次金字塔缩放,每次金字塔缩放后对缩放后的目标图像进行一次图像检测,判断目标图像是否为食物图像,本实施例中,对目标图像进行4次金字塔缩放,最终将图像宽度缩放至50像素,可以将检测时间降低至0.8s。

步骤3),将预处理后的目标图像输入食物图像检测模型,得到目标图像的食物特征隶属度。

本实施例中,每完成一次金字塔缩放后,将缩放后的目标图像输入食物图像检测模型进行可变形部件模型算法检测,将目标图像划分为八个部件,生成八个检测窗口,之后以固定窗口大小滑动检测每个检测窗口的食物特征隶属度,得到目标图像的食物特征隶属度。具体地,先提取每个检测窗口内的图像梯度特征,分别生成与每个检测窗口的图像对应的窗口图像梯度特征直方图,再将提取到每个检测窗口图像的窗口图像梯度特征直方图与食物图像检测模型中的各根模型和子模型进行匹配,通过可变形部件模型算法计算各个检测窗口图像与各根模型和各子模型的相似度得分,再根据预设根模型得分权重值和子模型得分权重值计算检测窗口图像的总得分,得到各检测窗口图像的食物特征隶属度阈值li(i=1~8);之后,选取食物特征隶属度阈值最大的检测窗口图像的食物特征隶属度阈值作为目标图像的食物特征隶属度阈值。具地的,本实施例中,检测窗口图像的食物特征隶属度li通过以下公式计算得到:

li=(ai+bi+ci)*w1+(a1i+a2i+…a8i+b1i+b2i+…b8i+c1i+c2i+…c8i)*w2

其中,ai为检测窗口图像与俯视视角根模型的相似度得分,a1i~a8i分别为检测窗口图像与俯视视角根模型的八个子模型的相似度得分;

bi为检测窗口图像与45°视角根模型的相似度得分,b1i~b8i分别为检测窗口图像与45°视角根模型的八个子模型的相似度得分;

ci为检测窗口图像与侧面20°视角根模型的相似度得分,c1i~c8i分别为检测窗口图像与侧面20°视角根模型的八个子模型的相似度得分;

w1为预设根模型相似度得分权重,w2为预设子模型相似度得分权重。

本实施例中,通过可变形部件模型算法计算各个检测窗口图像与各根模型和各子模型的相似度得分时,先对各个检测窗口图像进行可变形部件模型算法检测,获取检测窗口图像与各根模型及各子模型的理想模型位置,即锚点的位置坐标,并计算检测窗口图像与各根模型的响应分数及与各子模型的响应分数,最后,根据以下公式分别计算检测窗口图像与各根模型和各子模型的相似度得分:

1)、检测窗口图像与根模型的相似度得分计算公式如下:

其中:

x0,y0,l0分别为检测窗口图像与根模型的锚点的横坐标,纵坐标及尺度;

为检测窗口图像与根模型的相似度得分;

为检测窗口图像与子模型的相似度得分;

b为不同子模型之间的偏移系数;

n为部件数,这里是8;

2(x0,y0)表示子模型的像素为原始的2倍;

vi为锚点和理想检测点之间的偏移系数;

λ为检测窗口图像在金字塔中的层数。

2)、检测窗口图像与某个子模型的详细响应得分计算公式如下:

这是在该子模型的理想位置附近,寻找一个综合匹配和形变最优的位置。

其中:

x,y为训练出来的子模型的理想位置,即子模型相对于根模型锚点的坐标;

ri,l(x+dx,y+dy)为检测窗口图像与子模型的响应分数;

di为子模型偏移损失系数;

φd(dx,dy)为子模型的锚点和子模型的检测点之间的距离。

步骤4),将获取到的目标图像的食物特征隶属度阈值与预设食物特征隶属度阈值进行比较,如果目标图像的食物特征隶属度阈值大于或等于预设食物特征隶属度阈值,则目标图像为食物图像。

具体地,为进一步提高检测速度,如果仅检测目标图像是否为食物图像,无需定位食物图像的具体位置,则只要在某次金字塔缩放后检测获取到的目标图像的食物特征隶属度阈值大于或等于预设食物特征图像隶属度阈值即可输出目标图像为食物图像的检测结果,如,经过第1次金字塔缩放后,检测得到目标图像的食物特征隶属度为-1.5,小于预设食物特征隶属度阈值-1.03,经过第2次金字塔缩放后,检测得到目标图像的食物特征隶属度为-0.9,大于预设食物特征隶属度阈值-1.03,目标图像为食物图像,输出检测结果,目标图像检测结束,无需再进行下一次缩放及检测。而如果经过4次金字塔缩放后检测获取到的目标图像的食物特征隶属度阈值仍小于预设食物特征隶属度阈值,则输出目标图像为非食物图像的检测结果。进一步的,如果需要输出食物图像的具体位置,则需要进行4次金字塔缩放检测,即完成全部次数的金字塔缩放及检测后再进行非极大值抑制得到食物图像位置,具体的,当有多次缩放后的检测结果均为目标图像为食物图像,表示检测结果有重叠,此时,选取获取到的食物特征隶属度最大的一次金字塔缩放后的图像确定食物图像位置,具体选择该图像的八个检测窗口中检测窗口图像的食物特征隶属度li最大的检测窗口图像为食物图像位置,在该检测窗口位置标记外接矩形框并输出外接矩形框。

请参阅图4,在一个实施例中,提供了一种食物图像检测装置400,包括:

目标图像获取模块402,用于获取目标图像。

图像预处理模块404,用于对获取到的目标图像进行预处理。

图像检测模块406,用于将预处理后的目标图像输入食物图像检测模型,得到目标图像的食物特征隶属度。

阈值比较模块408,用于将食物特征隶属度与预设食物特征隶属度阈值进行比较。

图像标记模块410,用于当食物特征隶属度大于或等于预设食物特征隶属度阈值时,标记目标图像为食物图像。

如图5所示,在一个实施例中,上述食物图像检测装置400还包括:

位置标记模块412,用于当食物特征隶属度大于或等于预设食物特征隶属度阈值时,获取目标图像中食物图像的位置,标记食物图像的位置。

如图5所示,在一个实施例中,上述食物图像检测装置还包括用于对食物图像样本集进行可变形部件模型算法训练得到食物图像检测模型的模型训练模块414,请参阅图6,模型训练模块414包括:

第一样本图像获取模块4141,用于获取食物图像样本集,食物图像样本集包括多张食物图像。

样本图像预处理模块4142,用于对食物图像进行预处理。

样本图像标记模块4143,用于对食物特征图像进行食物位置标注。

图像训练模块4144,用于将完成食物位置标注的食物图像输入可变形部件模型,将食物位置处的图像划分为多个检测窗口,提取每个检测窗口内的食物图像梯度特征,生成食物梯度特征直方图,获取多个食物梯度特征直方图;对多个食物图像梯度特征直方图进行线性拟合得到食物图像检测模型。

如图7所示,在一个实施例中,模型训练模块414还包括:

第二样本图像获取模块4145,用于通过可变形部件模型检测多张非食物图像,获取多个非食物图像梯度特征直方图。

梯度特征直方图分类模块4146,用于将多个非食物图像梯度特征直方图和多个食物图像梯度特征直方图进行支持向量机分类,获取多个用于进行线性拟合的食物图像梯度特征直方图。

在一个实施例中,上述模型训练模块414还包括:

检测图像获取模块4147,用于获取多张食物图像和多张非食物图像。

隶属度阈值获取模块4148,用于获取预设食物特征隶属度阈值范围。

预设隶属度阈值选取模块4149,用于将多张食物图像和多张非食物图像输入食物图像检测模型,根据预设食物特征隶属度阈值范围选取多个食物特征隶属度阈值检测多张食物图像和多张非食物图像,计算每个食物特征隶属度阈值对应的查准率和查全率,选取得到的查准率和查全率相等的食物特征隶属度阈值为预设食物特征隶属度阈值。

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

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

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