CN109697451B - 相似图像聚类方法及装置、存储介质、电子设备 - Google Patents
相似图像聚类方法及装置、存储介质、电子设备 Download PDFInfo
- Publication number
- CN109697451B CN109697451B CN201710994492.4A CN201710994492A CN109697451B CN 109697451 B CN109697451 B CN 109697451B CN 201710994492 A CN201710994492 A CN 201710994492A CN 109697451 B CN109697451 B CN 109697451B
- Authority
- CN
- China
- Prior art keywords
- image
- images
- binary code
- clustering
- similar
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Biophysics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Image Analysis (AREA)
Abstract
本公开是关于一种相似图像聚类方法、相似图像聚类装置、计算机可读存储介质及电子设备,涉及图像处理技术领域,该方法包括:通过卷积神经网络模型提取多个图像的图像特征并对所述图像特征进行哈希映射;通过强连通分量聚类方法对所述图像特征进行聚类,以确定聚类类别;为各所述图像特征提供一类别标识并根据所述类别标识从数据库中获取所述相似图像。本公开可以提高相似图像聚类效率。
Description
技术领域
本公开涉及图像处理技术领域,具体而言,涉及一种相似图像聚类方法、相似图像聚类装置、计算机可读存储介质以及电子设备。
背景技术
在图像检索、图像的版权保护、视频智能分析等领域的图像存储过程中,经常会出现重复存储相同或者相似图像的现象,为了避免该现象的出现,可以对相似图像进行聚类从而根据聚类结果对相似图像进行处理。
相关技术中,大多会采用K均值聚类方法、DBSCAN(Density-Based SpatialClustering of Applications with Noise)基于密度的聚类方法或者层次聚类方法对相似图像进行聚类。其中,K均值聚类方法通过随机从样本中选择初始类中心,通过将当前样本与多个类中心之间的欧氏距离最小的类中心编号作为样本所在的类别,然后计算样本类别对应的集合中特征向量的均值向量并更新当前类别所对应的类中心;DBSCAN聚类方法可以利用每个点很小的邻域内样本点的个数来计算该点处的密度确定其周围的核心点所在类别;层次聚类可以通过将所有样本各自设为一类作为最底层,并将类别两两合并的方法,或者将所有样本聚为多个类别作为最顶层,并对每个类别样本进行迭代拆分的方法确定类别数。
上述聚类方法中可能存在以下问题:一、对图像进行聚类时需要人工事先指定聚类的类别数,准确性较差且效率较低;二、在样本数目较大、复杂度在特征向量的维数较高会占用大量内存,因此导致内存不足的情况。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种相似图像聚类方法、相似图像聚类装置、计算机可读存储介质以及电子设备,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或者多个问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的一个方面,提供一种相似图像聚类方法,包括:
通过卷积神经网络模型提取多个图像的图像特征并对所述图像特征进行哈希映射;
通过强连通分量聚类方法对所述图像特征进行聚类,以确定聚类类别;
为各所述图像特征提供一类别标识并根据所述类别标识从数据库中获取所述相似图像。
在本公开的一种示例性实施例中,对所述图像特征进行哈希映射包括:
通过哈希量化编码方法将各所述图像的所述图像特征转换为二值码。
在本公开的一种示例性实施例中,通过强连通分量聚类方法对所述图像特征进行聚类包括:
通过所述二值码计算多个图像之间的相似度并对所述二值码进行排序;
分别以各所述图像的所述二值码为顶点构建有向图;
查找所述有向图中的所有强连通分量以确定聚类的类别数量。
在本公开的一种示例性实施例中,通过所述二值码计算多个图像之间的相似度并对所述二值码进行排序包括:
计算各所述图像对应的所述二值码与一查询二值码之间的汉明距离以获取所述相似度;
对所述二值码根据所述汉明距离进行排序。
在本公开的一种示例性实施例中,以各所述图像的所述二值码为顶点构建有向图包括:
在所述二值码与所述查询二值码之间的所述汉明距离符合预设条件时,建立由所述查询二值码指向所述二值码的有向边。
在本公开的一种示例性实施例中,查找所述有向图中的所有强连通分量包括:
在通过预设数据结构判断各所述顶点属于同一连通分量时,使用Tarjan算法查找所述有向图中的所述强连通分量。
在本公开的一种示例性实施例中,所述汉明距离与所述相似度负相关。
根据本公开的一个方面,提供一种相似图像聚类装置,包括:
特征提取模块,用于通过卷积神经网络模型提取多个图像的图像特征并对所述图像特征进行哈希映射;
特征聚类模块,用于通过强连通分量聚类方法对所述图像特征进行聚类,以确定聚类类别;
图像获取模块,用于为各所述图像特征提供一类别标识并根据所述类别标识从数据库中获取所述相似图像。
根据本公开的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的相似图像聚类方法。
根据本公开的一个方面,提供一种电子设备,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的相似图像聚类方法。
本公开示例性实施例中提供的一种相似图像聚类方法、相似图像聚类装置、计算机可读存储介质以及电子设备中,通过卷积神经网络模型提取多个图像的图像特征并对所述图像特征进行哈希映射;通过强连通分量聚类方法对所述图像特征进行聚类,以及为各所述图像特征提供一类别标识并根据所述类别标识从数据库中获取所述相似图像。一方面,通过强连通分量聚类方法对所述图像特征进行聚类,可以自动确定聚类类别数目,避免了相关技术中通过人工确定聚类数目的操作,提高了聚类的准确率和效率;另一方面,通过卷积神经网络模型提取多个图像的图像特征并对所述图像特征进行哈希映射,可以减小图像特征的大小,从而减少了图像特征占用的内存消耗。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出本公开示例性实施例中一种相似图像聚类方法示意图;
图2示意性示出本公开示例性实施例中一种相似图像聚类方法的具体流程图;
图3示意性示出本公开示例性实施例中一种相似图像聚类装置的框图;
图4示意性示出本公开示例性实施例中一种电子设备的框图;
图5示意性示出本公开示例性实施例中一种程序产品。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
本示例实施方式中首先提供了一种相似图像聚类方法,可以应用于图像检索、电子商务平台图像版权保护、视频智能分析等领域中。参考图1所示,该相似图像聚类方法可以包括以下步骤:
步骤S110.通过卷积神经网络模型提取多个图像的图像特征并对所述图像特征进行哈希映射;
步骤S120.通过强连通分量聚类方法对所述图像特征进行聚类,以确定聚类类别;
步骤S130.为各所述图像特征提供一类别标识并根据所述类别标识从数据库中获取所述相似图像。
在本示例性实施例中提供的相似图像聚类方法中,一方面,通过强连通分量聚类方法对所述图像特征进行聚类,可以自动确定聚类类别数目,避免了相关技术中通过人工确定聚类数目的操作,提高了聚类的准确率和效率;另一方面,通过卷积神经网络模型提取多个图像的图像特征并对所述图像特征进行哈希映射,可以减小图像特征的大小,从而减少了图像特征占用的内存消耗。
下面,将对本示例实施方式中描述的相似图像聚类方法中的各步骤进行详细的解释以及说明。
在步骤S110中,通过卷积神经网络模型提取多个图像的图像特征并对所述图像特征进行哈希映射。
在对图像进行聚类或者其它操作时,由于图像需要的存储空间太大可能会导致无法一次性将所有图像数据存储于内存,为了解决这个问题,可以通过卷积神经网络模型提取多个图像的图像特征,通过图像特征的方式表达每个图像,以减小图像的内存。
卷积神经网络模型(Convolutional Neural Network,CNN)的基本结构包括特征提取层和特征映射层。由于CNN的特征检测层通过训练数据进行学习,所以在使用CNN时,避免了显示的特征抽取,而隐式地从训练数据中进行学习,通过卷积神经网络模型可以降低特征提取和分类过程中数据重建的复杂度。
此处图像特征可以包括局部特征和全局特征,为了使得到的图像特征更清楚准确地表达图像的全局特征和局部特征,需要预先训练一个基于排序的卷积神经网络模型。例如可以从样本集中取一个样本(X,Yp),将X输入网络计算相应的实际输出,然后通过算实际输出与相应的理想输出Yp的差,并按极小化误差的方法反向传播调整权矩阵的方式训练卷积神经网络模型。
然后通过所述卷积神经网络模型提取所有图像的图像特征,提取图像特征的具体过程可以包括:输入一张包括(R)、绿(G)、蓝(B)三个颜色的三通道彩色图像,经过卷积神经网络模型的卷积层、偏置层、下采样层、激活层等等,最后输出1024维的图像特征,此处的图像特征包括浮点型特征。
在得到图像的浮点型特征后,可以进一步对所述图像特征执行哈希映射操作,以将图像的浮点型特征映射到汉明空间中的一个点。具体而言,步骤S110中对所述图像特征进行哈希映射可以包括:
通过哈希量化编码方法将各所述图像的所述图像特征转换为二值码。
其中,哈希量化编码可以将所有特征采用0、1比特的二进制串来表示一个d维的浮点型特征,使得特征之间的距离可以由二进制串之间的距离来近似。
在进行哈希映射时首先需要学习一个哈希映射模型,将1024维的浮点型特征映射到汉明空间中的一个点,该点的维数为1024维,即1024比特的由0、1字符串,该字符串称为二值码。假设有N个图像,经过卷积神经网络模型提取特征和哈希映射操作后,这N个图像都由内存中的N个二值码表示。
结合步骤S110举例而言,对于一张800*600的三通道彩色图像,可以经过卷积神经网络模型获取其浮点型特征,该浮点型特征包括1024维,占用内存4096个字节,再经过哈希映射到1024维的二值码后,占用内存为1024比特,即128个字节。相对于传统方法中所述的1亿图像数据放入内存至少需要占用380GB内存而言,二值码特征占用的内存是原始所需内存的八分之一,从而减少了图像特征占用的内存消耗。
在步骤S120中,通过强连通分量聚类方法对所述图像特征进行聚类,以确定聚类类别。
如果有向图中任意两个顶点之间具有一条可达的路径,则称该图为强连通图,当去掉尽可能多数量的边后,仍为强连通图,则该强连通图即为强连通分量。例如,在有向图G中,如果两个顶点vi,vj间(vi>vj)有一条从vi到vj的有向路径,同时还有一条从vj到vi的有向路径,则称两个顶点强连通。如果有向图G的每两个顶点都强连通,称G是一个强连通图。有向图的极大强连通子图,称为强连通分量。
此处可以通过强连通分量聚类方法对经过哈希映射操作之后得到的二值码特征进行聚类,基于强连通分量的二值码特征聚类方法的原理在于图像之间的语义相似性可以采用图论中点之间的连通性来表示,属于同一个类别的图像之间它们属于一个强连通分量。
详细而言,通过强连通分量聚类方法对所述图像特征进行聚类具体可以包括:
通过所述二值码计算多个图像之间的相似度并对所述二值码进行排序;
分别以各所述图像的所述二值码为顶点构建有向图;
查找所述有向图中的所有强连通分量以确定聚类的类别数量。
首先,可以通过所述二值码计算多个图像之间的相似度以进行相似性检索并对所述二值码进行排序;接下来分别以各所述图像的所述二值码为顶点构建有向图;最后在所述有向图中查找所有强连通分量以确定聚类的类别数量。
接下来,对聚类方法中的每个步骤进行具体说明。其中,通过所述二值码计算多个图像之间的相似度并对所述二值码进行排序可以包括:
计算各所述图像对应的所述二值码与一查询二值码之间的汉明距离以获取所述相似度;
对所述二值码根据所述汉明距离进行排序。
本示例中,汉明距离可以用于表示两个相同长度字对应位不同的数量,可以对两个字符串进行异或运算,并统计结果为1的个数,则1的个数即为汉明距离。例如:1011101与1001001之间的汉明距离是2,2143896 与2233796之间的汉明距离是3,"toned"与"roses"之间的汉明距离是3。需要说明的是,1024位的二值码的汉明距离最小值为0,最大值为1024。
查询二值码可以根据用户需求进行设置,例如可以为多个二值码中的任意一个。可以通过计算每个图像对应的二值码与设置的查询二值码之间的汉明距离,并用该汉明距离表示每个二值码与所述查询二值码之间的相似度。其中,相似度与汉明距离呈负相关。以1024位的二值码为例进行说明,当两个图像二值码之间的汉明距离为0时,表示它们之间的相似度最大;当两个图像二值码之间的汉明距离为1024时,表示它们之间的相似度最小。
在计算完相似度之后,可以对所有二值码根据所述汉明距离的大小进行排序,以提高聚类操作的效率,其中,可以按照堆排序算法或者其它算法对所述汉明距离进行排序,具体地过程可以通过编写程序代码实现。
举例而言,对于N张图像,计算它们对应的二值码之间的汉明距离即1024位中不同
位的个数,如0101与1011之间的汉明距离为3。由于N张图像之间距离的计算时间复杂度为,但是本示例中是对采用0、1编码的二值码进行计算,因此效率有所提高。
当计算出N张图像之间的汉明距离后,可以对距离按照从小到大的顺序进行排序。具体地,当采用a作为查询二值码时,通过计算查询二值码a与内存中其他N个二值码之间的汉明距离,便可以得到与a相似性最大的前K个二值码,以及距离小于H的所有二值码。参数K、H是构建有向图时的可控参数,可以根据实际需要进行设置。通过对这2个参数的调节,可以控制最后得到的聚类类别总数。一般地,增大K、H时,得到的类别总数减少;减少K、H时,得到的类别总数增加。
除此之外,以各所述图像的所述二值码为顶点构建有向图可以包括:
在所述二值码与所述查询二值码之间的所述汉明距离符合预设条件时,建立由所述查询二值码指向所述二值码的有向边。
在构建有向图时,首先可以判断各所述二值码与所述查询二值码之间的所述汉明距离是否满足预设条件,其中预设条件可以为该二值码的排序在前K个中。
如果各所述二值码与所述查询二值码之间的所述汉明距离在前K个中,则可以建立一条有向边,且该有向边的方向为由所述查询二值码指向所述二值码。可以采用循环判断的方法通过上述步骤遍历内存中的所有二值码,从而建立有向图。
举例而言,对于查询二值码a,如果二值码b与a的距离在前K个中,则建立一条由顶点a指向顶点b的有向边,遍历内存中所有的二值码,若该二值码在前K个中,则增加一条有向边;以此重复从而建立起有向图。
除此之外,查找所述有向图中的所有强连通分量可以包括:
在通过预设数据结构判断各所述顶点属于同一连通分量时,使用Tarjan算法查找所述有向图中的所述强连通分量。
本示例中,预设数据结构可以为并查集数据结构。在查找有向图的强连通分量时,可以采用并查集数据结构,以判断两个顶点是否属于同一个连通分量,进一步地使用Tarjan算法来找出所有的强连通分量。其中,强连通分量的个数即为聚类类别总数。Tarjan算法是基于对图深度优先搜索的算法,每个强连通分量为搜索树中的一棵子树。搜索时把当前搜索树中未处理的节点加入一个堆栈,回溯时可以判断栈顶到栈中的节点是否为一个强连通分量。通过Tarjan算法查找所述有向图中的所述强连通分量的具体过程可以通过伪代码、pascal代码、C++代码或者其他语言编写的程序实现。
由于强连通分量的个数由上述步骤中的参数K自动确定,且强连通分量的个数即为聚类类别总数,因此避免了相关技术中人为手工确定聚类类别总数的步骤,从而提高了聚类效率,同时也避免了人工操作时导致的错误,提高了准确率。
接下来,在步骤S130中,为各所述图像特征提供一类别标识并根据所述类别标识从数据库中获取所述相似图像。
基于步骤S120在通过强连通分量对多个图像特征进行聚类确定聚类类别之后,可以为表示图像的图像特征对应的聚类类别提供一类别标识。该类别标识为全局唯一的标识号,例如可以为编号或者其他标识,此处以编号为例进行说明。具体地,在找出有向图中的所有强连通分量后,则每个连通分量中的所有顶点对应的图像具有相同的编号,编号的位数例如可以为11位。
本示例中,可以根据类别标识从有向图中找出所有强连通分量,进而可以根据该类别标识快速从数据库找出遍历所有图像找出相似图像,以通过相似图像执行目标操作。通过类别标识查找相似图像的方法,可以提高相似图像获取的效率。
本公开还提供了一种相似图像聚类装置。参考图3所示,该相似图像聚类装置300可以包括特征提取模块301、特征聚类模块302、图像获取模块303。其中:
特征提取模块301,可以用于通过卷积神经网络模型提取多个图像的图像特征并对所述图像特征进行哈希映射;
特征聚类模块302,可以用于通过强连通分量聚类方法对所述图像特征进行聚类,以确定聚类类别;
图像获取模块303,可以用于为各所述图像特征提供一类别标识并根据所述类别标识从数据库中获取所述相似图像。
上述相似图像聚类装置中各模块的具体细节已经在对应的相似图像聚类方法中进行了详细描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为***、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“***”。
下面参照图4来描述根据本发明的这种实施方式的电子设备600。图4显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图4所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:上述至少一个处理单元610、上述至少一个存储单元620、连接不同***组件(包括存储单元620和处理单元610)的总线630。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图1中所示的步骤S110.通过卷积神经网络模型提取多个图像的图像特征并对所述图像特征进行哈希映射;步骤S120.通过强连通分量聚类方法对所述图像特征进行聚类,以确定聚类类别;步骤S130.为各所述图像特征提供一类别标识并根据所述类别标识从数据库中获取所述相似图像。
存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、***总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器660通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。
参考图5所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
Claims (8)
1.一种相似图像聚类方法,其特征在于,包括:
通过卷积神经网络模型提取多个图像的图像特征并通过哈希量化编码方法将所述图像特征转换为二值码;
通过所述二值码计算多个图像之间的相似度并对所述二值码进行排序;
分别以各所述图像的所述二值码为顶点构建有向图;
查找所述有向图中的所有强连通分量以确定聚类的类别数量;
为各所述图像特征提供一类别标识并根据所述类别标识从数据库中获取所述相似图像。
2.根据权利要求1所述的相似图像聚类方法,其特征在于,通过所述二值码计算多个图像之间的相似度并对所述二值码进行排序包括:
计算各所述图像对应的所述二值码与一查询二值码之间的汉明距离以获取所述相似度;
对所述二值码根据所述汉明距离进行排序。
3.根据权利要求1所述的相似图像聚类方法,其特征在于,以各所述图像的所述二值码为顶点构建有向图包括:
在所述二值码与查询二值码之间的汉明距离符合预设条件时,建立由所述查询二值码指向所述二值码的有向边。
4.根据权利要求1所述的相似图像聚类方法,其特征在于,查找所述有向图中的所有强连通分量包括:
在通过预设数据结构判断各所述顶点属于同一连通分量时,使用Tarjan算法查找所述有向图中的所述强连通分量。
5.根据权利要求2所述的相似图像聚类方法,其特征在于,所述汉明距离与所述相似度负相关。
6.一种相似图像聚类装置,其特征在于,包括:
特征提取模块,用于通过卷积神经网络模型提取多个图像的图像特征并通过哈希量化编码方法将所述图像特征转换为二值码;
特征聚类模块,用于通过所述二值码计算多个图像之间的相似度并对所述二值码进行排序;分别以各所述图像的所述二值码为顶点构建有向图;查找所述有向图中的所有强连通分量以确定聚类的类别数量;
图像获取模块,用于为各所述图像特征提供一类别标识并根据所述类别标识从数据库中获取所述相似图像。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-5任一项所述的相似图像聚类方法。
8.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1-7任一项所述的相似图像聚类方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710994492.4A CN109697451B (zh) | 2017-10-23 | 2017-10-23 | 相似图像聚类方法及装置、存储介质、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710994492.4A CN109697451B (zh) | 2017-10-23 | 2017-10-23 | 相似图像聚类方法及装置、存储介质、电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109697451A CN109697451A (zh) | 2019-04-30 |
CN109697451B true CN109697451B (zh) | 2022-01-07 |
Family
ID=66226804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710994492.4A Active CN109697451B (zh) | 2017-10-23 | 2017-10-23 | 相似图像聚类方法及装置、存储介质、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109697451B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110531335A (zh) * | 2019-09-18 | 2019-12-03 | 哈尔滨工程大学 | 一种基于并查集的低复杂度相似聚类信号分选方法 |
CN112580676A (zh) * | 2019-09-29 | 2021-03-30 | 北京京东振世信息技术有限公司 | 聚类方法、聚类装置、计算机可读介质及电子设备 |
CN110991514B (zh) * | 2019-11-27 | 2024-05-17 | 深圳市商汤科技有限公司 | 图像聚类方法及装置、电子设备和存储介质 |
CN111046929B (zh) * | 2019-11-28 | 2023-09-26 | 北京金山云网络技术有限公司 | 模型错例的分析方法、装置及电子设备 |
CN111062431A (zh) * | 2019-12-12 | 2020-04-24 | Oppo广东移动通信有限公司 | 图像聚类方法、图像聚类装置、电子设备及存储介质 |
CN111460234B (zh) * | 2020-03-26 | 2023-06-09 | 平安科技(深圳)有限公司 | 图查询方法、装置、电子设备及计算机可读存储介质 |
CN111597373B (zh) * | 2020-05-19 | 2023-06-20 | 清华大学 | 基于卷积神经网络和连通图的图片归类方法及相关设备 |
CN111860575B (zh) * | 2020-06-05 | 2023-06-16 | 百度在线网络技术(北京)有限公司 | 物品属性信息的处理方法、装置、电子设备和存储介质 |
US11748868B2 (en) * | 2020-09-08 | 2023-09-05 | Kla Corporation | Unsupervised pattern synonym detection using image hashing |
CN112559974A (zh) * | 2020-11-13 | 2021-03-26 | 山东浪潮质量链科技有限公司 | 一种基于区块链的图片著作权保护方法、设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7853930B2 (en) * | 2005-01-04 | 2010-12-14 | International Business Machines Corporation | Annotating graphs to allow quick loading and analysis of very large graphs |
CN104063428A (zh) * | 2014-06-09 | 2014-09-24 | 国家计算机网络与信息安全管理中心 | 一种中文微博突发热点话题检测方法 |
CN106202167A (zh) * | 2016-06-21 | 2016-12-07 | 南开大学 | 一种基于结构概要模型的有向标签图自适应索引构建方法 |
CN106886599A (zh) * | 2017-02-28 | 2017-06-23 | 北京京东尚科信息技术有限公司 | 图像检索方法以及装置 |
CN107169106A (zh) * | 2017-05-18 | 2017-09-15 | 珠海习悦信息技术有限公司 | 视频检索方法、装置、存储介质及处理器 |
CN107193942A (zh) * | 2017-05-19 | 2017-09-22 | 西安邮电大学 | 一种有向图中所有连通子图的快速生成方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8752032B2 (en) * | 2007-02-23 | 2014-06-10 | Irdeto Canada Corporation | System and method of interlocking to protect software-mediated program and device behaviours |
CN101976348A (zh) * | 2010-10-21 | 2011-02-16 | 中国科学院深圳先进技术研究院 | 图像聚类方法和*** |
AU2013263846A1 (en) * | 2013-11-29 | 2015-06-18 | Canon Kabushiki Kaisha | Hierarchical determination of metrics for component-based parameterized SoCos |
CN105631210A (zh) * | 2015-12-28 | 2016-06-01 | 南京邮电大学 | 一种基于MapReduce的有向图强连通分量分析方法 |
CN106815362B (zh) * | 2017-01-22 | 2019-12-31 | 福州大学 | 一种基于kpca多表索引图像哈希检索方法 |
-
2017
- 2017-10-23 CN CN201710994492.4A patent/CN109697451B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7853930B2 (en) * | 2005-01-04 | 2010-12-14 | International Business Machines Corporation | Annotating graphs to allow quick loading and analysis of very large graphs |
CN104063428A (zh) * | 2014-06-09 | 2014-09-24 | 国家计算机网络与信息安全管理中心 | 一种中文微博突发热点话题检测方法 |
CN106202167A (zh) * | 2016-06-21 | 2016-12-07 | 南开大学 | 一种基于结构概要模型的有向标签图自适应索引构建方法 |
CN106886599A (zh) * | 2017-02-28 | 2017-06-23 | 北京京东尚科信息技术有限公司 | 图像检索方法以及装置 |
CN107169106A (zh) * | 2017-05-18 | 2017-09-15 | 珠海习悦信息技术有限公司 | 视频检索方法、装置、存储介质及处理器 |
CN107193942A (zh) * | 2017-05-19 | 2017-09-22 | 西安邮电大学 | 一种有向图中所有连通子图的快速生成方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109697451A (zh) | 2019-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109697451B (zh) | 相似图像聚类方法及装置、存储介质、电子设备 | |
CN109242033B (zh) | 晶片缺陷模式分类方法及装置、存储介质、电子设备 | |
CN111753863A (zh) | 一种图像分类方法、装置、电子设备及存储介质 | |
WO2023138188A1 (zh) | 特征融合模型训练及样本检索方法、装置和计算机设备 | |
CN110751027B (zh) | 一种基于深度多示例学习的行人重识别方法 | |
CN113657274B (zh) | 表格生成方法、装置、电子设备及存储介质 | |
CN110619051A (zh) | 问题语句分类方法、装置、电子设备及存储介质 | |
CN113806582B (zh) | 图像检索方法、装置、电子设备和存储介质 | |
WO2022105121A1 (zh) | 一种应用于bert模型的蒸馏方法、装置、设备及存储介质 | |
CN116978011B (zh) | 一种用于智能目标识别的图像语义通信方法及*** | |
CN112418320A (zh) | 一种企业关联关系识别方法、装置及存储介质 | |
CN113987174A (zh) | 分类标签的核心语句提取方法、***、设备及存储介质 | |
CN112214623A (zh) | 一种面向图文样本的高效监督图嵌入跨媒体哈希检索方法 | |
CN108805280B (zh) | 一种图像检索的方法和装置 | |
Al-Jubouri | Content-based image retrieval: Survey | |
CN110110120B (zh) | 一种基于深度学习的图像检索方法和装置 | |
CN113254687A (zh) | 图像检索、图像量化模型训练方法、装置和存储介质 | |
CN110647897A (zh) | 一种基于多部分注意力机制的零样本图像分类识别方法 | |
CN110209895B (zh) | 向量检索方法、装置和设备 | |
CN116932935A (zh) | 地址匹配方法、装置、设备、介质和程序产品 | |
CN115204318B (zh) | 事件自动层级分类方法及电子设备 | |
CN116150371A (zh) | 基于shardingJDBC的资产还款计划海量数据处理方法 | |
US9378466B2 (en) | Data reduction in nearest neighbor classification | |
CN116186708A (zh) | 类别识别模型生成方法、装置、计算机设备和存储介质 | |
CN111768214A (zh) | 产品属性的预测方法、***、设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |