• 沒有找到結果。

三. 基於三維直方圖的可逆式資訊隱藏技術

3.1 簡介

在這個章節中,我們將詳細介紹我們所提出的演算法,並利用一個簡單的例 子來解釋所提出的方法。首先,我們先定義在本章節會使用到的符號,本論文使 用的影像大小皆為 512*512,原始影像位置(i, j)對應像素值𝑃𝑖,𝑗,而0 ≤ 𝑖, 𝑗 ≤ 511、

且0 ≤ 𝑃𝑖,𝑗 ≤ 255。𝑋𝑖,𝑗、𝑌𝑖,𝑗、𝑍𝑖,𝑗分別是用來計算𝑃𝑖,𝑗的 X、Y、Z 維度的參考值,

根據預測方法的不同計算範圍而有所不同。𝑇𝑥𝑖,𝑗是指 X 方向的預測值,也作為𝑃𝑖,𝑗 的 X 維度的座標,𝑇𝑦𝑖,𝑗是指 Y 方向的預測值,也作為𝑃𝑖,𝑗的 Y 維度的座標,𝑇𝑧𝑖,𝑗指 Z 方向的預測值,也作為𝑃𝑖,𝑗的 Z 維度的座標。

其次,我們將影像分為四區如圖 15,一次只對一區進行運算,接著在計算預 測值之前,我們要先進行參考值範圍的定義,預測方法跟參考值的範圍是環環相 扣的。於是,本論文提出了三種參考值取樣的方法:

圖 15. 三維直方圖預測法的影像分區

16

(1) 預測法 1

如圖 16 所示,由左至右分別是𝑋𝑖,𝑗、𝑌𝑖,𝑗、𝑍𝑖,𝑗的參考值範圍,用簡單的 3*3 影像作為例子。影像正中間是目標像素值𝑃𝑖,𝑗,參考值範圍如同灰色區塊所示。𝑋𝑖,𝑗 是取𝑃𝑖,𝑗上、下、左、右的像素值如同灰色範圍,𝑌𝑖,𝑗是取𝑃𝑖,𝑗左上、左下、右上、

右下的像素值,𝑍𝑖,𝑗是取𝑃𝑖,𝑗周邊八格的像素值。

圖 16. 預測法 1 的取樣範圍 (2) 預測法 2

如圖 17 所示,由左至右分別是𝑋𝑖,𝑗、𝑌𝑖,𝑗、𝑍𝑖,𝑗的參考值範圍,用簡單的 3*3 影像作為例子。影像正中間是目標像素值𝑃𝑖,𝑗,參考值範圍如同灰色區塊所示。𝑋𝑖,𝑗 是取𝑃𝑖,𝑗左上、上、左、右、右下、下的像素值,𝑌𝑖,𝑗是取𝑃𝑖,𝑗、左下、左、下、右、

右上、上的像素值,𝑍𝑖,𝑗是取𝑃𝑖,𝑗周邊八格的像素值。

圖 17. 預測法 2 的取樣範圍

(3) 預測法 3

如圖 18 所示,由左至右分別是𝑋𝑖,𝑗、𝑌𝑖,𝑗、𝑍𝑖,𝑗的參考值範圍,用簡單的 3*3 影像作為例子。影像正中間是目標像素值𝑃𝑖,𝑗,參考值範圍如同灰色區塊所示。𝑋𝑖,𝑗 是取𝑃𝑖,𝑗左、左上、左下、右、右上、右下的像素值,𝑌𝑖,𝑗是取𝑃𝑖,𝑗、左上、上、右 上、左下、下、右下的像素值,𝑍𝑖,𝑗是取𝑃𝑖,𝑗周邊八格的像素值。

17

圖 18. 預測法 3 的取樣範圍

參考值取樣完畢之後,下一步就是計算預測值,計算方法為用特定像素值跟 參考值的平均值之地板函數值相減,其公式如下:

{

𝑇𝑥𝑖,𝑗 = 𝑃𝑖,𝑗− ⌊𝑝∈𝑋𝑖,𝑗|𝑋 𝑝

𝑖,𝑗| ⌋ 𝑇𝑦𝑖,𝑗 = 𝑃𝑖,𝑗− ⌊𝑞∈𝑌𝑖,𝑗|𝑌 𝑞

𝑖,𝑗| ⌋ 𝑇𝑧𝑖,𝑗 = 𝑃𝑖,𝑗− ⌊𝑟∈𝑍𝑖,𝑗𝑟

|𝑍𝑖,𝑗|

(3.1)

利用所計算出來三個的參考值𝑇𝑥𝑖,𝑗、𝑇𝑦𝑖,𝑗、𝑇𝑧𝑖,𝑗作為三個維度的座標,進行統 計可以得到用來進行資訊隱藏的三維直方圖。將第一象限(+, +, +)與第七象限 (−, −, −)的指定像素值位移,而空出的位置可用來隱藏機密資訊。我們利用X、

Y、Z軸進行隱藏,如機密資訊為 1,則將軸上的像素值往剛才空出來的區域位 移。反之則不進行動作。該區塊藏匿完畢之後就利用反向的演算法將參考值還原 成像素值,完成隱藏動作。

如機密資訊尚未隱藏完畢,則對其餘的第二、三、四區塊進行相同的動作,

直到機密資訊藏匿完畢。三維直方圖總共有八個象限,而我們的演算法只會移動 兩個象限的像素值,也就是說有約 75%的像素值不會被移動,加上機密資訊隨機 產生,需要進行位移而藏入的機密資訊約二分之一,可維持高度的影像品質。

18

相關文件