CN101540038A - 用于矢量地图的可逆数据隐藏方法 - Google Patents
用于矢量地图的可逆数据隐藏方法 Download PDFInfo
- Publication number
- CN101540038A CN101540038A CN200910039103A CN200910039103A CN101540038A CN 101540038 A CN101540038 A CN 101540038A CN 200910039103 A CN200910039103 A CN 200910039103A CN 200910039103 A CN200910039103 A CN 200910039103A CN 101540038 A CN101540038 A CN 101540038A
- Authority
- CN
- China
- Prior art keywords
- difference
- expansion
- embedding
- map vector
- apex coordinate
- 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.)
- Pending
Links
Images
Landscapes
- Editing Of Facsimile Originals (AREA)
- Image Processing (AREA)
Abstract
本发明为用于矢量地图的可逆数据隐藏方法,步骤为:顺序读入矢量地图的顶点坐标组成顶点坐标序列;定义n个顶点坐标用于保存头文件,用其最小意义位构成临时位流,由其余顶点坐标求取出差值组成差值序列并构建差值直方图;根据地图精度容忍度确定可扩展嵌入差值的最大内区间和负载容量极限,从最大内区间中确定实际嵌入的内区域和外区域,将实际负载、临时位流扩展嵌入到内区域的差值中,将外区域的差值进行平移,结束后生成头文件;重新生成含秘顶点坐标,将头文件保存到n个顶点坐标的最小意义位,得到含秘矢量地图传送到接收端;接收端按照负载嵌入的逆过程提取实际负载和恢复矢量地图。本发明提高了嵌入容量,能无损恢复矢量地图及隐藏的数据。
Description
技术领域
本发明涉及矢量地图的信息隐藏技术,具体涉及一种用于矢量地图的可逆数据隐藏方法。
背景技术
随着GIS(地理信息系统)的日益发展和广泛应用,出现了多种以网络应用为目的的矢量图像格式,AI、SVG、VML、GML等格式的矢量图像在网络上普遍流行。由于互联网的开放特性,非法从互联网上获取具有版权的矢量图像并不困难,因此,用于矢量图像的信息隐藏技术近年来得到了极大的关注。
信息隐藏技术是一种研究如何将某一信息隐藏于另一公开的信息中,然后通过公开的信息来传递隐藏信息的技术。由于含有隐藏信息(或称含秘)的媒体的发布是公开的,而可能的敌手难以从公开的信息中判断隐藏信息是否存在,所以难以截获秘密信息,从而达到了保证信息安全传送的目的。
目前,用于矢量地图上的信息隐藏技术大多关注于隐藏信息的鲁棒性而非容量,并且大部分方案是不可逆的。由于地图数据具有精确度的要求,在很多应用场合(如军事上)要求数据嵌入不能破坏数字地图本身的完整性,这就需要可逆数据隐藏技术。可逆数据隐藏又称无损数据隐藏,是指嵌入隐秘数据时,虽然可能会对载体图像的视觉造成一定的破坏,但若含秘图像在传输过程中没有信息损失,则在解码端合法用户可无损抽取所隐藏的数据,并可根据所抽取的信息清除嵌入过程对图像所造成的失真,无损恢复出原始图像。
目前针对矢量地图的可逆数据隐藏方法非常少。Voigt等人于2004年最早在ACM期刊上发表论文“Reversible Watermarking of 2D-Vector Data”,提出了一种利用修改原始矢量地图顶点坐标的整数离散余弦变换系数来隐藏信息的方案。该方案的主要缺陷是数据嵌入对载体地图造成的扰动过大,并且嵌入容量很小。中国的王孝通等人于2007年在IEEE TRANSACTIONS ONINFORMATION FORENSICS AND SECURITY期刊上发表论文“ReversibleData-Hiding Scheme for 2-D Vector Maps Based on Difference Expansion”,提出了目前最新的用于矢量地图的可逆数据隐藏方法,该方法将Tian于2003年在IEEETRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY期刊上所发表的论文“Reversible Data Embedding Using a Difference Expansion”中提出的经典的图像差值扩展技术推广到二维矢量地图,得到的结果优于Voigt等人的技术方案,但嵌入容量还是不够大,而且不可控。上述几种技术方案可在IEEE/IET Electronic Library(IEL)和ACM的论文数据库中找到,其它一些关于信息隐藏的文献也可在IEL、ACM、Springer和Kluwer的论文数据库中找到。
发明内容
本发明的目的在于克服上述现有技术的缺点和不足,提供一种用于矢量地图的可逆数据隐藏方法,本发明方法提高了嵌入容量,实现了对嵌入容量的精确控制,减少了含秘矢量地图的失真。
本发明的目的通过下述技术方案实现:用于矢量地图的可逆数据隐藏方法,包括嵌入端负载嵌入过程和接收端负载提取和矢量地图恢复过程,其中,嵌入端负载嵌入过程,步骤如下:
1.用户选择并输入待嵌入的矢量地图到嵌入端,从矢量地图中顺序读入所有的顶点坐标组成顶点坐标序列,设所具有的顶点坐标数量为m,m为自然数;
2.从顶点坐标序列中自定义n个顶点坐标用于保存头文件,n为自然数,且n小于m,用该n个顶点坐标的最小意义位构成一个临时位流,显然,该临时位流的长度即为n,由其余的m-n个顶点坐标求取出差值组成差值序列,根据具体的求取方法可以求取出不同数量的差值组成包含不同数量差值的差值序列,由差值序列构建差值直方图;
3.根据用户提供的地图精度容忍度在差值直方图中确定一个可扩展嵌入差值的最大内区间,位于该最大内区间内的差值的总数减去n后即为嵌入的负载容量极限,用户根据负载容量极限输入需嵌入的实际负载,根据实际负载容量和n从所述最大内区间中确定实际需要进行扩展嵌入的内区域,定义差值直方图中内区域之外的区域为外区域;
4.顺序扫描差值序列,将输入的实际负载扩展嵌入到所述内区域的差值中,实际负载嵌入完毕后,继续顺序扫描差值序列,将临时位流扩展嵌入到内区域尚未嵌入实际负载的差值中,当临时位流扩展嵌入完毕后,结束扫描;为了保证图像的无损还原,必须平移外区域,使扩展嵌入后的内区域与外区域不相交,所以,在进行实际负载和临时位流扩展嵌入的扫描过程中,根据实际负载和临时位流的扩展嵌入情况设定平移约束条件,将符合该平移约束条件的外区域中已扫描的差值同时进行平移,这样,在临时位流扩展嵌入结束后,平移操作也就结束,而最后一个扩展嵌入点之后的顶点无需改动;在临时位流扩展嵌入结束后,生成记录最后一个扩展嵌入点的位置信息、实际负载及临时位流的扩展嵌入信息以及平移信息的头文件;
5.根据扩展嵌入和平移后的差值重新生成含秘顶点坐标,然后,以最小意义位置换的方式将头文件保存到步骤2所述n个顶点坐标的最小意义位,由含秘顶点坐标、置换后的n个顶点坐标以及顶点坐标序列中其余没有改动的顶点坐标得到含秘矢量地图,然后将含秘矢量地图传送到接收端;
接收端负载提取和矢量地图恢复过程为:
接收端按照步骤1至5所述的嵌入端负载嵌入过程的逆过程从含秘矢量地图中提取出实际负载和恢复出矢量地图。
上述方法中,由于矢量地图相邻顶点坐标间通常存在很强的相关性,所以,步骤2所述由其余的m-n个顶点坐标求取出差值的方法可以采用基于顶点坐标预测误差方法。
上述方法中,所述步骤3确定内区域的具体方法如下:
根据用户输入的实际负载容量和n动态调节内、外区域的门限,从差值0开始在差值直方图的对称轴两边交替扩大内区域,选择绝对值意义上的小差值作为嵌入对象,直到所选择的内区域中的可扩展嵌入差值的个数满足实际负载容量和n的要求,即可确定该实际负载容量和n所对应的内区域为[-Tl,Tr],其中-Tl和Tr分别为内区域的左、右边界。
上述方法中,步骤4所述实际负载和临时位流扩展嵌入的方法优选采用经典差值扩展嵌入方法。
因为由矢量地图所得到的差值直方图很可能不完全对称,出现一边拖尾长,一边短,所以,步骤4所述实际负载和临时位流扩展嵌入的方法根据差值直方图的拖尾情况可以采用内区域第0柱差值向左扩展或内区域第0柱差值向右扩展的差值扩展嵌入方法。
上述方法中,所述头文件根据内区域第0柱差值的扩展嵌入方向标志、内区域的左边界绝对值Tl、内区域的右边界Tr和最后一个扩展嵌入点的位置信息来构造。
上述方法中,所述接收端负载提取和矢量地图恢复过程的具体操作为:顺序读入含秘矢量地图的全部顶点坐标,先从前n个顶点坐标中提取头文件,获得实际负载和临时位流的扩展嵌入和平移信息,以及最后一个扩展嵌入点的位置信息,然后从最后一个扩展嵌入点的位置开始,逆序扫描顶点序列,根据该扩展嵌入和平移信息区分扩展嵌入后的差值与平移后的差值;根据扩展嵌入后的差值恢复出实际负载和该扩展嵌入后的差值在扩展嵌入前的原始数值,以及所述n个顶点坐标的最小意义位,利用所述扩展嵌入后的差值在扩展嵌入前的原始数值恢复出相应的原始顶点坐标,利用所述n个顶点坐标的最小意义位恢复出所述n个顶点坐标,对平移后的差值进行反平移操作恢复出该平移后的差值在平移前的原始数值,进而恢复出相应的原始顶点坐标;结合所述顶点坐标序列中其余没有改动的顶点坐标恢复出原始矢量地图。
上述方法中,所述自定义n个顶点坐标优选为所述顶点坐标序列中的前65个顶点坐标。
本发明相对于现有技术具有如下的优点及效果:本方法接收端采用在嵌入端实际负载的嵌入过程的逆过程来进行实际负载的提取和矢量地图的恢复,嵌入过程和提取恢复过程完全可逆,所以可以在接收端精确抽取所隐藏的数据即实际负载,并可无损地恢复出原始矢量地图;本发明充分利用了矢量地图相邻顶点坐标具有高相关性的特点,采用基于顶点坐标预测误差的方式产生更多数值靠近零的差值,从而提高了嵌入容量,并减小了因实际负载和临时位流等数据嵌入而引起的矢量地图失真;创建差值直方图来优先选择小幅值差值,并采用随实际负载变化的嵌入容量,很好地适应了不同特征的图像,减小了扩展嵌入操作所引起的形变;本发明在扩展嵌入结束后,就生成头文件信息,也就是在完成临时位流的扩展嵌入后就中止扩展嵌入和平移,最后一个扩展嵌入点之后的顶点无需改动,实现充分考虑了矢量图形顶点坐标存储格式的特点,通过记录头文件避免额外的嵌入开销,实现了对嵌入容量的精确控制,进一步减少了含秘矢量地图失真。
附图说明
图1是本发明方法的流程框图;
图2是本实施例优选的负载提取和矢量地图恢复过程的流程图;
图3是本实施扩展嵌入前差值内外区域的分布示意图;
图4是本实施扩展嵌入和平移后差值内外区域的分布示意图。
具体实施方式
下面结合实施例及附图,对本发明作进一步地详细说明,但本发明的实施方式不限于此。
实施例
总的来说,如图1所示,用于矢量地图的可逆数据隐藏方法,包括嵌入端负载嵌入过程和接收端负载提取和矢量地图恢复过程,其中,嵌入端负载嵌入过程,步骤如下:
1.用户选择并输入待嵌入的矢量地图到嵌入端,从矢量地图中顺序读入所有的顶点坐标组成顶点坐标序列,设所具有的顶点坐标数量为m,m为自然数;
2.从顶点坐标序列中自定义n个顶点坐标用于保存头文件,n为自然数,且n小于m,用该n个顶点坐标的最小意义位构成一个临时位流,显然,该临时位流的长度即为n,由其余的m-n个顶点坐标求取出差值组成差值序列,根据具体的求取方法可以求取出不同数量的差值组成包含不同数量差值的差值序列,由差值序列构建差值直方图;
3.根据用户提供的地图精度容忍度在差值直方图中确定一个可扩展嵌入差值的最大内区间,位于该最大内区间内的差值的总数减去n后即为嵌入的负载容量极限,用户根据负载容量极限输入需嵌入的实际负载,根据实际负载容量和n从所述最大内区间中确定实际需要进行扩展嵌入的内区域,定义差值直方图中内区域外的区域为外区域;
4.顺序扫描差值序列,将输入的实际负载扩展嵌入到所述内区域的差值中,实际负载嵌入完毕后,继续顺序扫描差值序列,将临时位流扩展嵌入到内区域尚未嵌入实际负载的差值中,当临时位流扩展嵌入完毕后,结束扫描;为了保证图像的无损还原,必须平移外区域,使扩展嵌入后的内区域与外区域不相交,所以,在进行实际负载和临时位流扩展嵌入的扫描过程中,根据实际负载和临时位流的扩展嵌入情况设定平移约束条件,将符合该平移约束条件的外区域中已扫描的差值同时进行平移,这样,在临时位流扩展嵌入结束后,平移操作也就结束,而最后一个扩展嵌入点之后的顶点无需改动;在临时位流扩展嵌入结束后,生成记录最后一个扩展嵌入点的位置信息、实际负载及临时位流的扩展嵌入信息以及平移信息的头文件;
5.根据扩展嵌入和平移后的差值重新生成含秘顶点坐标,然后,以最小意义位置换的方式将头文件保存到步骤2所述n个顶点坐标的最小意义位,由含秘顶点坐标、置换后的n个顶点坐标以及顶点坐标序列中其余没有改动的顶点坐标得到含秘矢量地图,然后将含秘矢量地图传送到接收端;
接收端负载提取和矢量地图恢复过程为:
接收端按照步骤1至5所述的嵌入端负载嵌入过程的逆过程从含秘矢量地图中提取出实际负载和恢复出矢量地图。
上述方法中,由于矢量地图相邻顶点坐标间通常存在很强的相关性,所以,步骤2所述由其余的m-n个顶点坐标求取出差值的方法可以采用基于顶点坐标预测误差方法。根据本发明下述优选的预测误差求取公式,对于m-n个顶点,可以得到前m-n-2个顶点的坐标差值。
上述方法中,所述步骤3确定内区域的具体方法如下:
根据用户输入的实际负载容量和n动态调节内、外区域的门限,从差值0开始在差值直方图的对称轴两边交替扩大内区域,选择绝对值意义上的小差值作为嵌入对象,直到所选择的内区域中的可扩展嵌入差值的个数满足实际负载容量和n的要求,即可确定该实际负载容量和n所对应的内区域为[-Tl,Tr],其中-Tl和Tr分别为内区域的左、右边界。
上述方法中,步骤4所述实际负载和临时位流扩展嵌入的方法优选采用经典差值扩展嵌入方法。
因为由矢量地图所得到的差值直方图很可能不完全对称,出现一边拖尾长,一边短,所以,步骤4所述实际负载和临时位流扩展嵌入的方法根据差值直方图的拖尾情况可以采用内区域第0柱差值向左扩展或内区域第0柱差值向右扩展的差值扩展嵌入方法。
上述方法中,所述头文件根据内区域第0柱差值的扩展嵌入方向标志、内区域的左边界绝对值Tl、内区域的右边界Tr和最后一个扩展嵌入点的位置信息来构造。
上述方法中,所述接收端负载提取和矢量地图恢复过程的具体操作为:顺序读入含秘矢量地图的全部顶点坐标,先从前n个顶点坐标中提取头文件,获得实际负载和临时位流的扩展嵌入和平移信息,以及最后一个扩展嵌入点的位置信息,然后从最后一个扩展嵌入点的位置开始,逆序扫描顶点序列,根据该扩展嵌入和平移信息区分扩展嵌入后的差值与平移后的差值;根据扩展嵌入后的差值恢复出实际负载和该扩展嵌入后的差值在扩展嵌入前的原始数值,以及所述n个顶点坐标的最小意义位,利用所述扩展嵌入后的差值在扩展嵌入前的原始数值恢复出相应的原始顶点坐标,利用所述n个顶点坐标的最小意义位恢复出所述n个顶点坐标,对平移后的差值进行反平移操作恢复出该平移后的差值在平移前的原始数值,进而恢复出相应的原始顶点坐标;结合所述顶点坐标序列中其余没有改动的顶点坐标恢复出原始矢量地图。
上述方法中,所述自定义n个顶点坐标优选为所述顶点坐标序列中的前65个顶点坐标。
下面以基于SVG格式的矢量地图作为优选的实施例介绍本发明的实现。
本实施例用于矢量地图的可逆数据隐藏方法,包括两部分,第一部分是嵌入端负载嵌入,第二部分是负载提取和矢量地图恢复。
第一部分包括求取矢量地图顶点坐标的差值序列并构建差值直方图、确定最大内区间获取负载容量极限、根据负载和临时位流的要求选择实际可扩展嵌入差值、实际负载和临时位流的扩展嵌入和平移、重新生成矢量地图的顶点坐标等5个阶段。
第二部分是第一部分的逆过程,它包括获取头文件信息、提取实际负载并恢复矢量地图两个阶段。下面分5个阶段详细说明第1部分。
第一阶段,求取矢量地图顶点坐标的差值序列并构建差值直方图
首先由用户选择并输入待嵌入的矢量地图到嵌入端。从矢量地图中顺序读入顶点坐标组成顶点坐标序列,设顶点坐标序列为{v1,v2,v3,v4,...,vm},其中,vi=(xi,yi),i∈{1,2,...m},(xi,yi)是顶点vi的二维坐标。由于从不同格式矢量地图读取的顶点是有固定精度的浮点数,在负载嵌入前需将浮点数转换为整数。在本发明中根据SVG格式的特点利用公式(x,y)=(xf,yf)×103(此时假设浮点数的精度为10-3)进行转换,其它格式的矢量地图如AI、VML、GML格式,也根据其格式的特点将浮点数转换为整数。嵌入数据后再做反变换,由整数变回浮点数。
本发明提出一个在矢量地图中利用相邻顶点坐标的相关性,采用基于顶点坐标预测误差方法来获取差值的方案。由于对x和y坐标的处理方法一样,在此仅介绍对x坐标的操作过程。设:
xi=2xi+1-xi+2+di (1)
式中,di表示当前顶点坐标xi的预测误差,为了说明一般性,本发明统称其为差值。从(1)式可以看到,它利用了未来两个顶点的坐标值xi+1和xi+2来预测当前顶点的坐标值,并用di来修正预测的偏差。通过对(1)式进行变换即可得到待求的顶点坐标差值,其公式如下:
di=xi+xi+2-2xi+1 (2)
利用(2)式对具有m个顶点的矢量地图计算m-η(Q)-2顶点的坐标差值序列,并构建差值直方图,这里Q表示头文件,记录有关扩展嵌入和平移的参数信息,供数据提取过程使用,之所以要减去2是因为xi是利用了未来两个顶点的坐标值xi+1和xi+2来预测,因而不能包括顶点序列的最后两个顶点。η(.)是计算位流长度的函数。前η(Q)个顶点的坐标(即头文件长度个顶点的坐标)将用于保存头文件信息,用该η(Q)个顶点坐标的最小意义位构成一个临时位流。在本实施例中定义η(Q)=65,也即n=65。
第二阶段,确定最大内区间获取负载容量极限
经典第0柱差值向右扩展的差值扩展嵌入公式由以下公式(3)描述
di′=2di+i (3)
式中i=0或1,代表一个待嵌入的二进制信息位。di扩展嵌入后变成新差值di′。由于矢量地图有误差精度容忍度τ的要求,而差值扩展嵌入可能会导致重建后的坐标值超出原定的要求,因此并非所有差值均可用于扩展嵌入,数据隐藏也即负载嵌入前要剔除不符合要求的差值。对于x坐标,设其中为向下取整,则扩展嵌入的约束条件如下:
-τ′≤di≤τ′-1 (4)
满足(4)式的差值称为可扩展嵌入差值。令-Tlm=-τ′,Trm=τ′-1,定义[-Tlm,Trm]为最大内区间,则只有最大内区间[-Tlm,Trm]内的差值才满足可扩展嵌入的约束条件,如图3所示。位于该最大内区间的差值的总个数减去η(Q)后就是嵌入的负载容量极限。
第三阶段,根据负载和临时位流的要求选择实际可扩展嵌入差值
用户在嵌入的负载容量极限范围内输入实际需嵌入的负载。由于输入的实际负载容量通常低于负载容量极限,因此最大内区间内的可扩展嵌入差值并不需要全都用于实际负载和临时位流的扩展嵌入。本发明在所述最大内区间范围内确定一个子区间[-Tl,Tr],该区间将用于选择实际进行扩展嵌入的差值。本发明称子区间[-Tl,Tr]为内区域,其中-Tl和Tr分别表示内区域的左、右边界。内区域位于最大内区间中,当到达扩展嵌入极限时,内区域就是最大内区间。
出于减少矢量地图失真的考虑,本发明在差值直方图基础上确定内区域。从差值直方图的横轴原点开始,优先选择绝对值为0的差值柱。若所选中的可扩展嵌入差值的个数不满足大于或等于实际负载容量加η(Q)时,则搜索次靠近0的差值柱,选择门限逐步增大,直到所选择的可扩展嵌入差值的个数满足大于或等于实际负载容量加η(Q)的要求。具体的实施步骤如下:
步骤1、根据(4)式确定最大内区间[-Tlm,Trm]并计算嵌入的负载容量极限,将待嵌入的实际负载与负载容量极限的容量值进行比较,若大于此容量值,则此矢量地图无法提供足够的扩展嵌入空间,结束嵌入过程;否则,开始下面的可扩展嵌入差值搜索循环;
步骤2、令Tr=0,Tl=0,则当前内区域为[0,0],图3和图4中的f(dx)表示第dx柱上差值的个数,此时,可扩展嵌入的差值个数为count=f(0)。再判断count≥η(Q)+η(P)是否成立,式中P为输入的实际负载,如果上式成立,则说明已经找到足够数量的可扩展嵌入差值,退出搜索循环,否则,进行下一步操作;
步骤3、令Tr=0不改动,同时让Tl增1,则当前内区域变为[-1,0],可扩展嵌入的差值个数count=f(0)+f(-1)。再判断count≥η(Q)+η(P)是否成立,如成立,则说明已经找到足够数量的可扩展嵌入差值,退出搜索循环;如不成立,则入步骤4所述进一步增加可嵌入位置;
步骤4、令Tr增1,同时不改动Tl=1,则当前内区域变为[-1,1],可扩展嵌入的差值个数count=f(0)+f(-1)+f(1)。判断count≥η(Q)+η(P)是否成立,如成立,则确定内区域的边界Tl=1,Tr=1,结束搜索循环,否则,重复步骤3和4,直到count≥η(Q)+η(P)成立,即可确定满足内区域[-Tl,Tr]。
图3显示出了所选中的可扩展差值位于对称轴两边的内区域[-Tl,Tr]中。确定内区域后,差值直方图中内区域以外的区域统称为外区域。其中,图3和图4中的-dxml和dxmr分别表示整个嵌入端进行负载嵌入前后的差值范围的左、右边界。
如图4所示,使用经典差值扩展公式(3)后内区域将扩大,变成[-2Tl,2Tr+1]。为了保证图像的无损还原,必须平移外区域,使扩展嵌入后的内区域与外区域不相交。外区域平移公式为:
上述方法是让第0柱差值向右扩展,实际上,也可以让第0柱差值向左扩展。向哪个方向扩展由差值直方图的特征决定。对于真实世界的矢量地图,所得到的差值直方图很可能完全对称,出现一边拖尾长,一边短。由于平移同样改变顶点值,为了减少平移给地图质量所带来的影响,本发明的方法让第0柱差值向拖尾短的一侧平移,以减少需要平移的差值的数目。
当第0柱差值向左扩展时,第0柱差值向左扩展的经典差值扩展嵌入公式如下:
di′=2di-i (6)
无论使用公式(3)还是(6)对本发明没有本质性的影响,只是轻微改善地图质量。给定实际负载后,可根据差值直方图的拖尾情况决定使用(3)还是(6)。本实施例下面的描述,还是以(3)式为例子,而以(6)为例子的情况完全类似。
第四阶段,实际负载和临时位流的扩展嵌入和平移
为了在接收端提取所嵌入的数据并无损还原出原始的矢量地图,本发明设计一个头文件Q来保存嵌入端负载嵌入过程的参数信息,也即记录实际负载和临时位流的扩展嵌入和平移信息以及最后一个扩展嵌入点的位置信息。Q的结构如下:内区域第0柱差值的扩展嵌入方向标志F(1比特)+Tl(16比特)+Tr(16比特)+最后一个扩展嵌入点的位置信息(32比特)。上节搜索循环结束时,通常count>η(Q)+η(P),即内区域所提供的可扩展嵌入差值并没有被当前的实际负载和临时位流耗尽,故本发明提出在完成临时位流的嵌入后中止扩展嵌入和平移,以达到精确控制容量并减少嵌入形变的目的。
头文件提供了数据提取过程所必需的信息。本发明利用最小意义位置换操作将Q的信息直接保存在前η(Q)个顶点的x坐标的最小意义位上,而这些位置上原有的最小意义位则构成一个临时位流,等负载扩展嵌入完毕后再进行扩展嵌入。实际负载和临时位流的扩展嵌入和平移操作步骤如下:
步骤1、从头按顺序扫描差值序列,将负载P逐比特扩展嵌入到η(P)个差值中。这里有两种情况:如果当前差值位于内区域,则使用(3)式通过差值扩展的方式嵌入;如果当前差值位于外区域,则使用(5)式将当前差值进行平移,扩展嵌入和平移是同时进行的;
步骤2、在负载嵌入完毕后,以同样的方式嵌入上述最小意义位所构成的临时位流;
步骤3、当完成实际负载和最小意义位临时位流嵌入后,记录最后一个扩展嵌入点的坐标位置信息,根据获取的相关数据,构造头文件Q。
第五阶段,重新生成矢量地图的顶点坐标
完成实际负载和最小意义位临时位流的嵌入过程后,利用公式(7)重构矢量地图的顶点得到含秘顶点:
xi′=(2xi+1-xi+2)+di′ (7)
重构含秘顶点后,用头文件Q的内容从第一个顶点开始逐比特置换前η(Q)个顶点x坐标的最小意义位,最后将含秘顶点坐标、置换后的n个顶点坐标以及顶点坐标序列中其余没有改动的顶点坐标由整数变回浮点数,从而得到含秘矢量地图,然后将含秘矢量地图传送到接收端。
下面解释第二部分,即实际负载提取和原始矢量地图恢复过程。
第一阶段,获取头文件信息
从含秘矢量地图顺序读入顶点坐标序列,将顶点由浮点数转换为整数。然后从前η(Q)个顶点x坐标的最小意义位提取出头文件信息。具体提取过程为:提取第一个比特作为标志位F,接下来的16比特构成Tl值,再后面的16比特构成Tr值,最后的32比特构成最后一个扩展嵌入点的坐标。
第二阶段,提取实际负载并恢复地图
逆序扫描顶点坐标,从头文件记录的最后一个扩展嵌入点开始直至前η(Q)个顶点,根据公式(2)计算预测误差即差值,判断当前差值的状态,决定进行何种操作。遇到属于[-2Tl,2Tr+1]区间的差值,则利用i=|di′|%2抽取所扩展嵌入的含秘信息位,这里%代表取余运算,然后利用恢复原始地图顶点的坐标差值,进而利用(1)恢复出原始顶点坐标。遇到不属于[-2Tl,2Tr+1]区间的差值,利用如下反平移变换公式(8)恢复出原始地图的坐标差值,进而利用(1)恢复出原始顶点坐标。需要指出的是,所抽取出的前η(Q)个比特用于恢复经最小意义位置换而改变的前η(Q)个顶点的x坐标,其后所抽取出的比特全部是负载比特。此过程结束后,将恢复的顶点包括最后一个扩展嵌入点之后的未改动的顶点坐标由整数转换为浮点数,可获得原始的矢量地图。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受所述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (10)
1、用于矢量地图的可逆数据隐藏方法,包括嵌入端负载嵌入过程和接收端负载提取和矢量地图恢复过程,其特征在于,所述嵌入端负载嵌入过程包括如下步骤:
a.用户选择并输入待嵌入的矢量地图到嵌入端,从矢量地图中顺序读入所有的顶点坐标组成顶点坐标序列,设所具有的顶点坐标数量为m,m为自然数;
b.从顶点坐标序列中自定义n个顶点坐标用于保存头文件,n为自然数,且n小于m,用该n个顶点坐标的最小意义位构成一个临时位流,由其余的m-n个顶点坐标求取出差值组成差值序列,由差值序列构建差值直方图;
c.根据用户提供的地图精度容忍度在差值直方图中确定一个可扩展嵌入差值的最大内区间,位于该最大内区间内的差值的总数减去n后即为嵌入的负载容量极限,用户根据负载容量极限输入需嵌入的实际负载,根据实际负载容量和n从所述最大内区间中确定实际需要进行扩展嵌入的内区域,定义差值直方图中内区域外的区域为外区域;
d.顺序扫描差值序列,将输入的实际负载扩展嵌入到所述内区域的差值中,实际负载嵌入完毕后,继续顺序扫描差值序列,将临时位流扩展嵌入到内区域尚未嵌入实际负载的差值中,当临时位流扩展嵌入完毕后,结束扫描;在进行实际负载和临时位流扩展嵌入的扫描过程中,根据实际负载和临时位流的扩展嵌入情况设定平移约束条件,将符合该平移约束条件的外区域中已扫描的差值同时进行平移;在临时位流扩展嵌入结束后,生成记录最后一个扩展嵌入点的位置信息、实际负载及临时位流的扩展嵌入信息以及平移信息的头文件;
e.根据扩展嵌入和平移后的差值重新生成含秘顶点坐标,然后,以最小意义位置换的方式将头文件保存到步骤b所述n个顶点坐标的最小意义位,由含秘顶点坐标、置换后的n个顶点坐标以及顶点坐标序列中其余没有改动的顶点坐标得到含秘矢量地图,然后将含秘矢量地图传送到接收端;
所述接收端负载提取和矢量地图恢复过程为:
接收端按照步骤a至e所述的嵌入端负载嵌入过程的逆过程从含秘矢量地图中提取出实际负载和恢复出矢量地图。
2、根据权利要求1所述的一种用于矢量地图的可逆数据隐藏方法,其特征在于:步骤b所述由其余的m-n个顶点坐标求取出差值的方法采用基于顶点坐标预测误差方法。
3、根据权利要求1所述的一种用于矢量地图的可逆数据隐藏方法,其特征在于:所述步骤c确定所述内区域的具体方法如下:
根据用户输入的实际负载容量和n动态调节内、外区域的门限,从差值0开始在差值直方图的对称轴两边交替扩大内区域,选择绝对值意义上的小差值作为嵌入对象,直到所选择的内区域中的可扩展嵌入差值的个数满足实际负载容量和n的要求,即可确定该实际负载容量和n所对应的内区域为[-Tl,Tr],其中-Tl和Tr分别为内区域的左、右边界。
4、根据权利要求1所述的一种用于矢量地图的可逆数据隐藏方法,其特征在于:步骤d所述实际负载扩展嵌入的方法采用经典差值扩展嵌入方法。
5、根据权利要求1或4所述的一种用于矢量地图的可逆数据隐藏方法,其特征在于:步骤d所述临时位流扩展嵌入的方法采用经典差值扩展嵌入方法。
6、根据权利要求1所述的一种用于矢量地图的可逆数据隐藏方法,其特征在于:步骤d所述实际负载和临时位流扩展嵌入的方法采用内区域第0柱差值向左扩展的差值扩展嵌入方法。
7、根据权利要求1所述的一种用于矢量地图的可逆数据隐藏方法,其特征在于:步骤d所述实际负载和临时位流扩展嵌入的方法采用内区域第0柱差值向右扩展的差值扩展嵌入方法。
8、根据权利要求6或7所述的一种用于矢量地图的可逆数据隐藏方法,其特征在于:所述头文件根据内区域第0柱差值的扩展嵌入方向标志、内区域的左边界绝对值Tl、内区域的右边界Tr和最后一个扩展嵌入点的位置信息来构造。
9、根据权利要求1所述的一种用于矢量地图的可逆数据隐藏方法,其特征在于:所述接收端负载提取和矢量地图恢复过程的具体操作为:
顺序读入含秘矢量地图的全部顶点坐标,先从前n个顶点坐标中提取头文件,获得实际负载和临时位流的扩展嵌入和平移信息,以及最后一个扩展嵌入点的位置信息,然后从最后一个扩展嵌入点的位置开始,逆序扫描顶点序列,根据该扩展嵌入和平移信息区分扩展嵌入后的差值与平移后的差值;根据扩展嵌入后的差值恢复出实际负载和该扩展嵌入后的差值在扩展嵌入前的原始数值,以及所述n个顶点坐标的最小意义位,利用所述扩展嵌入后的差值在扩展嵌入前的原始数值恢复出相应的原始顶点坐标,利用所述n个顶点坐标的最小意义位恢复出所述n个顶点坐标,对平移后的差值进行反平移操作恢复出该平移后的差值在平移前的原始数值,进而恢复出相应的原始顶点坐标;结合所述顶点坐标序列中其余没有改动的顶点坐标恢复出原始矢量地图。
10、根据权利要求1、2、3、4、6、7、9中任一项所述的一种用于矢量地图的可逆数据隐藏方法,其特征在于:所述自定义n个顶点坐标为所述顶点坐标序列中的前65个顶点坐标。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910039103A CN101540038A (zh) | 2009-04-29 | 2009-04-29 | 用于矢量地图的可逆数据隐藏方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910039103A CN101540038A (zh) | 2009-04-29 | 2009-04-29 | 用于矢量地图的可逆数据隐藏方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101540038A true CN101540038A (zh) | 2009-09-23 |
Family
ID=41123216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910039103A Pending CN101540038A (zh) | 2009-04-29 | 2009-04-29 | 用于矢量地图的可逆数据隐藏方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101540038A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105427232A (zh) * | 2015-12-03 | 2016-03-23 | 江苏师范大学 | 一种保持方向关系的矢量地图可逆信息隐藏方法 |
CN105550970A (zh) * | 2015-12-03 | 2016-05-04 | 江苏师范大学 | 一种矢量地图可逆信息隐藏方法 |
CN111415290A (zh) * | 2020-03-25 | 2020-07-14 | 福建工程学院 | 一种基于矢量量化的可逆信息隐藏方法 |
CN113032743A (zh) * | 2021-03-19 | 2021-06-25 | 华南理工大学 | 一种基于信息嵌入的四面体网格模型可逆变形方法及应用 |
CN113556440A (zh) * | 2021-06-17 | 2021-10-26 | 中国人民解放军战略支援部队航天工程大学 | 一种划分嵌入区域的线划地图无损数据隐藏及恢复方法 |
-
2009
- 2009-04-29 CN CN200910039103A patent/CN101540038A/zh active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105427232A (zh) * | 2015-12-03 | 2016-03-23 | 江苏师范大学 | 一种保持方向关系的矢量地图可逆信息隐藏方法 |
CN105550970A (zh) * | 2015-12-03 | 2016-05-04 | 江苏师范大学 | 一种矢量地图可逆信息隐藏方法 |
CN105427232B (zh) * | 2015-12-03 | 2018-12-28 | 江苏师范大学 | 一种保持方向关系的矢量地图可逆信息隐藏方法 |
CN105550970B (zh) * | 2015-12-03 | 2018-12-28 | 江苏师范大学 | 一种矢量地图可逆信息隐藏方法 |
CN111415290A (zh) * | 2020-03-25 | 2020-07-14 | 福建工程学院 | 一种基于矢量量化的可逆信息隐藏方法 |
CN111415290B (zh) * | 2020-03-25 | 2022-05-03 | 福建工程学院 | 一种基于矢量量化的可逆信息隐藏方法 |
CN113032743A (zh) * | 2021-03-19 | 2021-06-25 | 华南理工大学 | 一种基于信息嵌入的四面体网格模型可逆变形方法及应用 |
CN113556440A (zh) * | 2021-06-17 | 2021-10-26 | 中国人民解放军战略支援部队航天工程大学 | 一种划分嵌入区域的线划地图无损数据隐藏及恢复方法 |
CN113556440B (zh) * | 2021-06-17 | 2023-06-06 | 中国人民解放军战略支援部队航天工程大学 | 一种划分嵌入区域的线划地图无损数据隐藏及恢复方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Reversible data-hiding scheme for 2-D vector maps based on difference expansion | |
CN111640159B (zh) | 一种基于孪生卷积神经网络的遥感影像变化检测方法 | |
CN111598892B (zh) | 一种基于Res2-UNeXt网络结构的细胞图像分割方法 | |
CN102036079A (zh) | 一种基于全方向预测误差直方图修改的可逆图像水印算法 | |
CN102110281B (zh) | 一种针对shape点图层数据的差值扩展水印嵌入与提取方法 | |
CN111767810B (zh) | 一种基于D-LinkNet的遥感图像道路提取方法 | |
Hwang et al. | Reversible watermarking method using optimal histogram pair shifting based on prediction and sorting | |
CN101540038A (zh) | 用于矢量地图的可逆数据隐藏方法 | |
CN113628291B (zh) | 基于边界提取与合并的多形状目标栅格数据矢量化方法 | |
CN102147912A (zh) | 一种基于自适应差值扩展的可逆图像水印方法 | |
CN111464717B (zh) | 利用直方图平移的具有对比度拉升的可逆信息隐藏方法 | |
CN104899292A (zh) | 一种面向属性图集的频繁近似子图挖掘方法 | |
CN104794677A (zh) | 一种基于空间几何特性的矢量地图水印方法 | |
CN114092824A (zh) | 结合密集注意力和并行上采样的遥感图像道路分割方法 | |
Wang et al. | RST invariant reversible watermarking for 2D vector map | |
CN116452401A (zh) | 一种抗图像攻击的可逆鲁棒水印嵌入与提取模型构建方法 | |
CN112396554B (zh) | 一种基于生成对抗网络的图像超分辨率方法 | |
CN115713695A (zh) | 基于多级Transformer网络的6G卫星图像滑坡检测方法 | |
CN102254296A (zh) | 一种gis矢量数据图像水印的相似度计算方法 | |
CN118115729B (zh) | 多层次多尺度特征交互的图像伪造区域识别方法及系统 | |
CN101430786B (zh) | 基于视觉感知特性的矢量地图无损数据隐藏方法 | |
JP4318537B2 (ja) | マップマッチング方法とそれを実施する装置 | |
CN105741221A (zh) | Cad工程图可逆水印方法、水印嵌入方法和水印提取方法 | |
CN116310187B (zh) | 一种小尺度短周期的滩涂精细建模方法 | |
CN115994849B (zh) | 一种基于点云上采样的三维数字水印嵌入与提取方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20090923 |