公路卡口監(jiān)控系統(tǒng)中的圖像防偽設計(共18頁)_第1頁
公路卡口監(jiān)控系統(tǒng)中的圖像防偽設計(共18頁)_第2頁
公路卡口監(jiān)控系統(tǒng)中的圖像防偽設計(共18頁)_第3頁
公路卡口監(jiān)控系統(tǒng)中的圖像防偽設計(共18頁)_第4頁
公路卡口監(jiān)控系統(tǒng)中的圖像防偽設計(共18頁)_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、山東建筑大學實驗報告學院: 信電學院 班級:電信112 姓名: 王丙全 學號: 2011081245課程: 數(shù)字圖像處理 實驗日期:2014年 11月28日 成績: PAGE PAGE 22 摘要(zhiyo) 隨著數(shù)字技術和因特網(wǎng)的發(fā)展,各種形式的多媒體數(shù)字作品被通過網(wǎng)絡進行傳輸,然而數(shù)字作品的便利性和不安全性是并存的,它可以低成本、高速度地被復制和傳播,這樣就為創(chuàng)造者和使用者都提供了很大的便利,但這些特性也容易被盜版者所利用,因而采取多種手段對數(shù)字作品進行保護、對侵權者進行懲罰已經(jīng)成為十分迫切的工作。除了(ch le)與傳統(tǒng)作品版權保護相類似的法律和管理手段外,還應該針對數(shù)字作品本身的特點

2、為其提供技術上的保護。數(shù)字水印技術的研究就是在這種應用要求下逐步發(fā)展起來成為國際上研究熱門的課題。 一、設計目的(md)和要求根據(jù)已知設計要求分析監(jiān)控視頻中道路車流量檢測系統(tǒng)設計功能,確定監(jiān)控視頻中道路車流量檢測系統(tǒng)設計的方法,畫出流程圖,編寫實現(xiàn)程序,并進行調(diào)試,完成系統(tǒng)軟件設計。根據(jù)設計題目的要求,請設計卡口監(jiān)控系統(tǒng)中圖像的防偽算法,選擇適當?shù)谋Wo信息做為水印,實現(xiàn)水印的嵌入、提取及真?zhèn)蔚蔫b別。二、設計原理 1.載體圖像和水印的選取卡口監(jiān)控系統(tǒng)中,通常對抓拍得到的數(shù)字信息以圖像的形式存儲起來,以便日后的調(diào)查取證,為此載體圖像可選擇抓拍到的圖像,通常在圖像中會包含具體的違章信息。水印的選擇主

3、要考慮兩個方面:(1)用于圖像的真實性鑒別,通??紤]嵌入抓拍機構的特有信息,比如印章圖像,以便于圖像在傳輸中遭受到某種篡改后,還能通過提取的水印來驗證圖像來源的真實性。(2)用于防止圖像篡改,抓拍的圖像在傳輸過程中可能會受到惡意篡改,例如更改違章車輛的車牌號碼等信息,此時可以考慮把抓拍圖像中的具體違章信息作為水印。2.嵌入(qin r)、提取(tq)方法 選擇(xunz)水印算法時,一般要滿足:安全性、隱蔽性和魯棒性。(1)由于抓拍圖片均為彩色圖像,而對彩色圖像進行處理較為復雜,建議首先對圖片進行灰度化處理。(2)嵌入位置選取。水印嵌入通??蛇x擇在空間域或變換域進行??臻g域方法是直接修改像素值

4、。該類方法比較簡單,但嵌入的水印信息不能太多,魯棒性比較差;變換域方法首先對圖像進行某種可逆的數(shù)學變換,然后對變換域的系數(shù)進行某種修改,再進行逆變換得到圖像,目前大多數(shù)水印算法都采用傅立葉變換(FFT)、離散余弦變換(DCT)和離散小波變換(DWT)。本次設計建議選擇DCT域嵌入水印。 圖像在經(jīng)過DCT變換后, DCT系數(shù)分布可分為低、中、高三個頻帶。其中交流分量的低頻系數(shù)分布在矩陣的左上角,是三個頻帶中系數(shù)值較大的區(qū)域,集中了圖像的大部分能量,中頻、高頻依次向外分布,如下圖所示:DCT變換分布圖將水印嵌入到高頻中不易被人眼所察覺,然而經(jīng)過圖像處理或攻擊,極易產(chǎn)生水印數(shù)據(jù)損失;低頻中集中了圖像

5、的絕大部分能量,相對來說擁有更大的嵌入容量,對于惡意攻擊的魯棒性較好,但嵌入時要考慮對圖像隱蔽性的影響。設計中,要根據(jù)卡口監(jiān)控系統(tǒng)的需要,選擇嵌入在DCT變換的低頻、中頻或高頻系數(shù)上。(3)嵌入(qin r)算法常見的嵌入算法(sun f)有加性、乘性規(guī)則、位平面、系數(shù)交換法等。乘性規(guī)則和系數(shù)交換法在時空領域中引起的變動較大,這里建議選擇加性或位平面法。加性規(guī)則(guz) 通常在加性規(guī)則中都帶有嵌入因子,以調(diào)整所嵌入水印的不可見性和魯棒性: 其中為原始載體的變換系數(shù)(如DCT變換系數(shù))為含水印圖像的系數(shù), 為水印,a為嵌入強度因子。對于嵌入強度a的選擇,通常要求嵌入強度要滿足不可見性,兼顧魯棒

6、性,嵌入強度會影響含水印圖像的質(zhì)量,通常用psnr來衡量,人眼視覺可以接受的psnr值灰度約為32。 位平面 最初的位平面方法為空域的最低有效位(LSB)和最高有效位(MSB),LSB的魯棒性較差,MSB的不可見性差,可以采取折中方案,嵌入在中間位平面,進而擴展到圖象變換系數(shù)的位平面嵌入方法。(4)提取算法數(shù)字水印的提取是嵌入的逆過程,例如上面的加性嵌入,相應的水印提取應該為。3.算法分析通過編碼實現(xiàn)水印的嵌入,并在無攻擊測試的情況下進行水印的提取,通過主觀的人眼觀察和峰值信噪比(PSNR)分析水印的隱蔽性,比較原始水印和提取水印的相似程度(相似度NC)。峰值(fn zh)信噪比(PSNR)在

7、一定程度上反應圖像數(shù)據(jù)處理前后的變化情況,一般用它作為評價水印嵌入過程造成圖像失真的標準。其計算方法如下: 2 這里(zhl)的M、N為行像素(xin s)及列像素數(shù)。為嵌有水印的數(shù)字圖像,為沒有嵌入水印的原始圖像。 相似度函數(shù)NC為: 其中表示提取的水印,表示原始水印,NC(01)越大說明圖像之間的相似度越大。4.抗攻擊性能分析 對含水印圖像進行加噪、壓縮、剪裁、替換等常規(guī)處理,提取水印,檢測提取水印與原始水印的相似度,分析算法抵抗各種攻擊的性能。附:主要的matlab函數(shù) (1)數(shù)據(jù)輸入輸出函數(shù)imread( )和imwrite( ):可以讀寫bmp、jpg/jpeg、 tif/tiff、

8、 png、hdf、pcx、wxd格式文件。 (2)圖像顯示imshow( ):顯示一幅圖像;imfinfo( ):可以得到讀入圖像的信息。如文件的大小、格式、格式版本號、圖像的高度、寬度、顏色類型(真彩色,灰度圖還是索引圖)等。(3)變換函數(shù)fft2( ):計算(j sun)二維快速傅立葉變換ifft2( ):計算(j sun)二維傅立葉變換的反變換dct2( ):計算二維離散(lsn)余弦變換idct2( ):計算二維離散余弦反變換blkproc( ):分塊處理dwt2( ):一層二維離散小波變換idwt2( ):一層二維離散小波反變換(4) 攻擊函數(shù)旋轉(zhuǎn):rotate( )可以對圖像進行任

9、意角度的旋轉(zhuǎn);剪裁:imcrop ( )可以按精確定位的各點坐標進行剪裁;濾波:filter( )和filter2( )可實現(xiàn)對一維信號和二維信號的濾波;抖動:dither( )對圖像進行抖動;抖動攻擊考驗水印魯棒性的一個很好的攻擊;jpeg壓縮:imwrite( )中jpg和quality參數(shù)能對圖像進行可控jpg壓縮;加噪聲:imnoise( )可以對圖像加入各種噪聲,如白噪聲、椒鹽噪聲等。三、設計內(nèi)容1、添加不同位置水印進行效果對比 1.1、方案設計流程圖讀取水印圖像生成水印序列讀取載體圖象嵌入水印改變水印位置進行比較 1.2、編程與調(diào)試clear all; clc;start_time

10、=cputime;% 讀取水印(shuyn)圖像 % I=imread(C:Documents and Settingsvlab桌面(zhumin)DCT_watermark333.bmp);I=rgb2gray(I);I=double(I)/255; I=ceil(I);%顯示(xinsh)水印圖像%figure(1);subplot(2,3,1);imshow(I),title(水印圖像)dimI=size(I);rm=dimI(1);cm=dimI(2);%5 以下生成水印信息 %mark=I;alpha=50,k1=randn(1,8);k2=randn(1,8);a0=imread(

11、C:Documents and Settingsvlab桌面DCT_watermarklena.bmp);psnr_cover=double(a0);subplot(2,3,2),imshow(a0,),title(載體圖像);r,c=size(a0);cda0=blkproc(a0,8,8,dct2);% 嵌入 %cda1=cda0; % cda1 = 256_256for i=1:rm % i=1:32 for j=1:cm % j=1:32 x=(i-1)*8;y=(j-1)*8; if mark(i,j)=1 k=k1; else k=k2; end cda1(x+1,y+8)=cda

12、0(x+1,y+8)+alpha*k(1); cda1(x+2,y+7)=cda0(x+2,y+7)+alpha*k(2); cda1(x+3,y+6)=cda0(x+3,y+6)+alpha*k(3); cda1(x+4,y+5)=cda0(x+4,y+5)+alpha*k(4); cda1(x+5,y+4)=cda0(x+5,y+4)+alpha*k(5); cda1(x+6,y+3)=cda0(x+6,y+3)+alpha*k(6); cda1(x+7,y+2)=cda0(x+7,y+2)+alpha*k(7); cda1(x+8,y+1)=cda0(x+8,y+1)+alpha*k(8

13、); endend% 嵌入(qin r)水印后圖像 %a1=blkproc(cda1,8,8,idct2); a_1=uint8(a1);imwrite(a_1,C:Documents and Settingsvlab桌面(zhumin)DCT_watermarkwithmark.bmp,bmp);subplot(2,3,3),imshow(a1,),title(嵌入水印(shuyn)后圖像);disp(嵌入水印處理時間);embed_time=cputime-start_time,水印嵌在中頻位置,如圖1 圖1(2)水印嵌在低頻位置,如圖2 圖2(3)水印嵌在高頻(o pn)位置,如圖3 圖

14、32、添加(tin ji)不同強度水印(shuyn)進行效果對比 2.1、方案設計流程圖讀取水印圖像生成水印序列讀取載體圖象嵌入水印改變水印強度進行比較 2.2、編程與調(diào)試(dio sh)clear all; clc;start_time=cputime;% 讀取水印(shuyn)圖像 % I=imread(C:Documents and Settingsvlab桌面(zhumin)DCT_watermark333.bmp);I=rgb2gray(I);I=double(I)/255; I=ceil(I);%顯示水印圖像%figure(1);subplot(2,3,1);imshow(I),t

15、itle(水印圖像)dimI=size(I);rm=dimI(1);cm=dimI(2);%5 以下生成水印信息 %mark=I;alpha=10,k1=randn(1,8);k2=randn(1,8);a0=imread(C:Documents and Settingsvlab桌面DCT_watermarklena.bmp);psnr_cover=double(a0);subplot(2,3,2),imshow(a0,),title(載體圖像);r,c=size(a0);cda0=blkproc(a0,8,8,dct2);% 嵌入 %cda1=cda0; % cda1 = 256_256fo

16、r i=1:rm % i=1:32 for j=1:cm % j=1:32 x=(i-1)*8;y=(j-1)*8; if mark(i,j)=1 k=k1; else k=k2; end cda1(x+1,y+8)=cda0(x+1,y+8)+alpha*k(1); cda1(x+2,y+7)=cda0(x+2,y+7)+alpha*k(2); cda1(x+3,y+6)=cda0(x+3,y+6)+alpha*k(3); cda1(x+4,y+5)=cda0(x+4,y+5)+alpha*k(4); cda1(x+5,y+4)=cda0(x+5,y+4)+alpha*k(5); cda1(

17、x+6,y+3)=cda0(x+6,y+3)+alpha*k(6); cda1(x+7,y+2)=cda0(x+7,y+2)+alpha*k(7); cda1(x+8,y+1)=cda0(x+8,y+1)+alpha*k(8); endend% 嵌入水印(shuyn)后圖像 %a1=blkproc(cda1,8,8,idct2); a_1=uint8(a1);imwrite(a_1,C:Documents and Settingsvlab桌面(zhumin)DCT_watermarkwithmark.bmp,bmp);subplot(2,3,3),imshow(a1,),title(alpha

18、 =10);disp(嵌入水印處理(chl)時間);embed_time=cputime-start_time,alpha=10,如圖4 圖4alpha=50,如圖5 圖5alpha=250,如圖6 圖63、抗攻擊(gngj)效果對比(如加噪、壓縮(y su)、剪切攻擊(gngj)等) 3.1、方案設計流程圖讀取水印圖像生成水印序列讀取載體圖象嵌入水印對水印圖片進行攻擊攻擊比較 3.2、編程與調(diào)試(dio sh)clear all; clc;start_time=cputime;% 讀取水印(shuyn)圖像 % I=imread(C:Documents and Settingsvlab桌面(

19、zhumin)DCT_watermark333.bmp);I=rgb2gray(I);I=double(I)/255; I=ceil(I);%顯示水印圖像%figure(1);subplot(2,3,1);imshow(I),title(水印圖像)dimI=size(I);rm=dimI(1);cm=dimI(2);%5 以下生成水印信息 %mark=I;alpha=50,k1=randn(1,8);k2=randn(1,8);a0=imread(C:Documents and Settingsvlab桌面DCT_watermarklena.bmp);psnr_cover=double(a0)

20、;subplot(2,3,2),imshow(a0,),title(載體圖像);r,c=size(a0);cda0=blkproc(a0,8,8,dct2);% 嵌入 %cda1=cda0; % cda1 = 256_256for i=1:rm % i=1:32 for j=1:cm % j=1:32 x=(i-1)*8;y=(j-1)*8; if mark(i,j)=1 k=k1; else k=k2; end cda1(x+1,y+8)=cda0(x+1,y+8)+alpha*k(1); cda1(x+2,y+7)=cda0(x+2,y+7)+alpha*k(2); cda1(x+3,y+

21、6)=cda0(x+3,y+6)+alpha*k(3); cda1(x+4,y+5)=cda0(x+4,y+5)+alpha*k(4); cda1(x+5,y+4)=cda0(x+5,y+4)+alpha*k(5); cda1(x+6,y+3)=cda0(x+6,y+3)+alpha*k(6); cda1(x+7,y+2)=cda0(x+7,y+2)+alpha*k(7); cda1(x+8,y+1)=cda0(x+8,y+1)+alpha*k(8); endend% 嵌入水印(shuyn)后圖像 %a1=blkproc(cda1,8,8,idct2); a_1=uint8(a1);imwri

22、te(a_1,C:Documents and Settingsvlab桌面(zhumin)DCT_watermarkwithmark.bmp,bmp);subplot(2,3,3),imshow(a1,),title(嵌入(qin r)水印后的圖像);disp(嵌入水印處理時間);embed_time=cputime-start_time,% 攻擊實驗 測試魯棒性 %disp(對嵌入水印的圖像的攻擊實驗,請輸入選擇項:);disp(1-添加白噪聲);disp(2-高斯低通濾波);disp(3-JPEG 壓縮);disp(4-圖像剪切);disp(5-旋轉(zhuǎn)10度);disp(6-直接檢測水印);

23、disp(其他-不攻擊);d=input(請輸入選擇(1-6):);start_time=cputime; figure(1); switch d case 6 subplot(2,3,4); imshow(a1,); title(未受攻擊的含水(hn shu)印圖像); M1=a1; case 1 WImage2=a1; noise0=20*randn(size(WImage2); WImage2=WImage2+noise0; subplot(2,3,4); imshow(WImage2,); title(加入白噪聲(zoshng)后圖像); M1=WImage2; M_1=uint8(M

24、1); imwrite(M_1,whitenoise.bmp,bmp); case 2 WImage3=a1; H=fspecial(gaussian,4,4,0.2); WImage3=imfilter(WImage3,H); subplot(2,3,4); imshow(WImage3,); title(高斯(o s)低通濾波后圖像); M1=WImage3; M_1=uint8(M1); imwrite(M_1,gaussian.bmp,bmp); case 4 WImage4=a1; WImage4(1:64,1:512)=512; %WImage4(224:256,1:256)=25

25、6; %WImage4(1:256,224:256)=256; %WImage4(1:256,1:32)=256; WImage4cl=mat2gray(WImage4); figure(2); subplot(1,1,1); %subplot(2,3,4); imshow(WImage4cl); title(部分(b fen)剪切后圖像); figure(1); M1=WImage4cl; %M_1=uint8(M1); %imwrite(M_1,cutpart.bmp,bmp); case 3 WImage5=a1; WImage5=im2double(WImage5); cnum=10;

26、 dctm=dctmtx(8); P1=dctm; P2=dctm.; imageDCT=blkproc(WImage5,8,8,P1*x*P2,dctm,dctm.); DCTvar=im2col(imageDCT,8,8,distinct).; n=size(DCTvar,1); DCTvar=(sum(DCTvar.*DCTvar)-(sum(DCTvar)/n).2)/n; dum,order=sort(DCTvar); cnum=64-cnum; mask=ones(8,8); mask(order(1:cnum)=zeros(1,cnum); im88=zeros(9,9); im

27、88(1:8,1:8)=mask; im128128=kron(im88(1:8,1:8),ones(16); dctm=dctmtx(8); P1=dctm.; P2=mask(1:8,1:8); P3=dctm; WImage5=blkproc(imageDCT,8,8,P1*(x.*P2)*P3,dctm.,mask(1:8,1:8),dctm); WImage5cl=mat2gray(WImage5); %figure(2); subplot(2,3,4); imshow(WImage5cl); title(經(jīng)JPEG壓縮(y su)后圖像); %figure(1); M1=WImag

28、e5cl; case 5 WImage6=a1; WImage6=imrotate(WImage6,10,bilinear,crop); WImage6cl=mat2gray(WImage6); figure(2); subplot(1,1,1); imshow(WImage6cl); title(旋轉(zhuǎn)(xunzhun)10度后圖像); figure(1); M1=WImage6cl; otherwise disp(你輸入的是無效數(shù)字(shz),圖像未受攻擊,將直接檢測水印); subplot(2,3,4); imshow(a1,); title(未受攻擊的含水(hn shu)印圖像); M1

29、=a1; end%888888888888888888888888888888888888888888 提取水印 %psnr_watermarked=M1;dca1=blkproc(M1,8,8,dct2);p=zeros(1,8);for i=1:dimI(1) for j=1:dimI(2) % j=1:32 x=(i-1)*8;y=(j-1)*8; p(1)=dca1(x+1,y+8); p(2)=dca1(x+2,y+7); p(3)=dca1(x+3,y+6); p(4)=dca1(x+4,y+5); p(5)=dca1(x+5,y+4); p(6)=dca1(x+6,y+3); p

30、(7)=dca1(x+7,y+2); p(8)=dca1(x+8,y+1); %sd1=sum(sum(p.*k1)/sqrt(sum(sum(p.2); %sd2=sum(sum(p.*k2)/sqrt(sum(sum(p.2); %if sd1sd2 if corr2(p,k1)corr2(p,k2),warning off MATLAB:divideByZero; mark1(i,j)=1; else mark1(i,j)=0; end endendsubplot(2,3,5);imshow(mark1,),title(提取(tq)的水印圖像);subplot(2,3,6);imwrite(mark1,getmark.bmp,bmp);imshow(mark),title(原嵌入(qin r)水印比較);% time %disp(攻擊與提取(tq)處理時間)attack_recover_time=cputime-start_time,% psnr %disp(載體圖像與含水印圖像峰值信噪比)PSNR=psnr(psnr_cover,psnr_watermarked,c,r),% Oringinal mark a

溫馨提示

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

評論

0/150

提交評論