[发明专利]基于JPEG图像交流系数直方图的密文域图像检索方法有效

专利信息
申请号: 201410591470.X 申请日: 2014-10-29
公开(公告)号: CN104331448B 公开(公告)日: 2018-04-06
发明(设计)人: 程航;张新鹏;童人婷;徐淼;王子驰 申请(专利权)人: 上海大学
主分类号: G06F17/30 分类号: G06F17/30;G06T9/00
代理公司: 上海上大专利事务所(普通合伙)31205 代理人: 何文欣
地址: 200444*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种基于JPEG图像交流系数直方图的密文域图像检索方法。本方法包括图像内容所有者加密过程、授权用户查询图像过程和检索服务提供者检索密文图像过程,图1是本发明的总流程框图。图像内容所有者加密JPEG图像的DCT系数位流,并对位流重构生成密文文件,随后提交给检索服务提供者;授权用户提交待查询密文图像进行检索,并解密和恢复返回的密文图像;检索服务提供者通过逐一计算待查询图像与密文图像数据库里所有图像的交流系数直方图间距离,返回与待查询图像直方图最相近的图像给授权用户。该方法在保护图像数据隐私的同时,实现了密文图像检索;且降低了计算、通信开销和文件存储空间,同时兼顾密文图像的颜色信息安全。
搜索关键词: 基于 jpeg 图像 交流 系数 直方图 密文域 检索 方法
【主权项】:
一种基于JPEG图像交流系数直方图的密文域图像检索方法,其具体实现步骤如下:(1)、图像内容所有者加密过程:读取明文图像数据库任一图像的JPEG编码位流,获取其离散余弦变换后的直流系数位流和交流系数位流两部分,接着采用流密码异或加密方法和置乱加密方法分别对直流系数位流和交流系数位流进行加密,并对加密后的位流进行重新组合生成加密后的JPEG图像,最后把全部图像加密后的密文图像数据库提交给检索服务提供者,具体操作步骤如下:(1‑1)、读取明文图像数据库里任一JPEG图像文件,获取图像所对应的二进制位流序列,采用的明文图像数据库是Corel标准图像数据库;根据JPEG压缩标准,一幅未经任何处理的RGB彩色图在压缩编码前先要变换成其他色彩空间,JPEG图像采用的是YUV色彩空间,且YUV的采样格式为YUV411,即Y、U、V三个分量的数据取样比例:4个Y对应1个U和1个V;然后,把Y、U、V三个分量分别进行分割成不重叠的8×8的小块,对每个小块进行DCT变换,产生64个系数:1个DC系数和63个AC系数,并对DC系数和AC系数用不同的量化表进行量化;对量化后的DC系数进行差分脉冲调制编码和熵编码,而量化后的AC系数则采用RLC编码和熵编码;最后结合JPEG规定的标记,按一定的格式把图像头部信息和熵编码后所产生的位流按字节大小写入文件中;注:RGB代表三种颜色:R表示红色,G表示绿色,B表示蓝色;Y表示亮度分量,U和V均表示色差分量,DCT变换表示离散余弦变换,DC系数表示直流系数,AC系数表示交流系数,RLC表示游程压缩编码;获得的JPEG编码位流序列主要包含两部分的信息:文件头信息F和图像压缩数据C,其中文件头信息主要包含文件大小、量化表、哈夫曼编码表等JPEG编解码所需的辅助信息,而图像压缩数据即为图像原始数据被压缩编码后数据,其表示成:C(i,j)=[SY1(i,j),SY2(i,j),SY3(i,j),SY4(i,j),SU(i,j),SV(i,j)]C(i,j)∈C---(1)]]>其中,C(i,j)表示图像I的第(i,j)块经过熵编码压缩后的数据结构,YUV的采样格式为4:1:1,对于Y分量第(i,j)块则由4个8×8块构成,U和V分量是由1个8×8块构成;i,1≤i≤M/16,表示16×16块在图像I中横坐标的位置,M表示图像I的高,j,1≤j≤N/16,表示16×16块在图像I中纵坐标的位置,N表示图像I的宽,表示第k块Y分量熵编码后的二进制位流,块大小8×8,k∈[1,2,3,4],k表示块排列顺序的位置,分别表示U和V分量熵编码后的二进制位流;(1‑2)、根据C(i,j)的数据结构,提取图像I的第(i,j)块Y的DC系数位流和AC系数位流;设图像I的第(i,j)块Y分量的DC位流为其表示成:SY(i,j)(DC)=[SY1(i,j)(DC),SY2(i,j)(DC),SY3(i,j)(DC),SY4(i,j)(DC)]---(2)]]>其中,表示图像I第(i,j)块中第k块Y分量熵编码后DC系数位流,k∈[1,2,3,4],k表示块排列顺序的位置;设图像I的第(i,j)块Y分量的AC位流为其表示成:SY(i,j)(AC)=[SY1(i,j)(AC),SY2(i,j)(AC),SY3(i,j)(AC),SY4(i,j)(AC)]---(3)]]>其中,表示图像I第(i,j)块中第k块Y分量熵编码后AC系数位流,k表示块排列顺序的位置;由式子(2)(3)可知,由和构成,其表示成:SYk(i,j)=[SYk(i,j)(DC),SYk(i,j)(AC)]k∈[1,2,3,4]---(4)]]>当k固定时,实际上是一个8×8大小块所对应的64个DCT系数熵编码后的位流,其中包含了1个DC系数和63个AC系数,DC系数和AC系数编码结构相同,均有两部分构成:Huffman码流和VLI码流;其中,Huffman码表示哈夫曼编码,是一种无损变长压缩编码方法,VLI是可变长整数编码;当k=1时,位流结构表达式为:SY1(i,j)(DC)=[H0(i,j)(DC),V0(i,j)(DC)]---(5)]]>其中,表示图像I的第(i,j)块Y1分量中DC系数Huffman码流,表示图像I的第(i,j)块Y1分量中DC系数VLI码流,利用图像I头文件信息中的Y分量DC系数Huffman码表,图像内容所有者可读取出位流,接着对位流进行解码,获得该DC系数在VLI码表中组号,其数值大小等于实际存储二进制值位流长度,读取出位流,获得DC系数在熵编码前的数值;当k=1时,位流结构表达式为:SY1(i,j)(AC)={[H1(i,j)(AC),V1(i,j)(AC)],...,[Ht(i,j)(AC),Vt(i,j)(AC)],...}---(6)]]>其中,表示Y1中AC系数第t个编码单元(l,gr)t对应的Huffman码流,l表示在游程编码中连续出现零的个数,gr表示连续零后第一个非零数值r在VLI码表中所对应组号,Vt(i,j)(AC)表示Y1中AC系数第t个编码单元(l,gr)t中r所对应的VLI码流,t表示Y1中AC系数游程编码单元的个数,1≤t≤63;利用图像I头文件信息中的Y分量AC系数Huffman码表,图像内容所有者可读取出位流,接着对位流进行解码,获得该AC系数在VLI码表中组号,其值等于Vt(i,j)(AC)位流长度,读取出Vt(i,j)(AC)位流;以此类推,进一步读取出即可获得图像I的第(i,j)块Y分量的DC位流和AC位流(1‑3)、按照(1‑2)步骤,图像内容所有者从图像I可读取出第(i,j)块所对应的U、V分量的二进制位流与读取Y分量的位流不同的是U、V分量所用的Huffman码表与Y分量的Huffman码表不同;(1‑4)、基于(1‑2)和(1‑3)步骤,图像内容所有者可获取整副图像I中Y、U、V分量的DC位流和AC位流;针对图像I的DC位流和AC位流,采取不同的加密方法,即可获得密文图像I′,具体如下:图像内容所有者将整副图像I中Y、U、V分量的DC位流组合成一个新的位流序列SI(DC),其表达式如下:SI(DC)=[SIY(DC),SIU(DC),SIV(DC)]=[d1,d2,...,dl]---(7)]]>其中,分别表示图像I中Y、U、V分量的DC位流序列,di,1≤i≤l,表示SI(DC)位流第i位置的二进制值;设图像I对应的SI(DC)位流长度为l,图像内容所有者采用流密码异或加密的方法对SI(DC)进行加密,即根据加密私钥K1产生一串长度为l的伪随机二进制位流E=[e1,e2,…,el]与SI(DC)进行异或操作,生成长度为l的加密后的位流SI′(DC)=[d1′,d2′,…,dl′],异或操作满足下式:ds′=0,ds=es1,ds≠ess=1,2,...,l---(8)]]>即得到密文位流SI′(DC)=[d1′,d2′,…,dl′];对于图像I中Y、U、V分量的AC位流采取不同的加密技术即置乱加密方法,根据公式(6)块位流结构提取出图像I中所有8×8块Y、U、V分量的AC系数块位流,并分别将块位流连接组合成新的位流序列,设为表达式分别如下:SIY(AC)={[H1Y(1,1),V1Y(1,1)],...,[H1Y(i,j),V1Y(i,j)],...,[H1Y(M/8,N/8),V1Y(M/8,N/8)],...}---(9)]]>SIU(AC)={[H1U(1,1),V1U(1,1)],...,[H1U(i′,j′),VV(i′,j′)],...,[H1U(M/2/8,N/2/8),V1U(M/2/8,N/2/8)],...}---(10)]]>SIV(AC)={[H1V(1,1),V1V(1,1)],...,[H1V(i′,j′),V1V(i′,j′)],...,[H1V(M/2/8,N/2/8),V1V(M/2/8,N/2/8)],...}---(11)]]>其中,表示图像Y分量第(i,j)块,块大小8×8,第1个AC系数编码单元所对应的码流段,参考(1‑2)步骤,表示第1个AC系数编码单元Huffman编码后位流部分,V1Y(i,j)表示第1个AC系数编码单元VLI编码后位流部分,i,1≤i≤M/8,表示8×8块在Y分量中横坐标的位置,j,1≤j≤N/8,表示8×8块在Y分量中纵坐标的位置;表示图像U分量第(i′,j′)块第1个AC系数编码单元所对应的码流段,参考(1‑2)步骤,表示第1个AC系数编码单元Huffman编码后位流部分,V1U(i′,j′)表示表示第1个AC系数编码单元VLI编码后位流部分,i′,1≤i′≤M/2/8,表示8×8块在U分量中横坐标的位置,j′,1≤j′≤N/2/8,表示8×8块在U分量中纵坐标的位置;公式(11)中的符号含义跟公式(10)类似;另,图像I所对应的Y、U、V分量的大小分别为M×N,(M/2)×(N/2),(M/2)×(N/2);以码流段作为一个整体单元,图像内容所有者使用加密私钥K2对中所包含的码流段进行置乱加密,即打乱码流段在位流中的位置,记加密后Y分量AC位流为对U、V分量AC位流采取相同的加密方法进行加密,获得密文位流为所用密钥分别为K3,K4;(1‑5)、按照JPEG的格式标准,将图像I的头部信息和加密后的Y、U、V分量位流进行重新连接组合,即可获得图像I所对应的加密图像I′的位流序列SI′,其表达式为:SI′=[Hinfo,LS,SI′(DC),SI′Y(AC),SI′U(AC),SI′V(AC)]---(12)]]>其中,Hinfo表示图像I的头部信息,未参与加密处理,其位流在加密前后保持不变,LS表示长度信息,包含位流SI′(DC)、的长度以及JPEG编码过程中填充位的位数,LS值以二进制位流的形式存在;另,JPEG格式中标记以十六进制的FF开头,后面跟一个非零的字节,在(1‑1)步骤中读取JPEG文件时,FF后面的字节若是0,则删除值为0的这个字节,在此操作上所获得加密图像I′位流比原始图像I的位流长度在一定程度上减少,保证了加密后的文件大小不增加,甚至对大部分的图像来说文件大小反而减少;(1‑6)、图像数据库里的其他图像加密处理均与图像I的加密操作一样,从而获得加密后的密文图像数据库,最后把密文图像数据库提交给检索服务提供者进行存储和管理;(2)、授权用户查询图像过程:首先用户在查询明文图像前需要获得图像内容所有者授权,成为授权用户,接着把要查询的图像提交给图像内容所有者进行相应的加密,待获得相应的密文图像后,就可以直接在图像检索服务器上去检索匹配图像,最后对返回的密文结果解密获得与查询图像相近的明文图像;(3)、检索服务提供者检索密文图像过程:检索服务提供者存储和管理图像内容所有者提交的密文图像数据库,并提供密文图像检索服务;检索服务提供者从授权用户提交的密文查询图像文件位流中提取交流系数位流,通过JPEG解码和数学统计手段获得密文查询图像对应交流系数直方图,接着把密文查询图像交流系数直方图与密文数据库里所有图像的已知交流系数直方图进行逐一对应比较,最后返回与待查询图像直方图最相近的图像给授权用户。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海大学,未经上海大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201410591470.X/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

400-8765-105周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top