CN108959567B - 一种云环境下适用于大规模图像的安全检索方法 - Google Patents
一种云环境下适用于大规模图像的安全检索方法 Download PDFInfo
- Publication number
- CN108959567B CN108959567B CN201810724726.8A CN201810724726A CN108959567B CN 108959567 B CN108959567 B CN 108959567B CN 201810724726 A CN201810724726 A CN 201810724726A CN 108959567 B CN108959567 B CN 108959567B
- Authority
- CN
- China
- Prior art keywords
- image
- vector
- feature
- index
- feature points
- 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
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明属于多媒体信息安全保护领域,具体涉及到一种基于词袋模型与最小哈希原理相结合的图像安全检索方法,可用于大规模图像的安全检索。内容拥有者将词袋模型和最小哈希原理结合,对图像特征构建安全索引;在图像特征的安全索引数据集中,引入噪声索引向量,并随机抽取部分视觉单词对应的索引向量构建安全索引表;将图像安全索引表和加密图像一起上载至云服务器。当用户请求检索时,云服务仅根据查询图像索引信息对索引表进行查找,根据索引向量之间的相似性,即可获得到要检索的图像。这种检索方法具有较高的效率,更适合大规模的数据集检索;并且基于SIFT描述符和二进制签名的特征向量能实现较高精度的匹配,且具有较高的检索精度。
Description
技术领域
本发明属于多媒体信息安全保护领域,具体涉及到一种基于词袋模型与最小哈希原理相结合的图像安全检索方法,可用于大规模图像的安全检索。
背景技术
随着数码相机、智能手机的普及,人们对数据的获取方式越来越便捷,图像等多媒体数据呈现出爆炸性增长的趋势。综合了网格、平行处理以及分布式处理的云计算平台,以其低廉的成本、强大的计算能力和近似无限的资源池为海量数据服务和应用处理提供了强有力的保障,越来越多的用户选择将图像数据上传到云服务器上进行存储和处理。但是,外包于云端的数据完全脱离其拥有者的直接物理控制,将面临外部网络攻击者和不可信的云服务提供商CSP(Cloud Service Provider)的双重威胁,存储于云端的数据可能会面临被泄露或滥用的风险。这也是云环境下不可忽视的安全隐患。
为了保护用户隐私、增强图像数据的机密性,敏感图像在上传到云服务器之前需要进行加密处理。这样即使云端数据被非法窃取,窃取者也无法获取数据原始明文信息。但是,该操作也对云端的合法操作,例如对云端图像的检索等,造成困难:基于内容的图像检索从图像中提取相关特征,并通过比较图像特征之间的距离来决定图像间的相似度,代表图像检索未来的发展趋势。图像加密后,由于加密带来的随机性,图像特征之间的距离难以保持,难以进行检索。云计算环境下加密图像的安全检索需要在保证图像数据机密性的前提下实施高效的检索,在保证检索性能的情况下,保护图像信息的安全。目前大多数加密方案都不支持对密文图像的检索运算,需要先对数据进行解密将其恢复成明文后才能进行检索,但这样明文则会被完全暴露给不被信任的CSP,图像数据的机密性和安全性不能得到保护。近年来也逐渐出现了一些依赖于同态加密算法等一些特定的图像安全检索方案,但是同态加密开销太大,密文扩展严重,对于云环境下的海量图像数据而言,基于同态加密图像检索方案计算量巨大,难以实现高效检索。如何解决加密图像的安全高效检索是当前的研究热点。
发明内容
本发明旨在提出一种云环境下基于词袋模型和最小哈希原理的图像安全检索方案,通过构建安全索引的方法,实现对云端图像的安全检索。数据拥有者生成密文图像和加密索引并上传到云端,云端在检索过程中无须解密即能返回与查询图像最为接近的密文图像,能有效解决现有方案安全性、精确性和效率不能兼顾的问题。
本方案的解决方案为:通过词袋模型,将图像的特征映射到不同的视觉单词上,并根据该视觉单词对应的中值矩阵,为该特征构建二进制签名向量。根据最小哈希算法原理,将特征签名向量转换为安全的签名向量,并达到对特征数据进行降维的效果。将图像特征所对应的视觉单词编号和安全签名向量结合,生成安全索引。为防止数据攻击者结合单幅图像特征和视觉单词的映射关系非法获取原始图像特征的分布特性,在每幅图像特征的安全索引数据集中,引入噪声索引向量,将安全索引向量和噪声索引向量结合构建图像安全索引表。为提高检索效率,在安全索引表中随机抽取部分视觉单词对应的索引向量,并和加密图像一起上载至CSP,提供安全检索服务支持。当有用户请求检索时,CSP无须对密文图像进行解密,直接根据查询图像索引信息对云端安全索引表进行查找,根据索引向量之间的相似性,即可获得到要检索的图像。在对安全索引表的构建过程中,达到了对图像特征进行降维的效果,使该方案具有较高的效率,更适合大规模的数据集检索;并且基于SIFT描述符和二进制签名的特征向量能实现较高精度的匹配,且具有较高的检索精度。
本发明提供的一种云环境下基于词袋模型的图像安全检索方法,具体实现步骤为:
步骤1,根据训练图像库建立词袋模型,生成视觉词典及中值矩阵;
步骤2,内容所有者基于步骤1构建词袋模型,对测试图像库中的每幅图像进行特征提取,计算特征点的权重,并对图像特征构建索引向量;
步骤3,内容所有者对测试图像库中的图像及其所构建的特征索引向量进行加密保护,获得由图像特征点、特征点安全签名、特征点权重信息、所属图像信息构成的数据集;
步骤4,内容所有者根据数据集中特征点的安全签名、权重信息、所属图像信息构建安全索引表,并上传至云服务器;
步骤5,用户需查询图像时,向内容所有者发起查询请求,内容所有者返回必要信息,用户根据内容所有者返回的信息生成查询图像的安全索引向量,并发送给云服务器进行查询;
步骤6,云服务器根据用户上传的检索图像安全索引,对查询图像的特征点与密文图像特征数据库中特征点进行相似性度量,计算查询图像与图像库中所有图像的匹配分数,将密文图像按匹配分数由高到低的顺序发送给用户;
步骤7,用户利用解密密钥对密文图像进行解密,获得原始图像。
进一步的,步骤1的具体实现包括如下子步骤,
步骤1.1,局部特征提取:对训练图像库中每幅图像,采用sift特征提取算法提取图像特征,并生成特征点描述符;
步骤1.2,构建视觉词典:用k-means聚类算法对训练图像库中的特征点进行训练,生成k个聚类中心,每个聚类中心表示为一个视觉单词,即构成k维视觉词典W;
步骤1.3,构建中值矩阵:依次对属于第c(c∈[1,k])个聚类中心的图像特征向量在每一个维度上计算中值,生成该聚类中心的中值向量Zc={z1,z2,…,zl},l是图像所提特征点的向量维度,所有聚类中心中值向量构成中值矩阵Z=[Z1,Z2,…,Zk]T。
进一步的,步骤2的具体实现包括如下子步骤,
步骤2.1,提取测试图像库中每幅图像的sift特征,并生成特征点描述符X={x1,x2,…,xl},l表示特征点描述符的维度;判断图像的特征向量与视觉词典中哪个视觉单词最近,将其映射到距离最近的视觉单词w上,w即为该特征点对应的聚类中心;
步骤2.2,计算图像Ij的特征点Xi对应的视觉单词wi的词频tf、逆文档频率idf;
其中,ni,j是视觉单词wi在图像Ij中出现的次数,∑knk,j表示在图像Ij中所有视觉单词出现的次数之和;
其中,|D|表示测试图像库中图像总数;dj表示图像Ij所有包含视觉单词的集合,|{j:wi∈dj}|表示测试图像库中包含视觉单词wi的图像数目;
步骤2.3,根据视觉单词的词频和逆文档频率信息,计算特征点的权重wgt(Xi):
步骤2.4,根据步骤1生成的中值矩阵Z,对图像特征点构建二值向量,具体方法为:比较图像sift特征与中值矩阵Z中其对应的聚类中心的中值向量在各个维度上的大小,生成长度为l的二值向量h=(h(1),h(2),…,h(l));
步骤2.5,构建图像特征索引向量,将图像特征对应的视觉单词编号w和该特征二值向量相结合,生成图像特征的索引向量:F=[w+h]。
进一步的,骤3的具体实现包括以下子步骤,
步骤3.1,使用AES加密算法及密钥K对原始图像I加密,获取密文图像Ie;
步骤3.2,图像特征点的索引向量F分为两部分进行安全索引的构建,即:视觉单词编号w部分和该特征二值向量h部分,步骤如下:
步骤3.2.1,对于图像所有特征对应的视觉单词编号w,组合生成1*n维向量M,其中n为特征点的总数目,并对向量M进行随机置乱加密,生成加密向量Mk,向量的每一维,表示一个密文视觉单词we,如(4)式:
Mk=τ(M) (4)
其中,τ(·)表示随机置乱加密操作;
步骤3.2.2,对图像中所有特征点的二值向量进行分组排列,生成l*n大小的二值矩阵,作为原始操作矩阵X,其中n为特征点的总数目,l为sift特征维度,即该矩阵每一列,表示一个特征点的二值向量h;
根据最小哈希原理和加密密钥Kh,对原始操作矩阵X进行变换,生成安全签名矩阵Xk,并达到降维效果,具体操作步骤如下:使用加密密钥Kh产生m个独立的随机散列函数f1,f2,…,fm,然后进行安全变换,最终将原始矩阵X变换为大小为m*n的矩阵Xk,该矩阵每一行为一个特征点的m维安全签名he,即最小哈希生成向量,其中m<l;
步骤3.2.3,根据密文视觉单词we和最小哈希生成向量he之间映射关系,将Mk与Xk组合,生成安全索引。
进一步的,步骤4的具体实现包括以下子步骤:
步骤4.1,对每个密文视觉单词we,获取映射到该视觉单词上每个特征点对应的大小为m*1的最小哈希生成向量he、权重wgt、所属图像id等必要信息,生成nw个索引向量:
其中,nw为映射到视觉单词we上的特征点的数量;
步骤4.2,在属于同一幅图像I的必要信息数据集中GI,引入相同随机一幅图像的必要信息Gnoise作为噪声干扰,将向量Gnoise中的id(we,i)数值根据GI中的id(we,i)值进行修改后,将GI和Gnoise结合,构建初始安全索引表;
步骤4.3,在密文视觉单词we所属全集We中,根据式(5)随机选择v个密文视觉单词we′,并根据we′选择对应的索引向量组成安全索引表,并上传至云服务器,
we′=δ(We,v),v<k (5)
其中,δ(p,q)表示从集合p中随机选择q个元素,k为视觉单词维度。
进一步的,步骤5中所述必要信息包括哈希散列函数生成密钥Kh、随机选择的v个密文视觉单词we′及密文图像解密秘钥K。
进一步的,步骤6的具体实现方式如下,
根据步骤4所构建的安全索引表,对查询图像的特征点与云端图像特征数据库中特征点进行相似性匹配;首先比较二者的we是否相同,若相同则计算二者对应的最小哈希生成向量he之间的汉明距离L,若该距离大于某一阈值hd,则认为这两个特征点不属于同一类,由此过滤掉不匹配的特征点;然后计算查询图像与图像库中所有图像的匹配分数,计算方式如下,
假设T,V分别是A,B两幅图像的特征数据集,其中T包含q个特征点的安全索引描述符为T=(t1,t2,…,tq),V包含p个特征点的安全索引描述符为V=(v1,v2,…,vp),且每个描述符对应一个码字we,那么特征集数据V的第j个描述符对特征数据集T的第i个描述符的匹配函数f(其中,i∈[1,q],j∈[1,p]),以及特征V对特征T的每个描述符的匹配值g(i)定义如下:
其中,σ是权值参数,L(a,b)为计算向量a,b之间的汉明距离,m为最小哈希生成向量维度;由此可知特征集V对特征集T的每个描述符的匹配向量为g=[g(1),g(2),…g(q)],则图像B对图像A的匹配分数s为:
最后,将密文图像按匹配分数由高到低的顺序发送给用户。
本发明与其他方法相比,优点在于:本发明提出了一种云环境下适用于大规模图像的安全检索方法,该方法将BOW模型和最小哈希算法相结合引入云环境下图像安全检索系统中,使用汉明嵌入,过滤误匹配的特征点,大大增加检索精度;将图像特征对应的视觉单词编号w和该特征二值向量h相结合,生成图像特征的索引向量,使用最小哈希算法原理,将该索引向量从汉明空间映射到欧式空间,一方面,从排列组合角度进行分析,该变换逆向推导成功最大概率为其中,l为特征向量维度,m为哈希生成向量维度,n为图像特征总数,对于海量图像特征点来说,该方法逆向推导困难。故该变换可增加索引向量的安全性,另一方面,在变换的过程中,实现对高维数据的降维,使该算法更加适用于云环境下海量图像的高效安全检索;随机选择部分密文视觉单词索引构成安全索引表,进一步提高检索效率。对于云服务器而言,该方法能够在不对图像进行解密的情况下,仅通过数据拥有者上传的安全索引,对查询图像进行较为精确的相似度匹配,实现云端图像的安全检索。
附图说明
图1是本发明实施例的安全检索方法的总体示意图;
图2是本发明实施例的生成视觉词典和中值矩阵的具体处理流程图;
图3是本发明实施例的内容拥有者的具体处理流程图;
图4是本发明实施例的云服务器端的具体处理流程图;
图5是本发明实施例的数据使用者请求查询图像的具体处理流程图。
图6是本发明实施例的数据使用者解密图像的过程。
具体实施方式
本发明提供的一种云环境下基于词袋模型的图像安全检索方法,具体实现步骤为:
步骤1,根据图像数据库建立词袋模型,生成视觉词典及中值矩阵。具体包括以下子步骤:
步骤1.1,局部特征提取:对图像库中每幅图像,采用sift特征提取算法提取图像特征并生成特征点描述符;
步骤1.2,构建视觉词典:用k-means聚类算法对图像训练数据集中的特征点进行训练,生成k个聚类中心,每个聚类中心表示为一个视觉单词,即构成k维视觉词典W;
步骤1.3,构建中值矩阵:依次对属于第c(c∈[1,k])个聚类中心的图像特征向量在每一个维度上计算中值,生成该聚类中心的中值向量Zc={z1,z2,…,zl},所有聚类中心中值向量构成中值矩阵Z=[Z1,Z2,…,Zk]T。
步骤2,内容所有者基于步骤1构建词袋模型,对测试图像库中的每幅图像进行特征提取,计算特征点的权重,并对图像特征构建索引向量。具体包括以下子步骤:
步骤2.1,提取图像库中每幅图像的sift特征x={x1,x2,…,xl},l表示特征点描述符的维度;判断图像的特征向量与视觉词典中哪个视觉单词最近,将其映射到距离最近的视觉单词w上,w即为该特征点对应的聚类中心;
步骤2.2,计算图像Ik的特征点Xi对应的视觉单词wi的词频tf、逆文档频率idf。
其中,ni,j是视觉单词wi在图像Ij中出现的次数,∑knk,j表示在图像Ij中所有视觉单词w出现的次数之和。
其中,|D|表示数据集中图像总数;dj表示图像Ij所有包含视觉单词的集合,|{j:wi∈dj}|表示包含视觉单词wi的图像数目。
步骤2.3,根据视觉单词的词频和逆文档频率信息,计算特征点xi的权重wgt(Xi):
步骤2.4,根据步骤1生成的中值矩阵Z,对图像特征点构建二值向量,具体方法为:根据(3)比较图像sift特征x与中值矩阵Z中其对应的聚类中心的中值向量Zc在各个维度上的大小,生成长度为l的二值向量h=(h(1),h(2),…,h(l));
步骤2.5,构建图像特征索引向量,将图像特征对应的视觉单词编号w和该特征二值向量相结合,生成图像特征的索引向量:F=[w+h];
步骤3,内容所有者对测试图像库中的图像及其所构建的特征索引向量进行加密保护,具体包括以下子步骤:
步骤3.1,使用AES加密算法及密钥K对原始图像I加密,获取密文图像Ie;
步骤3.2,图像特征点的索引向量F分为两部分进行安全索引的构建,即:视觉单词编号w部分和该特征二值向量h部分,步骤如下:
步骤3.2.1,对于图像所有特征对应的视觉单词编号w,组合生成1*n维向量M,其中n为特征点的总数目,并对向量M进行随机置乱加密,生成加密向量Mk,向量的每一维,表示一个密文视觉单词we,如(4)式:
Mk=τ(M) (4)
其中,τ(·)表示随机置乱加密操作。
步骤3.2.2,对所有特征点的二值向量进行分组排列,生成l*n大小的二值矩阵,作为原始操作矩阵X。其中n为特征点的总数目,l为sift特征维度。即该矩阵每一列,表示一个特征点的二值向量h;
根据最小哈希原理和加密密钥Kh,对操作矩阵X进行变换,生成安全签名矩阵Xk,并达到降维效果。具体操作步骤如下:使用加密密钥Kh产生m个独立的随机散列函数f1,f2,…,fm,然后通过表1所述伪代码进行安全变换,最终将原始矩阵X变换为大小为m*n的矩阵Xk,该矩阵每一行为一个特征点的m维安全签名he,其中m<l;
表1安全签名矩阵生成伪代码
步骤3.2.3,根据密文视觉单词we和安全签名向量he之间映射关系,将Mk与Xk组合,生成安全索引;
步骤4,内容所有者根据数据集中特征点的安全签名、权重信息、所属图像信息构建安全索引表。具体包括以下子步骤:
步骤4.1,对每个密文视觉单词we,获取映射到该视觉单词上所有特征点对应的大小为m*1的最小哈希生成向量he、权重wgt、所属图像id等必要信息,生成nw个向量:
其中,nw为映射到视觉单词we上的特征点的数量。
步骤4.2,在属于同一幅图像I的必要信息数据集中GI,引入相同随机一幅图像的必要信息Gnoise作为噪声干扰,将向量Gnoise中的id(we,i)数值根据GI中的id(we,i)值进行修改后将GI和Gnoise结合,构建初始安全索引表:
表2安全倒排索引表
步骤4.3,在密文视觉单词we所属全集We中,根据式(5)随机选择v个密文视觉单词we′,并根据we′选择对应的索引向量组成安全索引表,如表3,并上传至云服务器。
we′=δ(We,v),v<k (5)
其中,δ(p,q)表示从集合p中随机选择q个元素,k为视觉单词维度。
表3服务器端安全索引表
步骤5,用户需查询图像时,向内容所有者发起查询请求,内容所有者返回哈希散列函数生成密钥Kh、随机选择的v个密文视觉单词we′及解密秘钥K等必要信息;用户根据内容所有者返回的信息生成查询图像的安全索引向量Fe=[we+he],并发送给云服务器进行查询;
步骤6,云服务器根据用户上传的检索图像安全索引,对查询图像的特征点与密文图像特征数据库中特征点进行相似性度量,计算查询图像与图像库中所有图像的匹配分数,将密文图像按匹配分数由高到低的顺序发送给用户。具体实现如下:
步骤6.1,根据步骤4所构建的安全索引,对查询图像的特征点与云端图像特征数据库中特征点进行相似性匹配,首先比较二者的we是否相同,若相同则计算二者对应的安全索引向量之间的汉明距离L,若该距离大于某一阈值hd,则认为这两个特征点不属于同一类,由此过滤掉不匹配的特征点;然后计算查询图像与图像库中所有图像的匹配分数,计算方式如下,
假设T,V分别是A,B两幅图像的特征数据集,其中T包含q个特征点的安全索引描述符为T=(t1,t2,…,tq),V包含p个特征点的安全索引描述符为V=(v1,v2,…,vp),且每个描述符对应一个码字we,那么特征集数据V的第j个描述符对特征数据集T的第i个描述符的匹配函数f(其中,i∈[1,q],j∈[1,p]),以及特征V对特征T的每个描述符的匹配值g(i)定义如下:
其中,σ是权值参数,L(a,b)为计算向量a,b之间的汉明距离,m为最小哈希生成向量维度;由此可知特征集V对特征集T的每个描述符的匹配向量为g=[g(1),g(2),…g(q)],则图像B对图像A的匹配分数s为:
最后,将密文图像按匹配分数由高到低的顺序发送给用户。
步骤7,用户利用解密密钥K对密文图像Ie进行解密,获得原始图像I。
以holiday数据库为例,结合附图1,2,3,4,5,详细说明本发明的实施步骤:
一、对该数据库构建词袋模型并生成中值矩阵(离线操作),如图2所示;
步骤1a:首先构建词袋模型,提取训练图像库中每幅图像的sift特征x,并用k-means算法对所有特征点进行聚类,生成k维视觉词典W,本实例中,k取值为20000;
步骤1b:将训练图像的特征向量映射到距离最近的视觉单词上,根据步骤1a提取图像库中每幅图像的sift特征,判断图像的特征点与视觉词典W中哪个视觉单词w最近,将特征投影到距离最近的聚类中心(视觉单词)上;
步骤1c:将属于同一个聚类中心的图像特征数据,计算每一维度的数据中值,生成中值矩阵Z。
二、内容所有者端的处理
步骤2a:根据步骤一获取的视觉词典W、中值矩阵Z等必要信息,提取测试图像库中图像的sift特征并基于BOW模型将每个特征向量映射到视觉词典上,获取每个特征点所对应的视觉单词编号w,以及该特征点权重值;
步骤2b:根据步骤1c生成的中值矩阵Z,对图像特征构建二值向量,将映射到同一个视觉单词上的特征向量与该视觉单词对应的中值向量在各维度上进行比较,生成该图像特征的二值向量h;
步骤2c:构建图像特征索引向量,将图像特征对应的视觉单词编号w和该特征二值向量h相结合,生成图像特征的索引向量:F=[w+h];
步骤2d:对于数据集中图像所有特征对应的视觉单词编号w,组合生成1*n维向量M,其中n为特征点的总数目,并对向量M进行随机置乱加密,生成加密向量Mk,向量的每一维,表示一个密文视觉单词we;
步骤2e:对图像数据集中所有特征点的二值向量进行分组排列,生成l*n大小的二值矩阵,作为原始操作矩阵X,其中l为sift特征维度。加密密钥Kh产生m个独立的随机散列函数f1,f2,…,fm,然后通过表1所述伪代码进行安全变换,最终将原始矩阵X变换为大小为m*n的矩阵Xk,该矩阵每一行为一个特征点的m维安全签名he,即最小哈希生成向量,本实例中,l取值为128,m取值为60;
步骤2f:将Mk与Xk组合,生成安全索引;
步骤2g:根据所有特征点对应的视觉单词编号we、大小为m*1的最小哈希生成向量he、权重wgt、所属图像id等必要信息,构建安全索引表。
步骤2h:使用AES加密算法及密钥K对原始图像库图像I加密,获取密文图像Ie;
步骤2i:对安全索引表进行随机筛选后,将图像特征安全索引表和密文图像一同上载到云服务器端;
三、用户端查询处理:
步骤3a:用户向内容所有者发送查询请求,获取哈希散列函数生成密钥Kh、随机选择的v个密文视觉单词we′及图像解密秘钥K等必要信息;
步骤3b:用户根据内容所有者返回的信息生成查询图像特征的安全索引向量Fe=[we+he];
步骤3c:用户将查询图像安全索引向量Fe发送给云服务器,请求查询图像;
四、云服务器端的处理:
步骤4a:云服务器根据用户上传的检索图像安全索引,对查询图像的特征点与云端图像特征数据库中特征点进行相似性匹配,首先比较二者的we是否相同,若相同则计算二者对应的最小哈希生成向量he之间的汉明距离L,若该距离大于某一阈值hd,则认为这两个特征点不属于同一类,由此过滤掉不匹配的特征点,然后计算查询图像与图像库中所有图像的匹配分数。
步骤4b:计算查询图像与图像库中所有图像的匹配分数,计算方式如下:
假设T,V分别是A,B两幅图像的特征数据集,其中T包含q个特征点的安全索引描述符为T=(t1,t2,…,tq),V包含p个特征点的安全索引描述符为V=(v1,v2,…,vp),且每个描述符对应一个码字we,那么特征集V的第j个描述符对特征集T的第i个描述符的匹配函数f(其中,i∈[1,q],j∈[1,p]),以及特征集V对特征集T的每个描述符的匹配值g(i)定义如下:
其中,σ是权值参数,L(a,b)为计算向量a,b之间的汉明距离,m为最小哈希生成向量维度;由此可知特征集V对特征集T的每个描述符的匹配向量为g=[g(1),g(2),…g(q)],则图像B对图像A的匹配分数s为:
同理,根据安全索引计算查询图像与图像数据库中所有图像的匹配分数,分数越高,则表明该图像和查询图像越相似,将密文图像按匹配分数由高到低的顺序发送给用户。
五、用户端的处理:
用户收到加密图像后,使用AES算法及密钥K对密文图像Ie进行解密,获得明文图像I。
以上内容是结合最佳实施方案对本发明所做的进一步详细说明,不能认定本发明的具体实施只限于这些说明。本领域的技术人员应该理解,在不脱离由所附权利要求书限定的情况下,可以在细节上进行各种修改,都应当视为属于本发明的保护范围。
Claims (5)
1.一种云环境下适用于大规模图像的安全检索方法,其特征在于,包含以下步骤:
步骤1,根据训练图像库建立词袋模型,生成视觉词典及中值矩阵;
步骤1的具体实现包括如下子步骤,
步骤1.1,局部特征提取:对训练图像库中每幅图像,采用sift特征提取算法提取图像特征,并生成特征点描述符;
步骤1.2,构建视觉词典:用k-means聚类算法对训练图像库中的特征点进行训练,生成k个聚类中心,每个聚类中心表示为一个视觉单词,即构成k维视觉词典W;
步骤1.3,构建中值矩阵:依次对属于第c个聚类中心的图像特征向量在每一个维度上计算中值,c∈[1,k],生成该聚类中心的中值向量Zc={z1,z2,…,zl},l是图像所提特征点的向量维度,所有聚类中心中值向量构成中值矩阵Z=[Z1,Z2,…,Zk]T;
步骤2,内容所有者基于步骤1构建词袋模型,对测试图像库中的每幅图像进行特征提取,计算特征点的权重,并对图像特征构建索引向量;
步骤2的具体实现包括如下子步骤,
步骤2.1,提取测试图像库中每幅图像的sift特征,并生成特征点描述符X={x1,x2,…,xl},l表示特征点描述符的维度;判断图像的特征向量与视觉词典中哪个视觉单词最近,将其映射到距离最近的视觉单词w上,w即为该特征点对应的聚类中心;
步骤2.2,计算图像Ij的特征点Xi对应的视觉单词wi的词频tf、逆文档频率idf;
其中,ni,j是视觉单词wi在图像Ij中出现的次数,∑knk,j表示在图像Ij中所有视觉单词出现的次数之和;
其中,|D|表示测试图像库中图像总数;dj表示图像Ij所有包含视觉单词的集合,|{j:wi∈dj}|表示测试图像库中包含视觉单词wi的图像数目;
步骤2.3,根据视觉单词的词频和逆文档频率信息,计算特征点的权重wgt(Xi):
步骤2.4,根据步骤1生成的中值矩阵Z,对图像特征点构建二值向量,具体方法为:比较图像sift特征与中值矩阵Z中其对应的聚类中心的中值向量在各个维度上的大小,生成长度为l的二值向量h=(h(1),h(2),…,h(l));
步骤2.5,构建图像特征索引向量,将图像特征对应的视觉单词编号w和该特征二值向量相结合,生成图像特征的索引向量:F=[w+h];
步骤3,内容所有者对测试图像库中的图像及其所构建的特征索引向量进行加密保护,获得由图像特征点、特征点安全签名、特征点权重信息、所属图像信息构成的数据集;
步骤4,内容所有者根据数据集中特征点的安全签名、权重信息、所属图像信息构建安全索引表,并上传至云服务器;
步骤5,用户需查询图像时,向内容所有者发起查询请求,内容所有者返回必要信息,用户根据内容所有者返回的信息生成查询图像的安全索引向量,并发送给云服务器进行查询;
步骤6,云服务器根据用户上传的检索图像安全索引,对查询图像的特征点与密文图像特征数据库中特征点进行相似性度量,计算查询图像与图像库中所有图像的匹配分数,将密文图像按匹配分数由高到低的顺序发送给用户;
步骤7,用户利用解密密钥对密文图像进行解密,获得原始图像。
2.如权利要求1所述一种云环境下适用于大规模图像的安全检索方法,其特征在于:步骤3的具体实现包括以下子步骤,
步骤3.1,使用AES加密算法及密钥K对原始图像I加密,获取密文图像Ie;
步骤3.2,图像特征点的索引向量F分为两部分进行安全索引的构建,即:视觉单词编号w部分和该特征二值向量h部分,步骤如下:
步骤3.2.1,对于图像所有特征对应的视觉单词编号w,组合生成1*n维向量M,其中n为特征点的总数目,并对向量M进行随机置乱加密,生成加密向量Mk,向量的每一维,表示一个密文视觉单词we,如(4)式:
Mk=τ(M) (4)
其中,τ(·)表示随机置乱加密操作;
步骤3.2.2,对图像中所有特征点的二值向量进行分组排列,生成l*n大小的二值矩阵,作为原始操作矩阵X,其中n为特征点的总数目,l为sift特征维度,即该矩阵每一列,表示一个特征点的二值向量h;
根据最小哈希原理和加密密钥Kh,对原始操作矩阵X进行变换,生成安全签名矩阵Xk,并达到降维效果,具体操作步骤如下:使用加密密钥Kh产生m个独立的随机散列函数f1,f2,…,fm,然后进行安全变换,最终将原始矩阵X变换为大小为m*n的矩阵Xk,该矩阵每一行为一个特征点的m维安全签名he,即最小哈希生成向量,其中m<l;
步骤3.2.3,根据密文视觉单词we和最小哈希生成向量he之间映射关系,将Mk与Xk组合,生成安全索引。
3.如权利要求2所述一种云环境下适用于大规模图像的安全检索方法,其特征在于:步骤4的具体实现包括以下子步骤:
步骤4.1,对每个密文视觉单词we,获取映射到该视觉单词上每个特征点对应的大小为m*1的最小哈希生成向量he、权重wgt、所属图像id必要信息,生成nw个索引向量:
其中,nw为映射到视觉单词we上的特征点的数量;
步骤4.2,在属于同一幅图像I的必要信息数据集中GI,引入相同随机一幅图像的必要信息Gnoise作为噪声干扰,将向量Gnoise中的数值根据GI中的值进行修改后,将GI和Gnoise结合,构建初始安全索引表;
步骤4.3,在密文视觉单词we所属全集We中,根据式(5)随机选择v个密文视觉单词we′,并根据we′选择对应的索引向量组成安全索引表,并上传至云服务器,
we′=δ(We,v),v<k (5)
其中,δ(p,q)表示从集合p中随机选择q个元素,k为视觉单词维度。
4.如权利要求3所述一种云环境下适用于大规模图像的安全检索方法,其特征在于:步骤5中所述必要信息包括哈希散列函数生成密钥Kh、随机选择的v个密文视觉单词we′及密文图像解密秘钥K。
5.如权利要求4所述一种云环境下适用于大规模图像的安全检索方法,其特征在于:步骤6的具体实现方式如下,
根据步骤4所构建的安全索引表,对查询图像的特征点与云端图像特征数据库中特征点进行相似性匹配;首先比较二者的we是否相同,若相同则计算二者对应的最小哈希生成向量he之间的汉明距离L,若该距离大于某一阈值hd,则认为这两个特征点不属于同一类,由此过滤掉不匹配的特征点;然后计算查询图像与图像库中所有图像的匹配分数,计算方式如下,
假设T,V分别是A,B两幅图像的特征数据集,其中T包含q个特征点的安全索引描述符为T=(t1,t2,…,tq),V包含p个特征点的安全索引描述符为V=(v1,v2,…,vp),且每个描述符对应一个码字we,那么特征集数据V的第j个描述符对特征数据集T的第i个描述符的匹配函数f,其中,i∈[1,q],j∈[1,p],以及特征V对特征T的每个描述符的匹配值g(i)定义如下:
其中,σ是权值参数,L(a,b)为计算向量a,b之间的汉明距离,m为最小哈希生成向量维度,he表示最小哈希生成向量;由此可知特征集V对特征集T的每个描述符的匹配向量为g=[g(1),g(2),…g(q)],则图像B对图像A的匹配分数s为:
最后,将密文图像按匹配分数由高到低的顺序发送给用户。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810724726.8A CN108959567B (zh) | 2018-07-04 | 2018-07-04 | 一种云环境下适用于大规模图像的安全检索方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810724726.8A CN108959567B (zh) | 2018-07-04 | 2018-07-04 | 一种云环境下适用于大规模图像的安全检索方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108959567A CN108959567A (zh) | 2018-12-07 |
CN108959567B true CN108959567B (zh) | 2021-05-04 |
Family
ID=64485378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810724726.8A Active CN108959567B (zh) | 2018-07-04 | 2018-07-04 | 一种云环境下适用于大规模图像的安全检索方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108959567B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110083731B (zh) * | 2019-03-12 | 2024-05-07 | 平安科技(深圳)有限公司 | 图像检索方法、装置、计算机设备及存储介质 |
CN110413813B (zh) * | 2019-06-25 | 2023-05-12 | 宁波图达信息技术有限公司 | 一种相同或相似图像搜索方法 |
CN110866135B (zh) * | 2019-11-12 | 2022-09-23 | 重庆邮电大学 | 一种基于响应长度隐藏的k-NN图像检索方法及系统 |
CN110968721A (zh) * | 2019-11-28 | 2020-04-07 | 上海冠勇信息科技有限公司 | 一种海量图像侵权检索方法、系统及其计算机可读存储介质 |
CN113095342A (zh) * | 2019-12-23 | 2021-07-09 | 北京金山云网络技术有限公司 | 基于误判样本图片的审核模型优化方法、装置及服务器 |
CN111897982B (zh) * | 2020-06-17 | 2023-03-14 | 昆明理工大学 | 一种医学ct图像存储与检索方法 |
CN112152806B (zh) * | 2020-09-25 | 2023-07-18 | 青岛大学 | 一种云辅助且支持隐私保护的图像识别方法、装置及设备 |
CN112800088B (zh) * | 2021-01-19 | 2023-09-19 | 东北大学 | 基于双向安全索引的数据库密文检索系统及方法 |
CN114996449A (zh) * | 2022-05-25 | 2022-09-02 | 支付宝(杭州)信息技术有限公司 | 一种基于隐私保护的聚类方法及装置 |
CN116932802B (zh) * | 2023-07-10 | 2024-05-14 | 玩出梦想(上海)科技有限公司 | 一种图像检索方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106407447A (zh) * | 2016-09-30 | 2017-02-15 | 福州大学 | 一种加密云数据下基于Simhash的模糊排序搜索方法 |
CN106951411A (zh) * | 2017-03-24 | 2017-07-14 | 福州大学 | 一种云计算中保护数据隐私的快速多关键词语义排序搜索方法 |
CN107315812A (zh) * | 2017-06-28 | 2017-11-03 | 武汉大学 | 一种云环境下基于词袋模型的图像安全检索方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10061862B2 (en) * | 2011-10-01 | 2018-08-28 | Oracle International Corporation | Compact tree node representation of an XML document |
-
2018
- 2018-07-04 CN CN201810724726.8A patent/CN108959567B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106407447A (zh) * | 2016-09-30 | 2017-02-15 | 福州大学 | 一种加密云数据下基于Simhash的模糊排序搜索方法 |
CN106951411A (zh) * | 2017-03-24 | 2017-07-14 | 福州大学 | 一种云计算中保护数据隐私的快速多关键词语义排序搜索方法 |
CN107315812A (zh) * | 2017-06-28 | 2017-11-03 | 武汉大学 | 一种云环境下基于词袋模型的图像安全检索方法 |
Non-Patent Citations (1)
Title |
---|
移动云环境下密文图像检索技术研究;邹琴;《中国优秀硕士学位论文全文数据库 信息科技辑》;20180415;正文第三章 * |
Also Published As
Publication number | Publication date |
---|---|
CN108959567A (zh) | 2018-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108959567B (zh) | 一种云环境下适用于大规模图像的安全检索方法 | |
CN106803784B (zh) | 安全多媒体云存储中基于格的多用户模糊可搜索加密方法 | |
CN109543061B (zh) | 一种支持多密钥的加密图像检索方法 | |
Yuan et al. | SEISA: Secure and efficient encrypted image search with access control | |
Zhang et al. | Pop: Privacy-preserving outsourced photo sharing and searching for mobile devices | |
CN107315812B (zh) | 一种云环境下基于词袋模型的图像安全检索方法 | |
WO2019178958A1 (zh) | 数据加密方法、数据查询方法、装置、设备及存储介质 | |
CN108363689B (zh) | 面向混合云的隐私保护多关键词Top-k密文检索方法及系统 | |
CN111541679B (zh) | 一种云环境下基于秘密共享的图像安全检索方法 | |
CN109361644B (zh) | 一种支持快速搜索和解密的模糊属性基加密方法 | |
WO2024077948A1 (zh) | 匿踪查询方法、装置和系统及存储介质 | |
Zhang et al. | A secure image retrieval method based on homomorphic encryption for cloud computing | |
CN111339539B (zh) | 一种多用户环境下的高效加密图像检索方法 | |
CN115314295B (zh) | 一种基于区块链的可搜索加密技术方法 | |
CN110263570B (zh) | 一种实现高效相似性查询和访问控制的基因数据脱敏方法 | |
CN112528064A (zh) | 一种隐私保护的加密图像检索方法及系统 | |
CN110222081A (zh) | 多用户环境下基于细粒度排序的数据密文查询方法 | |
Cheng et al. | Secure index construction for privacy-preserving large-scale image retrieval | |
CN112685753A (zh) | 一种用于加密数据存储的方法及设备 | |
Gong et al. | A privacy-preserving image retrieval method based on improved bovw model in cloud environment | |
Cui et al. | Harnessing encrypted data in cloud for secure and efficient image sharing from mobile devices | |
Tang et al. | OPPR: An outsourcing privacy-preserving JPEG image retrieval scheme with local histograms in cloud environment | |
Yang et al. | Mu-teir: Traceable encrypted image retrieval in the multi-user setting | |
CN108920968B (zh) | 一种基于连接关键词的文件可搜索加密方法 | |
Iida et al. | A content-based image retrieval scheme using compressible encrypted images |
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 |