第五章 攻擊與還原
5.2 EXIF 資訊重複嵌入
例如:EXIF 資訊有 1904bits,重複 19 次的結果為 36176bits。
表5.3 嵌入十九次浮水印位元正確率 45.26 57.5105 60.29412 64.70588 67.27941 75.84034 100 43.24 70.69328 79.67437 88.39286 92.4895 98.16176 100 41.15 89.12815 95.22059 98.7395 99.21218 99.84244 100 39.29 97.16387 95.22059 99.63235 99.84244 98.05672 100 37.69 99.31723 99.78992 100 100 98.26681 100 36.31 99.84244 99.94748 99.94748 100 100 100
35.1 100 100 100 100 100 100
34.04 100 100 100 99.21218 100 100 33.1 100 100 100 94.80042 100 100 32.25 100 100 100 94.95798 100 100
圖5.6 嵌入十九次浮水印位元正確率折線圖 45.26 1.680672 1.260504 3.361345 5.042017 11.76471 100 43.24 5.462185 15.96639 37.39496 51.68067 86.13445 100 41.15 39.07563 68.90756 90.33613 93.69748 98.7395 100 39.29 78.9916 68.90756 97.05882 98.7395 86.97479 100 37.69 94.53782 98.31933 99.57983 100 87.81513 100 36.31 98.7395 99.57983 99.57983 100 100 100
35.1 100 100 100 100 100 100
34.04 100 100 100 94.11765 100 100 33.1 100 100 100 67.64706 100 100 32.25 100 100 100 68.90756 100 100
圖5.7 嵌入十九次浮水印符號正確率折線圖
圖5.8 嵌入強度10嵌入十九次浮水印的影像(PSNR=45.26dB)
將嵌入十九次的結果與只嵌入一次的結果比較,雖然嵌入的資料量增加了19倍,造 成影像品質PSNR大約降低了10dB,但是正確率提高了許多,即使是JPEG攻擊QF50時,
在嵌入強度70就可以達到正確率100%,影像品質PSNR=35.1 dB,雖然不算太高,但 是主觀以肉眼來看也無法看出影像有經過修改,在JPEG攻擊QF100時,在嵌入強度10 就可以達到正確率100%,影像品質PSNR=45.26 dB,如圖5.8所示,幾乎與原圖一模一 樣,所以可以證明這個方法是有效的,能夠提高正確率,又能夠兼顧影像品質,接下來 我們還會使用其他的影像來進行實驗。
圖5.9 嵌入十九次浮水印位元正確率折線圖
圖5.10 嵌入十九次浮水印符號正確率折線圖
圖5.11 嵌入強度10嵌入十九次浮水印的影像(PSNR=42.91dB)
因為這張影像比較複雜,所以結果比上一張影像下降了大約3dB左右,但是正確率 有大幅的提高,雖然影像品質不高,看是還在可以接受的範圍。由結果我們可以看出,
在JPEG攻擊QF80時,嵌入強度70之後,會有下降的趨勢,雖然JPEG攻擊QF90時沒有下 降的趨勢,但是在之前的實驗結果都可以看出,幾乎都會有這種情形發生,由於下降的 趨勢太明顯,所以我們接下來會繼續探討這個問題。
圖5.12 嵌入十九次浮水印位元正確率折線圖
圖5.13 嵌入十九次浮水印符號正確率折線圖
圖5.14 嵌入強度10嵌入十九次浮水印的影像(PSNR=50.12dB)
由於這張影像的表現比較平均,所以影像品質和正確率都有不錯的表現,如圖5.14 所示,在嵌入強度10嵌入十九次的影像品質高達50.12dB,而且JPEG攻擊QF100時,正 確率仍然能夠到達完全正確地100%,嵌入強度10和嵌入強度20的比較,正確率有很顯 著的提升,從結果可以看出品質因子QF越高,正確率越高,這是正常的現象,只不過 這張影像在JPEG攻擊QF80和QF90時,仍然有明顯的下降趨勢,不管是在嵌入一次浮水 印,或者是嵌入十九次浮水印的結果,都有這種情形出現。
圖5.15 嵌入十九次浮水印位元正確率折線圖
圖5.16 嵌入十九次浮水印符號正確率折線圖
圖5.17 嵌入強度10嵌入十九次浮水印的影像(PSNR=49.22dB)
這張影像的左下半部比較複雜,色彩也比較豐富,右上半部比較簡單,也是屬於各
BCH是Bose、Ray-Chaudhuri 與 Hocquenghem 的縮寫,是編碼理論的錯誤更正碼 中較常被使用的一種編碼方法[22]。一般而言,通訊編碼技術分為兩類:第一種為區塊 碼(block code),另一種為迴旋碼(convolution code)。我們所採用的BCH code 與 Hamming code 同屬於常用的線性區塊編碼(linear block code)。
在區塊編碼技術中,若原信號資訊有k 個位元,經過通道編碼處理會得到的n 個位 元區塊碼。其中k 位元與傳送信號內容相同,稱為訊息位元,其餘的n-k 位元則依預設 的規則計算出來,這些n-k 位元稱為廣泛性查核位元(generalized parity check bits)或