楊娜娜
(1.廣東省國(guó)土資源測(cè)繪院,廣東 廣州 510500)
數(shù)字水印(digital watermarking)作為數(shù)字產(chǎn)品版權(quán)保護(hù)的前沿技術(shù)[1],在矢量地圖版權(quán)保護(hù)、內(nèi)容完整性認(rèn)證及使用跟蹤等方面也發(fā)揮著重要作用。近年來(lái),矢量地圖水印技術(shù)的研究逐漸成為矢量地圖安全領(lǐng)域研究與應(yīng)用的熱點(diǎn)[2]。然而,矢量地圖復(fù)雜的數(shù)據(jù)結(jié)構(gòu)及空間關(guān)系、多樣的存儲(chǔ)格式、高精度的空間定位特性等獨(dú)特性,決定了矢量地圖的版權(quán)保護(hù)難以簡(jiǎn)單地應(yīng)用傳統(tǒng)的加密技術(shù)來(lái)解決。因此,需要根據(jù)矢量地圖的特征,綜合運(yùn)用數(shù)字水印等多種技術(shù),進(jìn)行矢量地圖版權(quán)保護(hù)技術(shù)的研究,以取得滿(mǎn)足矢量地圖版權(quán)保護(hù)系統(tǒng)建設(shè)和相關(guān)法規(guī)有效實(shí)施的成果。
數(shù)字水印技術(shù)是在不影響數(shù)字產(chǎn)品質(zhì)量和可用性的前提下,將特定的水印信息嵌入其中。其中,作者的序列號(hào)、公司標(biāo)志或一些具有特殊意義的文本等均可以作為水印信息的內(nèi)容。利用這些水印信息,可以達(dá)到確定版權(quán)所有者、認(rèn)證數(shù)據(jù)來(lái)源的真實(shí)性、跟蹤侵權(quán)行為判斷載體是否被篡改等目的[3]。數(shù)字水印的基本特征[4]詳見(jiàn)表1。
表1 數(shù)字水印的基本特征
根據(jù)數(shù)字水印研究情況,從不同角度對(duì)現(xiàn)有數(shù)字水印算法進(jìn)行分類(lèi)[3,5],具體分類(lèi)情況見(jiàn)表2。
表2 數(shù)字水印分類(lèi)
數(shù)字水印技術(shù)是在數(shù)字產(chǎn)品中嵌入能夠證明版權(quán)的水印信息,在需要的時(shí)候又能夠?qū)⑵涮崛』驒z測(cè)出來(lái)的過(guò)程,通常包括水印的生成、嵌入和檢測(cè)3個(gè)過(guò)程[6](如圖1)。
圖1 數(shù)字水印系統(tǒng)基本框架
矢量地圖是將現(xiàn)實(shí)世界中復(fù)雜的地理實(shí)體抽象概括為點(diǎn)、線、面等基本幾何要素的組合,一般由屬性數(shù)據(jù)和空間數(shù)據(jù)兩部分組成。屬性數(shù)據(jù)是描述地理要素屬性特征的數(shù)據(jù)(如名稱(chēng)、類(lèi)型、等級(jí)等),不能隨便修改;空間數(shù)據(jù)包括幾何數(shù)據(jù)和空間關(guān)系數(shù)據(jù),其中,幾何數(shù)據(jù)是對(duì)地理要素空間特征的描述;空間關(guān)系數(shù)據(jù)是對(duì)地理要素之間關(guān)系的描述,在矢量地圖中主要指拓?fù)潢P(guān)系。
1)幾何特征。幾何特征作為地理要素的重要特征之一,它主要包括地理要素的形狀、角度、長(zhǎng)度、面積等。根據(jù)空間形態(tài)特征的不同,矢量地圖可用點(diǎn)、線、面等基本幾何要素來(lái)表示。
2)空間關(guān)系特征??臻g關(guān)系是描述地理要素之間在一定區(qū)域上構(gòu)成的與空間特性有關(guān)的聯(lián)系,通常分為拓?fù)洹⒍攘亢头较?類(lèi)關(guān)系??臻g關(guān)系是矢量地圖區(qū)別于其他數(shù)據(jù)的標(biāo)志特征,常用拓?fù)潢P(guān)系表示[7](如包含、相交、相鄰及相離等,如圖2所示)。拓?fù)潢P(guān)系已經(jīng)成為GIS空間關(guān)系的重要理論基礎(chǔ),是一種最重要的空間關(guān)系,對(duì)空間推理、查詢(xún)分析及實(shí)際應(yīng)用具有重要意義。
圖2 拓?fù)潢P(guān)系示意圖
通過(guò)對(duì)矢量地圖表達(dá)形式、存儲(chǔ)結(jié)構(gòu)等特征的分析可知,在地理要素的坐標(biāo)中嵌入水印信息是一個(gè)可行的方案[8]。在不影響數(shù)據(jù)精度的前提下,可以通過(guò)對(duì)頂點(diǎn)坐標(biāo)做微小的擾動(dòng)達(dá)到嵌入水印的目的。同時(shí),為了避免水印信息被破壞或去除,矢量地圖水印算法應(yīng)具有較強(qiáng)的魯棒性和不可見(jiàn)性,即要求嵌入水印后的矢量地圖數(shù)據(jù)精度沒(méi)有明顯損失,數(shù)據(jù)質(zhì)量沒(méi)有明顯下降,水印信息的不可見(jiàn)性較好,同時(shí)對(duì)常見(jiàn)攻擊的抵抗能力較強(qiáng)。矢量地圖的獲取方式和應(yīng)用特點(diǎn)決定了其水印除了要滿(mǎn)足普通數(shù)字產(chǎn)品水印的要求外,還應(yīng)具有其獨(dú)特性[3,9]:
1)生產(chǎn)成本昂貴、保密性強(qiáng)等特點(diǎn)。
2)具有高精度的空間定位特性及復(fù)雜的空間關(guān)系特征。
3)投影變換等數(shù)據(jù)轉(zhuǎn)換方式復(fù)雜多樣。
4)具有數(shù)據(jù)結(jié)構(gòu)復(fù)雜、格式多樣等特點(diǎn)。
5)坐標(biāo)存儲(chǔ)無(wú)序。
6)具有分層存儲(chǔ)等特點(diǎn)。
7)具有獨(dú)特的數(shù)據(jù)處理方式。
目前,通過(guò)國(guó)內(nèi)外學(xué)者廣泛、深入的研究,數(shù)字水印技術(shù)取得了一定的研究成果。從總體上來(lái)看,雖然數(shù)字水印技術(shù)的研究方向主要集中在數(shù)字圖像、音頻和視頻等方面,但矢量地圖數(shù)字水印技術(shù)的研究也越來(lái)越受到學(xué)者們的關(guān)注。
早期的矢量地圖坐標(biāo)域水印方案大都是通過(guò)控制要素位置、容差和數(shù)據(jù)精度來(lái)修改頂點(diǎn)坐標(biāo),并沒(méi)有考慮地理要素的拓?fù)潢P(guān)系與幾何特征,因此,對(duì)很多幾何攻擊不具有魯棒性,甚至在經(jīng)過(guò)剪切或重排序的矢量地圖中無(wú)法檢測(cè)到水印信息。Cox是最早公開(kāi)提出矢量地圖水印算法[10]的學(xué)者,他主張直接在各頂點(diǎn)坐標(biāo)上進(jìn)行水印信息的編碼,但由于嵌入的水印信息各比特互不相關(guān),因此在抵抗各類(lèi)簡(jiǎn)單的攻擊時(shí)不具有魯棒性。
最低有效位方法[11](LSB)是最經(jīng)典的坐標(biāo)域水印算法,它是將水印信息嵌入在矢量地圖的數(shù)據(jù)精度范圍所在的精度位上。該方法計(jì)算速度快,水印提取和檢測(cè)過(guò)程一般不需要原始矢量地圖的參與。但嵌入的水印信息容量有限,且水印信息將很容易被繞過(guò)或擦除。
由于矢量地圖對(duì)數(shù)據(jù)高精度的要求,因此目前所設(shè)計(jì)的大部分水印算法基本都能滿(mǎn)足對(duì)坐標(biāo)精度的要求。然而,關(guān)于保持要素拓?fù)潢P(guān)系和幾何特征等方面的研究卻很少。因此,越來(lái)越多的基于坐標(biāo)域的水印方案開(kāi)始關(guān)注矢量地圖中要素的地理特征、幾何形狀、拓?fù)潢P(guān)系及圖層結(jié)構(gòu)[12]等方面的問(wèn)題。
Shao[13]等提出了一種保持幾何形狀相似的二維矢量地圖水印算法,首先利用道格拉斯-普克算法提取矢量地圖的特征點(diǎn),然后根據(jù)提取的特征點(diǎn)將原始數(shù)據(jù)分割成多個(gè)數(shù)據(jù)塊,最后通過(guò)修改數(shù)據(jù)塊中某些非特征點(diǎn)的統(tǒng)計(jì)值來(lái)嵌入水印信息,該算法能夠在一定程度上保持地理要素的幾何形狀,對(duì)常見(jiàn)的數(shù)據(jù)攻擊(如裁剪、壓縮)具有較好的魯棒性。
Wang[14]等提出了一個(gè)基于多邊形拓?fù)潢P(guān)系的水印算法,首先在水印嵌入前生成矢量地圖的最小圍繞矩形(MER),并結(jié)合MER和希爾伯特編碼法生成一系列多邊形對(duì),然后計(jì)算多邊形對(duì)的空間拓?fù)潢P(guān)系的公制計(jì)量,通過(guò)縮放多邊形將水印信息嵌入到公制計(jì)量中。雖然該方案對(duì)RST變換、圖形簡(jiǎn)化、數(shù)據(jù)插入和噪聲疊加等攻擊具有魯棒性,但抵抗數(shù)據(jù)裁剪的能力有限,很難應(yīng)用在線段多于多邊形的矢量地圖中(如等高線圖和道路圖)。
Suk[12]等提出了基于折線和多邊形的魯棒性及不可見(jiàn)性的GIS矢量地圖水印方案,為了保證嵌入水印后地圖上的地物對(duì)象之間、嵌入水印后的地圖與原始地圖的相應(yīng)地物對(duì)象之間的距離在最大容許范圍內(nèi),分別提出了相對(duì)位置精度和絕對(duì)位置精度2個(gè)指標(biāo)。雖然利用上述定位精度條件在水印嵌入的過(guò)程中取得了較為滿(mǎn)意的實(shí)驗(yàn)效果,但所提出的相對(duì)位置精度計(jì)算方法并不能滿(mǎn)足所有的圖形情況。
Stefan[15]等提出了基于拓?fù)浔A舻氖噶繄D形水印方案,利用Vorinoi圖和約束三角網(wǎng)2種方法計(jì)算出原始矢量地圖中各個(gè)頂點(diǎn)的最大擾動(dòng)區(qū)域(MPR),并利用MPR對(duì)水印嵌入過(guò)程中發(fā)生拓?fù)潢P(guān)系錯(cuò)誤的頂點(diǎn)進(jìn)行糾正。該方法在不影響矢量地圖水印算法性能的同時(shí),有效控制了水印嵌入過(guò)程中引起的地理要素頂點(diǎn)的擾亂問(wèn)題,從而保證了嵌入水印的矢量地圖具有更好的可用性。但該算法并不能保持矢量圖形的幾何特征(如直角及平行線),且在糾正過(guò)程中的計(jì)算效率也有待提高。
楊娜娜[16]等提出一種保持拓?fù)潢P(guān)系與幾何特征的矢量地圖水印處理方法,首先利用約束三角網(wǎng)構(gòu)造各個(gè)頂點(diǎn)的最大擾動(dòng)區(qū)域(MPR),然后綜合運(yùn)用MPR、同名點(diǎn)鄰接線段的方向約束以及基于同名點(diǎn)拓?fù)潢P(guān)聯(lián)的坐標(biāo)調(diào)整方法,對(duì)水印嵌入過(guò)程中引起的拓?fù)溴e(cuò)誤和幾何特征丟失等問(wèn)題進(jìn)行檢測(cè)和糾正,最終確保矢量地圖嵌入水印前后拓?fù)潢P(guān)系與幾何特征的一致性,并有效提高了嵌入水印后矢量地圖的可用性。
由于頻率域水印算法在圖像的數(shù)字水印技術(shù)中取得了良好的效果,因此矢量地圖頻率域水印算法的研究也引起了人們的關(guān)注。常見(jiàn)的頻率域水印算法主要有離散傅里葉變換(DFT)、離散小波變換(DWT)、離散余弦變換(DCT)等。
Solachidis[17]等提出了一種基于傅里葉描述因子的矢量圖形水印算法,首先對(duì)由數(shù)據(jù)特征點(diǎn)構(gòu)成的實(shí)數(shù)序列進(jìn)行傅里葉變換,再利用傅里葉描述因子對(duì)定位、縮放和旋轉(zhuǎn)等幾何不變性將水印信息嵌入傅里葉變換系數(shù)中,最后經(jīng)傅里葉逆變換得到嵌入水印的矢量地圖。由于傅里葉描述因子具有幾何不變性,因此該算法抵抗幾何攻擊的能力較強(qiáng),但抵抗局部修改攻擊的能力較差。
Kitamura[18]等是首次將DWT引入矢量地圖水印算法的學(xué)者,他們提出首先將矢量地圖劃分為網(wǎng)格的形式,并將這些網(wǎng)格看作類(lèi)似于柵格圖像的“像素”,最后根據(jù)圖像的小波變換嵌入水印信息。李媛媛[23]等提出了基于小波變換的矢量圖形盲水印算法,通過(guò)DWT將有序的圖元頂點(diǎn)坐標(biāo)序列分解成不同空間和頻率上的幅值系數(shù),水印的嵌入是根據(jù)水印的大小與小波系數(shù)之間的關(guān)系實(shí)現(xiàn)的,同時(shí)保持系數(shù)的相位不變。楊成松[20]等提出了基于DWT的矢量地理空間數(shù)據(jù)數(shù)字水印算法,對(duì)地圖坐標(biāo)進(jìn)行離散小波分解,再將水印信息分段嵌入到離散小波變換后得到的低頻系數(shù)中,最后經(jīng)小波逆變換得到含水印的矢量地理空間數(shù)據(jù)。DWT變換可以反映矢量地圖的局部特征,其實(shí)數(shù)域DWT的水印算法對(duì)平移和旋轉(zhuǎn)沒(méi)有抵抗能力;而其復(fù)數(shù)域DWT的水印算法對(duì)幾何變換的魯棒性較強(qiáng),但抵抗裁剪攻擊的能力較弱。
Michael[21]等提出了基于DCT的2-D矢量數(shù)據(jù)可逆水印算法,首次將可逆方案引入矢量地圖水印技術(shù)的研究中。該算法利用矢量地圖中同一多邊形頂點(diǎn)之間具有的高度相關(guān)性,對(duì)每8個(gè)頂點(diǎn)組成的一個(gè)數(shù)據(jù)塊進(jìn)行DCT變換,然后在每個(gè)數(shù)據(jù)塊的余弦變化系數(shù)上嵌入水印信息。雖然該算法具有可逆性,但會(huì)給矢量數(shù)據(jù)帶來(lái)較大的變形。閔連權(quán)[26]等提出的基于DCT的數(shù)字地圖水印算法,將提取的地圖數(shù)據(jù)特征點(diǎn)組成特征圖像,并對(duì)特征圖像進(jìn)行離散余弦變換,在中低頻系數(shù)上嵌入水印。雖然該算法對(duì)常見(jiàn)的水印攻擊具有魯棒性,但水印檢測(cè)過(guò)程需要原始數(shù)據(jù)的參與。
綜上所述,基于坐標(biāo)域的水印算法是在矢量地圖的坐標(biāo)精度允許范圍內(nèi),采用一定的方法直接修改地理要素的坐標(biāo)值來(lái)嵌入水印信息,同時(shí)可以充分地利用頂點(diǎn)的位置關(guān)系、坐標(biāo)的統(tǒng)計(jì)特征等空間特征進(jìn)行水印的嵌入操作,其實(shí)現(xiàn)方法簡(jiǎn)單靈活,數(shù)據(jù)精度可以控制,且水印信息容量大,但它在抵抗攻擊時(shí)魯棒性較差?;陬l率域的矢量地圖水印算法是通過(guò)修改頻率域系數(shù)而嵌入水印信息的,它能夠較好地利用人類(lèi)的視覺(jué)感知特性,抵抗各種常見(jiàn)攻擊的能力較強(qiáng),但每個(gè)坐標(biāo)點(diǎn)的水印嵌入強(qiáng)度不可控制,水印嵌入過(guò)程會(huì)給矢量地圖帶來(lái)一定程度的變形,這意味著水印嵌入可能引起矢量地圖產(chǎn)生許多特征誤差。然而,不論采用哪種水印算法,水印信息的嵌入最終都是通過(guò)修改矢量地圖要素的坐標(biāo)而實(shí)現(xiàn)的,這樣有可能會(huì)導(dǎo)致某些坐標(biāo)點(diǎn)的水印嵌入強(qiáng)度超出誤差容限,從而使數(shù)據(jù)喪失有效性。
1)對(duì)數(shù)據(jù)精度的影響。矢量地圖的數(shù)據(jù)精度將會(huì)直接影響數(shù)據(jù)的可用性,同時(shí)對(duì)數(shù)據(jù)精度進(jìn)行嚴(yán)格的檢查和分析是空間數(shù)據(jù)質(zhì)量控制的重要環(huán)節(jié)之一。而水印信息的嵌入一般都是通過(guò)對(duì)空間數(shù)據(jù)的修改實(shí)現(xiàn)的,這可能會(huì)導(dǎo)致嵌入水印前后矢量地圖的坐標(biāo)不一致,影響數(shù)據(jù)的正常使用。雖然目前大部分水印算法基本都能滿(mǎn)足數(shù)據(jù)精度的要求,但鮮有關(guān)于矢量地圖水印中幾何形狀相似性和拓?fù)浔A舴矫娴难芯俊?/p>
2)對(duì)幾何特征的影響。對(duì)于點(diǎn)要素來(lái)說(shuō),在設(shè)計(jì)水印算法時(shí)并不需要考慮保持幾何特征的問(wèn)題。而在矢量地圖中,除了點(diǎn)要素外,還存在大量的線、面要素,不同的線、面要素一般具有不同的幾何形狀。由于水印的嵌入可能改變矢量地圖的坐標(biāo)值,點(diǎn)坐標(biāo)的改變可能會(huì)引起線狀、面狀要素幾何形狀的改變。例如,對(duì)于線段(實(shí)線)的夾角(如圖3),若水印嵌入時(shí)造成各個(gè)點(diǎn)坐標(biāo)值的改變量不同,就可能會(huì)導(dǎo)致銳角變成鈍角、直角變?yōu)殁g角或銳角等情況;對(duì)于面要素,由于水印的嵌入可能會(huì)導(dǎo)致矩形變成梯形或其他形狀。從圖4可以看出,原本為矩形的房屋面,在水印嵌入后,它的幾何形狀發(fā)生了變化,直角變?yōu)殁g角或銳角、矩形變?yōu)樘菪位蚱渌灰?guī)則的圖形。總之,水印嵌入引起的地理要素幾何形狀的改變最終可能會(huì)影響矢量地圖的正常使用。
圖3 水印嵌入后引起角度的變化
圖4 水印嵌入前后要素 幾何形狀的改變
3)對(duì)拓?fù)潢P(guān)系的影響。通過(guò)上面的分析可知,矢量地圖水印技術(shù)一般都是通過(guò)修改數(shù)據(jù)的坐標(biāo)值來(lái)嵌入水印信息的,而坐標(biāo)值的改變不僅會(huì)降低矢量地圖的數(shù)據(jù)精度,影響要素的幾何形狀,而且可能改變地理要素的拓?fù)浣Y(jié)構(gòu)。例如,水印的嵌入可能會(huì)使兩條原本平行的線段相交(如圖5);而對(duì)于兩棟相鄰的建筑物來(lái)說(shuō),嵌入水印后有可能使其相交或相離等(如圖6)。
圖5 水印嵌入后平行線變?yōu)檎劬€圖
圖6 水印嵌入前后要素 拓?fù)潢P(guān)系的改變
通過(guò)對(duì)矢量地圖水印研究現(xiàn)狀的分析可以看出,矢量地圖水印技術(shù)已經(jīng)引起了人們的重視,也取得了一定的研究成果。但對(duì)于絕大部分的矢量地圖水印算法,無(wú)論是將水印嵌入在點(diǎn)、線還是多邊形要素中,其水印信息最終都是通過(guò)修改矢量地圖要素的坐標(biāo)值來(lái)嵌入的。這不僅可能對(duì)矢量地圖的可視化產(chǎn)生影響,還有可能影響矢量地圖的數(shù)據(jù)精度、拓?fù)潢P(guān)系以及幾何特征等空間特性,而拓?fù)潢P(guān)系是矢量地圖最為重要的空間特征。隨著矢量地圖共享和應(yīng)用的普及,對(duì)含水印的矢量地圖的質(zhì)量要求越來(lái)越高,使用者希望在保護(hù)矢量地圖版權(quán)的同時(shí),能夠保證數(shù)據(jù)不引起拓?fù)潢P(guān)系錯(cuò)誤和幾何特征丟失問(wèn)題。因此,如何保證數(shù)據(jù)的空間定位精度、拓?fù)浣Y(jié)構(gòu)、幾何特征等空間特征不受水印嵌入的影響,是矢量地圖水印技術(shù)研究必須關(guān)注的問(wèn)題。