图像检索方法及装置与流程

文档序号:11134011阅读:387来源:国知局
图像检索方法及装置与制造工艺

本发明涉及图像检索技术领域,特别是涉及一种基于内容的图像检索方法及装置。



背景技术:

基于内容的图像检索(Content-based Image Retrieval,CBIR),是对图像的内容语义(如图像的颜色、纹理、布局等)进行分析和检索的图像检索技术。在当前多媒体时代,图像视频资源日益丰富,在处理图像数据时,能快速地检索到与查询图像相同或相似的图片尤为重要。例如,一些电商平台,如何快速找到与查询的图片属于同款或相似物品,可快速、精准地为用户推送相应商品,提升用户体验,减少人工操作工作量。

目前,大多数图像检索方法中,首先将图像进行特征提取,然后利用特征进行相似度计算,根据相似度选取最为相似的图像。考虑到检索速度,很多图像检索算法使用简单的特征来描述图像,导致对图像的描述不够细致。而有些图像检索算法基于单模型的深度学习,使得模型对图像的描述不够全面。因此,如何细致、全面地描述图像,是图像检索中面临的一个技术问题。



技术实现要素:

为了提高图像检索准确率,本发明实施例提供一种图像检索方法及装置。

根据本发明一个方面,提供一种图像检索方法,包括:获取待查询图像;将所述待查询图像以及预置的多条评测图像输入到预先建立的同款检索模型和同类检索模型中,输出得到待查询图像特征和多条评测图像特征;对所述待查询图像特征和所述多条评测图像特征进行相似度计算;按照相似度从高至低对多条评测图像进行排序,选取排序靠前的预置数目的评测图像作为检索结果。

优选的,所述同款检索模型的建立过程包括:构造训练集,所述训练集中包括多幅待查询图像及相应的同款图像,其中,所述同款图像是指与所述待查询图像的外观相似的图像;将所述训练集输入到深度学习网络模型进行训练,建立得到所述同款检索模型。

优选的,所述同类检索模型的建立过程包括:构造训练集,所述训练集中包括多幅待查询图像及相应的同类图像,其中,所述同类图像是指与所述待查询图像属于同一个种类的图像;将所述训练集输入到深度学习网络模型进行训练,建立得到所述同类检索模型。

优选的,在所述输出得到待查询图像特征和评测图像特征之后,所述对所述待查询图像特征和所述评测图像特征进行相似度计算之前,还包括:对所述待查询图像特征和所述评测图像特征进行降维处理,并且对降维处理后的待查询图像特征和评测图像特征进行映射。

优选的,采用主成分分析方法对所述待查询图像特征和所述评测图像特征进行降维处理;采用线性判决方法对降维处理后的待查询图像特征和评测图像特征进行映射。

根据本发明另一个方面,提供一种图像检索装置,包括:图像获取单元,用于获取待查询图像;模型操作单元,用于将所述待查询图像以及预置的多条评测图像输入到预先建立的同款检索模型和同类检索模型中,输出得到待查询图像特征和多条评测图像特征;相似度计算单元,用于对所述待查询图像特征和所述多条评测图像特征进行相似度计算;检索结果确定单元,用于按照相似度从高至低对多条评测图像进行排序,选取排序靠前的预置数目的评测图像作为检索结果。

优选的,还包括:同款检索模型建立单元,用于构造训练集,所述训练集中包括多幅待查询图像及相应的同款图像,其中,所述同款图像是指与所述待查询图像的外观相似的图像;以及,将所述训练集输入到深度学习网络模型进行训练,建立得到所述同款检索模型。

优选的,还包括:同类检索模型建立单元,用于构造训练集,所述训练集中包括多幅待查询图像及相应的同类图像,其中,所述同类图像是指与所述待查询图像属于同一个种类的图像;将所述训练集输入到深度学习网络模型进行训练,建立得到所述同类检索模型。

优选的,还包括:降维处理单元,用于对所述待查询图像特征和所述评测图像特征进行降维处理;映射单元,用于对降维处理后的待查询图像特征和评测图像特征进行映射。

优选的,所述降维处理单元采用主成分分析方法对所述待查询图像特征和所述评测图像特征进行降维处理;映射单元采用线性判决方法对降维处理后的待查询图像特征和评测图像特征进行映射。

可见,本发明实施例提出了一种融合了多模型的图像检索方法,使得检索返回的结果既与查询图像外观上相似,同时使得它们都属于同一个类别,融合这两种互补的特征后可以显著提高检测准确率。此外,本发明还使用了PCA和LDA对融合后的特征进行降维和空间映射处理,在精度损失很小的情况下,极大地提高了检索速度。

附图说明

图1是本发明一个实施例提供的一种图像检索方法流程图;

图2是本发明另一个实施例提供的一种图像检索方法流程图;

图3是本发明一个实施例提供的一种图像检索装置结构示意图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

现有技术中出于检索速度的考虑,很多图像检索算法使用简单的特征来描述图像,导致对图像的描述不够细致。而有些图像检索算法基于单模型的深度学习,使得模型对图像的描述不够全面。因此,本发明基于商品同款检索这一特定的图像检索目的,提出了融合了同款模型和同类模型的检索策略,使得对图像的描述更加细致、全面,并且,在优选方式中,通过PCA(主成分分析)降维缩小特征维数,并通过LDA(线性判决分析),进行映射,从而提高检索速度。

参见图1,为本发明实施例提供的一种图像检索方法流程图,该方法包括:

S101:获取待查询图像;

S102:将待查询图像以及预置的多条评测图像输入到预先建立的同款检索模型和同类检索模型中,输出得到待查询图像特征和评测图像特征;

S103:对待查询图像特征和多条评测图像特征进行相似度计算;

S104:按照相似度从高至低对所述多条评测图像进行排序,选取排序靠前的预置数目的评测图像作为检索结果。

对于图像检索而言,最终目的是根据待查询图像,检索到与之外观相同或相似的图像。本发明中,可根据深度学习理论,预先建立两个模型:同款检索模型,用于找到同一个款式或者同样图案的商品,使得返回的结果与待查询图像在外观上相似;同类检索模型,用于找到同一个类别的商品,保证返回的结果与待查询图像属于同一个类别。通过融合上述两个同款检索模型和同类检索模型,能更加细致并全面的描述图像特征,从而提高检索准确度。本领域技术人员了解,深度学习的概念源于人工神经网络,深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。基于深度学习所建立模型描述的特征,可以理解是通过较低的维度数据向量表达原始数据相同的信息量。

本发明中,同款的含义是两个图像的外观相同或相似,同类的含义是两个图像中的物品属于同一个类别。例如,以服装商品图像查询为例,黑白横向条纹的两件衣服属于同款,通过同款检索模型可匹配出同款衣服,同款衣服中可能包括T恤、衬衫、外套;进一步,通过同类检索模型可匹配出与待查询图像的同类别衣服图像,例如,待查询图像中是T恤,则通过同类检索模型仅匹配出同类的T恤。

为了描述简便和直观,本发明实施例以服装商品的图像检索为例进行说明。但是,需要说明的是,本发明实施例子不限于服装商品图像的检索,还可用于其他商品图像的检索,例如电器、家具、日用品等等。

下面以服装图像检索为例,对本发明另一实施例进行介绍。

与图1实施例区别在于,本实施例详细描述了两个检索模型的建立过程(S201、S202),并且,增加了对特征降维和映射的步骤(S205)。参见图2,为本发明另一个实施例提供的图像检索方法流程图,包括下述步骤S201-S207。

S201:建立同款检索模型。

概括而言,同款检索模型的建立过程包括两个步骤:构造训练集,训练集中包括多幅待查询图像及相应的同款图像,其中,同款图像是指与待查询图像的外观相似的图像;将训练集输入到深度学习网络进行训练,建立得到同款检索模型。

具体的,在构造训练集时,收集多幅待查询图像以及相应的同款图像,将这些外观相似的一组图片集存储作为一个类别进行训练。同时,为了捕捉到商品的更多细节并去除图像的边缘噪声,可对所有图像进行预处理操作:分别将原始图像放大,然后截取图像中心预定大小的区域作为增加的数据,从而增加训练样本数量。

然后,利用构造的训练集,输入到深度学习网络中进行分类训练。例如,深度学习网络可采用GoodLeNet网络。

对于深度学习算法而言,为提高图像分类或检索的性能,需要增加模型的深度或提高滤波器和神经元的个数。GoodLeNet网络采用22层结构,同时在不同的深度处增加了两个loss层来保证梯度值的存在,避免了层数过多导致的梯度变小的问题。同时,GoodLeNet网络增加了多种核结构,如1×1、3×3、5×5。此外,在卷积层之后和池化层之前,又加入了一个1×1的卷积核,以降低特征图的厚度,防止最终串接起来的特征维数过于庞大。

因此,优选使用GoodLeNet网络做分类训练,经过众多次迭代之后,网络的loss基本维持不变,最终的分类准确率较高。

需要说明的是,虽然本发明优选GoodLeNet网络进行模型训练,但是实际上,并不限于此,还可以采用其他深度学习网络进行模型训练。

在实际操作中发现,如果只用同款检索模型对图像进行检索,会出现一个明显的问题,即返回的结果是跟查询的外观上较为相似的图像,但是并没有考虑是否与查询商品属于同一个类别。例如,当输入一幅带有条纹的T恤商品图像时,如果仅使用同款检索模型,则返回的结果是都带有条纹图案的商品,其中既包括期望的T恤,也会包含期望之外的,例如外套、polo衫,显得极为不合理。因此,预想的检索结果既要与查询图像外观相似,也要属于同一个类别,因此增加了同类检索模型。

S202:建立同类检索模型。

概括而言,同类检索模型的建立过程包括以下两个步骤:构造训练集,训练集中包括多幅待查询图像及相应的同类图像,其中,同类图像是指与待查询图像属于同一个种类的图像;将训练集输入到深度学习网络进行训练,建立得到同类检索模型。

为了使得训练的类别足够多,可采用技术领域公开的数据源,例如,采用ImageNet数据库的公共竞赛数据集。该数据库共包含1000个类别、126万张训练图像。需要注意的是,该训练集中的同一个类别与上述同款检索模型中的类别概念是不同的。在同款检索模型中,同一个类包含的是同一件商品(或同一个款式商品)的不同姿态、不同角度下的图像。而在同类检索模型中,每个类别内的图像是指属于同一个小范围的种类,如T恤、羽绒服、连衣裙等,而不考虑图案、款式是否相同。因此,同款检索模型更关注的是外观相似,而同类检索模型约束的是属于同一个种类。

利用在训练集上预训练的GoodLeNet网络进行特征提取,但是实验发现效果不是十分理想。于是进一步的,可增大训练的数据集和类别数,例如,采用ImageNet数据库的所有数据,该数据库的图像数目更多,类别数也更大,即分类更细致。因此在训练时,模型可捕捉到每个类别之间更加细微的差别,学习到的特征也能够对图像的描述更加细致。在具体操作中,可将基于ImageNet数据库训练的模型进行特征提取,与同款检索模型的特征分别做二范数归一化之后串接在一起,组成一个更长的特征,作为描述一幅图像的最终特征。

S203:获取待查询图像。

待查询图像一般是用户输入的商品图像,用户输入该图像,目的是查找到与之相同或相似的商品。

S204:将待查询图像以及预置的多条评测图像输入到同款检索模型和同类检索模型中,输出得到待查询图像特征和多条评测图像特征。

评测图像是预先设置存储的,可根据不同类型商品分别进行预置和存储。例如,对于服装商品,预置服装商品图像,作为查询和检索的基础数据库。

如前描述的,由于同款检索模型和同类检索模型在建立过程中通过深度学习算法进行了特征提取,因此在将待查询图像以及评测图像输入到两个模型之后,即可得到待查询图像特征和评测图像特征。

S205:对待查询图像特征和多条评测图像特征进行降维处理,并且对降维处理后的待查询图像特征和多条评测图像特征进行映射。

由于本发明采用同款检索模型和同类检索模型这两个模型,因此导致特征增多,当把多个特征组合在一起时,很显然会导致特征维数增多,因此会影响后续相似度计算的效率。因此,可对待查询图像特征和评测图像特征进行降维处理,并且对降维处理后的待查询图像特征和评测图像特征进行映射,从而提高处理效果。

具体的,可采用主成分分析(Principal Component Analysis,PCA)对特征进行降维处理,采用线性判决分析(Linear Discriminant Analysis,LDA)对降维后的特征进行映射。

PCA是一种统计方法,通过正交变换将一组可能存在相关性的变量转换为一组线性不相关的变量,转换后的这组变量叫主成分。主成分分析是对于原先提出的所有变量,将重复的变量(关系紧密的变量)删去多余,建立尽可能少的新变量,使得这些新变量是两两不相关的,而且这些新变量在反映课题的信息方面尽可能保持原有的信息。

LDA是分类算法中的一种,通过对历史数据进行投影,以保证投影后同一类别的数据尽量靠近,不同类别的数据尽量分开,并生成线性判别模型对新生成的数据进行分离和预测。

本发明实施例中,由于提取的待查询图像特征和评测图像特征是稀疏的,因此利用PCA降维可以去除不必要的噪声,保留价值更大的特征维度。而LDA可以进一步增大各特征类之间的距离,减少类内距离,保证投影后的新样本模式能够被区分的更加明显。

S206:对经过降维处理和映射的待查询图像特征和评测图像特征进行相似度计算。

相似度计算用于衡量对象之间的相似程度,常见的相似度计算方法包括基于向量空间的相似度计算方法、基于hash的相似度计算方法、基于主题的相似度计算方法等。本发明实施例可采用现有或未来出现的相似度计算方法,对此不作限定。

S207:按照相似度从高至低对多条评测图像进行排序,选取排序靠前的预置数目的评测图像作为检索结果。

可以理解,评测图像与待查询图像的相似度越高,表明评测图像与待查询图像越接近,包括款式和类别越接近。经过按照相似度从高至低对评测图像进行排序,可以选取出与待查询图像最为接近的预定数目的图像。例如选取相似度从高至低的100个图像。

可见,本发明实施例提出了一种融合了多模型的图像检索方法,使得检索返回的结果既与查询图像外观上相似,同时使得它们都属于同一个类别,融合这两种互补的特征后可以显著提高检测准确率。此外,本发明还使用了PCA和LDA对融合后的特征进行降维和空间映射处理,在精度损失很小的情况下,极大地提高了检索速度。

需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。

参照图3,是本发明实施例提供的一种图像检索装置结构示意图。该装置包括:

图像获取单元301,用于获取待查询图像;

模型操作单元302,用于将所述待查询图像以及预置的多条评测图像输入到预先建立的同款检索模型和同类检索模型中,输出得到待查询图像特征和多条评测图像特征;

相似度计算单元303,用于对所述待查询图像特征和所述多条评测图像特征进行相似度计算;

检索结果确定单元304,用于按照相似度从高至低对所述多条评测图像进行排序,选取排序靠前的预置数目的评测图像作为检索结果。

优选的,该装置还包括:

同款检索模型建立单元305,用于构造训练集,所述训练集中包括多幅待查询图像及相应的同款图像,其中,所述同款图像是指与所述待查询图像的外观相似的图像;以及,将所述训练集输入到深度学习网络模型进行训练,建立得到所述同款检索模型。

概括而言,同款检索模型的建立过程包括两个步骤:构造训练集,训练集中包括多幅待查询图像及相应的同款图像,其中,同款图像是指与待查询图像的外观相似的图像;将训练集输入到深度学习网络模型进行训练,建立得到同款检索模型。

具体的,在构造训练集时,收集多幅待查询图像以及相应的同款图像,将这些外观相似的一组图片集中存储作为一个类别进行训练。同时,为了捕捉到商品的更多细节并去除图像的边缘噪声,可对所有图像进行预处理操作:分别将原始图像放大,然后截取图像中心预定大小的区域作为增加的数据,从而增加训练样本数量。

然后,利用构造的训练集,输入到深度学习网络中进行分类训练。例如,深度学习网络可采用GoodLeNet网络。

对于深度学习算法而言,为提高图像分类或检索的性能,需要增加模型的深度或提高滤波器和神经元的个数。GoodLeNet网络采用22层结构,同时在不同的深度处增加了两个loss层来保证梯度值的存在,避免了层数过多导致的梯度小时的问题。同时,GoodLeNet网络增加了多种核结构,如1×1、3×3、5×5。此外,在卷积层之后和池化层之前,又加入了一个1×1的卷积核,以降低特征图的厚度,防止最终串接起来的特征维数过于庞大。

因此,优选使用GoodLeNet网络做分类训练,经过众多次迭代之后,网络的loss基本维持不变,最终的分类准确率较高。

需要说明的是,虽然本发明优选GoodLeNet网络进行模型训练,但是实际上,并不限于此,还可以采用其他深度学习网络进行模型训练。

在实际操作中发现,如果只用同款检索模型对图像进行检索,会出现一个明显的问题,即返回的结果是跟查询的外观上较为相似的图像,但是并没有考虑是否与查询商品属于同一个类别。例如,当输入一幅带有条纹的T恤商品图像时,如果指使用同款检索模型,则返回的结果是都带有条纹图案的商品,其中既包括期望的T恤,也会包含期望之外的,例如外套、polo衫,显得极为不合理。因此,预想的检索结果既要与查询图像外观相似,也要属于同一个类别,因此增加了同类检索模型。

优选的,该装置还包括:

同类检索模型建立单元306,用于构造训练集,所述训练集中包括多幅待查询图像及相应的同类图像,其中,所述同类图像是指与所述待查询图像属于同一个种类的图像;将所述训练集输入到深度学习网络模型进行训练,建立得到所述同类检索模型。

概括而言,同类检索模型的建立过程包括以下两个步骤:构造训练集,训练集中包括多幅待查询图像及相应的同类图像,其中,同类图像是指与待查询图像属于同一个种类的图像;将训练集输入到深度学习网络进行训练,建立得到同类检索模型。

为了使得训练的类别足够多,可采用技术领域公开的数据源,例如,采用ImageNet数据库的公共竞赛数据集。该数据库共包含1000个类别、126万张训练图像。需要注意的是,该训练集中的同一个类别与上述同款检索模型中的类别概念是不同的。在同款检索模型中,同一个类包含的是同一件商品(或同一个款式商品)的不同姿态、不同角度下的图像。而在同类检索模型中,每个类别内的图像是指属于同一个小范围的种类,如T恤、羽绒服、连衣裙等,而不考虑图案、款式是否相同。因此,同款检索模型更关注的是外观相似,而同类检索模型约束的是属于同一个种类。

利用在训练集上预训练的GoodLeNet网络进行特征提取,但是实验发现效果不是十分理想。于是进一步的,可增大训练的数据集和类别数,例如,采用ImageNet数据库的所有数据,该数据库的图像数目更多,类别数也更大,即分类更细致。因此在训练时,模型可捕捉到每个类别之间更加细微的差别,学习到的特征也能够对图像的描述更加细致。

优选的,该装置还包括:

降维处理单元307,用于对所述待查询图像特征和所述多条评测图像特征进行降维处理;

映射单元308,用于对降维处理后的待查询图像特征和多条评测图像特征进行映射。

由于本发明采用同款检索模型和同类检索模型这两个模型,因此导致特征增多,当把多个特征组合在一起时,很显然会导致特征维数增多,因此会影响后续相似度计算的效率。因此,可对待查询图像特征和评测图像特征进行降维处理,并且对降维处理后的待查询图像特征和评测图像特征进行映射,从而提高处理效果。

具体的,可采用主成分分析(PCA)对特征进行降维处理,采用线性判决分析(LDA)对降维后的特征进行映射。由于提取的特征是稀疏的,因此利用PCA降维可以去除不必要的噪声,保留价值更大的特征维度。而LDA可以进一步增大各特征类之间的距离,减少类内距离,保证投影后的新样本模式能够被区分的更加明显。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

以上对本发明所提供的一种关系型数据库的调度方法及系统,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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