system: [SYSTEM]

user: 4. 量子图像水印算法设计 在本节中，将会给出将 2 n − 1 × 2 n − 1 的灰度水印图像插入到 2 n × 2 n 的灰度携带图像中的分块量子水印方案。还会给出量子水印图像的插入和提取算法以及有效线路。 4.1. 分块1级分解(Block 1 st -Level Decomposition) 基于图2中的 D 2 n ( 4 ) 的n + 2级迭代分解量子线路，FRQI图像的分块1级分解量子线路如图3所示 图3. FRQI图像的分块1级分解量子线路 如图3所示，FRQI图像的分块1级分解包括两个部分：行分解以及列分解，因此我们可以推断出分块1级分解的矩阵表达形式如下： ( I 2 ⊗ n ⊗ C ′ 0 ⊗ I 2 ⊗ n ) ( I 2 ⊗ P 2 n ⊗ I 2 ⊗ n ) × ( I 2 ⊗ 2 n ⊗ C ′ 0 ) ( I 2 ⊗ n + 1 ⊗ P 2 n ) (20) 对于分块1级分解，图像被分为四个部分，近似部分、水平细节、垂直细节以及对角细节，每一个分块都是 2 n − 1 × 2 n − 1 大小。 我们知道近似频段频率较低但是包含原始图像中的大量信息能量，细节频段频率较高，并且能够更好地表示图像的细节信息，同时与近似频段相比它具有更少的能量。特别的，水平和垂直细节比对角细节能表现更多的边缘子图像的小波系数和差异，因此，我们选取对图像重构过程影响更小的对角频段作为水印信息的插入区 [ 17 ]。 4.2. 分块量子水印图像的嵌入算法和量子线路设计 根据FRQI图像的分块1级分解，分块量子水印的嵌入步骤如图4所示： 图4. 分块量子水印的嵌入步骤 一个 2 n − 1 × 2 n − 1 大小的二进制水印图像WI是以下形式： WI = ∑ Y = 0 2 n − 1 − 1 ∑ X = 0 2 n − 1 − 1 f ( Y ， X ) (21) Y = y n − 2 y n − 3 ⋯ y 1 y 0 ， X = x n − 2 x n − 3 ⋯ x 1 x 0 基于每一个点 ( Y ， X ) 的权值 f ( Y ， X ) ，我们可以定义一个酉矩阵 R y ( 2 φ K ) 如下 R y ( 2 φ K ) = [ cos ( φ K ) − sin ( φ K ) sin ( φ K ) cos ( φ K ) ] ， φ K = 0 ， 5 × π 2 × 255 (22) 其中 φ K = 0 ，和 φ K = 5 × π 2 × 255 ，分别代表二进制水印图像WI中的像素点信息 f ( Y ， X ) = 0 和 f ( Y ， X ) = 1 ，并且 K = Y X = 0 ， 1 ， 2 ， ⋯ ， 2 2 n − 2 − 1 表示水印图像WI中的像素点位置信息。分块量子水印图像的嵌入算法步骤如下： 第一步：根据图3所示，利用QDWT对量子携带图像进行分块1级分解，可以得到中间态的量子图像表示： | C B 1 〉 = ( I 2 ⊗ n ⊗ C ′ 0 ⊗ I 2 ⊗ n ) ( I 2 ⊗ P 2 n ⊗ I 2 ⊗ n ) × ( I 2 ⊗ 2 n ⊗ C ′ 0 ) ( I 2 ⊗ n + 1 ⊗ P 2 n ) | C 〉 (23) 中间量子态 | C B 1 〉 可以被分为近似部分、水平细节、垂直细节以及对角细节四个部分。 第二步：是将水印信息嵌入的关键一步，我们可以根据酉矩阵 R y ( 2 φ K ) 设计一个多量子比特的控制酉变换 U K C U K C = R y ( 2 φ K ) ⊗ | Y 〉 | X 〉 〈 X | 〈 Y | | C B 〉 = U K E | C B 1 〉 = ( ∏ K = 0 2 2 n − 2 − 1 U K C ) | C B 1 〉 (24) 其中 U K E 是由 U K C 构成，目的是作用于中间量子态 | C B 1 〉 中的对角细节信息。 | Y 〉 = | y n − 1 y n − 2 ⋯ y 1 y 0 〉 和 | X 〉 = | x n − 1 x n − 2 ⋯ x 1 x 0 〉 有最高的量子比特 | y n − 1 〉 = | 1 〉 和 | x n − 1 〉 = | 1 〉 ，中间量子态的对角细节可以通过最高量子比特 | y n − 1 〉 = | 1 〉 和 | x n − 1 〉 = | 1 〉 来筛选。因此，通过 U K E ，水印图像的像素信息被嵌入到携带图像的对角小波系数中，一方面，当水印图像的像素点权值为0 bit时，相对应的对角小波系数不改变；另一方面，当水印图像的像素点权值为1 bit时，将会通过多量子受控门 R y ( 2 φ K ) 对相关对角小波系数产生细微的改变。 第三步：含水印图像 | C W B 〉 可以通过对量子态 | C B 〉 进行逆变换得到，酉矩阵表示如下 | C W B 〉 = [ ( I 2 ⊗ 2 n ⊗ C ′ 0 ) ( I 2 ⊗ n + 1 ⊗ P 2 n ) ] ∗ [ ( I 2 ⊗ n ⊗ C ′ 0 ⊗ I 2 ⊗ n ) ( I 2 ⊗ P 2 n ⊗ I 2 ⊗ n ) ] ∗ | C B 〉 (25) 其中 [ ] ∗ 表示的是共轭转置 A ∗ = ( A ¯ ) T = A T ¯ 。 第四步：利用量子测量实现从量子叠加态图像到传统含水印图像的转换 [ 21 ]。量子测量是为了获悉系统的状态，使量子叠加态坍缩，从量子寄存器中获取到传统图像的信息 [ 22 ]。 基于上述分析，完整的分块量子水印图像嵌入量子线路第一步到第三步如图5所示。 4.3. 算法复杂度分析 在量子计算中，任何复杂的量子线路都可以被分解为一系列包含1、2量子比特的酉量子门 [ 13 ] [ 14 ]，在本文中，完整的量子线路的复杂度是由其中包含的基本量子门个数决定的。 图5. 分块量子水印图像嵌入量子线路 量子携带图像和量子水印图像的大小分别为 2 n × 2 n 、 2 n − 1 × 2 n − 1 ，本文的量子水印算法复杂度主要体现在图5的量子线路复杂度上，本节将会对其进行详细分析。 图5的分块量子水印图像嵌入线路可以分为三个部分：1) 利用QDWT对量子携带图像进行分块1级分解；2) 一系列的多量子比特控制循环操作；3) 逆分块1级分解。 因此我们可以分别分析这三个步骤来确定嵌入方案的算法复杂度。 第一部分：分块1级分解的量子线路如图3所示，其中包括两个 C ′ 0 和两个置换算子 P 2 n ， P 2 n 的矩阵分解如(12)式所示，其中 Π 2 n 包括 n − 1 个交换门， Π 2 n − 1 包括 n − 2 个交换门，则 P 2 n 一共包括 ( n − 1 ) + ( n − 2 ) + ⋯ + 1 = n ( n − 1 ) 2 个交换算子，综上，第一部分的算法复杂度为 2 + 2 × n ( n − 1 ) 2 = n 2 − n + 2 。 第二部分：对2n个量子比特进行 2 2 n − 2 的条件循环门操作，根据文献 [ 14 ] 中的7.12定理，n量子比特的控制循环门 R y ( 2 φ ) 的量子复杂度为 O ( n ) ，因此这一系列循环门操作的复杂度不会超过 O ( n 2 2 n − 2 ) 。 第三部分：因为所有的量子操作都是通过量子酉门进行的，所以量子变换是可逆的，因此，逆分块1级变换的量子线路相当于对分块1级分解求逆，所以与第一部分的算法复杂度相同，均为 n 2 − n + 2 。 将以上三个部分的算法复杂度相加可以得到分块量子水印图像嵌入算法总体的算法复杂度为 O ( n 2 2 n − 2 ) 。