摘 要:為了在三維醫(yī)學(xué)圖像中隱藏病人的個(gè)人信息,并對(duì)該三維醫(yī)學(xué)圖像進(jìn)行認(rèn)證,提出了一種基于SIFT特征點(diǎn)的三維醫(yī)學(xué)圖像零水印算法,該算法既不會(huì)對(duì)原始的三維醫(yī)學(xué)圖像造成影響,又可以嵌入大容量的水印內(nèi)容。首先,對(duì)三維醫(yī)學(xué)圖像進(jìn)行切片并投影成二維圖像;其次,對(duì)投影后的圖像進(jìn)行提升小波變換;再次,從小波低頻系數(shù)中尋找SIFT特征點(diǎn);最后選擇紋理強(qiáng)的區(qū)域的SIFT特征點(diǎn)來(lái)生成特征向量,用于水印的嵌入。試驗(yàn)表明,該算法可以抵抗常規(guī)攻擊和幾何攻擊,具有較強(qiáng)的魯棒性。
關(guān)鍵詞:三維醫(yī)學(xué)圖像;SIFT;零水印
中圖分類(lèi)號(hào): TP309
文獻(xiàn)標(biāo)識(shí)碼: A
數(shù)字醫(yī)學(xué)圖像作為醫(yī)生判斷患者健康狀況及診斷病情的重要參考依據(jù),在遠(yuǎn)程醫(yī)療中起著舉足輕重的作用。在網(wǎng)絡(luò)傳輸過(guò)程中,醫(yī)學(xué)圖像有可能被截獲,記錄在醫(yī)學(xué)圖像上的病人信息等敏感信息很容易泄露。數(shù)字水印技術(shù)是有效解決該問(wèn)題的技術(shù)手段之一。尤其是研究如何在磁共振成像(magnetic resonance imaging,MRI)獲得的三維醫(yī)學(xué)圖像中嵌入水印,實(shí)現(xiàn)三維醫(yī)學(xué)圖像的版權(quán)保護(hù)和病人信息的隱藏,意義重大。
文獻(xiàn)[1]提出了一種基于整數(shù)小波變換的易碎水印算法,對(duì)醫(yī)學(xué)圖像進(jìn)行整數(shù)提升小波變換,利用小波分解后的四叉樹(shù)結(jié)構(gòu)結(jié)合樹(shù)節(jié)點(diǎn)上的統(tǒng)計(jì)信息和密鑰來(lái)選擇嵌入水印的位置。文獻(xiàn)[2]提出了一種基于深度殘差網(wǎng)絡(luò)的醫(yī)學(xué)圖像魯棒可逆水印算法,利用深度殘差模型提取醫(yī)學(xué)圖像的深度特征信息,結(jié)合遺傳算法和模糊C-均值的聚類(lèi)算法對(duì)水印區(qū)域動(dòng)態(tài)劃分,根據(jù)聚類(lèi)結(jié)果提取水印信息。文獻(xiàn)[3]提出一種基于紋理度劃分的醫(yī)學(xué)圖像可逆信息隱藏方法,對(duì)不同紋理度等級(jí)的像素采用不同的嵌入方法。文獻(xiàn)[4]根據(jù)醫(yī)學(xué)圖像特征值的分布劃分感興趣區(qū)域,將認(rèn)證水印嵌入到感興趣區(qū)域輪廓波分解后的低頻子帶的最大奇異值中,病人信息嵌入到非感興趣區(qū)域輪廓波分解后的中頻子帶系數(shù)中。文獻(xiàn)[5]將醫(yī)學(xué)圖像進(jìn)行離散小波變換,從小波低頻系數(shù)中尋找圖像的特征點(diǎn),通過(guò)特征點(diǎn)計(jì)算出紋理復(fù)雜的區(qū)域,即為醫(yī)學(xué)圖像的感興趣區(qū)域,進(jìn)行水印嵌入。基于變換域的水印算法,因?yàn)榱己玫聂敯粜裕恢笔茄芯康臒狳c(diǎn)[6-8]。
目前,數(shù)字水印技術(shù)在三維醫(yī)學(xué)圖像上應(yīng)用還比較少。文獻(xiàn)[9]提出一種基于單向預(yù)測(cè)誤差擴(kuò)展的三維醫(yī)學(xué)圖像可逆水印算法,結(jié)合MRI圖像的特征,采用單向直方圖位移與預(yù)測(cè)誤差擴(kuò)展相結(jié)合的方法實(shí)現(xiàn)信息嵌入。文獻(xiàn)[10]對(duì)三維醫(yī)學(xué)圖像進(jìn)行三維離散余弦變換(three dimensional discrete cosine transform,3D-DCT),從低中頻系數(shù)中得到視覺(jué)特征向量來(lái)進(jìn)行水印的嵌入與提取。文獻(xiàn)[11]對(duì)文獻(xiàn)[10]的算法進(jìn)行改進(jìn),通過(guò)混沌加密技術(shù)對(duì)水印進(jìn)行預(yù)處理來(lái)提高水印信息的安全性。由于DCT變換后,重要的信息都集中在DCT變換的低中頻系數(shù)中,只占了一小部分系數(shù),其他系數(shù)在圖像壓縮處理中會(huì)被拋棄或進(jìn)行量化以減小數(shù)據(jù)量。一個(gè)系數(shù)只能嵌入一個(gè)bit的水印,因此在實(shí)際使用過(guò)程中,水印的長(zhǎng)度不能太長(zhǎng),水印容量會(huì)受到限制。
本文對(duì)數(shù)字水印技術(shù)在三維醫(yī)學(xué)圖像中的應(yīng)用進(jìn)行研究,提出一種零水印方案。利用尺度不變特征變換(scale invariant feature transform,SIFT)特征點(diǎn)具有對(duì)噪聲不敏感、協(xié)變于幾何變換、且具有一定的局部性的特點(diǎn), 來(lái)實(shí)現(xiàn)水印的嵌入。試驗(yàn)結(jié)果表明,該算法在抵抗常規(guī)攻擊和幾何攻擊中取得了很好的效果。
1 SIFT
SIFT算法由LOWE于1999年提出,2004年完善總結(jié)。這是一種提取局部特征的算法,在尺度空間尋找極值點(diǎn),提取位置、尺度、旋轉(zhuǎn)不變量,滿(mǎn)足KUTTER等人[12]于1999年提出的第二代數(shù)字水印技術(shù)的性質(zhì)要求。
算法首先在尺度空間上進(jìn)行特征檢測(cè),并確定特征點(diǎn)(keypoints)的位置和特征點(diǎn)所處的尺度,然后使用特征點(diǎn)鄰域梯度的主方向作為該點(diǎn)的方向特征,生成一個(gè)128維的特征描述子[13]。在這個(gè)特征描述子中,濾除大于0.2的梯度值,然后重新歸一化。以此弱化梯度大小的作用而強(qiáng)化方向信息的作用。0.2是LOWE在試驗(yàn)中得出的經(jīng)驗(yàn)值。
2 提升小波變換
提升小波變換(lifting wavelet transform,LWT)由Swelden于1997年提出,被稱(chēng)為第二代小波變換,比第一代小波變換更加快速有效。它繼承了第一代小波的多分辨率特征,但不依賴(lài)于傅里葉變換,是一種空域方法,卻能取得與第一代小波變換相同的特性。另外,還具有以下優(yōu)良的特征:結(jié)果簡(jiǎn)單、運(yùn)算量小;原位運(yùn)算,節(jié)省存儲(chǔ)空間;可逆的整數(shù)到整數(shù)變換,便于實(shí)現(xiàn)。
使用LWT分解信號(hào)涉及三個(gè)基本步驟[14]:
(1)拆分:將輸入信號(hào)劃分為不重疊的奇樣本和偶樣本。
(2)預(yù)測(cè):偶樣本和奇樣本之間的相關(guān)性意味著任何一個(gè)都可以作為另一個(gè)的預(yù)測(cè)器。通常用偶樣本來(lái)預(yù)測(cè)奇樣本,通過(guò)與原奇樣本的差值,來(lái)確定高頻分量。
(3)更新:更新后的高頻分量與原偶樣本相加來(lái)確定低頻分量。
3 水印嵌入步驟
3.1 從三維醫(yī)學(xué)圖像投影成二維圖像
要把三維醫(yī)學(xué)圖像投影成二維圖像,可以選擇橫截面、冠狀面、矢狀面、或者其他合適的角度,對(duì)三維醫(yī)學(xué)圖像進(jìn)行切片,給每個(gè)切片Si賦予一個(gè)權(quán)值wi,要求wi為非負(fù)整數(shù),則投影后的二維圖像I的計(jì)算公式為:
權(quán)值所組成的數(shù)列(w1,w2,…,wn)可以作為密鑰,提高算法安全性。
3.2 對(duì)圖像作LWT變換,提取低頻分量LL
為了保證水印算法的魯棒性,水印應(yīng)放在對(duì)視覺(jué)系統(tǒng)感覺(jué)上最重要的分量上。圖像經(jīng)過(guò)提升小波變換,其低頻分量系數(shù)保留了絕大部分的信息和能量[15],低頻分量系數(shù)比高頻分量系數(shù)具有更大的容量[16],而且嵌入低頻分量系數(shù)的水印在圖像進(jìn)行JPEG等有損壓縮的操作中具有更強(qiáng)的魯棒性。
對(duì)投影后的二維圖像I作LWT變換,得到圖像的多分辨表示:LL,LH,HL,HH。從低頻分量LL系數(shù)矩陣中提取特征點(diǎn),既保證水印有足夠的魯棒性,又可以提高特征提取的速度。
3.3 提取SIFT特征點(diǎn)
從低頻分量LL中提取出SIFT特征點(diǎn),再?gòu)闹羞x取若干個(gè)特征點(diǎn)以生成圖像的特征向量。
在SIFT特征點(diǎn)的提取過(guò)程中,會(huì)有15%的特征點(diǎn)被賦予多個(gè)方向[13],這些特征點(diǎn)在特征點(diǎn)匹配中具有更高的穩(wěn)定性。將有多個(gè)方向的特征點(diǎn)所構(gòu)成的集合記做K1,只有一個(gè)方向的特征點(diǎn)所構(gòu)成的集合記做K2。首選K1中的特征點(diǎn)來(lái)生成特征向量。
SIFT特征點(diǎn)的尺度具有縮放不變性,它的值代表圖像被平滑的程度,大尺度對(duì)應(yīng)著圖像的近似信息,小尺度對(duì)應(yīng)著圖像的細(xì)節(jié)信息。與小波變換類(lèi)似,選取大尺度的特征點(diǎn)來(lái)生成特征向量,具有較好的魯棒性。
SIFT特征點(diǎn)對(duì)應(yīng)于圖像中的像素突變點(diǎn),特征點(diǎn)數(shù)目越多的地方,往往紋理越強(qiáng),紋理復(fù)雜區(qū)域即為該醫(yī)學(xué)圖像中的感興趣區(qū)域,也就是醫(yī)療診斷中的病灶區(qū)。選取病灶區(qū)的特征點(diǎn)來(lái)生成特征向量,具有較好的魯棒性,不用擔(dān)心會(huì)丟失該特征點(diǎn)。因?yàn)橐坏┰搮^(qū)域被剪切掉,該醫(yī)學(xué)圖像就失去了意義。
為了綜合考慮尺度和紋理特征,采用公式(2)得到鄰域半徑:
式中,s表示特征點(diǎn)的尺度,λ是常量,可用來(lái)控制鄰域半徑的大小。
計(jì)算每個(gè)特征點(diǎn)在鄰域半徑所覆蓋范圍內(nèi)的特征點(diǎn)數(shù),按照特征點(diǎn)數(shù)量從大到小的順序,對(duì)特征點(diǎn)進(jìn)行排序得到隊(duì)列Q,其中K1的順序在K2的前面。
若要嵌入L個(gè)bit的水印,則按照從前到后的順序,從隊(duì)列Q中取出「L/128個(gè)特征點(diǎn)以生成圖像的特征向量,「代表上取整。
3.4 生成圖像的特征向量
3.5 水印的嵌入
4 水印提取步驟
本算法水印提取過(guò)程與水印嵌入過(guò)程類(lèi)似。
具體步驟如下:
(1)根據(jù)切片的方式和權(quán)值數(shù)列(w1,w2,…,wn),將待測(cè)的三維醫(yī)學(xué)圖像投影為二維圖像;
(2)對(duì)上述二維圖像進(jìn)行LWT變換,提取出低頻分量LL;
(3)從LL中提取出SIFT特征點(diǎn);
(4)利用嵌水印時(shí)保存的描述子D,尋找與之匹配的特征點(diǎn),得到待測(cè)圖像的特征向量V’;
(5)將二值序列K與待測(cè)圖像的特征向量V’進(jìn)行異或運(yùn)算,得到待測(cè)圖像的水印W’;
(6)通過(guò)計(jì)算待測(cè)圖像的水印W’與原始水印W的相似度,并與閾值T作比較,來(lái)判別水印是否存在。若相識(shí)度高于閾值,則認(rèn)為水印存在;否則水印不存在。這里采用相關(guān)系數(shù)進(jìn)行相似度的定量評(píng)價(jià),計(jì)算公式為:
5 仿真試驗(yàn)
為了驗(yàn)證上述水印算法的有效性,使用MATLAB R2017b進(jìn)行仿真,原始三維醫(yī)學(xué)圖像是MATLAB自帶的一個(gè)MRI圖像,如圖1所示。試驗(yàn)首先生成1 000組獨(dú)立的二值偽隨機(jī)序列(取值為0或1),每組長(zhǎng)度128位,選取第500組作為水印序列,代表病人的信息。在不加干擾的情況下,水印檢測(cè)結(jié)果為圖2所示,橫軸代表1 000組獨(dú)立的二值偽隨機(jī)序列,縱軸代表它們與水印的相似度sim,從圖中可以明顯看出,非水印序列與水印序列的相似度在0.7以下,因此試驗(yàn)中取0.7作為閾值T。
為了證實(shí)本算法的有效性和魯棒性,在試驗(yàn)中對(duì)原始三維醫(yī)學(xué)圖像分別進(jìn)行一系列的常規(guī)攻擊和幾何攻擊,例如加入高斯噪聲、JEPG壓縮處理、旋轉(zhuǎn)、尺度縮放、剪切等。試驗(yàn)結(jié)果見(jiàn)表1—5。
從表1、表2、表3、表5看出,本算法在噪聲攻擊、JPEG壓縮攻擊、旋轉(zhuǎn)和剪切攻擊等攻擊下,提取出的水印與原始水印的相似度都在0.92以上,說(shuō)明本算法對(duì)這些攻擊有非常好的魯棒性。
在表4中,當(dāng)原三維醫(yī)學(xué)圖像縮小為原來(lái)的一半(縮放比例為0.5)時(shí),圖像變得比較模糊,此時(shí)提取出的水印與原始水印的相似度較低,但仍然高于設(shè)定的閾值0.7,仍能檢測(cè)出水印。其他縮放比例下提取出的水印與原始水印的相似度都高于0.98,可以檢測(cè)出水印。因此,本算法對(duì)縮放攻擊有較好的魯棒性。
綜上所述,本算法對(duì)常規(guī)攻擊和幾何攻擊,具有很好的魯棒性。
6 結(jié)論
本文提出了一種基于SIFT特征點(diǎn)的三維醫(yī)學(xué)圖像水印算法,是一種零水印方案,不會(huì)對(duì)原三維醫(yī)學(xué)圖像產(chǎn)生影響。算法將三維醫(yī)學(xué)圖像投影為二維圖像,既起到了加密的作用,又減少了計(jì)算量??紤]到小波域在抵抗JPEG壓縮中的優(yōu)良特性,從LWT變換后的小波低頻分量中選擇特征點(diǎn),同時(shí),自動(dòng)定位到該醫(yī)學(xué)圖像的病灶區(qū),從病灶區(qū)中提取出的特征點(diǎn)具有更強(qiáng)的魯棒性。一個(gè)特征點(diǎn)所生成的特征向量就可以嵌入128 bit的水印,一副醫(yī)學(xué)圖像存在多個(gè)特征點(diǎn),因此,本算法有較高的水印嵌入容量。
參考文獻(xiàn):
[1]馮前進(jìn), 陳凌劍, 楊豐. 基于整數(shù)小波變換的醫(yī)學(xué)圖像易碎水印方法[J]. 中國(guó)圖象圖形學(xué)報(bào), 2006, 11(5): 736-741.
[2]李智, 周旭陽(yáng), 殷昕旺, 等. 基于深度殘差網(wǎng)絡(luò)的醫(yī)學(xué)圖像魯棒可逆水印算法[J]. 貴州大學(xué)學(xué)報(bào)(自然科學(xué)版), 2020, 37(3): 58-68.
[3]才雪, 楊楊, 肖星星. 基于紋理度劃分的醫(yī)學(xué)圖像可逆信息隱藏方法[J]. 計(jì)算機(jī)應(yīng)用, 2018, 38(8): 2293-2300.
[4]陳青, 宗偲琦. 用于醫(yī)學(xué)圖像認(rèn)證的Contourlet-SVD雙水印算法[J]. 小型微型計(jì)算機(jī)系統(tǒng), 2019, 40(1): 207-211.
[5]沈炎斌. 基于圖像特征的醫(yī)學(xué)圖像水印算法[J]. 三明學(xué)院學(xué)報(bào), 2015, 32(6): 37-40.
[6]ZHENG P, HUANG J. Discrete wavelet transform and data expansion reduction in homomorphic encrypted domain[J]. IEEE Transactions on Image Processing, 2013, 22(6): 2455-2468.
[7]ZHAO B, KOU W, LI H, et al. Effective watermarking scheme in the encrypted domain for buyer-seller watermarking protocol[J]. Information Sciences, 2010, 180(23): 4672-4684.
[8]GUO J, ZHENG P, HUANG J. Secure watermarking scheme against watermark attacks in the encrypted domain[J]. Journal of Visual Communication amp; Image Representation, 2015, 30: 125-135.
[9]李琦, 顏斌, 陳娜, 等. 基于單向預(yù)測(cè)誤差擴(kuò)展的三維醫(yī)學(xué)圖像可逆水印算法[J]. 計(jì)算機(jī)應(yīng)用, 2019, 39(2): 483-487.
[10]LI J, DU W, BAI Y, et al. 3D-DCT based zero-watermarking for medical volume data robust to geometrical attacks[J]. Wireless Communications and Applications. 2012 (72): 433-444.
[11]劉瑤利, 李京兵. 基于3D-DCT和混沌加密的醫(yī)學(xué)體數(shù)據(jù)多水印算法[J]. 計(jì)算機(jī)工程與設(shè)計(jì), 2014, 35(1): 26-31.
[12]KUTTER M, BHATTACHARJEE S K, EBRAHIMI T. Towards second generation watermarking schemes [C]//International Conference on Image Processing. Kobe: IEEE, 1999: 320-323.
[13]LOWE D G. Distinctive image features from scale-invariant keypoints[J]. International Journal of Computer Vision, 2004, 60(2): 91-110.
[14]DAUBECHIES I, SWELDENS W. Factoring wavelet transforms into lifting steps[J]. Journal of Fourier Analysis and Applications, 1998, 4(3): 247-269.
[15]MEHTA R, GUPTA K, YADAV A K, et al. An adaptive framework to image watermarking based on the twin support vector regression and genetic algorithm in lifting wavelet transform domain[J]. Multimedia Tools and Applications, 2020, 79: 18657-18678.
[16]黃達(dá)人, 劉九芬, 黃繼武. 小波變換域圖像水印嵌入對(duì)策和算法[J]. 軟件學(xué)報(bào), 2002, 13(7): 1290-1297.
[17]BAS P, CHASSERY J M, MACQ B. Geometrically invariant watermarking using feature points[J]. IEEE Transactions on Image Processing, 2002, 11 (9): 1014-1028.
(責(zé)任編輯:于慧梅)