目錄
- C?變換參數的確定
- D?水印的影響
- E?可替代的標準化過程
🤖原文: Digital Watermarking Robust to Geometric Distortions
🤖前言: 這是一篇 2005 年的 SCI 一區 + CCF-A,但是網上關于它的講解貌似挺少的。文中提出了兩種數字水印方案,但是我只關注第一種方案中的圖像標準化技術。由于本人很菜,因此可能存在翻譯或者理解的錯誤,請各位指正!
C?變換參數的確定
在本節中,我們展示了如何確定與變換相關的參數,使它們達到各自的標準化目標。
矩陣 A x = ( 1 β 0 1 ) \mathbf{A}_x=\begin{pmatrix} 1 & \beta \\ 0 & 1 \end{pmatrix} Ax?=(10?β1?)
回顧前文公式:
μ p q ′ = ∑ i = 0 p ∑ j = 0 q ( p i ) T ( q j ) a 11 i ? a 12 p ? i ? a 21 j ? a 22 q ? j ? μ i + j , p + q ? i ? j \mu'_{pq} = \sum_{i=0}^{p}\sum_{j=0}^{q} \begin{pmatrix} p \\ i \end{pmatrix}^T \begin{pmatrix} q \\ j \end{pmatrix} a^i_{11}\cdot a^{p-i}_{12}\cdot a^{j}_{21}\cdot a^{q-j}_{22}\cdot \mu_{i+j,p+q-i-j} μpq′?=i=0∑p?j=0∑q?(pi?)T(qj?)a11i??a12p?i??a21j??a22q?j??μi+j,p+q?i?j?
個人理解:這里提到前文公式,是為了告訴讀者 μ 30 ( 2 ) \mu^{(2)}_{30} μ30(2)? 是怎么求出來的。應該就是把 p , q p,q p,q 和矩陣 A x \mathbf{A}_x Ax? 中的參數代入上式,從而得到 μ 30 ( 2 ) \mu^{(2)}_{30} μ30(2)?。可是我代入進去的結果不對啊?這里的轉置是我自己加的,不加求不了矩陣乘法啊!
我們得到:
μ 30 ( 2 ) = μ 30 ( 1 ) + 3 β μ 21 ( 1 ) + 3 β 2 μ 12 ( 1 ) + β 3 μ 03 ( 1 ) \mu^{(2)}_{30}=\mu^{(1)}_{30}+3\beta\mu^{(1)}_{21}+3\beta^2\mu^{(1)}_{12}+\beta^3\mu^{(1)}_{03} μ30(2)?=μ30(1)?+3βμ21(1)?+3β2μ12(1)?+β3μ03(1)?
其中, μ p q ( 1 ) \mu^{(1)}_{pq} μpq(1)? 是圖像 f 1 ( x , y ) f_1(x,y) f1?(x,y) 的中心矩。
令 μ 30 ( 2 ) = 0 \mu^{(2)}_{30}=0 μ30(2)?=0,我們得到:
μ 30 ( 1 ) + 3 β μ 21 ( 1 ) + 3 β 2 μ 12 ( 1 ) + β 3 μ 03 ( 1 ) = 0 \mu^{(1)}_{30}+3\beta\mu^{(1)}_{21}+3\beta^2\mu^{(1)}_{12}+\beta^3\mu^{(1)}_{03}=0 μ30(1)?+3βμ21(1)?+3β2μ12(1)?+β3μ03(1)?=0
參數 β \beta β 就是通過這個式子得到的。
注意到上式在 μ 03 ( 1 ) ≠ 0 \mu^{(1)}_{03}\neq 0 μ03(1)?=0 的情況下最多可以有三個根,這對于大多數自然圖像來說是普遍成立的。特別地,我們可能有以下兩種情況:
- 三個根中一個是實根,另外兩個是復根;
- 三個根都是實根。
對于第一種情況,我們簡單地取 β \beta β 為實根;對于第二種情況,我們取 β \beta β 為三個實根的中位數。參見附錄,這樣的選擇保證了得到的標準化圖像的唯一性。
當然,在一些非常不尋常的條件下,根的個數可能會發生變化。例如,當上式涉及到的所有矩都為 0 0 0 時,它將有無窮多個解。這可以發生在圖像是旋轉對稱的時候,比如圓盤或者圓環。我們參考文獻 [16] 和 [17] 來更詳細地介紹一般的標準化過程。
矩陣 A y = ( 1 0 γ 1 ) \mathbf{A}_y=\begin{pmatrix} 1 & 0 \\ \gamma & 1 \end{pmatrix} Ay?=(1γ?01?)
回顧前文公式:
μ p q ′ = ∑ i = 0 p ∑ j = 0 q ( p i ) T ( q j ) a 11 i ? a 12 p ? i ? a 21 j ? a 22 q ? j ? μ i + j , p + q ? i ? j \mu'_{pq} = \sum_{i=0}^{p}\sum_{j=0}^{q} \begin{pmatrix} p \\ i \end{pmatrix}^T \begin{pmatrix} q \\ j \end{pmatrix} a^i_{11}\cdot a^{p-i}_{12}\cdot a^{j}_{21}\cdot a^{q-j}_{22}\cdot \mu_{i+j,p+q-i-j} μpq′?=i=0∑p?j=0∑q?(pi?)T(qj?)a11i??a12p?i??a21j??a22q?j??μi+j,p+q?i?j?
我們得到:
μ 11 ( 3 ) = γ μ 20 ( 2 ) + μ 11 ( 2 ) \mu^{(3)}_{11}=\gamma\mu^{(2)}_{20}+\mu^{(2)}_{11} μ11(3)?=γμ20(2)?+μ11(2)?
令 μ 11 ( 3 ) = 0 \mu^{(3)}_{11}=0 μ11(3)?=0,我們得到:
γ = ? μ 11 ( 2 ) μ 20 ( 2 ) \gamma=-\frac{\mu^{(2)}_{11}}{\mu^{(2)}_{20}} γ=?μ20(2)?μ11(2)??
因此,參數 γ \gamma γ 具有唯一的解。
矩陣 A s = ( α 0 0 δ ) \mathbf{A}_s=\begin{pmatrix} \alpha & 0 \\ 0 & \delta \end{pmatrix} As?=(α0?0δ?)
縮放參數 α \alpha α 和 δ \delta δ 的大小通過在水平和垂直方向上將圖像 f 3 ( x , y ) f_3(x,y) f3?(x,y) 縮放到規定的標準尺寸來確定。它們的符號都是確定的,這樣 μ 50 ( 4 ) \mu^{(4)}_{50} μ50(4)? 和 μ 05 ( 4 ) \mu^{(4)}_{05} μ05(4)? 都是正的,可以通過水平翻轉或垂直翻轉來改變。
簡而言之,參數 α \alpha α 和 δ \delta δ 的大小是根據規定的標準尺寸確定的,標準尺寸的大小決定了參數 α \alpha α 和 δ \delta δ 的取值。由于縮放倍數是非負的,因此參數 α \alpha α 和 δ \delta δ 的符號一定為正(?)
D?水印的影響
值得注意的是,對于水印嵌入,標準化是對原始圖像進行的;對于水印提取,標準化是對含水印圖像進行的。因此,重要的是設計水印信號,使其對標準化圖像的影響最小。
令 w ( x , y ) w(x,y) w(x,y) 表示添加到原始圖像 f ( x , y ) f(x,y) f(x,y) 中的水印信號。令 m p q ( w ) m^{(w)}_{pq} mpq(w)? 表示 w ( x , y ) w(x,y) w(x,y) 的原點矩。根據前文公式:
d 1 = m 10 m 00 , d 2 = m 01 m 00 d_1=\frac{m_{10}}{m_{00}},\ d_2=\frac{m_{01}}{m_{00}} d1?=m00?m10??,?d2?=m00?m01??
可以取 m 10 ( w ) = m 01 ( w ) = 0 m^{(w)}_{10}=m^{(w)}_{01}=0 m10(w)?=m01(w)?=0,使得 w ( x , y ) w(x,y) w(x,y) 對標準化過程的中心步驟沒有影響。
此外,我們希望對于 p + q p+q p+q 等于 2 2 2 和 3 3 3 有 m p q ( w ) = 0 m^{(w)}_{pq}=0 mpq(w)?=0,使得水印不影響其余的標準化變換。這里假設 w ( x , y ) w(x,y) w(x,y) 和 f ( x , y ) f(x,y) f(x,y) 是統計獨立的,因此它們的二階和三階中心矩是可加的。
正如后面將要討論的那樣,水印是由零均值高斯或均勻源產生的 C D M A \mathsf{CDMA} CDMA 信號,它被添加到圖像的中頻 D C T \mathsf{DCT} DCT 系數中。從我們的數值例子可以看出,這樣的水印幾乎滿足上述所描述的所有期望的性質,并且對標準化圖像幾乎沒有影響。
E?可替代的標準化過程
上述標準化過程由一系列初等仿射變換(即剪切和縮放操作)組成。我們指出,其他變換過程也可以用類似的方式構造,以實現標準化圖像中的放射變換不變性。比如以下過程:
A = ( c o s ? s i n ? ? s i n ? c o s ? ) ( α 0 0 δ ) ( 1 β 0 1 ) \mathbf{A}=\begin{pmatrix} cos\phi & sin\phi \\ -sin\phi & cos\phi \end{pmatrix} \begin{pmatrix} \alpha & 0 \\ 0 & \delta \end{pmatrix} \begin{pmatrix} 1 & \beta \\ 0 & 1 \end{pmatrix} A=(cos??sin??sin?cos??)(α0?0δ?)(10?β1?)
其中包括:
- 1)在 x x x 方向上的剪切;
- 2 )在 x x x 方向和 y y y 方向上的縮放;
- 3)旋轉 ? \phi ? 角度;
上述過程中的參數可以通過執行每個步驟的一組預定義的矩來確定。感興趣的讀者可以參考文獻 [15]。