信息隱藏實(shí)驗(yàn)(LSB隱寫,隨機(jī)LSB隱寫,RS隱寫分析)_第1頁(yè)
信息隱藏實(shí)驗(yàn)(LSB隱寫,隨機(jī)LSB隱寫,RS隱寫分析)_第2頁(yè)
信息隱藏實(shí)驗(yàn)(LSB隱寫,隨機(jī)LSB隱寫,RS隱寫分析)_第3頁(yè)
信息隱藏實(shí)驗(yàn)(LSB隱寫,隨機(jī)LSB隱寫,RS隱寫分析)_第4頁(yè)
信息隱藏實(shí)驗(yàn)(LSB隱寫,隨機(jī)LSB隱寫,RS隱寫分析)_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、信息隱藏實(shí)驗(yàn)二LSB隱寫分析 姓名:周偉康 學(xué)號(hào): 班級(jí):- 12 -僅供參考一:實(shí)驗(yàn)要求1、針對(duì)自己實(shí)現(xiàn)的隱寫算法(嵌入、提?。?,計(jì)算隱蔽載體的PSNR值,通過PSNR值來評(píng)估隱寫對(duì)圖像質(zhì)量的影響,并與主觀感受做對(duì)比。2、實(shí)現(xiàn)一種隱寫分析方法,對(duì)隱蔽載體進(jìn)行檢測(cè)(卡方、RS)二:實(shí)驗(yàn)步驟1、 編寫隨機(jī)選點(diǎn)函數(shù),完善順序和隨機(jī)兩種LSB信息嵌入和提取。%隨機(jī)間隔選點(diǎn)函數(shù)%row, col = randinterval(test, 60, 1983);function row, col = randinterval(matrix, count, key)m, n = size(matrix);i

2、nterval1 = floor(m * n / count) + 1;interval2 = interval1 - 2;if interval2 = 0 error(載體太小,不能將秘密消息隱藏其內(nèi)!);endrand(seed, key);a = rand(1, count);%initializerow = zeros(1 count);col = zeros(1 count);r = 1; c = 1;row(1,1) = r;col(1,1) = c;for i = 2 : count if a(i) = 0.5 c = c + interval1; else c = c + in

3、terval2; end if c n r = r + 1; if r m error(載體太小,不能將秘密消息隱藏其內(nèi)!); end c = mod(c, n); if c=0 c = 1; end endrow(1, i) = r;col(1, i) = c;end選取8*8的矩陣測(cè)試2、 對(duì)比原始圖像和隱藏信息后圖像,計(jì)算隱蔽載體的均方差(MSE)進(jìn)而計(jì)算峰值信噪比(PSNR),評(píng)估隱寫對(duì)圖像質(zhì)量的影響。 %輸入格式: F = compare(D:課件hidepic2.jpg,scover.jpg);function F = compare(original, hided)W = imr

4、ead(original);E = imread(hided);if any(size(W)=size(E) error(尺寸不同,不能比較);endF = W - E;%F = double(F)/255;imshow(mat2gray(double(F)/255);psnr, mse = qualify(F);function PSNR, MSE = qualify(Delta)%計(jì)算MSE和PSNR; MSE = sum(Delta(:) .2)/prod(size(W); PSNR = 10*log10(2552/MSE); endtitle(差異對(duì)比 PSNR = ,num2str(

5、psnr);end測(cè)試代碼:clc;clear;key = 20112910;originalfile = D:hidepicb.bmp;messagefile = D:hidepicmessage.txt;scoverfile1 = D:hidepicscover1.bmp;scoverfile2 = D:hidepicscover2.bmp;getfile1 = D:hidepicsecret1.txt;getfile2 = D:hidepicsecret2.txt;ste_cover, len_total = LSBhide(originalfile,messagefile,scover

6、file1);subplot(233);compare(originalfile,scoverfile1);x = LSBget(scoverfile1, len_total, getfile1);% ffste_cover2, len_total2 = randLSBhide(originalfile, messagefile,scoverfile2,key);subplot(236);compare(originalfile,scoverfile2);x = randLSBget(scoverfile2, len_total2, getfile2,key);隱寫提取結(jié)果:(成功)實(shí)驗(yàn)結(jié)果1

7、:實(shí)驗(yàn)結(jié)果2:結(jié)果分析:后者PSNR大說明隨機(jī)LSB比順序LSB隱寫安全性更好。3、 對(duì)256256像素,256色的灰度圖像進(jìn)行RS隱寫分析。RS原理:給定一個(gè)圖像塊,Zigzag掃描,排列成一個(gè)向量G=(x1,x2xn)圖像的空間相關(guān)性定義翻轉(zhuǎn)函數(shù):F1:2i與2i+1的相互變化關(guān)系F-1:2i-1與2i的相互變化關(guān)系F0:不變關(guān)系RS分析步驟:將待檢測(cè)圖像分成大小相同的圖像塊計(jì)算每個(gè)圖像塊的空間相關(guān)性對(duì)每個(gè)圖像塊應(yīng)用非負(fù)翻轉(zhuǎn)(F1, F0)RM=空間相關(guān)性增加的圖像塊個(gè)數(shù)/圖像塊總個(gè)數(shù)SM=空間相關(guān)性減小的圖像塊個(gè)數(shù)/圖像塊總個(gè)數(shù)對(duì)每個(gè)圖像塊應(yīng)用非正翻轉(zhuǎn)(F-1, F0)R-M=空間相關(guān)性

8、增加的圖像塊個(gè)數(shù)/圖像塊總個(gè)數(shù)S-M=空間相關(guān)性減小的圖像塊個(gè)數(shù)/圖像塊總個(gè)數(shù)若R-M - S-M RM SM,則有LSB隱寫。%RS方法對(duì)256*256像素,256色灰度圖進(jìn)行LSB隱寫檢測(cè)。%y = RSanalysis(originalfile);function fff = RSanalysis(input)org = imread(input);org = double(org);org = org(:);row, len = size(org);rs = zeros(2, 4);fx = zeros(1, 3);m = floor(len / 4);M = randsrc(4, 1

9、, 0, 1);%temp = zeros(4, 1);%temp = 27,28,26,25;M = 1 0 1 0;stg = org;for i = 1:2 for j = 1:m temp = stg(j-1)*4+1 : j * 4); %disp(temp); fx(1) = discrimination(temp); fx(2) = discrimination(fpos(temp, M); fx(3) = discrimination(fneg(temp, M); if fx(2) fx(1) rs(i, 1) = rs(i, 1) + 1; end if fx(2) fx(1

10、) rs(i, 3) = rs(i, 3) + 1; end if fx(3) (rs(1,1)-rs(1,2);if fff disp(含有隱藏信息);elsedisp(未檢測(cè)出隱藏信息。);endrs = rs/m;dpz = rs(1,1) - rs(1,2); dpo = rs(2,1) - rs(2,2);dnz = rs(1,3) - rs(1,4); dno = rs(2,3) - rs(2,4);C = 2*(dpo+dpz),(dnz-dno-dpo-3*dpz),(dpz-dnz);z = roots(C);p = z ./ (z-0.5);fprintf(1,隱寫率為:%

11、fn, p(2);fprintf(1,隱寫長(zhǎng):%fn, p(2)*row*len);endfunction v = discrimination(t) v = abs(t(2)-t(1) + abs(t(3)-t(2) + abs(t(4)-t(3);end function r = fpos(t, m) r = t; MM = size(m, 2); for q = 1:MM if m(q) = 1 if mod(t(q),2) = 0 r(q) = r(q) + 1; else r(q) = r(q) - 1; end if r(q) 255 r(q) = 0; end end enden

12、dfunction r = fneg(t, m) r = t; for q = 1:size(m) if m(q) = 1 if mod(t(q),2) = 0 r(q) = r(q) - 1; else r(q) = r(q) + 1; end end if r(q) 255 r(q) = 0; end endend測(cè)試代碼:y = RSanalysis(originalfile);y = RSanalysis(scoverfile1);y = RSanalysis(scoverfile2);實(shí)驗(yàn)數(shù)據(jù)1:(對(duì)應(yīng)Bird圖隱寫)實(shí)驗(yàn)數(shù)據(jù)2:(對(duì)應(yīng)Lena圖隱寫)結(jié)果分析:隱寫檢測(cè)成功!但是隱寫

13、率和隱寫消息長(zhǎng)度估計(jì)嚴(yán)重有誤,應(yīng)該是參數(shù)計(jì)算有誤。三:總結(jié)對(duì)Matlab進(jìn)一步學(xué)習(xí)后,初步掌握了函數(shù)的編寫方法,將本次和上次實(shí)驗(yàn)代碼修改為函數(shù)封裝調(diào)用的形式,使編碼結(jié)構(gòu)更清晰,編寫修改更方便。代碼后若無;,執(zhí)行時(shí)會(huì)產(chǎn)生大量中間過程輸出,耽誤運(yùn)行和查看。故要養(yǎng)成寫分號(hào)的習(xí)慣,若必要的輸出用disp或加注釋醒目。對(duì)不符合大小尺寸的隱蔽體,將無法分析出正確結(jié)果。對(duì)于幾個(gè)字節(jié)的短消息隱藏載體,也無法檢測(cè)到隱藏了信息。隱寫率和隱寫信息長(zhǎng)估計(jì)都沒有調(diào)試成功,對(duì)算法還沒有完全理解通透。附:順序LSB和隨機(jī)LSB隱寫,提取代碼:LSBhide.m%LSB上的順序信息隱藏,載體選用灰度bmp圖%輸入格式: st

14、e_cover, len_total =% LSBhide(D:課件hidepic2.jpg,D:課件hidepicmessage.txt,scover.jpg);function ste_cover, len_total = LSBhide(input, file, output)%讀入圖像矩陣cover = imread(input);ste_cover = cover;%ste_cover = double(ste_cover);%將文本文件轉(zhuǎn)換為二進(jìn)制序列f_id = fopen(file, r);msg, len_total = fread(f_id, ubit1);fprintf(

15、隱藏消息長(zhǎng)度:%dn,len_total);%溢出檢測(cè)m, n = size(ste_cover);if len_total m * n error(嵌入消息量過大,請(qǐng)更換圖像!);endif len_total = 0 error(請(qǐng)輸入隱藏消息!);endp = 1;for f2 = 1 : n for f1 = 1 : m ste_cover(f1, f2) = ste_cover(f1, f2) - mod(ste_cover(f1, f2), 2) + msg(p, 1); if p = len_total break; end p = p + 1; end if p = len_t

16、otal break; endend%生成信息隱藏后的圖像imwrite(ste_cover, output);%顯示結(jié)果subplot(231);imshow(cover);title(原始圖像);subplot(232);imshow(output);title(LSB隱藏后圖像);LSBget.m%result = LSBget(scover.bmp,length, secret.txt)function result = LSBget(output, len_total, goalfile)ste_cover = imread(output);%ste_cover = double(s

17、te_cover);m, n = size(ste_cover);frr = fopen(goalfile, w);if len_total m * n error(嵌入消息量過大,請(qǐng)更換圖像!);endif len_total = 0 error(請(qǐng)輸入隱藏消息!);endp = 1;row, col = randinterval(ste_cover, len_total, key);for i = 1 : len_total ROW = row(i); COL = col(i); ste_cover(ROW, COL) = ste_cover(ROW, COL) - mod(ste_cov

18、er(ROW, COL), 2) + msg(p, 1); if p = len_total break; end p = p + 1;end%生成信息隱藏后的圖像imwrite(ste_cover, output);%顯示結(jié)果subplot(234);imshow(cover);title(原始圖像);subplot(235);imshow(output);title(隨機(jī)LSB隱藏后圖像);randLSBget.m%result = randLSBget(scover.bmp,length, secret.txt)function result = randLSBget(output, len_total, goalfile, key)ste_cover = imread(output);%ste_cover = double(ste_cover);m, n = size(ste_cover);frr = fopen(goalfile, w);i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論