一种结合深度学习与稀疏表示的室内场景识别方法
技术领域
本发明涉及一种结合深度学习与稀疏表示的室内场景识别方法,属于图像处理技术的技术领域。
背景技术
随着信息技术和智能机器人的发展与普及,场景识别作为重要的研究内容,已成为计算机视觉和模式识别领域的重要研究问题。场景图像分类是依据一组给定的语义标签来对图像数据集进行自动分类。场景识别模型主要分为三大块:基于低级特征、基于中级特征、基于视觉词汇。所谓低级特征,即对场景图像提取全局或者分块的纹理、颜色等特征对场景图像进行分类,比如Valiaya和Szumme等人的研究,但是这种提取底层特征的方法只适用于比较简单的场景或者场景差别较大的图像场景(沙滩和蓝天、室内和室外等),因而人们又继续进行探索,David G[6]提出了一种基于尺度空间的、具有图像缩放、旋转和仿射不变形的图像局部特征描述算子SIFT,Dalal等人提出了HOG图像局部特征,得到了高性能的底层特征。随着人们对图像识别研究领域的深入,人们逐渐发现仅仅提取底层特征不能有效解决语义鸿沟问题,因此构建中层特征作为一个新的研究思路,引起了广大研究者们的关注,其中最具代表性的是视觉词袋模型(Bag of visual Words,BoW),但它是将图像表示成了一个无序局部特征集的特征包方法,忽略了所有的关于图像块的位置信息,为了解决这个问题,Lazebnik等人提出一种基于空间金字塔匹配(Spatial Pyramid Matching,SPM)的方法来改进传统的BoW模型,取得了较好的识别效果。
当把上述方法应用在室内场景识别时,识别效果显著下降,究其原因是室内场景主要存在类内差异大类间差异小、遮挡、尺度、角度变化等原因,比如同是书店,有可能只有书柜和书,也有可能只有书,而书店和图书馆两个场景同时有书柜和书。为此,Vogel和Schiele[12]最早提出了采用局部区域目标来对自然场景进行建模的方法。因此,基于目标的高层图像表示方法被相继提出,如Li-feifei等提出的目标银行模型,这些方法将目标作为图像的基本元素,通过分析图像中所包含的一系列目标来进一步分类场景图像,但是由于室内场景图像较复杂,目前并没有一种特别好的解决室内场景图像识别效果差的方法,其识别仍然普遍偏低,无法满足现实的需求。
发明内容
本发明所要解决的技术问题在于克服现有技术的不足,提供一种结合深度学习与稀疏表示的室内场景识别方法,解决由于目前室内场景类内差异大类间差异小、遮挡、尺度、角度变化等原因,造成了目前室内场景识别相比较于室外场景识别来说其复杂度和困难性更大,因而识别效果差的问题,以提高室内场景识别算法的识别率和鲁棒性。
本发明具体采用以下技术方案解决上述技术问题:
一种结合深度学习与稀疏表示的室内场景识别方法,包括以下步骤:
步骤A、从室内场景库中随机挑选若干张室内场景图像作为训练样本,及将室内场景库中剩余的室内场景图像作为测试样本;
步骤B、利用Fast-RCNN算法对所述训练样本和测试样本进行物体类别判别和检测,得到训练样本和测试样本中每张室内场景图像中包含的物体类别、位置和分值信息,以构建得到每张室内场景图像的底层特征;
步骤C、利用词袋模型根据所述训练样本和测试样本中每张室内场景图像的底层特征,构建得到每张室内场景图像的中层特征;
步骤D、对所述训练样本中的每张室内场景图像的中层特征进行糅合,构建得到稀疏字典;
步骤E、利用所述稀疏字典对输入的测试样本进行稀疏表示,及根据求解出的稀疏解与所输入的测试样本计算得到残差,并根据残差的大小判断测试样本所属的物体类别;
步骤F、将判断得到测试样本所属的物体类别输出。
进一步地,作为本发明的一种优选技术方案:所述步骤A还包括对每个室内场景图像进行归一化尺寸处理。
进一步地,作为本发明的一种优选技术方案:所述步骤C构建得到每张室内场景图像的中层特征,具体包括步骤:
步骤C1、将每张室内场景图像划分成若干层,每个层划分得到若干个子块;
步骤C2、对各层中每个子块内的每个像素点进行物体类别的判别,及结合判断出的物体类别所对应的位置和分值信息获得每个子块的直方图特征;
步骤C3、将所有层的所有子块的直方图特征串联组成一个特征向量,以获得室内场景图像的中层特征。
进一步地,作为本发明的一种优选技术方案:所述步骤D所构建得到过完备的稀疏字典。
进一步地,作为本发明的一种优选技术方案:所述步骤E根据残差最小值判断测试样本所属的物体类别。
本发明采用上述技术方案,能产生如下技术效果:
本发明提供一种结合深度学习与稀疏表示的室内场景识别方法,所述方法在国际上公开的MIT-67室内场景库上进行检测,使用基于深度学习的Fast-RCNN算法准确识别出每张室内场景图片中物体的类别、位置、分值信息,通过这些信息去构建去相关、低维度的底层特征,并利用这些信息改进传统的词袋模型,得到一个反应场景图像的空间信息的中层特征,再利用这些中层特征构建稀疏字典,最后通过稀疏表示的方法进行分类。
本发明在特征提取阶段使用基于深度学习的Fast-RCNN算法,可以精准的得到去相关、低维度的底层特征,精准地得到了原图的局部信息,解决了传统的特征提取方法存在维数灾难的问题;并采用改进词袋模型,将室内场景图像中的空间信息考虑在内,较好的得到了室内场景图像的语义特征,解决了“语义鸿沟”问题,提高了室内场景的识别正确率;以及,采用稀疏表示算法进行分类,解决了室内场景图像中特征提取方面丢失的一些特征信息以及室内场景图像存在的遮挡等噪声问题,提高了***的识别率和对遮挡的鲁棒性。
因此,本发明能够以工程实践应用为目标,结合深度学习和稀疏表示算法,提出一种中层特征构建算法,有效提高室内场景识别的准确率,以及提高室内场景识别算法的识别率和鲁棒性,具有很高的实用性能,可以更加接近工程实践的要求。
附图说明
图1为本发明结合深度学习与稀疏表示的室内场景识别方法的流程示意图。
具体实施方式
下面结合说明书附图对本发明的实施方式进行描述。
如图1所示,本发明设计了一种结合深度学习与稀疏表示的室内场景识别方法,其包括底层特征提取、中层特征构建和分类器设计三大步骤,具体包括以下步骤:
步骤A、从室内场景库中随机挑选若干张室内场景图像作为训练样本,及将室内场景库中剩余的室内场景图像作为测试样本。
由于本发明应用于室内场景图像,为了检测算法的有效性,应挑选国际上公开的室内场景库中的图片,本例中选取了典型的MIT-67室内场景库,该场景库中的图片并不是统一尺寸的,所以优选地先对其进行归一化尺寸处理,并保证每一类室内场景图像数目也应该是相同的,且随机挑选其中归一化后的90%的室内场景图像作为训练样本,剩下归一化后的10%的室内场景图像作为测试样本。
步骤B、利用Fast-RCNN算法对所述训练样本和测试样本中的每张室内场景图像进行物体类别判别和检测,得到每张室内场景图像中包含的物体类别、位置和分值信息,以构建得到每张室内场景图像的底层特征。即:在对室内场景图像底层特征提取前,必须先确定室内场景图像中对判别有一定作用的物体类别,然后从ImageNet上下载相对应的物体训练库,送入Fast-RCNN算法中进行训练,然后再用Fast-RCNN算法对室内场景库中的训练和测试样本进行物体检测,得到每张室内场景图像中包含的物体类别、位置和分值score信息,构建去相关、低维度的底层特征。
步骤C、利用词袋模型根据所述训练样本和测试样本中每张室内场景图像的底层特征,通过改进传统的词袋模型,构建得到每张室内场景图像的中层特征。具体如下:
步骤C1、将每张室内场景图像划分成i个level层,第i个level层将得到4i个子块,其中i为1以上的自然数,则总共将得到若干个子块。及level 0表示室内场景图像原图,level1表示室内场景图像划分的第一个level层,level2表示室内场景图像划分的第二个level层。由此,level 0层所代表的原图存在1个子块,level1层所代表的第一层存在4个子块,level2层所代表的第二层存在16个子块。
步骤C2、对各层中每个子块内的每个像素点进行物体类别的判别,及结合判断出的物体类别所对应的位置和分值信息获得每个子块的直方图特征。即:对原室内场景图像level 0进行判别,根据步骤B得到的原室内场景图像中所包含的物体的类别、位置和score信息,对原图片level 0的每个像素点进行类别判别,若像素点存在物体类别信息,则取出该物体类别对应的分值,反之则忽略。若像素点存在类别重叠则判别类别是否相同,如是相同类别,则取该类别对应的分值的最高值与其他被判别为该类的像素点的分值相加;如是不同的类别,则分别取对应类别对应的分值的最高值与其他被判别为该类的像素点的分值相加,最终将Fast-RCNN算法得到的每张场景图中所包含的物体的类别、位置和分值信息考虑在内的第一个子块的直方图特征。
步骤C3、将所有层的所有子块的直方图特征串联组成一个特征向量,以获得室内场景图像带有空间信息的中层特征。即:对level 1层和level 2层用上述相同的方法统计室内场景图片在不同level层下的每个子块的直方图特征,最后将所有level层的子块的直方图特征串联起来组成一个特征向量vector,以构建带有空间信息、鲁棒性较强的中层特征,完成中层特征构建。
步骤D、对所述训练样本中的每张室内场景图像的中层特征进行糅合,构建得到稀疏字典;即:利用步骤C得到的每张室内场景图像的中层特征,即一个维度Nx1的特征向量,然后将M张训练样本所得到的中层特征进行简单的糅合,得到过完备的稀疏字典A,其中稀疏字典A的维度为NM,且N<M。
步骤E、利用所述稀疏字典对输入的测试样本进行稀疏表示,及根据用1范数求解出的稀疏解与所输入的测试样本计算得到残差,并根据残差的大小判断测试样本所属的物体类别,其中1范数是指向量中各个元素绝对值之和。具体为:利用步骤D得到的稀疏字典对测试样本中的室内场景图像进行稀疏表示,稀疏表示公式:
y=Ax
其中,y表示测试样本,A表示由训练样本中层特征构建的稀疏字典,x表示稀疏系数。这里用1范数进行稀疏求解,求解公式:x1=argmin||x||1subject to Ax=y,通过求解出的稀疏解与原始测试样本进行求残差,并根据残差的大小,判断样本所属的类别。
所述计算残差公式:
min ri(y)=||y-Aδi(x1)||2
公式中,δi为i类中非零向量构成的新向量。
其中,该过程将稀疏表示算法应用于室内场景识别,来提升室内场景识别的正确率和鲁棒性。可优选根据步骤E中计算出的残差最小值判断得出最终的分类结果。
步骤F、将判断得到测试样本所属的物体类别输出。
综上,本发明在特征提取阶段使用基深度学习的Fast-RCNN算法,可以精准的得到去相关、低维度的底层特征,并采用改进词袋模型,将室内场景图像中的空间信息考虑在内,较好的得到了室内场景图像的语义特征,解决了“语义鸿沟”问题,提高了室内场景的识别正确率;以及,采用稀疏表示算法进行分类,解决了室内场景图像中特征提取方面丢失的一些特征信息以及室内场景图像存在的遮挡等噪声问题,提高了***的识别率和对遮挡的鲁棒性。
上面结合附图对本发明的实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。