總結本篇論文提出的成果
第二章 浮水印嵌入法則介紹
第二章 浮水印嵌入法則介紹
的簡易流程,而在介紹完流程後也會證明浮水印的截取完 Hologram 可以四捨五 入致原始的狀態。
2.2 浮水印嵌入法則流程
圖2.1 將浮水印W嵌入至原始Hologram H的流程圖,在此Block的大小為4×4 (i,e, k=2)
假設現在有一個維度是2𝑁× 2𝑁的Hologram H。浮水印W要嵌入至H,W的 維度是2𝑛× 2𝑛且n≤N,在W中每個pixel有q個bits,q≥1,也就是W的體積為2𝑛 × 2𝑛× 𝑞。𝐻̅則代表嵌入浮水印後的Hologram。從嵌入浮水印後的Hologram 𝐻̅截 取出來的浮水印為𝑊̅ 。整個浮水印嵌入法則的認證的條件則是W=𝑊̅ 。
由於在本篇論文中,Hologram H將要用來做3D還原的,因此浮水印嵌入法
第二章 浮水印嵌入法則介紹
第二章 浮水印嵌入法則介紹
第二章 浮水印嵌入法則介紹
圖2.2 表示了在q為2且已對時數軸做好長度L的分割之情況下的對應流程
在這裡舉一個簡單的例子來說明,當有一個原始的係數c位置落在接近指標 為5(i.e., p=5)的區間上,假設𝑤𝑖,𝑗=3(i,e, a=5)。從圖2.2可以看到在屬於3的群組
中,指標為7的組是最接近係數c的組。接著按照公式(7),c將重新移位到指標為 7的組(i.e., p=7),即代表著I(7),移位完之後就完成對c的浮水印嵌入流程。
儘管在利用公式(7)的尋找p*的過程中,將會對實數軸分割完之後所有屬於 a組的進行全面的搜尋。在此有一個可以降低搜尋時間的方法可以使用,在不影
響廣泛性的狀況下,假設p屬於b組,0≤b≤ 2𝑞-1,存在一個整數M,滿足
p=M2𝑞+b。我們可以觀察到一個情況,即給定的指標p,則在實數軸會存在著兩 個元素𝑝’以及𝑝’+2𝑞是屬於a組的,並滿足
𝑝’ ≤ 𝑝 ≤ 𝑝’ + 2𝑞 (9) 且
𝑝’ = {𝑀2𝑞+ 𝑎 𝑖𝑓 𝑎 ≤ 𝑏
(𝑀 − 1)2𝑞+ 𝑎 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒 (10)
第二章 浮水印嵌入法則介紹 因為其他屬於a組的不是比𝑝’小就是比𝑝’+2𝑞大,𝑝’與𝑝’+2𝑞是同組別中距離p的距 離是最近的,所以只要針對𝑝’與𝑝’+2𝑞來做p*點的位置就可以滿足(7)的條件。
由上述的內容來看,p*的位置一定是在𝑝’與𝑝’+2𝑞這兩點其中一點上。而從公 式(9)可以得知 |𝑝∗− 𝑝| < 2𝑞−1,再從公式(8)可以推導出
|𝑝∗− 𝑝| < 2𝑞𝐿 (11)
這個公式點出了在本篇論文的浮水印嵌入法則的嵌入流程中發生量化錯誤時對c 影響的上限。因為𝑤𝑖,𝑗只會嵌入到c裡面,而其他剩餘的係數則不會更動。當q或
是L的值很小時在整個嵌入流程中只會在Hadamard轉換域造成輕微失真的情況。
假設𝐶𝑖,𝑗是做完嵌入浮水印版本的𝑉𝑖,𝑗,𝑉𝑖,𝑗做完inverse Hadamark轉換之後會得𝐵𝑖,𝑗, 在這裡可以將𝐵𝑖,𝑗視為已經將浮水印𝑤𝑖,𝑗嵌入後的𝑈𝑖,𝑗。
根據L的值,在𝐵𝑖,𝑗裡面每一個pixel都可能是實數,假設𝐵̅𝑖,𝑗是做精度調整之 後的𝐵𝑖,𝑗,也就是𝐵̅𝑖,𝑗是𝐵𝑖,𝑗做完四捨五入之後所得到的版本。假設m是精度的大小,
也就是指在𝐵̅𝑖,𝑗裡每個pixel含有多少個bit,較高的m可以更有效的增加嵌入浮水 印之後的block的精確度。定義𝐻̅ = {𝐵̅𝑖,𝑗, 0 ≤ 𝑖, 𝑗 ≤ 2𝑛 − 1}。因此可以將𝐻̅視為已 經嵌入完浮水印版本的Hologram H。而且是將浮水印W嵌入在Hadamard轉換域裡 的版本。而以原始的Hologram H與浮水印W做為基礎,做完嵌入浮水印之後產生 𝐻̅的整個流程就如圖2.1所示,同時也可以用下列所呈現的步驟來概括之。
第二章 浮水印嵌入法則介紹
嵌入浮水印W到Hologram H裡之流程
Step 0:給定一個浮水印W以及Hologram H
Step 1:為了嵌入浮水印而先將H分割為數個同樣大小的block 𝑈𝑖,𝑗 Step 2:透過Hadamard轉換將 𝑈𝑖,𝑗轉換成 𝑉𝑖,𝑗
Step 3:透過使用公式(7)和公式(8)將浮水印嵌入至c裡面獲得𝐶𝑖,𝑗
Step 4:使用inverse Hadamard轉換將𝐶𝑖,𝑗轉換成𝐵𝑖,𝑗,再對每個pixel做四捨五入將 𝐵𝑖,𝑗修正到精度為m個bit而得到𝐵̅𝑖,𝑗
Step 5:獲得𝐻̅,𝐻̅ = {𝐵̅𝑖,𝑗, 0 ≤ 𝑖, 𝑗 ≤ 2𝑛 − 1}
第二章 浮水印嵌入法則介紹
B 浮水印截取
圖2.3 從已嵌入浮水印的Hologram 𝑯̅ 截取出浮水印𝑾̅̅̅的流程
截取浮水印的流程主要是以已嵌入浮水印之Hologtam 𝐻̅中的每一個block 𝐵̅𝑖,𝑗為基礎,0 ≤ 𝑖, 𝑗 ≤ 2𝑛− 1。為了將浮水印𝑊̅ 截取出來,首先先對每一個block 𝐵̅𝑖,𝑗做Hadamard轉換,0 ≤ 𝑖, 𝑗 ≤ 2𝑛− 1。假設𝐶̅𝑖,𝑗為做完Hadamard轉換之後的𝐵̅𝑖,𝑗, 再由𝐶̅𝑖,𝑗中獲得係數𝑐̅。係數𝑐̅的位置就跟係數c在Hadamrd轉換域上的位置是同樣
的。
而在檢查個過程中也涉及了𝑝̅的計算,即
𝑝̅ = round(𝑐̅
𝐿) (12) 已𝑝̅為基礎透過下列的公式來找出相對應的浮水印𝑤̅𝑖,𝑗
𝑤̅𝑖,𝑗 = 𝑝̅ mod 2𝑛 (13) 在所有block都檢查完之後,會獲得一個浮水印𝑊̅,𝑊̅ = {𝑤̅𝑖,𝑗 ,0 ≤ 𝑖, 𝑗 ≤ 2𝑛− 1 }。
在最後完成之後會將得到的浮水印𝑊̅ 與W做比較。如果𝑊̅ ≠ 𝑊,可以得知可能有
第二章 浮水印嵌入法則介紹 發生傳輸錯誤或是遭到不相干人士的竄改。這整個將浮水印𝑊̅ 從Hologram 𝐻̅截 取出來的流程就如附圖2.3,同時也能由下列的步驟來敘述。
從Hologram 𝐻̅中截取出浮水印𝑊̅ 之流程
Step 0:給定一個Hologram 𝐻̅
Step 1:為了截取出浮水印而先將𝐻̅分割為數個同樣大小的block 𝐵̅𝑖,𝑗 Step 2:透過Hadamard轉換將𝐵̅𝑖,𝑗轉換成𝐶̅𝑖,𝑗並且從𝐶̅𝑖,𝑗中提取出係數𝑐̅
Step 3:以𝑐̅為基礎透過公式(13)算出𝑝̅來找出𝑤̅𝑖,𝑗
Step 4:獲得浮水印𝑊,𝑊̅ = {𝑤̅𝑖,𝑗 ,0 ≤ 𝑖, 𝑗 ≤ 2𝑛 − 1 },
除了因為傳輸錯誤或是遭到不相干人是竄改的情況外,對Hologram 𝐻̅裡的 每一個pixel以四捨五入的方式做有限精度修正與表現可能會導致已經嵌入浮水 印的Hologram 𝐻̅產生遭到汙染的情形。而另外在運算中,pixel的顯示精度m與分 割區間的長度L會影響到四捨五入產生的誤差。
為了保證在沒有傳輸錯誤與遭到不相干人是竄改的情況下截取出來的浮水 印𝑊̅ 與原始的浮水印W是相同的,需要滿足下列的公式
|𝑐̅ − 𝑐∗| <𝐿
2 (14) 在此狀況之下,可以很容易的證明從公式(12)公式(13)所取得的𝑝̅和𝑤̅𝑖,𝑗會與p*和
第二章 浮水印嵌入法則介紹 𝑤𝑖,𝑗是相同的。
為了滿足公式(14)的條件,正確的選擇L與m是必要的。值得注意的是,L與 m可以不用單獨被指定來降低四捨五入產生的誤差。而在不影響本篇論文大前提
之下,假設Hologram H中每一個pixel都有8bits,為了簡單起見, 𝑈𝑖,𝑗、 𝑉𝑖,𝑗、𝐵𝑖,𝑗 𝐵̅𝑖,𝑗、𝐶𝑖,𝑗、𝐶̅𝑖,𝑗在本篇論文接下來的敘述中將省略下標。
給定一個固定長度的精度m(m≥8)bits,小數部分將會有m – 8 bits。單一pixel
做完四捨五入的誤差應該要小於2−(𝑚−7)( i,e, 其平方需小於2−2(𝑚−7)),設D(X,Y) 為兩個矩陣X與Y之間的誤差平方且須滿足下列條件
𝐷( 𝐵 , 𝐵̅ ) ≤ 2−2𝑘(𝑚−7) (15) 值得注意的是Hadamard轉換矩陣是正交矩陣。C與𝐶̅分別為B與𝐵̅做完Hadamard轉 換之後所獲得的矩陣。
使用與論文[17]相似的流程,可以證明下面的公式(16)成立
𝐷( 𝐵 , 𝐵̅ ) = 𝐷( 𝐶 , 𝐶̅ ) (16) 而在C中的係數c*與在𝐶̅中的係數𝑐̅之間的平方誤差應該要比𝐷(𝐶 , 𝐶̅)還要小。也 就是
(𝑐̅ − 𝑐∗)2 < 𝐷( 𝐶 , 𝐶̅ ) (17)
第二章 浮水印嵌入法則介紹
因此,當下列公式成立時
2−2𝑘(𝑚−7) ≤ (𝐿 2)
2
(18) 根據公式(15)、公式(16)與公式(17)的結果,可以證明公式(14)是成立的,不僅如 此,在經過整理之後,還可以發現最小且能使公式(18)成立的L的條件為
𝐿 = 2𝑘−𝑚+8 (19) 給定一個Resolution level m,L的選擇可以使用公式(19)為基礎,進而讓因為在嵌 入浮水印的過程中因為四捨五入而造成量化物差的汙染情況降到最低。
C Hologram 還原
圖2.4 將已嵌入浮水印的Hologram 𝑯̅ 以rounding off的方式還原程原始Hologram H的流程
Hologram 還 原 是 一 個 能 夠 使 嵌 入 浮 水 印 後 的 Hologtam 𝐻̅ 還 原 成 原 始 Hologram H的簡單流程。假設一個Hologram H裡面的每一個pixel都有8bits,而本 論文之Hologram復原流程只要是在m<8的狀況下,接下來只要將𝐻̅四捨五入至 8bits就能讓𝐻̅還原成原始的樣子。就如圖2.4所示。
第二章 浮水印嵌入法則介紹
第二章 浮水印嵌入法則介紹
第二章 浮水印嵌入法則介紹
|𝑢(𝑟, 𝑠) − 𝑏̅(𝑟, 𝑠)| ≤ 2−𝑘2𝑞−1+ 2−(𝑚−7) (32)
為了避免發生因為四捨五入的誤差汙染到已嵌入浮水印的Hologram,L的選擇 必須要滿足公式(19),並結合公式(19)與公式(32)可以得到
|𝑢(𝑟, 𝑠) − 𝑏̅(𝑟, 𝑠)| ≤ 2𝑞−𝑚+7+ 2−(𝑚−7) (33)
因此,根據公式(33),只要能滿足下列公式
2𝑞−𝑚+7+ 2−(𝑚−7) < 0.5 (34) 就能夠證明與公式(25)是成立的,可以保證已經嵌入浮水印的Hologram 𝐻̅能夠完 全的回復成原始的Hologram H。
m 8 9 10 11 12 13 14
L 4 2 1 0.5 0.25 0.125 0.0625
Maximum q NA NA 1 2 3 4 5
Q(m) (bits) NA NA 16384 32768 49152 65536 81920 Reversibility No No Yes Yes Yes Yes Yes
表格2.1 此表格展示了本篇論文的浮水印嵌入法則在block體積為4×4 (i,e, k=2),Hologram體 積為512×512 (i,e, N=9),浮水印的體積為128×128 (i,e, n=2),不同的resolution level m下,L與q 與最大嵌入資訊數量Q(m)在數值上的表現
第二章 浮水印嵌入法則介紹
總和以上所敘述的推導,公式(34)提供可逆式浮水印嵌入法則一個有用的指 引。用來定義能夠回復的Resolution level m,首先需用來找到一個q能夠滿足公 式(34)且必須為正整數,如果無法找到一個q > 0並滿足條件,該Resolution level m便無法回復至原始的模樣,但如果能滿足條件則可以回復。在這裡的q的最大
值必須要滿足公式(34)的條件,如果找不到一個q > 0且滿足條件,則該
Resolution level m則失去回復的功能,如果能找到則就可以回復,如果q的最大 值能夠滿足公式(34),則q可以用來定義資訊隱藏容量的最大值。
在本篇論文的研究之中,資訊隱藏容量被定義為可回復的浮水印演算法的浮 水印W的體積。其體積大小為2𝑛× 2𝑛× 𝑞個bits,設Q(m)為下列公式所定義出來 𝑄(𝑚) = max
{2𝑞−𝑚+7+2−(𝑚−7)<0.5}2𝑛× 2𝑛 × 𝑞 (35)
值得注意的是公式(34)是由公式(19)所推導出來的,雖然L並沒有出現在公式 (34)中,但是在公式(34)出現的m值透過公式(19)還是會與L是有相互關係的,表 格2.1說明了由公式(35)所評估出來的在不同的值m下保證能夠回復的浮水印法 則的資訊隱藏的容量Q(m),表格裡面由公式(19)所計算出來的相對應的L以及滿 足公式(34)的最大值q也包括在裡面。
block的體積是 4×4(i.e. k=2),Hologram的體積則是512×512(i.e. N=9),因此
第二章 浮水印嵌入法則介紹
第二章 浮水印嵌入法則介紹
第二章 浮水印嵌入法則介紹 這裡要注意的是,如果𝑊̅ 沒有被汙染到,𝑆𝑖 = 𝑆̅𝑖,,i=1,……,M,因為S = 𝑆1 = 𝑆2, … = 𝑆𝑀,同理可證,S̅ = 𝑆̅1 = 𝑆̅2, … = 𝑆̅𝑀。因此當M個組合之間都是相同的,
任何一個參數的組合𝑆̅𝑖都可以拿來當作費涅耳轉換的參數來使用。
在這種狀況之下,已嵌入浮水印的Hologram可以稱之為self-contained是因為 該Hologram的還原參數可以從其浮水印中擷取出來,並不需要另外在傳送一個紀 錄參數資料的檔案。當這M個組合之間並不是相同的,而且有部分參數已經遭到 了污染,也就是𝑊̅ 已經遭到汙染而且𝑊̅ ≠ 𝑊。在這此狀況之下代表著認證失敗,
此外使用self-contained的功能的另外一個優點就是在做M個組合之間的是否相同 的測試時並不需要在另外儲存一個原始的浮水印來做認證,甚至不同的Hologram 會有不同的還原參數的組合,這降低了遭到仿冒攻擊的風險。
第三章 實驗結果與數據討論
第三章 實驗結果與數據探討
3.1 實驗數據的呈現與探討
A 隱蔽性分析
在這個章節,我們會評估本篇論文所描述的可逆式浮水印嵌入機制,兩個 用來做分析的 Hologram 的相位影像與振幅影像也會在這個章節做討論。
Hologram 如圖 3.1 的 a 與 b,兩張 Hologram 分別被標記為 Hologram 1 與
Hologram 2。這兩張 Hologram 是由台灣師範大學光電科技學院 IOP 實驗室使用 數位全像顯微鏡(Digital Holographic Microscope(DHM) )拍攝而成。每一張
Hologram 2。這兩張 Hologram 是由台灣師範大學光電科技學院 IOP 實驗室使用 數位全像顯微鏡(Digital Holographic Microscope(DHM) )拍攝而成。每一張