張海濤,祝曉坤,董 明,肖 洲
(北京市測繪設計研究院,北京100038)
近年來,隨著測繪與地理信息技術的發(fā)展和我國社會信息化進程的不斷加快,測繪與地理信息行業(yè)正逐步建設信息化測繪服務技術體系。在這個過程中,基礎地理信息數(shù)據(jù)產品的應用越來越廣泛,如何驗證某種基礎地理信息數(shù)據(jù)產品的生產部門,保護其知識產權,已經成為一項迫切需求的技術。
本文研究的目標是可在基礎地理信息數(shù)據(jù)產品中加入生產部門的標記信息,以證明其版權歸屬,使得測繪管理部門能夠檢驗地理信息數(shù)據(jù)產品的來源,從技術上滿足其對數(shù)字測繪生產進行規(guī)范管理的需求。同時,通過開發(fā)一套實用的數(shù)字水印軟件系統(tǒng),可在基礎地理信息數(shù)據(jù)產品的分發(fā)服務中提供版權保護技術,并可適用于不同的平臺和數(shù)據(jù)格式,滿足測繪與地理信息行業(yè)大多數(shù)用戶的實際需求。
對基礎地理信息數(shù)據(jù)產品進行版權保護,人們最先想到的是數(shù)字加密技術,但它并不適用,只有信息隱藏領域中的數(shù)字水印技術才是解決問題的理想方案[1-2]。
基礎地理信息數(shù)據(jù)產品從表現(xiàn)形式上分類主要包括數(shù)字線劃地圖(DLG)、數(shù)字柵格地圖(DRG)、數(shù)字正射影像圖(DOM)和數(shù)字高程模型(DEM),即常規(guī)的4D產品;從數(shù)據(jù)結構上分類則主要包括矢量數(shù)據(jù)產品和柵格數(shù)據(jù)產品。在4D產品中,DLG屬于矢量數(shù)據(jù)產品,而DRG、DOM和DEM之間雖然存在較大的差異,但在數(shù)據(jù)結構上均屬于柵格數(shù)據(jù)產品。不同的數(shù)據(jù)結構難以采用相同的數(shù)字水印算法,因此必須分別進行設計。
前些年,傳統(tǒng)的數(shù)字水印技術只限于常規(guī)的數(shù)字圖像、音頻和視頻等數(shù)字媒體產品[3-8],還沒有針對基礎地理信息數(shù)據(jù)產品的有效算法,尤其是矢量數(shù)據(jù)產品,對版權保護技術的應用需求最為緊迫,研究難度最大。根據(jù)本文研究之初的實際情況,先針對矢量數(shù)據(jù)實現(xiàn)了數(shù)字水印技術,開發(fā)了相關的軟件,并在國內測繪行業(yè)中進行了推廣應用;之后,根據(jù)市場的反饋和需求,針對柵格數(shù)據(jù)產品進行了數(shù)字水印技術的研究,并形成了針對基礎地理信息數(shù)據(jù)4D系列產品的信息安全解決方案。
信息隱藏學的主要研究領域在圖像、音頻等方面,常規(guī)的數(shù)字水印算法是以柵格數(shù)據(jù)或信息流為處理對象的,可以施加很多壓縮(有損或無損)算法,對精度、失真度的要求不敏感,因此柵格數(shù)據(jù)易于實現(xiàn)數(shù)字水印算法。
而矢量數(shù)據(jù)則有嚴格的精度、失真度要求,數(shù)據(jù)范圍和形狀靈活可變,數(shù)據(jù)量不固定,圖形要素的排列不規(guī)則,空間分布不均勻,較少存在冗余,要附加數(shù)字水印是比較困難的。
根據(jù)研究,矢量數(shù)據(jù)在空間的分布是不均勻的,呈隨機特征,不同的矢量圖形要素之間具有一定的空間關系。在一定量的數(shù)據(jù)集合中,采用統(tǒng)計的方法對數(shù)據(jù)的分布進行歸納,則這種空間關系可被視作一種頻率分布模型,如圖1所示。

圖1 矢量數(shù)據(jù)數(shù)字水印存儲模型
根據(jù)矢量數(shù)據(jù)的空間關系,可以按影響數(shù)據(jù)質量的閾值定義一個分界線,將分界線上下的不同部分劃分為高頻和低頻,高頻部分決定了數(shù)據(jù)的質量,是不可變的,低頻部分對數(shù)據(jù)的質量沒有影響,表現(xiàn)為一種呈隨機振蕩特征的噪聲,可以視為冗余信息,能夠進行一定程度的修改,不會引起數(shù)據(jù)質量和精度的下降,也不依賴于圖形的具體分布特征。
根據(jù)這個模型,設計了一個跨平臺的通用數(shù)據(jù)結構,實現(xiàn)數(shù)字水印的嵌入和檢測。按照這種存儲模型嵌入數(shù)字水印后,基礎地理信息數(shù)據(jù)的屬性不變,圖形特征沒有明顯的變化,拓撲關系也保持不變。
數(shù)據(jù)存儲模型只解決了水印數(shù)據(jù)的存儲問題,由于矢量數(shù)據(jù)呈現(xiàn)不規(guī)則的隨機分布特征,因此需要解決大量的隨機數(shù)據(jù)排序問題。
根據(jù)矢量數(shù)據(jù)的數(shù)字水印存儲模型,高頻部分是不可變的,因此可以根據(jù)這部分數(shù)據(jù)的統(tǒng)計特征進行排序,并采用折線掃描法(zigzag scanning)進行分類處理,如圖2所示。

圖2 基于折線掃描法的數(shù)據(jù)分類算法
該方法基于大量隨機數(shù)據(jù)的統(tǒng)計特征,能夠有效地對數(shù)據(jù)進行分類,保障了數(shù)字水印信息的有序組織。
該分類算法與基礎矢量數(shù)據(jù)的分布特征無關,也與數(shù)據(jù)格式無關,因此具有較好的通用性。
所有的數(shù)字水印技術都建立在一定數(shù)據(jù)量的基礎之上,即需要一個數(shù)據(jù)載體來容納數(shù)字水印信息。對于柵格數(shù)據(jù),其尺寸規(guī)格較為固定,數(shù)據(jù)量較大;而矢量數(shù)據(jù)的數(shù)據(jù)量不固定,出現(xiàn)較少數(shù)據(jù)的可能性較大,因此無法采用固定的水印信息長度。
根據(jù)矢量數(shù)據(jù)的這種特點,設計了變長水印處理策略。
首先,設計了兩種水印長度模式,即常規(guī)模式和小數(shù)據(jù)模式。算法可自動分析數(shù)據(jù)量的多少,進行不同模式的處理。當數(shù)據(jù)載體的數(shù)據(jù)量較多時,采用常規(guī)模式,水印長度采用固定的分類算法進行處理。當數(shù)據(jù)載體的數(shù)據(jù)量較小時,采用小數(shù)據(jù)模式,自動調整分類算法的參數(shù),水印長度將縮減為常規(guī)模式的1/4。
其次,根據(jù)數(shù)據(jù)在空間分布的飽和程度,算法會自動在水印長度之內限定可輸入字符的數(shù)量,以確保水印信息的嵌入。
數(shù)字水印技術針對常規(guī)的數(shù)字圖像或音頻和視頻等數(shù)字媒體產品已經有了大量的研究成果,而柵格地理信息數(shù)據(jù)雖然也是以柵格為其結構特征,但有嚴格的精度、失真度要求,無論是數(shù)據(jù)量、數(shù)據(jù)表示方式、數(shù)據(jù)冗余度、數(shù)據(jù)壓縮算法、數(shù)據(jù)應用模式等都與常規(guī)的數(shù)字媒體存在較大的差異,因此這些現(xiàn)有的數(shù)字水印技術并不適用于柵格地理信息數(shù)據(jù)產品。
DRG、DOM和DEM雖然都是柵格數(shù)據(jù),存在一定的共性,但它們的數(shù)據(jù)結構存在較大的差異,不可能通過一個統(tǒng)一的算法實現(xiàn)數(shù)字水印技術。因此,需要在考慮其共性的基礎上,根據(jù)各自的不同特點,設計不同的數(shù)字水印嵌入方案。
由于DOM的數(shù)據(jù)量比較大,在實際工作中經常會采用壓縮的方式來減少數(shù)據(jù)量,提高傳輸速率。因此,在DOM水印算法中針對常用的小波壓縮進行了專門的設計。
本算法選擇JPEG 2000標準中的Daubechies9/7小波基作為小波變換的基礎,具有比較好的前瞻性,它可以有效地抵抗各種小波壓縮,尤其是對JPEG 2000的壓縮具有比較好的抗攻擊能力。
算法抵抗壓縮的程度主要取決于小波低頻系數(shù)的量化步長和小波系數(shù)嵌入冗余度。量化步長的合適與否與抵抗壓縮程度和圖像質量密切相關,如果量化步長太小,則抵抗不了較大比率的壓縮;量化步長太大,又會導致圖像視覺質量嚴重下降。本算法采取了量化步長可調的方法,并多次試驗確定了合適的閾值。
DRG是以索引色圖像的形式存儲的,圖像數(shù)據(jù)中像元存儲的是顏色的索引值,顏色數(shù)目較少而顏色值之間差別非常大,圖像數(shù)據(jù)矩陣本身并沒有什么顏色空域相關性,使用頻域的方式嵌入水印對其并不適用,因此在本算法中采用了時域嵌入水印的方式。
根據(jù)DRG產品的特點和實現(xiàn)數(shù)字水印技術的需要,在圖像的預處理上采用了一種基于仿射變換的數(shù)字圖像置亂算法,能有效地保證水印的安全性。該算法具有以下優(yōu)點:能適用于任意大小的圖像,有較強的適用性;含有若干個變換參數(shù),而且其中的大部分可以選用隨機數(shù),另外的由約束確定,這大大方便了密鑰的選擇,增加了系統(tǒng)的安全性,因此該置亂算法可以公開。由于其秘密全寓于密鑰中,從而滿足密碼學中的Kerckhoffs假設。
DEM數(shù)據(jù)不是真正的數(shù)字圖像,雖然屬于柵格數(shù)據(jù),但其元素不是真正的像元,而是高程值,因而無法采用常規(guī)的頻域方式嵌入。根據(jù)DEM數(shù)據(jù)的特點,只有采用空域的方法才能實現(xiàn)數(shù)字水印技術。
由于DEM數(shù)據(jù)不存在壓縮問題,因而采用LSB(最低有效位)方法進行了算法設計。在對DEM進行圖像分割時,根據(jù)DEM的數(shù)據(jù)特征調整了子單元分割窗口的大小,以滿足在DEM中嵌入水印的需求。
(1)抵抗剪切和拼接攻擊
嵌入水印的柵格數(shù)據(jù)在遭到剪切攻擊后,保存水印的子圖的位置丟失,需要定位。因此,在算法中需要用到水印定位技術,也稱同步技術,這在當今的圖像處理領域仍然是個難題。
本算法采用了重復嵌入的思想,每單位大小的柵格數(shù)據(jù)均被嵌入相同的水印,因此需要在水印嵌入前對原始數(shù)據(jù)進行分割,這樣問題就轉化為如何在剪切后的柵格數(shù)據(jù)中定位分割位置。
本算法在嵌入水印前將原始數(shù)據(jù)分割為相同大小的子圖,在每個子圖的特殊區(qū)域嵌入同步碼,并嵌入相同的水印;提取水印時先檢測同步碼,檢測到同步碼則同步完成,一個子圖定位即結束。
由于待測柵格數(shù)據(jù)的多樣性和復雜性,必須考慮各種剪切和拼接的可能,因此在找到含有同步信息的子圖后,如何以較高的效率判定下一個子圖的起始位置是一個難點。
在算法的設計中采用了以下的方法:在找到含有同步信息的子圖后,將這個子圖的水平和垂直4個方向的可能含有同步信息的子圖的搜索優(yōu)先級提高,在搜索中首先搜索這4個方向的區(qū)域。通過使用優(yōu)先級的方法可以更加高效地找到下一子圖的起始位置。
(2)BCH糾錯碼
對柵格數(shù)據(jù)的攻擊有許多種方法,包括壓縮、剪切、拼接、修改等,這些有意或無意的攻擊使得從柵格數(shù)據(jù)中提取的水印流中往往含有錯誤信息比特,這些錯誤信息比特嚴重影響提取后的水印質量,因此有必要對水印信息流進行糾錯編碼。
經過深入的研究,采用了BCH糾錯碼技術。BCH碼是循環(huán)碼的一個重要子類,有嚴密的代數(shù)理論,具有糾正多個錯誤的能力。
不同的柵格數(shù)據(jù)產品其數(shù)據(jù)特征不同,可嵌入的水印空間也有差異,需要抵抗的攻擊也不盡相同,因此需要使用不同的糾錯碼。針對這種情況,在DOM、DRG和DEM中分別采用了不同的BCH糾錯碼參數(shù)來處理水印流,以提高水印信息提取的正確率。
(3)圖像水印的優(yōu)化
在矢量數(shù)據(jù)產品的數(shù)字水印技術中,包括兩種水印格式,即文字水印和圖像水印[1]。
在進行柵格數(shù)據(jù)產品的數(shù)字水印技術研究中,繼承了這一思路,仍然使用文字水印和圖像水印為標識用戶的版權信息,但進行了一定程度的優(yōu)化。
由于圖像水印所需要的空間較大,在矢量數(shù)據(jù)產品中最多只能嵌入32×32固定尺寸的二值圖像水印。柵格數(shù)據(jù)產品不但能夠嵌入超過40×40尺寸的二值圖像水印,而且圖像的長、寬是可變的,采用不等比的矩形尺寸能夠有效地增加圖像水印的顯示效果。
同時,在圖像水印的存儲模式上進行了優(yōu)化工作。一般的二值圖像文件是用BMP格式存儲的,由于該格式限制每一行像素占用的字節(jié)數(shù)為4的倍數(shù),而二值圖像是按比特存儲像素的,當圖像沒有采用標準的8、16、32等尺寸時,就會在每一行的末尾保持若干個字節(jié)的空白,浪費了十分寶貴的水印空間。經過深入的研究,采用特殊的存儲模式來保存像素數(shù)據(jù),避免了空白字節(jié)的浪費,相對提高了水印空間的容量。
數(shù)字水印嵌入的穩(wěn)健性[2]與水印信息的處理方式有很大的關系,由于任何數(shù)字產品都存在著被攻擊的可能性,如果不對水印信息附加任何保護,將大大降低數(shù)字水印算法的穩(wěn)健性和實施版權保護的能力。在基礎地理信息數(shù)據(jù)產品的數(shù)字水印技術中,采用了多種方法對水印信息進行了保護。
在對基礎地理信息數(shù)據(jù)產品進行數(shù)字水印處理時,不僅嵌入了用戶輸入的水印信息,也嵌入了用戶的標志信息。這個標志信息是由軟件提供者在分發(fā)軟件時設置的,能夠標識每一個用戶,具有唯一性。它不但能夠在檢測水印時為鑒別用戶身份提供必要的依據(jù),而且能夠在嵌入水印時驗證用戶對數(shù)據(jù)的操作權限。
在嵌入數(shù)字水印前,先對數(shù)據(jù)進行檢測,只有數(shù)據(jù)中不存在水印時才可以嵌入;如果數(shù)據(jù)中已有水印,先判斷水印中所附加的用戶信息是否與當前軟件的使用者一致,兩者相同則提示用戶是否繼續(xù),否則拒絕嵌入,這樣就可以防止使用相同軟件的不同用戶之間侵權事件的發(fā)生,保護了每一個用戶的利益,如圖3所示。

圖3 基于身份認證的用戶信息保護策略
在嵌入數(shù)字水印前,應用數(shù)字加密技術對水印信息進行加密,所嵌入的水印數(shù)據(jù)實質上是二進制的密文序列。由于加密所采用的密鑰是自定義的,其他人在沒有密鑰的情況下是無法提取出水印信息的,從而極大地加強了水印信息的安全性。
本文提出了基于基礎地理信息數(shù)據(jù)產品的數(shù)字水印技術的設計思想,針對4D產品的不同類型,系統(tǒng)性地提出了針對矢量、柵格數(shù)據(jù)產品的數(shù)字水印算法和相關的處理技術,不但實現(xiàn)了數(shù)字水印的嵌入和檢測,還能夠鑒別和保護水印信息,并能夠抵抗一定的攻擊,具有較好的穩(wěn)健性。
所提出的數(shù)字水印技術形成了一個完整的產品系列,可作為針對4D系列產品的信息安全解決方案,使得測繪管理部門能夠檢驗基礎地理信息數(shù)據(jù)產品的來源,從技術上滿足其對數(shù)字測繪生產進行規(guī)范管理的需求,為建立信息化測繪服務技術體系提供了可靠的技術保障。
該技術對于有效地保護基礎地理信息數(shù)據(jù)產品加工部門的知識產權有著十分重要的意義,能夠檢查和跟蹤基礎地理信息數(shù)據(jù)產品的傳播和使用情況,擁有進行科學驗證的依據(jù),避免使用人工進行判斷而又拿不出有效證據(jù)的問題,可有效地遏制盜版的發(fā)生,維護生產部門的利益。同時,該技術不但可以促進測繪行業(yè)的信息安全建設,推動科技發(fā)展,還能夠推廣到全國測繪與地理信息及相關行業(yè),如林業(yè)、水利、交通、環(huán)境保護、電力電信、城市規(guī)劃、國防軍事等。
[1]張海濤,李兆平,孫樂兵.地理信息水印系統(tǒng)的開發(fā)[J].測繪通報,2004(5):42-44.
[2]劉振華,尹萍.信息隱藏技術及其應用[M].北京:科學技術出版社,2002.
[3]余燕忠,王新偉.基于信噪比的自適應圖像水印算法[J].計算機工程,2003,29(1):70-71.
[4]孫錟鋒,溫泉,王樹勛.基于人類視覺的混沌陣列在圖像上的水印算法[J].電子學報,2003,31(1):149-153.
[5]朱仲杰,蔣剛毅,郁梅,等.一種視頻圖像的自適應水印新算法[J].浙江大學學報:理學版,2003:30(1):41-45.
[6]趙春暉,李福昌.一種基于m序列調制的量化音頻數(shù)字水印算法[J].哈爾濱工程大學學報,2003,24(1):97-100.
[7]王劍,林福宗.基于離散小波變換的數(shù)字音頻水印[J].計算機工程與應用,2003,39(15):80-82.
[8]俞能海,趙卓,曹楠楠,等.一種新穎的基于非壓縮數(shù)字視頻的水印盲檢測算法[J].電路與系統(tǒng)學報,2003,8(3):60-65.