李 強,閔連權,吳 彬,楊永強
(1.信息工程大學 測繪學院,河南 鄭州 450052;2.69027部隊,新疆 烏魯木齊 830006)
一種實用的矢量地圖數據盲數字水印解決方案
李 強1,2,閔連權1,吳 彬2,楊永強2
(1.信息工程大學 測繪學院,河南 鄭州 450052;2.69027部隊,新疆 烏魯木齊 830006)
目前,數字水印技術研究主要集中在算法的設計和改進方面,文中針對矢量地圖數據數字水印技術應用,提出一種基于統(tǒng)計分類的矢量地圖數據盲數字水印解決方案,并對多種不同的攻擊進行檢測實驗,取得較好的效果。
矢量地圖數據;盲數字水印;統(tǒng)計;水印生成
現階段的數字水印技術研究主要集中在算法的設計和改進方面[1-13],針對矢量地圖數據數字水印技術的實際應用要求,本文提出了一種基于統(tǒng)計分類的完整的盲數字水印系統(tǒng)解決方案。
1.1 實用的盲數字水印系統(tǒng)的設計要求
當前的數字水印技術,按照水印的檢測過程可以分為盲水印和非盲水印,盲水印是指只需要密鑰,不需要原始數據的參與;非盲水印是指需要原始數據的參與。現階段,矢量地圖數據數字水印技術研究主要集中在非盲水印方面,但由于在實踐操作上,大多數情況下進行水印檢測時,不容易或不可能獲得原始數據,因而,盲水印更具有實用價值和應用前景。
由于盲數字水印原型系統(tǒng)研究還很少,因而在系統(tǒng)的設計要求方面,筆者借鑒和參考了數字水印的算法研究和其他相關系統(tǒng)的設計標準。
1)逼真度。水印系統(tǒng)的逼真度指原始矢量地圖和嵌入水印的矢量地圖在視覺上的相似程度。
2)安全性。安全性是指水印能夠抵御對手惡意攻擊的能力。數字水印應能抵抗各種蓄意的攻擊,能夠唯一標示水印的相關信息,保證任何第三方都不能偽造水印。
3)魯棒性。魯棒性是指對矢量地圖數據經過常規(guī)的攻擊處理操作后,仍能檢測到水印的能力。對矢量地圖數據的常規(guī)操作包括壓縮、刪點、增點、噪聲攻擊、格式轉換等。
4)盲水印檢測。即只需要待檢測數據就可以檢測是否含有水印,或含有的水印信息,由于實際應用中,原始數據不方便或不可能得到,因而盲水印檢測尤為重要,也是數字水印技術發(fā)展的一個趨勢。
5)便捷性。應用的快捷友好是任何系統(tǒng)設計的一個目標,在實用的數字水印系統(tǒng)的設計中,這種要求就體現為在對同一數據進行不同的水印信息嵌入時,水印信息生成的便捷性;進行盲水印檢測時,系統(tǒng)的運算處理快捷性等。
1.2 實用的盲數字水印系統(tǒng)的方案設計
實際應用中,一個完整的水印系統(tǒng)的設計應該包括水印的簡便生成、魯棒性的水印嵌入、快捷的檢測等,根據前述的設計標準和要求,分別在此三方面提出了相應的算法方案。
1)水印的簡便生成。采用通過漢字點陣讀取的方式簡便、快速的生成水印信息,該方案在水印系統(tǒng)的實際應用中具有很大的創(chuàng)新性。
2)水印的嵌入。這主要是指在水印算法的設計方面,本文通過作者設計的一種基于統(tǒng)計特性的矢量地圖數據的數字水印算法,來實現水印的嵌入。
3)水印的檢測。在水印的檢測和提取方面,主要是指僅通過待檢測數據,采取與嵌入算法相逆的算法,提取水印信息。
當前多數針對盲水印的數字水印信息生成方法,是在每次進行水印嵌入前,將固定大小二值或灰度圖像信息進行讀取,這樣,在嵌入不同的水印信息時,就需要通過相應的工具或者軟件處理不同的圖像信息,該方法在理論、算法研究中體現不出它的劣勢,但從實際應用的角度分析,該方法比較復雜,可操作性較差。針對這種現狀,本文提出了一種通過用戶輸入文字的點陣信息讀取,初生成水印信息,而后采取位運算操作進行置亂的水印信息生成方法,其實現過程如圖1所示。
圖1 水印信息生成過程
該方法主要包含2個方面,即水印信息的初生成和水印信息的置亂處理。
2.1 水印信息的初生成
VC++環(huán)境下,通過在對話框中鍵入的文字信息作為原始水印信息,如圖2所示,通過C++語言的函數來讀取文字的點陣圖像信息。
圖2 鍵入的文字信息作為水印信息
主要步驟如下:
1)創(chuàng)建設置字體相關信息。對于對話框中鍵入的文字,為其創(chuàng)建字體信息;
CFontm_font;
m_font.CreateFont(相關參數設置);
2)設置文字的背景色。將背景設置為與字體區(qū)別較大的顏色,便于后面的二值圖像辨別讀取、生成:
SetBkColor(相關參數設置);
3)利用函數獲取文字的大小范圍。根據獲得的大小信息,建立相應的二維矩陣 GetTextExtent(相關參數設置);
4)獲取相應點的顏色信息。將獲取的顏色信息轉換為相應的圖像點陣信息,并將其作為水印信息,以備后面的水印嵌入:
GetPixel(相關參數設置);
通過以上步驟,以一種簡單、快捷的方法生成了水印信息,如圖3所示。
圖3 生成的水印信息
2.2 水印信息的置亂
采用一種C++語言中位運算的色彩空間置亂的辦法,即通過上面得到的圖像矩陣,將其依順序排列為一維數組,并將其按照一定的原則分為 p類,同時確定 p個數,將表示圖像信息的像素值與每個分類規(guī)則對應的數值進行位運算操作,從而達到置亂的目的,如圖4所示。
圖4 水印信息的置亂
進行盲水印信息提取時,只需要原始矢量地圖數據的參與,將 p作為密鑰進行反置亂操作,反置亂操作采取與置亂相應的運算。為確保水印信息的安全,也可以采用類似方法多次進行置亂。該置亂操作具有置亂效果好、運算簡單、速度快的特點。
多次置亂后的水印信息如圖5所示。
圖5 置亂后的水印信息
現有的水印算法,無論是空域還是變換域,都是將水印信息嵌入在特定的坐標或者系數上,這就決定了對于多種形式的攻擊,一旦某一個或某幾個的坐標或系數遭到破壞,就很可能不能完整地提取出水印信息,甚至不能提取出水印信息,本文采取的是在不影響數據精度的前提下,針對相應的坐標點進行操作,將同一水印信息位依據水印信息和坐標數據特性的關系重復嵌入到分類數據中,然后提取嵌入該水印信息位的該類數據的每個水印信息,最后通過統(tǒng)計嵌入同一水印信息位的該類數據的水印特性,得出嵌入該位置的水印信息位,依次類推,進而獲取水印信息,算法嵌入流程如圖6所示。
圖6 水印嵌入算法流程
首先,根據坐標數據自身穩(wěn)定特性(一般情況下嵌入水印信息時,坐標數據的千、百、十位等的值不會改變,具有一定的“穩(wěn)定性”,將其進行變換處理),將變換處理后的數據根據水印信息大小進行分類,消除其在空間上的相關性,使得分類后的數據類具有很大的隨機性,將水印信息重復嵌入到坐標數據中。
假設 x坐標可以表示為:x=xkxk-1…x2x1,xi表示坐標數據每一位值,1≤i≤k;
計算 x坐標的穩(wěn)定數學特性:m=f(xkxk-1…xi)k≥g≥i≥2,g根據數據記錄格式取約定值。
根據水印信息的大小a,對m進行分類,將坐標數據分成n類:n=g(m,a),為了保證每一個水印信息位的嵌入,必須滿足 n≥a。
其次,根據第i水印信息位的特性,結合第 i類數據的分類序號,修改該類數據的坐標信息,從而達到嵌入水印信息的目的。
{改變其坐標特性;}
為了實現盲水印檢測和提取的準確性,在修改數據的坐標信息時,應使得第 i類水印信息位的特性與第i類各數據坐標信息之間具有唯一的對應關系。
水印的檢測就是利用水印信息位與各分類中數據的對應關系,進行水印的檢測和提取。具體過程如下:
首先,利用與嵌入相同的分類規(guī)則對待檢測坐標數據進行分類,其次,利用嵌入水印后坐標數據特性信息,提取水印信息位,然后,對每一類數據提取出的水印信息位進行統(tǒng)計計算,當某類m個數據中提取的水印信息位為i的比例大于某一預定值的時候,就可以判定該水印信息位為 i,以此類推,即可提取出全部水印信息位,即得到水印圖像。
W indow s XP平臺,Visual C++環(huán)境下,采用某地貌層數據進行實驗,數據大小為2.7 MB,坐標數據點158 704個。
首先,對其直接嵌入水印信息,嵌入水印信息后的矢量地圖顯示如圖7所示;然后對嵌入水印后的矢量地圖數據分別進行各種攻擊實驗,然后提取水印信息。
進行閾值為3的道格拉斯壓縮后提取的水印效果如圖8所示;進行隨機刪除30%點后提取的水印效果如圖9所示;對30%的點增加-3至3的隨機噪聲后,提取的效果如圖10所示;對矢量地圖數據進行格式轉換攻擊,提取的效果如圖11所示;將數據進行裁剪40%的攻擊后的地圖顯示如圖12所示,提取的水印效果如圖13所示;數據 X坐標平移1個單位,Y坐標平移2個單位攻擊后,提取的效果如圖14所示。
圖7 嵌入水印信息后的矢量地圖顯示
實驗結果表明,該解決方案對于各種常用的攻擊如道格拉斯壓縮、隨機刪除、增加均勻噪聲、格式轉換等的攻擊后,提取的水印效果都比較好;對于數據平移攻擊,雖然水印信息顯示時,由于水印信息生成算法的緣故,顏色信息顛倒,但是并不影響水印的判斷;對于數據裁剪攻擊,當裁剪的數據量不大于40%,水印提取效果比較好,當裁剪的數據量大于40%時,提取的效果稍差一些。
本文在對當前矢量地圖數據數字水印技術研究現狀分析的基礎上,針對下一階段矢量地圖數據數字水印技術的應用,設計了一種實用的矢量地圖數據盲數字水印解決方案,首先,在水印的生成方面,研究了一種通過文字點陣讀取簡單快速的生成水印信息,其次,在水印的嵌入算法方面,提出了一種基于統(tǒng)計特性的矢量地圖數據數字水印算法,最后對整個方案進行了實驗,取得了較好的效果。對于如何進一步抵抗更多的攻擊,進行水印嵌入算法的優(yōu)化和改進,是下一步的努力方向。
[1]XU ZHOU,YU REN,XUEZENG PAN.Watermark embedded in polygonal line fo r copyright p rotection of contour map[J].International Journal of Computer Science and Network Security,2006,7:7.
[2]GERRIT SCHULZ,VO IGT.M.A High Capacity Watermarking System fo r Digital Maps[C],Proceedings of the 2004 M ultimedia and Security Wo rkshop on M ultimedia and Security.Magdeburg,Germany,2004:180-186.
[3]SHAO CHENGYONG.A Robust algo rithm for watermarking 2D vector maps w ith low shape-distortions[J],JOURNAL OF CH INA ORDNANCE,2006,2,(3)
[4]李媛媛,許錄平.用于矢量地圖版權保護的數字水印[J].西安電子科技大學學報:自然科學版,2005,31(5):719-723.
[5]李安波.GIS矢量數據產品版權保護的關鍵技術研究[D].南京:南京師范大學,2007.
[6]R.OHBUCH I,H IROO UEDA,SHUH ENDOH.Robust watermarking of vector digital maps[A].In:Proceedings of ICM E[C],Lausanne,Sw itzerland,2002.
A practical blind digital watermarking scheme for vector map data
L IQiang1,2,M IN Lian-quan1,WU Bin2,YANG Yong-qiang2
(1.Institute of Surveying and Mapping,Info rmation Engineering University,Zhengzhou 450052,China;2.Troops 69027,U rumqi 830006,China)
A t p resent,the research of watermarking is arithmetic’s design and op timization mostly.This paper forwards an app lied watermarking solution w hich is based on statistic to p rotect the copy right of vecto r map data.Experiments conducted on watermarking w ith different attacks show that the p roposed algorithm succeeds in the extraction of watermarking.
vector map data;blind digital watermarking;statistic;w atermark create
TP391.41
A
1006-7949(2010)04-0064-04
2009-11-25
李 強(1982-),男,碩士研究生,助理工程師.
[責任編輯張德福]