一种高光谱图像集合的交叠编码和解码技术
技术领域
本发明属于图像加密编码与解码领域,具体涉及一种高光谱图像集合的交叠编码和解码技术。
背景技术
随着互联网大数据技术的不断发展,图像相关的编码与解码技术不断进步。近年来,信息安全问题在数据加密领域的重要性不断提升。在军事、金融、医疗、科研等领域,为了防止信息被窃取,图像信息经常要经过加密然后再被传输。高光谱图像作为一种专用装置,如卫星、无人机等生成的数据集合,经常包含了所有者的数字权益。为了防止这些有价值的信息被泄漏,因此很有必要对这些图像进行加密编码。
使用随机相位函数对图像进行加密的方法可以分别在空域和频域对图像信息进行隐藏,最终得到的是一幅无法辨识信息的白噪声图像。最早的双随机相位编码技术可以用傅里叶变换来实现,后来,该方法又拓展到了分数傅里叶域、菲涅尔域等。这类加密技术可以对单幅图像进行加密,也可以对一组图像进行加密。这种图像加密技术可以使用光电系统来实现,可以根据其原理,使用纯数字化的方式来实现。
然而,先有的研究结论表明,通过相位恢复算法,可以完整的恢复出被加密为白噪声的密文图像,即在密钥完全未知的情况下,通过相关的物理模型、设定合适的参数、进行一定次数的迭代,较为完整的恢复出明文信息。尤其是在高光谱图像这类数据中,每个波段的图像有一定的相似性,可以通过比对不同波段的图像,更有效的实现密文的破解。为了解决这个问题,本专利提出的技术在密文中只包含振幅数据,不包含相位数据;同时对于图像进行了交叠扰乱操作,使得图像之间的相关性消失,从而保证了加密数据的安全性。
本发明专利提出了一种高光谱图像集合的交叠编码和解码技术,可以抵抗相位恢复算法的攻击,提高加密编码解码系统的安全性。
发明内容
针对现有技术的不足,本发明提出了一种高光谱图像的交叠编码和解码方法,该方法在编解码的过程中,还可以进行加密和解密操作,实现图像的保密传输。下面结合附图对本发明做进一步详细说明。为实现上述目的,本发明的方案包括:
如图1所示,高光谱图像集合的加密图像编码过程如步骤1)到12):
1)设高光谱图像由K个波段的图像组成,即一个高光谱图像集合中包含了K幅图像,命名为I1(x,y)到IK(x,y),每幅图像的尺寸为M*N,即有M列和N行。将每幅图像的每行数据进行编号,第1幅图像的第1行到第N行编号为1到N,第2幅图像的第1行到第N行编号为N+1到2N,以此类推,组成总共有P行数据的集合,其中P=N*K。
2)从1到P中随机抽取N行数据,组成一幅新的图像,并记录下抽取行的序号,作为密钥的一部分,从集合中删去已经被抽到的数据行。
3)重复步骤2),重组出的图像命名为H1(x,y)到HK(x,y),每幅图像抽取的序号集合命名为J。
4)生成随机相位函数ϕ1i(x,y),并与重组图像Hi(x,y)组成复振幅函数,
Ri(x,y)=Hi(x,y)*exp[j*2π*ϕ1i(x,y)],(1)
其中i从1到K,j是虚数单位。
5)将复振幅函数Ri(x,y),分解为实部和虚部两部分,
A1i(x,y)=Re[Ri(x,y)],(2)
A2i(x,y)=Im[Ri(x,y)],(3)
其中,Re[·]和Im[·]表示对复函数求实部和虚部。
6)用HT[·]和IHT[·]表示Hartley(HT)变换对,函数f(x,y)的两种变换分别表示为,
F(u,v)=HT[f(x,y)]=Re[FT(f(x,y))]+Im[FT(f(x,y))],(4)
f(x,y)=IHT[F(u,v)]=Re[FT(F(u,v))]+Im[FT(F(u,v))],(5)
其中FT[·]表示傅立叶变换。实函数进行Hartley变换后再进行一次Hartley变换,就可以得到原函数。
7)对A1i(x,y)和A2i(x,y)进行Hartley变换,得到
B1i(x,y)=HT[A1i(x,y)],(6)
B2i(x,y)=HT[A2i(x,y)]。(7)
8)生成随机相位函数ϕ2i(x,y)和ϕ3i(x,y),并与B1i(x,y)和B2i(x,y)组合,得到
C1i(x,y)=B1i(x,y)*exp[j*2π*ϕ2i(x,y)],(8)
C2i(x,y)=B2i(x,y)*exp[j*2π*ϕ3i(x,y)]。(9)
9)将C1i(x,y)和C2i(x,y)分解为实部和虚部,
D1i(x,y)=Re[C1i(x,y)],(10)
D2i(x,y)=Im[C1i(x,y)],(11)
D3i(x,y)=Re[C2i(x,y)],(12)
D4i(x,y)=Im[C2i(x,y)]。(13)
10)根据式(14)和(15),进行交叉编码后再进行一次Hartley变换,
E1i(x,y)=HT[D1i(x,y)+D3i(x,y)],(14)
E2i(x,y)=HT[D2i(x,y)+D4i(x,y)]。(15)
11)重复步骤4)到10),将重组图像H1(x,y)到HK(x,y)都进行加密编码。
12)使用保密信道将序号集合J、ϕ2i(x,y)以及ϕ3i(x,y)传输给接收方;使用公共信道将E1i(x,y)和E2i(x,y)传输给接收方。
如图2所示,在接收方,使用接收到的序号集合J、ϕ2i(x,y)、ϕ3i(x,y)、E1i(x,y)和E2i(x,y)对数据进行解码,其步骤如下:
1)对E1i(x,y)和E2i(x,y)进行Hartley变换,得到
F1i(x,y)=HT[E1i(x,y)],(16)
F2i(x,y)=HT[E2i(x,y)]。(17)
2)根据加密编码方案,可以得到,
F1i(x,y)=B1i*cos[2*pi*ϕ2i(x,y)]+B2i*cos[2*pi*ϕ3i(x,y)],(18)
F2i(x,y)=B1i*cos[2*pi*ϕ2i(x,y)]+B2i*cos[2*pi*ϕ3i(x,y)],(19)
从中可以解出B1i(x,y)和B2i(x,y)。
3)对B1i(x,y)和B2i(x,y)进行Hartley变换,得到
G1i(x,y)=HT[B1i(x,y)],(20)
G2i(x,y)=HT[B2i(x,y)]。(21)
4)计算出重组图像Hri(x,y),
Hri(x,y)=sqrt[(G1i(x,y))^2+(G2i(x,y))^2],(22)
其中,sqrt[]表示求平方根,^2表示平方运算。
5)重复解码步骤1)到4),恢复出重组图像Hr1(x,y)到HrK(x,y)。
6)根据序号集合J,将重组图像Hr1(x,y)到HrK(x,y)恢复为原始高光谱图像集。
本发明与现有技术相比,有益效果在于:本发明提出了一种高光谱图像集合的交叠编码和解码技术,经过该技术编码加密的高光谱图像集合能够免疫相位恢复算法对图像内容的破解,具有良好的应用前景。
附图说明
下面结合附图和实施例对本发明进一步说明。
图1为本发明所述高光谱图像集合编码技术的流程图。
图2为本发明所述高光谱图像集合解码技术的流程图。
图3为本发明实施例中所用的高光谱图像集合中6个波段的图片。
图4为本发明实施例中高光谱图像进行加密编码后的密文。
图5为本发明实施例中高光谱图像集合解码后的6个波段的图片。
具体实施方式
为使本发明的上述目的、特征和优点能够更加易于理解,下面结合附图和具体实施方式对本发明作进一步详细说明。
实施例:
根据编码步骤1),如图3所示,实施例的高光谱图像包括K=6个波段,命名为I1到I6,每幅图像的尺寸为400*400像素。将每幅图像的行进行编号,第1幅图像的第1行到第400行编号为1到400,第2幅图像的第1行到第400行编号为401到800,以此类推,组成总共2400行数据的集合。
根据编码步骤2),从1到2400行中随机抽取400行数据,组成一幅新的图像,记录下抽取行的序号,作为密钥的一部分,并从行数据集合中删除这400行数据。
根据编码步骤3),重复步骤2),重组出6幅新的图像,命名为H1到H6,每幅图像抽取的序号集合命名为J。
根据编码步骤4),随机生成相位函数ϕ1i,根据式(1),与重组图像Hi组成复振幅函数,其中i=1到6。
根据编码步骤5),根据式(2)到(3),将复振幅函数R1到R6分解为实部和虚部两部分。
根据编码步骤6),根据式(4)到(5),给定实函数的Hartley变换和逆变换的傅里叶变换计算方法。
根据编码步骤7),根据式(6)和(7)对A1i和A2i进行Hartley变换。
根据编码步骤8),生成随机相位函数ϕ2i和ϕ3i,根据式(8)和(9),将其与B1i和B2i组合。
根据编码步骤9),根据式(10)到(13),将C1i和C2i分解为实部和虚部。
根据编码步骤10),根据式(14)和(15),进行交叉编码后再进行一次Hartley变换,得到E1i和E2i。
根据编码步骤11),重复步骤4)到10),将重组图像H1到H6都进行加密编码,如图4所示的是6个波段加密编码后的密文。
根据编码步骤12),使用保密信道将序号集合J、ϕ2i以及ϕ3i传输给接收方;使用公共信道将E1i和E2i传输给接收方。
在接收方,根据解码步骤1),根据式(16)和(17),对E1i和E2i进行Hartley变换。
根据解码步骤2),根据式(18)和(19),解出B1i和B2i。
根据解码步骤3),根据式(20)和(21),对B1i和B2i进行Hartley变换。
根据解码步骤4),根据公式(22),计算出重组图像Hri。
根据解码步骤5),重复解码步骤1)到4),恢复出重组图像Hr1到Hr6。
根据解码步骤6),根据序号集合J,如图5所示,将重组图像Hr1到Hr6恢复为原始高光谱图像集。