999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于DCT域的數字水印算法

2009-04-29 00:00:00高玉娜楊忠根
電腦知識與技術 2009年4期

摘要:該文系統介紹了數字水印的原理和應用方法,并研究了一種基于離散余弦變換(DCT)的數字圖像水印算法,并借助MATLAB編程工具,實現數字水印的嵌入、提取和攻擊測試。

關鍵詞:數字圖像;數字水??;DCT;MATLAB

中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2009)04-0868-03

A Digital Watermarking Algorithm Based on DCT Domain

GAO Yu-na,YANG Zhong-gen

(Information Engineering Institute of Shanghai Maritime University,Shanghai 200135,China)

Abstract: This paper introduces the principle methods and applications of digital watermarking and give an watermarking algorithm of the digital image which based on discrete cosine transform (DCT). With matlab programming tools, this algorithm has realized the digital watermark embedding, extraction and attack test.

Key words: digital image;digital watermarking;DCT;MATLAB

1 引言

隨著Internet的普及,信息的安全保護問題日益突出。如何有效地防止數據的非法復制和鑒別數字媒體的知識產權,成為亟需解決的問題。1993年Carormi提出了數字水印的概念,并應用于數字圖像,此后,研究人員將數字水印的概念擴展到電視圖像和聲音等領域。數字水印技術是指在宿主數字媒體(圖像、聲音、視頻)等中嵌入一定量的數字信息,例如作者的電子簽名、日期、公司圖標等,用以證明作品的所有權,并可作為起訴非法侵權的證據,從而保護作品原創者的合法利益。本文介紹了一種基于典型的DCT(離散余弦變換)數字水印算法過程,詳細介紹了用MATLB來實現數字水印的嵌入、提取和攻擊測試的方法。

2 數字水印技術

從信號處理的角度看,在載體圖像中嵌入數字水印可以視為在強背景(即原始圖像)下疊加一個視覺上看不到的弱信號(水印),由于人的視覺系統(Human Visual System,HVS)分辨率受到一定的限制,只要疊加信號的幅度低于HVS的對比度門限,HVS就無法感覺到信號的存在。因此,通過對載體對象作一定的調整,就有可能在不引起人感知的情況下嵌入一些信息。

2.1 數字水印的嵌入

水印嵌入就是把水印信號W={w(k)}嵌入到原始圖像X0(k)={x0(k)}中。水印嵌入過程如圖1所示。

水印嵌入準則分為:

加法準則:x(K)=x0(K)+a*w(k)

乘法準則:x(K)=x0(K)*{1+ a*w(k)}

a為強度因子,為了保證在水印不可見的前提下,盡可能提高嵌入水印的強度。a的選擇必須考慮圖像的性質和視覺系統的特性。

2.2 水印的提取

在某些水印系統中,水印可以被精確地提取出來,這一過程被稱作水印提取。例如在完整性確認的應用中,必須能夠精確地提取出嵌入的水印,并且通過水印的完整性來確認多媒體數據的完整性。如果提取出的水印發生了部分的變化,最好還能夠通過變化的水印的位置來確定原始數據被篡改的位置。水印在提取時可以需要原始圖像的參與,也可以不需要原始圖像的參與。圖2是水印提取的框圖.虛線部分表示在提取或判斷水印信號時原始圖像不是必需的。

2.3 水印檢測

水印在檢測時可以需要原始圖像的參與,也可以不需要原始圖像的參與。但將水印技術用于圖像的網絡發布和傳播時,如果檢測時需要使用原始圖像則是個缺陷,因此,當前大多數的水印檢測算法不需要原始圖像的參與。圖3分別是水印檢測的框圖.虛線部分表示在提取或判斷水印信號時原始圖像不是必需的。

3 DCT域數字圖像水印算法實現

目前可以將數字水印算法可以分成兩類:空域水印算法和頻域水印算法??沼蛩∷惴ㄊ侵笇⑺⌒盘栔苯忧度朐谠紨祿?。頻域水印算法首先將原始的數據進行DCT或小波變換,在頻域上嵌入水印信息,然后經反變換輸出。在檢測水印時,也要首先對信號作相應的數學變換,然后通過相關運算檢測水印。

選擇二值化灰度圖像作為水印信息,根據水印圖像的二值性選擇不同的嵌入系數,并將原始圖像進行8*8的分塊,將數字水印的灰度值直接植入到原始灰度圖像的DCT變換域中,實現水印的嵌入具體方法如下:

3.1 水印嵌入

設X是M*N大小的原始圖像,W是水印圖像,大小為P*Q,M和N分別是P和Q的偶數倍。把水印w加載到圖像X中,算法分以下幾步進行:

將X分解為(M/8)*(N/8)個8*8大小的方塊BX(m,n),同時,將W也分解為(M/8)*(N/8)個(8·P/M)*(8·Q/N)大小的方塊BW(m,n),1=

對每一個BX(m,n)進行DCT變換:DBX’(m,n)=DCT(BX(m,n));

對每一個DBX‘(m,n)和BW(m,n),si為從DBX‘(m,n)的中頻選出的加載的位置,l=

DBX’’(m,n)(si)=a*Bw(m,n)(ti),其中a是加權系數,用DBX”(m,n)(si)來代替DBX’(m,n)(si)得到加載水印后的圖像;

對以上得到的每一個DBCI’(m,n)進行逆DCT變換:IDBX(m,n)=IDCT(DBX’’(m,n))。并將各方塊IDBX(m,n)合并為一個整圖X’.即加載了水印的新圖像。

3.2 水印提取

設圖像X’為已經加載了水印的載體圖像?,F要將所加載的水印從X’中提取出來。其過程為上述加載水印算法的逆運算:將X’分為(M/8)*(N/8)個8*8大小的方塊BX’(m,n),1=

下面給出具體的實現過程:

讀取原始圖像和黑白水印圖像到二維數組I與J;將原像I分割為互不覆蓋的圖像塊blockL(x,y),1=

%嵌入水印的程序代碼

M=960;%原始圖像長度

N=120;%水印圖像長度

K=8;

I=zeros(M,M);J=zeros(N,N);BLOCK=zeros(K,K);%顯示原圖像

subplot(3,2,1);

I=imread('C:\\Documents and Settings\\Administrator\upian\\3.jpg');

I=rgb2gray(I);

I=imresize(I,[960,960],'bicubic');%原始圖像縮放

imshow(I);

title('原始公開圖像');

%顯示水印圖像

subplot(3,2,2);

J=imread('C:\\Documents and Settings\\Administrator\upian\\sucai\\sy3.gif');

J=im2bw(J,0.4);

J=imresize(J,[120,120],'bicubic');

imshow(J);

title('水印圖像');

%水印嵌入

for p=1:N

for q=1:N

x=(p-1)*K+1;y=(q-1)*K+1;

BLOCK=I(x:x+K-1,y:y+K-1); BLOCK=dct2(BLOCK);

if J(p,q)==0

a=-1;

else

a=1;

end

BLOCK=BLOCK*(1+a*0.03);BLOCK=idct2(BLOCK);

I(x:x+K-1,y:y+K-1)=BLOCK;

end

end

%顯示嵌入水印后的圖像

subplot(3,2,3);imshow(I);title('嵌入水印后的圖像');

imwrite(I,'watermarked.jpg','jpg');

%從嵌入水印的圖像中提取水印

I=imread('C:\\Documents and Settings\\Administrator\upian\\3.jpg');

I=rgb2gray(I);

I=imresize(I,[960,960],'bicubic');

J=imread('watermarked.jpg','jpg');

for p=1:N

for q=1:N

x=(p-1)*K+1;

y=(q-1)*K+1;

BLOCK1=I(x:x+K-1,y:y+K-1);

BLOCK2=J(x:x+K-1,y:y+K-1);

BLOCK1=idct2(BLOCK1);

BLOCK2=idct2(BLOCK2);

if BLOCK1(1,1)~=0

a=(BLOCK2(1,1)/BLOCK1(1,1))-1;

if a<0

W(p,q)=0;

else

W(p,q)=1;

end

end

end

end

%顯示提取的水印

subplot(3,2,4);

imshow(W);

title('從含水印的圖像中提取的水印');

圖4 原始圖像與水印圖像 圖5 嵌入水印后的圖像與提取的結果

4 水印攻擊測試

由于數字水印在實際應用中可能會遭到各種各樣的攻擊,因此對算法進行攻擊測試是衡量一個水印算法優劣的重要手段。

下面給出水印攻擊與水印提取的具體實現過程,首先對嵌入水印后的圖像進行JPEG壓縮(一種水印攻擊),而后從壓縮的圖像中提取出水印。如圖6所示,從圖中可以看到DCT域的水印算法抵抗JPEG壓縮攻擊的效果是比較好的。

%水印攻擊測試程序

M=960; N=120; K=8;

I=zeros(M,M); J=zeros(M,M); W=zeros(N,N);

%對嵌入水印后的圖像進行JPEG壓縮

BLOCK1=zeros(K,K);BLOCK2=zeros(K,K);

L=imread('watermarked.jpg','jpg');

imwrite(L,'attack.jpg','jpeg','Quality',45);

J=imread('attack.jpg','jpeg');

figure,

subplot(1,2,1);imshow(J);

title('壓縮后的圖像');

%提取水印

I=imread('C:\\Documents and Settings\\Administrator\\×à??\upian\\3.jpg');

I=rgb2gray(I);

I=imresize(I,[960,960],'bicubic');

for p=1:N

for q=1:N

x=(p-1)*K+1;

y=(q-1)*K+1;

BLOCK1=I(x:x+K-1,y:y+K-1);

BLOCK2=J(x:x+K-1,y:y+K-1);

BLOCK1=idct2(BLOCK1);

BLOCK2=idct2(BLOCK2);

if BLOCK1(1,1)~=0

a=(BLOCK2(1,1)/BLOCK1(1,1))-1;

if a<0

W(p,q)=0;

else

W(p,q)=1;

end

end

end

end

%顯示提取的水印

subplot(1,2,2);

imshow(W);

title('從經過壓縮的圖像中提取的水印');

5 結束語

從圖4,5中可明顯看出:嵌入水印信息后,原圖與嵌入水印信息后的圖像在視覺效果上沒有明顯分別,用肉眼幾乎分辨不出,這說明這種算法充分利用了人眼的視覺HVS特性,利用DCT域嵌入水印后,水印的不可見性相當好,圖像在嵌入水印前后視覺效果改變不大,不影響圖像的正常使用。

從圖6可明顯看出:嵌入水印后的圖像經過參數.‘Quality’為45的JPEG壓縮后,還能從中提取出較清晰的水印信息,可見,這種嵌入算法的抗攻擊性較好,而且檢測和提取易于實現,具有很好的實用性。

參考文獻:

[1] 王銀花.基于matlab的數字水印技術實現[J].巢湖學院學報,2007,9(3).

[2] 易開祥.數字圖像加密與數字水印技術研究[D].浙江大學,2006.

[3] 胡彥,陳昭炯.MATLAB在數字水印中的應用[J].計算機工程,2003(7).

[4] 張春田,蘇玉挺,管曉康.多媒體數字水印技術[D].通信學報,2000,21(9).

主站蜘蛛池模板: 99国产精品免费观看视频| 国产又黄又硬又粗| 草逼视频国产| 啪啪永久免费av| 亚洲人成电影在线播放| 国产a v无码专区亚洲av| 久久99精品久久久大学生| 亚洲三级电影在线播放| 无码网站免费观看| 免费aa毛片| 九一九色国产| 午夜激情福利视频| 日本午夜精品一本在线观看| 午夜不卡视频| 国产成人精品高清在线| 55夜色66夜色国产精品视频| 欧美成人aⅴ| 国产小视频免费| 午夜毛片福利| 伊在人亞洲香蕉精品區| аⅴ资源中文在线天堂| 欧美一区二区福利视频| 毛片最新网址| 国产欧美高清| 色综合久久综合网| 国产幂在线无码精品| 91视频区| 国产精品自拍露脸视频| 国产91小视频| 久久精品无码中文字幕| 成人福利在线免费观看| 91亚瑟视频| 欧美成人看片一区二区三区| 伊人久久婷婷| 国产精品第一区在线观看| 亚洲黄色视频在线观看一区| 亚洲天堂啪啪| 在线无码av一区二区三区| 中国特黄美女一级视频| 热这里只有精品国产热门精品| a亚洲视频| 午夜视频免费一区二区在线看| 日韩在线永久免费播放| 国产精品专区第1页| 亚洲黄网视频| 国产人在线成免费视频| 伊人激情综合网| av手机版在线播放| 欧美在线一二区| 亚洲娇小与黑人巨大交| 久久久黄色片| 国产乱人视频免费观看| 内射人妻无套中出无码| 亚洲无码电影| 国产精品污污在线观看网站| 亚洲综合香蕉| 亚洲男人的天堂久久精品| 国产农村精品一级毛片视频| 国产一区二区三区在线无码| 久久久久青草线综合超碰| 精品少妇人妻av无码久久| 欧美福利在线| 日韩不卡高清视频| 国产情侣一区| 国产成人一区| 蜜芽国产尤物av尤物在线看| 无码精品一区二区久久久| 欧美日韩在线亚洲国产人| 亚洲综合日韩精品| 中文无码伦av中文字幕| 99精品国产电影| 色综合久久久久8天国| 国内毛片视频| 亚洲三级影院| 熟女成人国产精品视频| 一级不卡毛片| 久久婷婷综合色一区二区| 欧美亚洲国产精品第一页| 色哟哟精品无码网站在线播放视频| 精品三级网站| 亚洲天堂区| 欧美日韩动态图|