APP下载

基于多特征融合的商品识图匹配算法研究

2021-04-20王鑫城刘锡泽胡晨熙禹素萍

网络安全与数据管理 2021年4期
关键词:图像匹配特征向量共生

王鑫城,范 红,刘锡泽,胡晨熙,林 威,禹素萍

(东华大学 信息科学与技术学院,上海201620)

0 引言

随着人工智能的不断发展,对图像进行特征提取并通过特征匹配完成对目标的对比及识别,成为了计算机视觉领域中最主要的手段之一,并在大量领域有着广泛的应用,如人脸识别、车牌检测、无人驾驶和医学诊断等。 对于商品货架图片而言,特征点的提取数量与匹配的精度会对商家后续的运作有较大的影响。 在图像匹配算法研究中,最为常见的莫过于尺度不变特征变换算法(Scale-Invariant Feature Transform,SIFT),经典SIFT 算法由LOWE D G在1999 年提出[1],并于2004 年完善[2]。 该算法稳定性高,对旋转、尺度缩放和亮度变换保持不变性。传统SIFT 算法的描述子是具有128 维的特征向量,在特征点的特征向量生成以及最后进行匹配的过程中需要大量的运行时间。 因此,降低特征向量的维数是学者们的一个重要研究方向,如SPCA、PCA[3]算法。 另一个研究方向是采用特殊结构[4],基于二分查找的思想,对得到的特征描述子进行划分,同时结合KNN 算法,加快特征向量的匹配搜索速度,常用的结构有KD-Tree[5]等。 2006 年BAY H 提出SUFR(Speeded Up Robust Features)[6]算法,提升了特征提取速度,但在对尺度和旋转的适应性方面不及SIFT 算法。秦绪佳[7]提出在特征匹配中引入灰度域和空间域的自相关性,提高匹配准确性,但增加了算法复杂度,耗时大。 RUBLEE E 等[8]结合了BRIEF算法和FAST 算法,提出了ORB 算法来解决旋转不变性问题,但其特征符的区分性弱,匹配效果一般。

本文基于特征融合,在获取SIFT 特征描述子后用K-means 聚类算法建立视觉单词词频直方图,并融合灰度共生矩阵特征[9]完成图像匹配,从而提升商品图像匹配的准确率。

1 图像匹配算法介绍

1.1 特征点检测算法描述(SIFT 特征)

尺度不变特征转换(SIFT)算法由LOWE D G 提出并完善,在图像匹配领域广泛应用,对于旋转、尺度缩放等图像具有较好稳健性。SIFT 算法可分为两部分:一是SIFT 特征提取,通过构建DOG 尺度空间,生成特征描述子;二是特征描述子的匹配。

式中,G(x,y,σ)为尺度可变高斯函数,I(x,y)为原始图像。 为保证检测到的特征点的稳定性,一般采用不同高斯差分核与图像卷积生成高斯差分空间。

对检测到的特征点,计算找出与该极值点的坐标σ 相距最近的高斯图像的位置;然后在高斯金字塔中对应的高斯图像上,统计以高斯核1.5 倍为半径的圆内的所有像素的梯度方向,如图1 所示。

图1 极值点主方向

SIFT 描述子在每个极值点的附近选取子区域网格,SIFT 的提出者建议选取的区域网格大小为4×4,然后在每个子区域上计算八个方向的图像梯度,如图2 所示。 于是一个极值点就获得了4×4×8=128个梯度直方图,将它们进行合并就形成了一个128维的特征向量。

图2 描述子的梯度方向

1.2 灰度共生矩阵

灰度共生矩阵方法(Gray Level Co-occurrence Matrix,GLCM)通过计算共生矩阵得到图像信息的特征值,描述图像的某些纹理特征,在一定程度上弥补提取SIFT 特征的词袋模型缺乏空间信息的不足。

对于每幅图像, 分别计算θ 取值为0°、30°、60°、90°、120°和150°的六个方向上,步距为1 的灰度共生矩阵的角二阶矩、对比度、逆方差、熵4 个特征值,构成一组24 维的特征向量。

角二阶矩(ASM)是对图像纹理的灰度变化稳定程度的度量,反映了图像灰度分布均匀程度和纹理粗细程度,能量值大表明当前图像纹理呈现出规则的变化。

对比度(contrast)反映了每个像素值及其邻域像素值的亮度的对比情况,对比度的数值越大,表明当前图像越清晰,纹理沟壑越深。

逆方差(Inverse Different Moment)反映图像纹理的同质性,度量图像纹理局部变化的多少。 其值大则说明图像纹理的不同区域间缺少变化,局部非常均匀。

熵(entropy)反映了图像纹理中的非均匀程度,当共生矩阵中所有值均相等或者像素值表现出最大的随机性时,熵最大。

2 基于多特征融合的图像匹配

2.1 创建视觉词汇

SIFT 特征的描述子是128 维的向量,一幅普通的图像能提取出数百个SIFT 兴趣点。 共生矩阵提取出的特征值是一个24 维的向量,直接与SIFT 特征融合会使共生矩阵对结果的贡献度较低,最终效果不明显。 因此本文采用矢量空间模型对文本类文件分类,通过聚类算法建立视觉单词词频直方图,将SIFT 特征转换为一个K维向量,再使用这个结果与共生矩阵进行特征融合。

聚类是一种无监督的学习方法,将数据集中按照数据之间的相似程度划分,具体算法流程图如图3所示。

图3 K-means 算法流程图

以上步骤建立了矢量空间模型,生成了视觉词汇表,需要赋予每个单词一定的权重,以代表该单词在图像特征中的重要性。 令某一图片的视觉单词w在该图像中出现的次数为fw,该图像所包含的所有视觉单词数为nw,BOW 模型中所有图片数为d,包含视觉单词w的图片数为dw,单词的重要性与其在图像库中出现的次数成反比,与在图像中出现的次数成正比。

计算图像提取的每一个SIFT 特征描述子与生成的视觉单词表中的所有单词欧式距离并进行比较,若特征描述子离某个单词最近,则该单词的对应词频加1。 由此通过图像特征构建K维的视觉单词直方图,为下一步的特征融合做准备。

2.2 融合共生矩阵的特征匹配

SIFT 特征具有尺度不变性,可在图像中检测出关键点,是一种局部特征描述子,它的可扩展性强,能够与其他形式的特征向量进行联合。 灰度共生矩阵反映的是图像灰度的空间相关特性,能对SIFT 特征进行一个较好的补充。

由于特征向量的各个特征分量的取值范围以及物理含义不同,在进行图像匹配之前还需要对其内部进行归一化。 设该图像的灰度共生矩阵特征与K维的视觉单词直方图用式(10)、(11)表示。

这样就可以保证归一化后的所有特征值都落在[0,1]这个区间上。 由于不同算法对图像特征描述的侧重点不同,因此对匹配结果的贡献度不同,如果不对其赋予相应的权重则会对匹配的效果产生影响,可能无法达到最优。因此在融合特征之前,需要对不同特征赋予不同的权重。

其中ω1+ω2=1。

采用经典调试法修改权重的配置,调整SIFT 和GLCM 的权重比以获取实验结果,通过对比找到最优权重比。

2.3 融合特征的图像匹配过程

通过提取的SIFT 特征构建视觉词汇来建立矢量空间模型,需要使用K-means 方法对它们进行训练,获取K个视觉单词。 在融合前还需要对不同来源的特征值进行归一化处理并赋权重值。 在基于内容的图像匹配过程中,通常是通过特征的相似性度量来实现图像之间的特征比对,这里采用LOWE D G提出的欧式距离,它计算简单、速度快,因此被广泛用于相似性度量。 特征融合过程如图4 所示。

K值的选取会对最终的匹配效果有影响,同时K值选取越小,训练的速度也会更快,这里分别选取K=120 和K=240 分别训练了两次,生成的特征向量与共生矩阵的24 维向量融合,分别形成了144 维和264 维的特征向量,作为不同K值下的效果对比。

图4 融合多特征实验流程图

3 实验结果及分析

3.1 数据与实验准备

本次实验PC 系统为Windows 系统,CPU 型号为R3500,2.10 GHz。 该 算 法 基 于PyCharm 平 台 和OpenCV 库实现,采用的是UKBench 图像库。 UKBench图像库有15 类商品货架图,每类货架图分别从四个角度拍摄,每幅图由640×480 或480×640 像素组成。

3.2 实验结果与分析

在实验中,K值的选取会影响训练速度以及匹配精度,K值过大会让训练的时间延长并使共生矩阵特征在融合特征中的占比降低,作用弱化。 提取SIFT 特征之后分别取K=120 和K=240 并使用K-means 聚类生成不同的视觉词汇表,进而与共生矩阵计算出的特征值在归一化之后融合。

实验选取100 幅图像,其中40 幅图像为无关图像,另外60 幅图像为商品货架图像。 每四幅为一组,对其中的每幅图像进行匹配,理论上共可以匹配180 幅相关图片。 经过实际实验,存在一些无法匹配的图像和错误匹配的图像。

图5 为蔬菜图像匹配结果,其中图5(a)为匹配用图,图5(b)、图5(c)和图5(d)为与图5(a)特征向量欧式距离最小的三张图片。 可以看出图5(b)与图5(c)均正确匹配,但图5(d)为水果图片,与图5(a)发生了误匹配。 这是由于特征向量主要提取的是图像的灰度信息,物体的颜色信息被忽略,后续可融合HSV 颜色特征(色调、饱和度、亮度)提升图像匹配准确率。 图6 为饼干图像匹配结果,图6(a)为匹配用图,可以看到图6(b)、图6(c)和图6(d)的匹配结果完全正确,这是由于饼干盒包装形状规则、颜色统一,在图像匹配的过程中可以获得令人满意的结果。图7 为面包图像匹配结果,其中图7(b)、图7(c)均与图7(a)正确匹配。图7(d)为蛋糕图片,与图7(a)分辨率不同却发生误匹配, 这是由于两者外观较为接近且融合的特征向量仍然保持了一定的旋转不变性。 事实上不同商品的商标设计各不相同,后续可以改进算法,加强对图像细节的匹配来改善匹配结果。

图5 蔬菜图像匹配

图6 饼干图像匹配

由实验结果可知,当采用共生矩阵提取的特征值检测时,匹配的速度最快,但成功率也是最低的。采用SIFT 算法时,匹配成功率提升,消耗的时间略有上升。 采用PCA-SIFT 算法时,匹配耗时略有下降且准确度有所提升。 采用融合SIFT 特征和共生矩阵特征的方法,在K=120 时使用0.7 的SIFT 权重和0.3 的共生矩阵权重匹配成功率最高,耗时较PCA-SIFT 算法略有提升,但增加的时间在可接受范围之内。 通过采用硬件运行该算法可以降低匹配所需耗时,综合考虑,选择融合SIFT 特征和共生矩阵特征的方法来完成图像匹配。

图7 面包图像匹配

表1 不同K 值融合特征后的结果比较

表2 本文算法与其他经典算法匹配结果比较

4 结论

本文提出了一种融合SIFT 特征和共生矩阵特征的方法来分析商品货架货品是否短缺。 通过货架实时图片与货架满载时照片是否匹配分析商品是否短缺或需要加货,从而提升顾客的购物体验。 此方法提升了图像匹配的准确率, 运算时间略有增加。 后续研究的重点是进一步优化融合算法,并采用硬件映射执行匹配算法, 提升商品识图的准确度,减少处理时间。

猜你喜欢

图像匹配特征向量共生
二年制职教本科线性代数课程的几何化教学设计——以特征值和特征向量为例
克罗内克积的特征向量
人与熊猫 和谐共生
共生
优生共生圈培养模式探索
优生共生圈培养模式探索
一类特殊矩阵特征向量的求法
一种用于光照变化图像匹配的改进KAZE算法
EXCEL表格计算判断矩阵近似特征向量在AHP法检验上的应用
基于SIFT和LTP的图像匹配方法