一种基于多视角图模型的餐具检测和识别方法与流程

文档序号:11216930阅读:806来源:国知局
一种基于多视角图模型的餐具检测和识别方法与流程

本发明涉及一种机器视觉的餐具检测和识别方法,尤其涉及一种基于多视角图模型的检测和识别方法。



背景技术:

随着服务机器人硬件成本的下降和相关理论技术的不断成熟以及人们的需求,餐厅服务机器人已经开始应用于餐厅帮助人们回收餐具。餐厅服务机器人需要应用计算机视觉技术,实时检测并识别出餐桌中不同的餐具类别。并根据餐具中的内容(如有无食物),进行后续处理(如收拾餐具)任务。餐具检测和识别主要根据采集图像中餐具、食物的位置和轮廓,对餐具、食物进行分割,并识别出其具体类别。目前,基于计算机视觉的餐具、食物检测和识别方法主要为单视角检测和识别,存在检测不准确和识别率低等问题,因此,本发明提出基于多视角图模型的餐具检测和识别方法,用来提高检测效果和识别率。



技术实现要素:

本发明提供了一种基于多视角图模型的餐具检测和识别方法,利用多视角图模型的学习框架将餐具检测和识别结合成统一的框架,首先利用多视角图模型检测图像中的餐具,然后利用多视角特征融合学习新特征进行餐具的识别。

采用多视角图模型进行图像的餐具检测,利用超像素点在多个视角下的特征构建图模型,然后再学习每个超像素点是餐具所在位置的置信度,从而更准确的检测出餐具。采用多视角融合算法进行特征融合,构建更强区分性的特征,有利于提高识别率。在多视角图模型构建中,利用指数型权值参数,避免出现多视角的权值系数为零,使得各个视角特征能够相互补充。在餐具检测中,既考虑了餐具种子节点的作用,同时考虑了背景种子节点的作用,以加大背景和餐具的差异性。在餐具分割过程中,没有直接在彩色图像中提取餐具,而是先在二值图像上确定餐具的最小外接矩,然后在对应的彩色图像上进行分割,从而降低算法复杂度、提高分割效果。

附图说明

为了更清楚的说明本发明的实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明基于多视角图模型的餐具检测算法流程图

图2为本发明基于多视角特征融合的餐具识别流程图

图3为本发明餐具分割示意图

图4为本发明餐具检测效果示意图

图5为本发明算法和单视角排序算法多个餐具时检测效果对比示意图

具体实施方式

为使本发明的实施例的目的、技术方案和优点更加清楚,下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚完整的描述:

本发明缩略语和关键术语定义:

slic:simplelineariterativeclustering,简单线性迭代聚类算法

svm:supportvectormachine,支持向量机

hsv:huesaturationvalue,hsv颜色模型

mds:multipledimensionalscaling,多维缩放

如图1~5所示:一种基于多视角图模型的餐具检测和识别方法,主要包括以下步骤:

图像的超像素分割是将图像中大量的像素点分割成少量的整体性超像素点,这种分割也是对图像内容的一种初步分割过程。

simplelineariterativeclustering(slic)算法是一种简单有效的线性迭代聚类算法,slic算法采用接近人眼视觉感知特性的lab颜色空间进行超像素点的分割,定义图像中像素点的总个数为n,超像素分割的步骤为:

(1)先将整幅图像平均分割成k个部分,每部分均为s×s的小区域,其中,

(2)初始化每个小区域的中心为ck=[lk,ak,bk,xk,yk]t,其中(xk,yk)为该小区域中梯度最小的点即f(x+1,y)+f(x,y+1)-2f(x,y)最小的点;

(3)根据式计算每个像素点到步骤(2)中ck的距离,选取距离最小的中心点为该像素的中心,重新划分超像素区域,根据步骤(2)在新划分的区域上重新确定新的小区域中心ck,计算新的小区域中心ck和旧的小区域中心ck间的位置距离,其中,m=15,ds为位置距离,dc为lab距离;

(4)当新的中心ck与旧的中心ck的位置距离小于一个很小的阈值时输出超像素分割的结果,否则重复步骤(2)~(3);

本发明使用hsv颜色直方图[4]和颜色矩[4]这两种特征分别构建超像素点间的多视角图模型。

对于其中包含2个视角特征x1,x2,…,xn表示图像中slic算法分割得到的n个超像素点,x(1)表示它们的hsv颜色直方图特征,x(2)表示超像素点间的颜色矩信息。

以图像中所有的超像素点为图模型的节点,通过超像素点间的位置关系确定节点间是否存在连接边。

此外,为了更好的利用图像的边缘信息,规定图像边缘部分的超像素点都是互相连接的。

以此策略确定出图模型的所有连接边,而边权值则可以通过超像素点之间特征向量的高斯核函数进行计算:

其中,表示第i个超像素节点和第j个超像素节点在第t个视角下的特征向量之间的欧氏距离。

在第一阶段的目标检测过程中,假设图像边缘的超像素点是背景信息,所以在该阶段的相似性学习过程中,设定初始的相似性值y=[y1,y2,…,yn]t

设定图像上边界的超像素节点对应的初始相似性值为1;其它所有的超像素节点设置为0。假设多视角图模型学习得到的相似性值为f,则多视角排序算法的目标优化函数可以表示成:

该式可以进一步转化成如下的矩阵形式

其中,α(t)是每个视角下近邻矩阵的权重系数,参数μ>0是平衡目标函数中平滑约束项和拟合约束项,||·||2表示向量的2范数,tr(·)表示矩阵的迹。l(t)=d(t)-w(t)是第t个视角下近邻矩阵所对应的的拉普拉斯矩阵,表示近邻矩阵w(t)的行和,在每个视角的权值α(t)中加入指数参数γ,可以通过调整γ的取值控制每个视角下近邻矩阵的权值。

对于该多视角图模型的求解过程可以通过分别迭代求解其中的两个参数f和α,在迭代求解过程中先初始化这两个参数,先固定参数α,求解更新参数f,再固定参数f,求解更新参数α,以此迭代,直到参数f与上一次迭代的结果小于给定的阈值。求得f和α的解析解,采用迭代的方法进行求解,具体的迭代方法如下:

(1)计算每个视角下的近邻矩阵w(t)(1≤t≤m),初始化α(t)=1/m,f=y,

(2)当时,执行步骤(3)~(4),当时,执行步骤(5);

(3)利用更新相似性得分向量f;

(4)利用

更新近邻矩阵的权值参数α;

(5)返回相似性得分向量f。

其中,输入为通过hsv、颜色矩获得的近邻矩阵w(t)和初始相似性特征向量y=[y1,y2,…,yn]t;若yi为上边界的节点,则初始相似值为1,其它所有的超像素节点设置为0。参数γ用来调节各个视角之间的权重,参数μ为调节式中的第一项和第二项权重,γ=3,μ=0.01。

利用上述方法迭代得到超像素点之间的相似性值为ft,第i个超像素点为目标的相似值可以表示成:

st(i)=1-ft(i),i=1,2,…,n(4)

同样的,可以分别将图像的下边界、左边界和右边界作为背景信息节点,设定相应的初始相似性特征向量,然后再利用多视角图模型的排序算法进行学习,依次分别确定出其对应的目标相似值sb(i)、sl(i)和sr(i),然后将这四个相似值进行整合得到整体的检测结果:

s1(i)=st(i)sb(i)sl(i)sr(i),i=1,2,…,n(5)

在第二阶段的目标检测过程中,设定两个所述相似性f阈值t1和t2,设定t1为界定为餐具的相似度阈值,t2为界定为背景的相似度阈值,初始的相似性向量可以设定为:

其中i=1,2,…,n,对该向量进行标准化生成初始的相似性值。

然后再利用式(3)中的方法学习超像素之间的相似性即为第二次检测的结果:

将第二次检测的结果进行二值化,阈值设定为所有超像素点相似性值的平均值,大于平均值的超像素点取为1,小于平均值的取为0,得到二值化图像。将二值化图像与输入图像相乘,得到餐具检测图像。比如:根据f值的大小,餐具对应的种子点t1比较大,如果图像灰度值范围是0~1,那么这个t1大概是0.8左右,根据这个阈值设定,重新排序之后f大的那部分就可以认为是餐具。

对餐具检测图像进行图像分割得到最终的待识别的餐具图像,餐具分割的步骤为:

(1)在二值图像上用区域增长法确定连通域,并确定每个连通域的最左、最右、最上、最下四个点,并以这四个点确定连通域的外接矩形(矩形边平行于坐标轴);

(2)记录每个连通区域外接矩的坐标,并在对应的彩色图像中提取外接矩内的餐具;

图像中餐具的识别

图像中的餐具识别的作用是能够确定餐具的具体类别,通过已训练好的svm分类器对该餐具进行测试,输出该餐具的具体类别标签。

定义n1个图像样本在m1个不同视角下的视觉特征分别记为其中表示第个视角下的图像特征,表示第1个图像样本在第个视角下的特征向量,对应的特征维数为dt。

选择利用hsv颜色直方图和mds[5]特征进行不同视角下的特征提取。

以每个图像作为图模型的节点,图像特征向量之间的距离作为图模型的连接边,建立多视角图模型,其中图模型连接边的权值可以通过高斯核函数进行计算:

其中,表示第i个图像样本和第j个图像样本在第个视角下的特征向量之间的欧氏距离;

假设融合后的新特征是y,比如一个检测目标餐具的多个视角的特征的集合,对于多视角特征的融合学习,需要考虑到不同视角在特征描述中的重要性。

因此,为了平衡这些近邻关系在特征融合过程中的作用,为每个视角下的近邻关系加入权值参数因此,本文基于多视角融合学习的算法可以有如下的优化目标函数:

式(9)能够进一步转换成如下矩阵的形式:

是第个视角下近邻矩阵所对应的的拉普拉斯矩阵,表示近邻矩阵的行和。约束条件yyt=i是为了唯一确定出融合后的图像特征向量y,i表示单位矩阵。

由于多视角特征融合算法中包含两个参数和y,用迭代优化方法得到方程的解,首先固定参数y,更新权值参数利用拉格朗日乘子法带入优化约束得到如下的表达式:

对优化函数求对参数的偏导,并令偏导等于0得到权值参数的解为:

由于拉普拉斯矩阵是半正定矩阵,显然参数固定权值参数更新参数y,此时目标优化函数式(10)可以转化成

其中,矩阵因为拉普拉斯矩阵是对称的,所以矩阵也是对称矩阵。因此,根据ky-fan定理,优化方程的全局最优解可以通过矩阵l最小的d个特征值对应的特征向量来确定,其中y=ut=[u1,u2,…,ud]t

(ky-fan定理):如果矩阵m∈rn×n是对称矩阵,其前k个最小特征值分别λ1≤λ2≤...≤λk

这些特征值对应的特征向量是u=[u1,u2,…,uk]那么就有

而且,z的最优解可以表示成z*=uq,其中q是任意的正交矩阵。

下面用迭代的方法求参数和y。输入:n1个图像样本在不同视角下的特征输出:新的d维图像特征向量迭代步骤如下:

(1)计算每个视角下的近邻矩阵初始化参数

(2)重复步骤(3)和步骤(4)直到收敛;

(3)计算的特征分解,取最小d个特征值对应的特征向量组成的矩阵u,令y=ut=[u1,u2,…,ud]t

(4)利用更新近邻矩阵的权值参数

多视角特征融合方法主要是为了得到独特性和区分性更强的图像特征,然后利用训练集图像的融合特征训练一个svm[6]分类模型。

svm是通过寻找最优的线性超平面,使得所有样本到该超平面有尽可能大的几何间隔,因为当超平面距离数据点的间隔越大时,分类结果的确信度就越大。为了寻找这样的超平面函数wtx+b=0,这种最大间隔分类器的目标函数可以定义为:

式(15)中的为样本特征,为样本标签,取值为1或-1。利用拉格朗日乘子法式(15)可以转化为

对上式求解可得

svm的具体训练过程为:

(1)取训练集中的任意两类物体样本是样本的类别标签,取值为1或-1,令sgn(.)为判别函数,

(2)求解w和b,其中

(3)再次任意选择两类不同的训练样本,重复步骤(2)和步骤(3),直到任意两类训练样本都训练出一个函数f(x);

(4)svm的测试阶段:假设样本的特征向量为y,带入每个函数f(x)中,确定每个函数对该样本的分类标签,通过投票的方法选择标签得票最多的类别作为该样本的最终类别。

实施例

为了验证本发明的可行性和有效性,在matlab2014a软件平台进行了若干实验测试。图4是本发明对单个餐具的检测效果,从结果可以看出本发明能很好的检测出餐具的具体位置,同时能够准确的确定餐具的轮廓,并且可以将背景设置为黑色,排除背景对识别过程干扰。

为了进一步验证本发明的餐具检测效果,选用多个餐具进行实验测试,图5为本发明算法和单视角的餐具检测效果对比,其中(a)为摄像机拍摄的图片,(b)为单视角排序第二阶段的检测图,(c)为本文算法第二阶段的检测图,(d)为单视角最终的餐具检测图,(e)为本发明算法最终的餐具检测图。第一组图中,单视角排序检测出了3个餐具,本发明算法检测出了4个;第二组图中,单视角排序检测出了3个餐具,本发明算法检测出了5个餐具;第三组图中,单视角排序检测出了3个餐具,本发明算法检测出了4个餐具;第四组图中,单视角排序和本文算法都检测出了四个餐具,但是本发明算法的检测效果要优于单视角排序;第五组图中,单视角排序检测出了3个餐具,本发明算法检测出了4个餐具。通过对比,本发明算法在复杂环境下的餐具检测效果要好于单视角排序算法。

为了验证本发明的餐具分割算法的有效性,进行了大量实验。,图3可以看出本发明算法具有良好的分割效果。

为了验证本发明中特征融合方法在餐具识别中的有效性,在真实数据集中进行了若干实验,数据集总共有20种不同的餐具,每种餐具呈现不同的角度生成100幅图像。在表1中,选择每类图像中都抽取5、10、…、50幅图像作为训练集,其余作为测试集,进行餐具识别实验。从表1结果可见,随着训练样本的增多,餐具识别的准确率也逐渐提高。当该数据集中的训练样本选择50幅时,单视角中的hsv和mds的识别准确率分别能达到0.974和0.945。而本发明算法在餐具识别过程中具有更强的区分性,识别率能达到0.983,高于单视角下的餐具识别效果。

表1本发明算法和单视角算法在svm分类器中的识别结果

以上所述,仅为本实施例较佳的具体实施方式,但本实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本实施例揭露的技术范围内,根据本实施例的技术方案及其发明构思加以等同替换或改变,都应涵盖在本实施例的保护范围之内。

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