版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、本章指導(dǎo):MATLAB是一套高性能的數(shù)值計(jì)算和可視化軟件,其強(qiáng)大的圖形功能以及豐富的圖像處理工具函數(shù)(hnsh),使得MATLAB特別適合于圖像處理學(xué)習(xí)和應(yīng)用。本章將結(jié)合數(shù)字水印技術(shù),重點(diǎn)介紹如何利用MATLAB實(shí)現(xiàn)圖像處理的基本功能。第10章 基于(jy)MATLAB數(shù)字水印系統(tǒng)設(shè)計(jì) 共五十二頁第10章 基于MATLAB數(shù)字水印系統(tǒng)(xtng)設(shè)計(jì) 10.1 MATLAB簡介 10.2 數(shù)字水印概述 10.3 基于DCT域的魯棒水印 10.4 基于空域(kngy)的脆弱水印 10.5 基于DWT域的脆弱水印 共五十二頁 MATLAB是MathWork公司于1982年推出的一套高性能的數(shù)值計(jì)算
2、和可視化軟件,其強(qiáng)大的圖形功能以及豐富的圖像處理工具函數(shù)(hnsh),使得MATLAB特別適合于圖像處理學(xué)習(xí)和應(yīng)用。 MATLAB是一個(gè)交互式系統(tǒng),其基本數(shù)據(jù)元素是無需定義的數(shù)組。與高級語言相比,它只需極少的代碼就可以解決眾多的數(shù)值問題。因此,特別適合解決需要矩陣運(yùn)算的工程問題,在數(shù)字圖像處理領(lǐng)域有重要的用途。10.1 MATLAB簡介(jin ji) 共五十二頁10.1.1 MATLAB基礎(chǔ)(jch)MATLAB是一種面向數(shù)組(Array)的編程語言。數(shù)據(jù)類型的最大特點(diǎn)(tdin)是每一種類型都以數(shù)組為基礎(chǔ),從數(shù)組中派生出來,MATLAB把每種類型的數(shù)據(jù)都作為數(shù)組來處理。在MATLAB ,有
3、6種基本的數(shù)據(jù)類型,即:char(字符)、double(雙精度數(shù)值)、sparse(稀疏數(shù)據(jù))、storage(存儲型)、cell(單元數(shù)組)和struct(結(jié)構(gòu))。共五十二頁數(shù)據(jù)類型間的關(guān)系(gun x)圖:數(shù)組(array)字符型(char)數(shù)值型(numeric)單元數(shù)組(cell)結(jié)構(gòu)數(shù)組(struct)雙精度(double)存儲型(storage)包括(int8,uint8,int16,uint16,Int32,uint32)稀疏數(shù)據(jù)(sparse)共五十二頁10.1.2 MATLAB的運(yùn)行(ynxng)MATLAB有兩種常用的工作(gngzu)模式: 1. 命令行輸入方式 2. M
4、文件的編程工作方式 共五十二頁1.命令行輸入(shr)方式例10-1:已知矩陣(j zhn) ,矩陣 ,求解矩陣乘以矩陣形成的新矩陣。只需在MATLAB命令窗口內(nèi)提示符號()之后輸入如下表達(dá)式,并按下Enter鍵即可: A=2 1 -3 -1;3 1 0 7;-1 2 4 -2;1 0 -1 5; B=3 -1 0 4;2 1 5 -2;-1 0 7 5;-4 8 0 1; A*B共五十二頁2.M文件(wnjin)的編程工作方式MATLAB提供了M文件編輯器作為(zuwi)編制和調(diào)試M文件的工作界面。在MATLAB的運(yùn)行環(huán)境中,用鼠標(biāo)單擊菜單欄上的Fi1e-open命令,選擇M-file項(xiàng),或
5、者直接單擊工具欄的新建按鈕,進(jìn)入MATLAB的M文件編輯器。M文件有兩種形式,一種是命令文件(腳本文件Script-file);另一種是函數(shù)文件(Function-file)。共五十二頁例10-2:建立(jinl)命令文件,并繪制寶石項(xiàng)鏈圖。 (1) 進(jìn)入MATLAB的M文件編輯器 (2) 在編輯器窗口中輸入文件內(nèi)容:t=(0:0.02:2)*pi; %(0:0.02:2)表示(0,2)之間以0.02為間隔的向量x=sin(t);y=cos(t);z=cos(2*t);plot3(x,y,z,b-,x,y,z,bd)view(-80,60)box onlegend(鏈子,寶石);共五十二頁(3
6、)單擊Fi1e -save命令,將所寫文件自動(dòng)保存在磁盤目錄D:MATLABwork上,并取名為diamond.m。(4)在MATLAB命令窗口中直接(zhji)輸入文件名diamond回車,即可得運(yùn)行結(jié)果。共五十二頁MATLAB和大多數(shù)計(jì)算機(jī)語言一樣,提供了設(shè)計(jì)程序所必須的程序結(jié)構(gòu),即順序結(jié)構(gòu)、循環(huán)結(jié)構(gòu)和分支(fnzh)結(jié)構(gòu)。在MATLAB中,循環(huán)結(jié)構(gòu)由for-end循環(huán)語句和while-end循環(huán)語句實(shí)現(xiàn),分支結(jié)構(gòu)由if-end語句和switch-case-end實(shí)現(xiàn)。共五十二頁例10-3:繪制函數(shù)(hnsh) 的圖像。其程序(chngx)為:x=-3:0.1:3;if x=1 y=8*x
7、2+1; plot(x,y)Else if -1x y=0; plot(x,y)else y=-x3; plot(x,y)end共五十二頁10.1.3 MATLAB圖像處理(t xin ch l)功能 MATLAB豐富的圖像處理函數(shù) 圖像文件輸入、輸出、顯示:imread imwrite subplot計(jì)算圖像的傅立葉變換FFT及逆變換IFFT :fft2 ifft2 計(jì)算圖像的離散(lsn)余弦變換DCT及逆變換IDCT:dct2 idct2計(jì)算圖像的小波變換DWT及逆變換IDWT:dwt2 idwt2 共五十二頁常用的函數(shù)(hnsh)簡介(1) 函數(shù)名: uint8格式(g shi): u
8、int8 (A);功能:將數(shù)據(jù)A轉(zhuǎn)換為8位無符號整數(shù)類型數(shù)據(jù)例如:watermarked_image_uint8=uint8(watermarked_image_round);(2) 函數(shù)名: double格式: double(A); 功能: 將數(shù)據(jù)A轉(zhuǎn)換為64位雙精度浮點(diǎn)類型數(shù)據(jù)例: double(imread(lena.bmp);共五十二頁(3) 函數(shù)(hnsh)名: imread格式:imread(文件名,文件格式)功能: 讀取圖像文件數(shù)據(jù)例: Z=imread(lena.bmp) 其功能為將文件格式為bmp的圖像文件lena.bmp圖像數(shù)據(jù)讀取出來,并作為無符號8位整型數(shù)據(jù)(unit8
9、)放入二維數(shù)組變量Z中。(4) 函數(shù)名: imwrite格式: imwrite (A,文件名,文件格式)功能:保存圖像文件數(shù)據(jù)例: imwrite(ZA,watermarked.bmp,bmp)其功能為將變量ZA中的圖像數(shù)據(jù)寫入文件名為watermarked.bmp的文件中,保存格式為bmp。共五十二頁(5) 函數(shù)名: imshow格式: imshow(I,LOW HIGH)功能:顯示(xinsh)灰度圖像例: imshow(ZA,) 顯示灰度圖像ZA,并指定灰度級范圍LOW HIGH,若如不確定數(shù)據(jù)的范圍LOW HIGH,可使用空矢量作為參數(shù)顯示圖像。 (6) 函數(shù)名: subplot格式:
10、 subplot (m,n,p)功能:將一個(gè)圖形窗口劃分為多個(gè)顯示區(qū)域例: subplot(2,2,1); 將圖形窗口劃分為22個(gè)矩形顯示區(qū)域,并激活第1個(gè)顯示區(qū)域。共五十二頁(7) 函數(shù)名: fft2功能(gngnng):對矩陣A做二維快速傅立葉變換格式:B=fft2(A,M,N) A表示要變換的矩陣,M和N是可選參數(shù),通過補(bǔ)0元素或截取多余元素,使A成為MN階矩陣,然后計(jì)算其二維FFT。B表示變換后得到的二維FFT 系數(shù)矩陣。(8) 函數(shù)名: fftshift功能:把傅立葉變換結(jié)果中的直流分量移到中間位置 格式:B= fftshift (A) 若A為向量,則fftshift將其左、右半部互
11、換,若A為矩陣,則交換A的1,3象限和2,4象限。對多維陣列,fftshift對每一維的兩個(gè)“半空間”進(jìn)行交換。fftshift常用于FFT結(jié)果的可視化。共五十二頁(9) 函數(shù)名: ifft2功能:對矩陣B做二維快速逆傅立葉逆變換格式:A=ifft2(B,M,N) B 表示要變換(binhun)的矩陣,M和N是可選參數(shù),通過補(bǔ)0元素或截取多余元素,使B成為MN階矩陣,然后計(jì)算其二維FFT。A表示經(jīng)過二維傅立葉逆變換后的系數(shù)矩陣。共五十二頁例10-4: 計(jì)算并顯示圖像的傅立葉變換FFT及逆變換IFFT。I=imread(lena.bmp);subplot(1,3,1), imshow(uint8
12、(I); % 顯示原始圖像J=fft2(I); % 圖像FFT變換B=fftshift(J); % 顯示FFT變換結(jié)果subplot(1,3,2), imshow(log(abs(B),); H=ifft2(J); %使用(shyng)逆變換復(fù)原圖像并顯示結(jié)果subplot(1,3,3), imshow(uint8(H); 共五十二頁執(zhí)行(zhxng)結(jié)果: (a)lena原圖(yun t)(b)經(jīng)過FFT變換后的頻譜圖像(c)經(jīng)IFFT后的圖像共五十二頁 (10) 函數(shù)名: dct2功能:求矩陣A的DCT變換系數(shù)(xsh)格式:B=dct2(A,M,N) A表示要變換的矩陣,M和N是可選參數(shù)
13、,通過補(bǔ)0元素或截取多余元素,使A成為MN階矩陣,然后計(jì)算其二維離散余弦變換。B表示變換后得到的離散余弦變換系數(shù)矩陣。共五十二頁例10-5:調(diào)用dct2函數(shù)計(jì)算二維圖像的DCT系數(shù)并顯示結(jié)果。 由于離散余弦(yxin)變換DCT會產(chǎn)生負(fù)系數(shù),為了顯示離散余弦變換DCT的系數(shù)幅值大小,可以使用絕對值函數(shù)abs(x)。程序代碼如下:I=imread(lena.bmp) ;J=dct2(I); % 計(jì)算二維圖像的DCT系數(shù)subplot(1,2,1), imshow(uint8(I);subplot(1,2,2), imshow(uint8(abs(J); % 顯示二維圖像的DCT系數(shù)的大小共五十二
14、頁執(zhí)行(zhxng)結(jié)果:(a) lena原圖 (b) 經(jīng)DCT變換(binhun)后的圖像 共五十二頁(11) 函數(shù)名: idct2 功能:計(jì)算逆DCT變換格式(g shi):A= idct2(B,M,N) B表示要變換的矩陣,M和N是可選參數(shù),通過補(bǔ)0元素或截取多余元素,使B成為MN階矩陣,然后計(jì)算其二維離散余弦逆變換。A表示B經(jīng)過二維離散余弦逆變換后得到的系數(shù)矩陣。共五十二頁例10-6:計(jì)算并顯示圖像的離散余弦(yxin)變換DCT及逆變換IDCT。程序代碼如下:I=imread(lena.bmp) ; subplot(1,4,1), imshow(uint8(I);)% 顯示原始圖像J
15、=dct2(I); %圖像DCT變換K=idct2(J);subplot(1,4,2),imshow(uint8(K);%使用逆變換復(fù)原圖像J(abs(J)10)=0; %將較小的系數(shù)設(shè)置為0M=idct2(J);subplot(1,4,3),imshow(uint8(M);%使用逆變換部分復(fù)原圖像J(abs(J)100)=0; %將較小的系數(shù)設(shè)置為0N=idct2(J);subplot(1,4,4),imshow(uint8(N);%使用逆變換部分復(fù)原圖像共五十二頁原始(yunsh)圖像與DCT和IDCT變換后的圖像比較(a) Lena 原圖(yun t)(b)經(jīng)過DCT和IDCT后的圖像(
16、c) =100的重構(gòu)圖像(c) =10的重構(gòu)圖像共五十二頁(12) 函數(shù)名:rand rand函數(shù)共8種,與圖像處理相關(guān)的主要有兩種。因此僅對這兩種做一個(gè)簡要的介紹。格式:rand( state,J ) ;rand( N,M ) 功能: rand( state,J ) 將隨機(jī)數(shù)生成器設(shè)置到第J個(gè)狀態(tài),其值可以(ky)任意設(shè)定。不同的狀態(tài)J 將生成不同的隨機(jī)矩陣,而設(shè)定了相同的狀態(tài)J,就可生成相同的隨機(jī)數(shù)矩陣。rand( N,M )產(chǎn)生元素值在(0.0,1.0)內(nèi)的NM階均勻分布隨機(jī)矩陣。 通常rand( state,J )與rand( N,M )聯(lián)合使用。 共五十二頁10.2 數(shù)字水印概述(i
17、 sh) 定義: 數(shù)字水印技術(shù)(Digital Watermarking)是通過一定的算法將一些標(biāo)志性信息直接嵌入到多媒體內(nèi)容當(dāng)中,但不影響原內(nèi)容的價(jià)值和使用,并且不能被人的感知(gnzh)系統(tǒng)覺察或注意到,只有通過專用的檢測器或閱讀器才能提取。共五十二頁(a) 原始(yunsh)圖像 (b) 水印圖像 (c) 嵌入水印后的圖像 圖像(t xin)中嵌入數(shù)字水印共五十二頁數(shù)字水印常見的分類:1. 根據(jù)數(shù)字水印(shuyn)是否可見可以分為:可見水印(shuyn)、不可見 水印(shuyn)2. 根據(jù)數(shù)字水印的作用可以將數(shù)字水印分為:魯棒水印、 脆弱水印、半脆弱水印3. 根據(jù)水印實(shí)現(xiàn)的方法不同又
18、可分為:時(shí)(空)域數(shù)字水印、頻域數(shù)字水印 共五十二頁 數(shù)字水印系統(tǒng)(xtng)的組成:嵌入和提取(檢測)水印生成算法(G)數(shù)字水?。╓)原始載體數(shù)據(jù)(I)水印嵌入算法(E)加入水印后的數(shù)據(jù)( )私鑰/公鑰(K)數(shù)字水印嵌入(qin r)的一般過程基本框架示意圖共五十二頁 數(shù)字水印系統(tǒng)的組成:嵌入(qin r)和提取(檢測)數(shù)字水印提?。z測)的一般(ybn)過程基本框架示意圖共五十二頁10.3 基于(jy)DCT域的魯棒水印 10.3.1水印(shuyn)的嵌入原始圖象分塊選擇方差最大的前n塊DCT 變換DCT域中頻嵌入水印含水印圖象pn_sequence_zeroKDCT逆變換基于DCT的魯
19、棒水印嵌入流程圖共五十二頁具體步驟: 原始圖像的分塊DCT變換(binhun)將原始圖像分割為互不覆蓋的88子塊,再對每個(gè)子 塊進(jìn)行DCT變換?;诩y理掩蔽特性的塊分類將水印信號盡可能嵌入到圖像中紋理較復(fù)雜的子塊。水印的產(chǎn)生和嵌入將二值水印圖像組成一維行向量,作為水印信息。采用折衷辦法,將水印信息嵌入到宿主圖像的中頻部分。 分塊DCT反變換。 圖 10-13 88塊DCT系數(shù)嵌入(qin r)水印的中頻位置分塊DCT反變換。 共五十二頁 基于DCT的魯棒水印(shuyn)嵌入效果圖: (a)原始(yunsh)圖像 (b)水印圖像 (c)嵌入水印后的圖像共五十二頁10.3.2 水印(shuyn)
20、的提取基于DCT的數(shù)字水印提取過程如下: 原始圖像和待測圖像在DCT域進(jìn)行求差運(yùn)算,比較相關(guān)性,確定序列message_vector。 根據(jù)圖像塊的方差值的大小,確定紋理塊,從而確定水印曾經(jīng)的嵌入位置。根據(jù)序列message_vector以及紋理塊復(fù)雜度的次序形成(xngchng)一維水印序列。 將水印序列重新組成二維水印恢復(fù)圖像。 共五十二頁 基于DCT的魯棒水印(shuyn)提取效果圖: (a) 嵌入水印后的圖像(t xin) (b) 提取的水印 共五十二頁水印嵌入(qin r)步驟: (1)將原始圖最低有效位(LSB)清0,并分為互不覆蓋的88圖像塊 (2)計(jì)算每個(gè)88塊分解(如基于LU分解)后矩陣u的跡,并將其作為嵌入的水印信息 (3)使用mean2( ) 函數(shù)計(jì)算每個(gè)88塊相鄰近1616圖像塊的均值,并嵌入到該88圖像塊特定的LSB位。 10.4 基于(jy)空域的脆弱水印 10.4.1水印的嵌入共五十二頁(4)再將步驟(2)中計(jì)算的水印信息 嵌入到由位置矩陣B決定的88圖像(t xin)塊 中的相應(yīng)LSB位,嵌入判別公式為: (5)生成并顯示含水印的圖像共五十二頁10.4.2水印(shuyn)的提取及篡改檢測 將待檢測圖像分為互不覆蓋(fgi)的88圖像塊。 與水印嵌入過程類
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年第三方擔(dān)保合同護(hù)航跨境電商交易范本3篇
- 二零二五版發(fā)型師與美發(fā)機(jī)構(gòu)聘用合同3篇
- 二零二五版環(huán)保節(jié)能技術(shù)合作合同模板2篇
- 二零二五年音樂節(jié)餐飲租賃合同2篇
- 二零二五版環(huán)保型建筑砂漿采購合同模板-綠色建筑專用3篇
- 二零二五版海綿城市建設(shè)土石方運(yùn)輸與雨水收集合同3篇
- 二零二五版環(huán)保打印機(jī)銷售與環(huán)保認(rèn)證合同范本3篇
- 二零二五年鋼板樁租賃及拆除作業(yè)合同3篇
- 二零二五年度文化藝術(shù)展覽贊助合同3篇
- 2025年度智能機(jī)器人制造領(lǐng)域技術(shù)轉(zhuǎn)移合同規(guī)范3篇
- 申根簽證申請表模板
- 企業(yè)會計(jì)準(zhǔn)則、應(yīng)用指南及附錄2023年8月
- 諒解書(標(biāo)準(zhǔn)樣本)
- 2022年浙江省事業(yè)編制招聘考試《計(jì)算機(jī)專業(yè)基礎(chǔ)知識》真題試卷【1000題】
- 認(rèn)養(yǎng)一頭牛IPO上市招股書
- GB/T 3767-2016聲學(xué)聲壓法測定噪聲源聲功率級和聲能量級反射面上方近似自由場的工程法
- GB/T 23574-2009金屬切削機(jī)床油霧濃度的測量方法
- 西班牙語構(gòu)詞.前后綴
- 動(dòng)物生理學(xué)-全套課件(上)
- 河北省衡水市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名居民村民委員會明細(xì)
- DB32-T 2665-2014機(jī)動(dòng)車維修費(fèi)用結(jié)算規(guī)范-(高清現(xiàn)行)
評論
0/150
提交評論