這是一個可以讓使用者嵌入浮水印到影像中的程式。
其他人完全不會查覺到你已經將另外一張圖片嵌入其中。
浮水印主要分為二個派別
分別是可見浮水印 (visible watermarking)
和不可見浮水印(invisible watermarking)
其中不可見浮水印可以讓使用者完全不發現浮水印的存在
進而讓浮水印防盜圖的宗旨更為發揮。
本程式是使用不可見浮水印的方式來達成
其乃先破壞原圖的 least significant bit
再將欲隱藏的資料嵌入其中。
由於僅僅是使用時間複雜度n平方的成本做 bit-operation
所以嵌入浮水印的速度效能上非常快
但也正因採取此種做法其抗壓縮破壞的能力很差。
然而,相信防止一般使用者的盜圖已經足夠。
要藏在哪一個bit 其實見仁見智
從 least significant bit 到 most significant bit 都可以藏
但是越到Most Significant Bit的影響就越嚴重。
可以看見,挖除1st bit來嵌入浮水印,所得到的PSNR值仍然很高,沒有受到什麼影響。
而且肉眼上也幾乎無法辨別。 (不瞞各位,上面那張圖表也嵌入了浮水印,歡迎下載回去檢查看看。)
如果怕被有心人士破壞,也可以選擇藏在2nd~3rd bit,因為肉眼上仍然辨識不出差異,PSNR也在40以上。
不過就如同前面所提到的,如果遇到壓縮破壞,這種方法為基礎的演算法,無論藏在哪裡都不可行。
所以目前而言,對此種圖片建議使用無損壓縮,即BMP、TIF、PNG較為適合。
其中PNG在無損壓縮中檔案較小,在本次的應用中效果也不錯,因此建議使用。
留言列表