一种基于特征不变量的遥感影像水印方法转让专利

申请号 : CN201610091529.8

文献号 : CN105761197B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 任娜朱长青张若琰何彦霖

申请人 : 南京师范大学

摘要 :

本发明公开了一种基于特征不变量的遥感影像数字水印方法,针对DCT算法抗几何攻击和抗常见图像处理攻击不能两全的缺点进行了算法弥补,同时也充分发挥了二维码存储信息量大、纠错能力强的优点。在DCT变换的8*8分块中寻找不变量,结合该不变量使用映射函数计算嵌入的水印信息位,并通过中频系数标记每个8*8分块的起始位置。在进行水印检测时,通过特征定位区域的判定,快速、准确定位含有水印信息的影像块。本发明方法充分利用了遥感影像的像元值在几何攻击前后的特性,解决了水印信息不同步的问题,从而大大提高了算法的鲁棒性,解决了目前遥感影像数字水印算法无法抵抗裁剪攻击的问题,有效地保护了遥感影像数据的版权问题。

权利要求 :

1.一种基于特征不变量的遥感影像水印方法,其特征在于,该方法包括以下过程:

1)水印信息生成过程

步骤11:读取文字信息;

步骤12:根据二维码生成规则将读取的文字信息转换成二维码;

步骤13:按照编码方式将二维码转化为二进制的二维数组W0={0,1},转换得到的数组长度为Length*Length;

步骤14:对二维数组进行扩频,添加值为全1的特征水印,得到水印信息W,其数组长度为(Length+1)*(Length+1);

2)水印嵌入过程

步骤21:数据的读取和处理,读取待嵌入水印信息的遥感影像数据,获取数据的大小;

步骤22:根据水印信息W的长度,对影像数据进行8*8的分块处理,保证每块都能嵌入一次完整水印;

步骤23:对每一个8*8分块进行DCT变换;

步骤24:取DCT变换后的中频系数[4,3]和[5,2],比较二者大小;当中频系数[4,3]小于[5,2]时将两数交换,保证DCT变换后的8*8分块中[4,3]大于[5,2],以两数交换后的8*8分块作为寻找8*8分块起始位置的标记;

步骤25:将每个8*8分块前16个中频系数进行zig-zag排序,每个中频系数大于等于0的记为1,小于0的记为0,将16个二进制平均分为四组,将每组的二进制数转化为一个十进制数Ai, i 是指 8*8 分块的块数 ;

步骤26:建立十进制数Ai与水印嵌入位数m的映射函数,水印总长度记为k:步骤27:采用量化的方式将水印信息W嵌入到8*8块的低频系数中;

步骤28:将嵌入水印后的数据块进行DCT逆变换,并对剩余所有块进行逆变换,便可得到含水印的遥感影像;

步骤29:保存嵌入水印信息后的影像数据。

2.根据权利要求1所述的一种基于特征不变量的遥感影像水印方法,其特征在于,利用所述水印方法进行检测的过程如下:步骤一:数据的读取和处理,读取所述步骤29含水印信息的遥感影像数据,获取数据的大小,判断数据是否需要进行分块处理;

步骤二:对遥感影像数据进行8*8分块,取该遥感影像数据第一个8*8分块进行DCT变换,如果中频系数[4,3]大于[5,2],则进行步骤三,否则,按先行后列的顺序重复步骤二遍历遥感影像;

步骤三:计算8*8分块的DCT变换后的低频值D′ij;

步骤四:将每个8*8分块的前16个中频系数进行zig-zag排序后,平均分为四组,每个中频系数大于等于0的记为1,小于0的记为0,将16个二进制平均分为四组,将每组的二进制数转化为一个十进制数Ai;

步骤五:根据公式(1)计算8*8分块对应包含的水印位数;

步骤六:基于量化的水印检测规则提取相应水印位数的水印信息0或1;

步骤七:按步骤二至六处理完所有8*8分块,采用多数原则,即根据水印信息的值为0和

1的多数来决定提取出的水印W′ij,这些值一半以上为1,则W′ij取值为1,否则取值为0;

步骤八:得到提取的水印信息后,计算提取出的水印信息的定位图案部分与相应版本号定位图案的相关系数,当相关系数高于0.8时可输出水印信息,将提取出的水印信息的定位图案部分的像素点确定为提取起始位置输入提取函数;否则,继续重复步骤一;

步骤九:将提取的水印信息生成二维码;

步骤十:水印检测结果输出。

说明书 :

一种基于特征不变量的遥感影像水印方法

技术领域

[0001] 本发明属于地理信息版权保护领域,具体涉及一种针对遥感影像数据的采用特征水印标记水印嵌入位置的数字水印嵌入与检测方法,以提高遥感影像数字水印算法鲁棒性。

背景技术

[0002] 近年来,随着数字化和网络化时代的飞速发展,数字遥感影像的存储、传输、复制都变得非常方便快捷。遥感数据的非法拷贝和复制,不仅会造成遥感图像的所有者蒙受巨大经济损失,更会危及国家安全、国防安全等。这使得数据拥有者不愿轻易公开或发布其产品,不愿共享,不敢共享,严重阻碍了地理信息产业的发展。因此,如何保护遥感数据的安全与知识产权已成为迫在眉睫的问题。
[0003] 数字水印技术作为一种崭新的信息安全技术,为遥感影像的安全保护提供了一种切实可行的解决途径。数字水印是指在数字化数据中嵌入水印信息,将水印信息与源数据融为一体,成为源数据不可分离的一部分。由此来确定版权拥有者、所有权认证、跟踪侵权行为、认证数字内容来源的真实性、识别购买者、提供关于数字内容的其他附加信息等。同时对于加强责任心、震慑非法行为、有据可查快查等具有重要作用。数字水印技术在军事安全保障、国家安全方面发挥的作用已经受到国家政府机关的高度重视。
[0004] 数字水印在图像、图形、视频、音频等领域的安全保护方面取得了许多的应用,近几年在测绘相关领域也得到了重要的应用。
[0005] 常见的水印信息载体有二值图像、随机序列等,但是这些载体容量小,当水印识别有误时影响水印信息的判读,而且往往需要转码,与之相比,二维码具有信息容量大、可靠性高、可以表示汉字及图像等多种信息等优点,是水印信息载体的理想选择。同时,二维条码本身具有纠错编码,纠错编码具有强检错、纠错功能。选取合适的纠正级别,可满足不同的纠错需求,由于二维码具有高纠错的特性,一定的噪声并不会影响其识读,因此,将其作为载体可以有效地提高水印的鲁棒性。
[0006] 目前,二维码由于自身的诸多优势广泛应用于各行各业,然而,其公开的数据信息转换方法决定了其不可能单独胜任信息隐藏及防伪等使命。数字水印技术是信息时代下进行数字产品版权保护和防伪的有效工具,因此,本方法选择二维条码和数字水印结合,以此来满足真正的防伪需求。

发明内容

[0007] 本发明的目的在于:针对目前遥感影像水印技术无法解决水印信息定位、难以抵抗任意位置裁剪攻击、鲁棒性差等问题,提出一种利用特征水印标识版权水印的遥感影像数据的数字水印嵌入与检测方法,实现具有强抗裁剪、压缩、平移、噪声、滤波等攻击的遥感影像版权认证。
[0008] 以二维码为水印载体,应用于遥感影像数据版权保护的水印算法,为了实现上述发明目的,本发明一种基于特征不变量的遥感影像水印方法所采取的技术方案主要包括以下过程:
[0009] 1)水印信息生成过程
[0010] 步骤11:读取有意义的文字信息;
[0011] 步骤12:根据二维码生成规则将读取的文字信息转换成一定大小的二维码;
[0012] 步骤13:按照编码方式将二维码转化为二进制的二维数组W0={0,1},转换得到的数组长度为Length*Length;
[0013] 步骤14:对二维数组进行扩频,添加值为全1的特征水印,得到水印信息W,其数组长度为(Length+1)*(Length+1);
[0014] 2)水印嵌入过程
[0015] 步骤21:数据的读取和处理,读取待嵌入水印信息的遥感影像数据,获取数据的大小;
[0016] 步骤22:根据水印信息W的长度,对影像数据进行8*8的分块处理,保证每块都能嵌入一次完整水印;
[0017] 步骤23:对每一个8*8分块进行DCT变换;
[0018] 步骤24:取DCT变换后的中频系数[4,3]和[5,2],比较二者大小;当中频系数[4,3]小于[5,2]时将两数交换,保证DCT变换后的8*8分块中[4,3]大于[5,2],以此作为寻找8*8分块起始位置的标记;
[0019] 步骤25:将每个8*8分块前16个中频系数进行zig-zag排序,每个中频系数大于等于0的记为1,小于0的记为0,将16个二进制平均分为四组,将每组的二进制数转化为一个十进制数Ai;
[0020] 步骤26:建立十进制数Ai与水印嵌入位数m的映射函数,水印总长度记为k:
[0021]
[0022] 步骤27:采用量化的方式将水印信息W嵌入到8*8块的低频系数中;
[0023] 步骤28:将嵌入水印后的数据块进行DCT逆变换,并对剩余所有块进行逆变换,便可得到含水印的遥感影像;
[0024] 步骤29:保存嵌入水印信息后的影像数据。
[0025] 利用上述水印方法进行检测的过程如下:
[0026] 步骤一:数据的读取和处理,读取所述步骤29含水印信息的遥感影像数据,获取数据的大小,判断数据是否需要进行分块处理;
[0027] 步骤二:对遥感影像数据进行8*8分块,取该遥感影像数据第一个8*8分块进行DCT变换,如果中频系数[4,3]大于[5,2],则进行步骤三,否则,按先行后列的顺序重复步骤二遍历遥感影像;
[0028] 步骤三:计算8*8分块的DCT变换后的低频值Di'j;
[0029] 步骤四:将每个8*8分块的前16个中频系数进行zig-zag排序后,平均分为四组,每个中频系数大于等于0的记为1,小于0的记为0,将16个二进制平均分为四组,将每组的二进制数转化为一个十进制数Ai;
[0030] 步骤五:根据公式(1)计算8*8分块对应包含的水印位数;
[0031] 步骤六:基于量化的水印检测规则提取相应水印位数的水印信息0或1;
[0032] 步骤七:按步骤二至六处理完所有8*8分块,采用多数原则,即根据水印信息的值为0和1的多数来决定提取出的水印Wij',这些值一半以上为1,则Wij'取值为1,否则取值为0;
[0033] 步骤八:得到提取的水印信息后,计算提取出的水印信息的定位图案部分与相应版本号定位图案的相关系数,当相关系数高于0.8时可输出水印信息,将该像素点确定为提取起始位置输入提取函数;否则,继续重复步骤一;
[0034] 步骤九:将提取的水印信息生成二维码;
[0035] 步骤十:水印检测结果输出。
[0036] 本发明的方法针对DCT算法抗几何攻击和抗常见图像处理攻击不能两全的缺点进行了算法弥补,同时也充分发挥了二维码存储信息量大、纠错能力强的优点。在DCT变换的8*8分块中寻找不变量,结合该不变量使用映射函数计算嵌入的水印信息位,并通过中频系数标记每个8*8分块的起始位置。在进行水印检测时,通过特征定位区域的判定,快速、准确定位含有水印信息的影像块。该方法充分利用了遥感影像的像元值在几何攻击前后的特性,解决了水印信息不同步的问题,从而大大提高了算法的鲁棒性,解决了目前遥感影像数字水印算法无法抵抗裁剪攻击的问题,有效地保护了遥感影像数据的版权问题,可用于遥感影像版权保护服务中。

附图说明

[0037] 图1是本发明方法的水印嵌入流程图;
[0038] 图2是本发明方法实施例测试的遥感影像图;
[0039] 图3是本发明方法的水印检测流程图;
[0040] 图4是图2嵌入水印后的效果图;
[0041] 图5是嵌入的二维码水印信息图;
[0042] 图6是提取的二维码水印信息图;
[0043] 图7是图4被删除攻击后的影像;
[0044] 图8是图4被裁剪攻击后的影像;
[0045] 图9是图4被压缩攻击后的影像。

具体实施方式

[0046] 下面结合附图和实施例对本发明作进一步详细描述。
[0047] 本实施例选择单波段的遥感影像数据为实验数据,针对数据的读取、预处理、水印信息生成、水印嵌入、含水印数据保存、水印检测、检测结果输出的整个过程,给出本发明的一个实施例,进一步详细说明本发明。
[0048] 如图2,本实施例选择一幅2737*2148的单通道遥感影像数据作为实验数据,数据格式为geotif。
[0049] 1.水印信息生成:
[0050] 步骤一:输入数据版权的水印信息,本实施例的水印信息为:吉印;
[0051] 步骤二:利用二维码生成规则,将输出的文本信息转换为大小为22×22的二维码;
[0052] 步骤三:读取二维码得到一个二值序列W0;
[0053] 步骤四:二维数组进行扩频,增加值都为1的特征水印,得到水印信息W,数组长度为23×23。
[0054] 2.水印信息的嵌入:
[0055] 步骤一:采用GDAL库读取实验遥感影像数据;
[0056] 步骤二:根据水印信息长度对遥感影像数据进行8*8分块,并对每一块进行DCT变换;
[0057] 步骤三:取DCT变换后的中频系数[4,3]和[5,2],比较二者大小;
[0058] 步骤四:如果中频系数[4,3]小于[5,2]时,将两数交换,以此作为寻找8*8分块起始位置的标记;
[0059] 步骤五:将每个8*8块前16个中频系数进行zig-zag排序;
[0060] 步骤六:对于中频系数为负数的标记为0,否则为1;
[0061] 步骤七:每四个中频系数为一组,共分成四组,将每组的二进制数转换成十进制Ai;
[0062] 步骤八:建立Ai与水印嵌入位数m的映射函数,水印总长度记为k:
[0063]
[0064] 步骤九:采用量化的方式将水印信息嵌入到8*8块的直流分量中;
[0065] 步骤十:将嵌入水印后的数据块进行DCT逆变换,并对所有块进行逆变换,这样便可得到含水印的遥感影像;
[0066] 步骤十一:保存嵌入水印信息后的影像数据。
[0067] 3.水印信息的提取:
[0068] 步骤一:采用GDAL库读取待检测的遥感影像数据,获取数据的大小;
[0069] 步骤二:对遥感影像进行8*8分块,并对每一块影像进行DCT变换;
[0070] 步骤三:取每一块DCT变换后的中频系数[4,3]和[5,2],判断二者的大小,如果中频系数[4,3]大于[5,2],则进行步骤四;否则,按先行后列的顺序重复步骤二遍历遥感影像;
[0071] 步骤四:计算该8*8分块的DCT变换后的低频值Di'j;
[0072] 步骤五:将每个8*8块的前16个中频系数zig-zag排序后,对于中频系数为负数的标记为0,否则为1;
[0073] 步骤六:每四个中频系数为一组,共分成四组,将这四组二进制转化为一个十进制数Ai;
[0074] 步骤七:根据Ai与水印嵌入位数m的映射函数计算该8*8块对应包含的水印位数:
[0075]
[0076] 步骤八:根据嵌入的逆运算规则,提取出相应水印位数的水印信息0或1;
[0077] 步骤九:处理完所有8*8分块,采用多数原则,即根据水印信息的值为0和1的多数来决定提取出得水印Wij',这些值一半以上为1,则Wij'取值为1,否则取值为0;
[0078] 步骤十:得到提取的水印信息后,计算提取出的水印信息的定位图案部分与相应版本号定位图案的相关系数,当相关系数高于0.8时可输出水印信息,将该像素点确定为提取起始位置输入提取函数;否则,继续重复步骤一;
[0079] 步骤十一:将提取的水印信息生成二维码;
[0080] 步骤十二:将水印的提取结果输出。
[0081] 4.本方法的特点与技术优势
[0082] 本方法中最为关键的是水印的嵌入起始位置确定,通过特征水印的标识,很好的确立了水印的嵌入位置,这样可以保证嵌入和提取时候的水印位一一对应。因此,该方法可以很好的抵抗裁剪攻击。
[0083] 5.测试与分析
[0084] 本发明所提出的方法是专门针对遥感影像的水印方法,采用该方法可以开发并实现基于数字水印技术的遥感影像数据版权保护系统。
[0085] (1)格式转换攻击
[0086] 对嵌入水印信息的geotif数据进行格式转换,生成bmp、jpg、png和img格式的数据。转换后,再对这些格式的数据进行水印信息提取。实验结果表明,该方法可以有效抵抗格式转换攻击,且提取率都为100%。
[0087] (2)裁剪攻击
[0088] 遥感影像往往数据比较大,裁剪后数据仍具有较高的使用价值,因而,好的算法应该可以抵抗任意位置的裁剪攻击。裁剪攻击后,遥感影像的数据大小会发生改变,破坏了水印信息与嵌入位置的同步关系。
[0089] 将含水印影像进行裁剪,裁剪的位置为任意的,裁剪的效果如图8。实验结果表明,即使裁剪到原始影像的(10%)时,水印信息仍然可以正确提取出,实验中水印的提取率为100%。
[0090] (3)加噪攻击
[0091] 噪声在一定程度上可以改变影像的视觉效果,如果噪声幅度不大的情况下,不会对影像的质量造成致命性的破坏。对含水印影像进行了椒盐噪声和高斯噪声,实验结果表明,本方法都可以有效抵抗加噪攻击,实验中水印的提取率为100%。