2017-01-17 74 views
0

在我看來,水印會像使用SVD,LSB或更改位一樣。瞭解水印圖像

im_orginal = im2double(imread('Lena.jpg'));%im size 500X500 
watwrmark= im2double(imread('watwrmark_logo.png'));%size 500X500 
alpha .3;% opacity 

公式1:

im_watermarked = im_original + watermark * alpha; 

OR

方程2:

im_watermarked = im_original * (1-alpha) + watermark * alpha; 

的代碼的最後一行我不知道該方程是正確的1或2?

然而,當閱讀別人的算法水印,他們是如此的複雜,就像用SVD,LSB等

我也是路要走我水印的代碼和理解還是有很多方面的原因呢?

我的問題是,

  1. 請告訴我方程1是正確的還是2? (如果有的話)

  2. 以數學方式講水印的方法有多少?

回答

0

我會使用公式2,因爲像素的總alpha必須是1.請參閱this other answer代碼。

你找到更復雜的水印方法的原因是因爲水印的重點是確保沒有人沒有同意就得到原始圖像,因此人們發明了阻止信息的新方法。它是一種加密形式,其中非常具體。水印是一種以計算機無法獲取的方式對信息進行加密的技術,但是人可以!

但是,請注意,您可以應用水印的事實並不意味着您可以使用相同的方法將其刪除。如上所述,當對圖像加水印時信息丟失,因爲2像素信息融合成1。與製作圖像灰度時類似,不能簡單地將其重新彩色化。您需要使用內容感知算法來模擬,或使用有限的給定信息重新創建「空白」空間。這是一個很大的研究領域,SO中沒有答案能夠涵蓋單一方法。